# TEST_REPORT — ECR-041 Banner Write **Date:** 2026-08-13 **Commit:** 9707b72 ## Commands ```bash cd apps/api && go test ./internal/integration/ -count=1 -run 'TestOpsCMSBanner' npm run test -w @yuxingu/user-h5 -- src/lib/homeCatalog.spec.ts python3 scripts/repo-governance-check.py ``` ## Results | Check | Result | |-------|--------| | TestOpsCMSBanners (read) | PASS | | TestOpsCMSBannerWrite | PASS | | homeCatalog vitest (3) | PASS | | repo-governance-check | PASS · max migration 000051 | ## AC map | AC | Evidence | |----|----------| | AC-F-01 | Write test create → list/get | | AC-F-02 | PUT active=false → C-end excludes | | AC-F-03 | GET /home/banners contains active home | | AC-F-04 | duplicate code → 409 | | AC-F-05 | external link_path → 400 | | AC-S-01/02 | 401 unauth; read-only role POST → 403 | | AC-A-01 | audit rows create+update | | AC-C-01/02 | H5 mapHomeBannersToFeeds + static fallback | | AC-O-01 | no FeedSlot write routes added |