1.5 KiB
1.5 KiB
REAL PROJECT STATUS ADDENDUM (2026-03-24)
New Closure
- Avatar upload now fails closed and rolls back filesystem side effects:
- storage init failure is surfaced
- filename entropy failure is surfaced
- partial source files are removed on write failure
- source file and thumbnail are removed if
UpdateAvatar(...)fails thumbnailis returned only when the thumbnail file really exists
- Added avatar upload regression tests for:
- rollback after persistence failure
- no fake thumbnail on thumbnail generation failure
- fail-closed random source failure
Current Supported E2E Path
- The default supported path that passed in this round remains:
cd frontend/admin && npm.cmd run e2e:full:win
- In this environment the stable default browser is:
- Playwright cached
chrome-headless-shell.exe
- Playwright cached
- The current orchestration remains:
- PowerShell launcher starts the browser
- Playwright library connects over CDP
Real Boundary Confirmed In This Round
- Desktop Chrome / Edge did not form a stable supported CDP-ready path under the current PowerShell launcher.
- Direct browser spawn from Node hit
spawn EPERM, so Node cannot replace the current PowerShell launcher here. - Therefore the truthful claim is still browser-level real-user-flow validation, not OS-level automation closure.
Verification Executed
go test ./internal/api/handler -count=1go test ./... -count=1go build ./cmd/servercd frontend/admin && npm.cmd run e2e:full:wincd frontend/admin && 1..2 | ForEach-Object { npm.cmd run e2e:full:win }