?   	github.com/user-management-system/cmd/server	[no test files]
ok  	github.com/user-management-system/internal/api/handler	0.952s
ok  	github.com/user-management-system/internal/api/middleware	3.594s
?   	github.com/user-management-system/internal/api/router	[no test files]
ok  	github.com/user-management-system/internal/auth	2.575s
?   	github.com/user-management-system/internal/auth/providers	[no test files]
ok  	github.com/user-management-system/internal/cache	0.655s
ok  	github.com/user-management-system/internal/concurrent	24.599s
?   	github.com/user-management-system/internal/config	[no test files]
ok  	github.com/user-management-system/internal/database	12.877s
ok  	github.com/user-management-system/internal/domain	2.072s
[API] 2026-03-16 18:00:12 POST /api/v1/auth/register | status: 200 | latency: 75.5634ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/login | status: 200 | latency: 64.7592ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/refresh | status: 200 | latency: 732.1µs | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 GET /api/v1/auth/userinfo | status: 200 | latency: 0s | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/refresh | status: 401 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/register | status: 200 | latency: 65.8542ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/login | status: 200 | latency: 65.8222ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/logout | status: 200 | latency: 0s | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 GET /api/v1/auth/userinfo | status: 401 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/register | status: 200 | latency: 65.9028ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/login | status: 200 | latency: 63.5884ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 GET /api/v1/roles | status: 403 | latency: 0s | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 GET /api/v1/admin/users/export | status: 404 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 GET /api/v1/auth/userinfo | status: 401 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 GET /api/v1/auth/userinfo | status: 200 | latency: 1.0714ms | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/register | status: 200 | latency: 65.4103ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/login | status: 200 | latency: 64.7197ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 GET /api/v1/auth/2fa/status | status: 200 | latency: 0s | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 GET /api/v1/auth/2fa/setup | status: 200 | latency: 9.4074ms | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/2fa/enable | status: 400 | latency: 0s | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/register | status: 200 | latency: 65.8204ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/login | status: 200 | latency: 64.7566ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/webhooks | status: 200 | latency: 0s | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 GET /api/v1/webhooks | status: 500 | latency: 124.1µs | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 PUT /api/v1/webhooks/1 | status: 500 | latency: 976.3µs | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 GET /api/v1/webhooks/1/deliveries | status: 500 | latency: 0s | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 DELETE /api/v1/webhooks/1 | status: 500 | latency: 0s | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
--- FAIL: TestE2EWebhookCRUD (0.14s)
    --- FAIL: TestE2EWebhookCRUD/列出Webhooks (0.00s)
        e2e_advanced_test.go:322: 列出 Webhook 失败，HTTP 500
    --- FAIL: TestE2EWebhookCRUD/更新Webhook (0.00s)
        e2e_advanced_test.go:343: 更新 Webhook 失败，HTTP 500
    --- FAIL: TestE2EWebhookCRUD/查询Webhook投递记录 (0.00s)
        e2e_advanced_test.go:360: 查询 Webhook 投递记录失败，HTTP 500
    --- FAIL: TestE2EWebhookCRUD/删除Webhook (0.00s)
        e2e_advanced_test.go:377: 删除 Webhook 失败，HTTP 500
[API] 2026-03-16 18:00:12 POST /api/v1/auth/register | status: 200 | latency: 65.8164ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/login | status: 200 | latency: 64.633ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/webhooks | status: 200 | latency: 540.7µs | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:12 POST /api/v1/auth/register | status: 200 | latency: 65.804ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 200 | latency: 66.7189ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 200 | latency: 68.3798ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 GET /api/v1/admin/users/export | status: 404 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 GET /api/v1/admin/users/import/template | status: 404 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 429 | latency: 1.05ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 429 | latency: 1.05ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 400 | latency: 71.4035ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 200 | latency: 72.4706ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 200 | latency: 72.4706ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 200 | latency: 67.1575ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 200 | latency: 66.5193ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 GET /api/v1/auth/userinfo | status: 200 | latency: 0s | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/refresh | status: 200 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 GET /api/v1/auth/userinfo | status: 200 | latency: 0s | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/logout | status: 200 | latency: 0s | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 GET /api/v1/auth/oauth/providers | status: 200 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 GET /api/v1/auth/captcha | status: 200 | latency: 2.0983ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 200 | latency: 65.7579ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 200 | latency: 66.1992ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 GET /api/v1/auth/userinfo | status: 200 | latency: 0s | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/logout | status: 200 | latency: 0s | ip: 127.0.0.1 | user_id: 1 | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 200 | latency: 70.522ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 401 | latency: 67.8917ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 401 | latency: 1.0359ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 GET /api/v1/auth/userinfo | status: 401 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 GET /api/v1/auth/userinfo | status: 401 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 200 | latency: 69.0459ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/forgot-password | status: 200 | latency: 1.0216ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[密码重置邮件-开发模式] To: resetuser@example.com
Subject: 密码重置请求
ResetURL: http://localhost/reset-password?token=285d8b4a63b85fde70afcdb8a2c08d9b6bfa01f0a128c4a97e5d5bcde2929512
[API] 2026-03-16 18:00:18 GET /api/v1/auth/captcha | status: 200 | latency: 933.5µs | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 GET /api/v1/auth/captcha/image | status: 200 | latency: 1.4265ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[Query] /api/v1/auth/captcha/image?captcha_id=1773655218707846500-6c2bdb22df8c26011af1bf5222c90502
[API] 2026-03-16 18:00:18 POST /api/v1/auth/register | status: 200 | latency: 69.2702ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 401 | latency: 1.055ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 2.0738ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 1.0848ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 429 | latency: 0s | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
[API] 2026-03-16 18:00:18 POST /api/v1/auth/login | status: 200 | latency: 70.0794ms | ip: 127.0.0.1 | user_id: <nil> | ua: Go-http-client/1.1
FAIL
FAIL	github.com/user-management-system/internal/e2e	7.183s
ok  	github.com/user-management-system/internal/integration	0.586s
ok  	github.com/user-management-system/internal/middleware	1.633s
?   	github.com/user-management-system/internal/models	[no test files]
ok  	github.com/user-management-system/internal/monitoring	0.264s
ok  	github.com/user-management-system/internal/performance	8.082s
?   	github.com/user-management-system/internal/pkg/errors	[no test files]
ok  	github.com/user-management-system/internal/repository	4.129s
?   	github.com/user-management-system/internal/response	[no test files]
ok  	github.com/user-management-system/internal/robustness	8.605s
ok  	github.com/user-management-system/internal/security	1.970s
ok  	github.com/user-management-system/internal/service	7.076s
ok  	github.com/user-management-system/internal/testdb	1.067s
?   	github.com/user-management-system/pkg/errors	[no test files]
?   	github.com/user-management-system/pkg/response	[no test files]
FAIL
