|
Some checks failed
Block internal-flavored paths / Block forbidden paths (pull_request) Successful in 8s
Harness Replays / detect-changes (pull_request) Failing after 10s
Harness Replays / Harness Replays (pull_request) Has been skipped
Secret scan / Scan diff for credential-shaped strings (pull_request) Successful in 11s
CI / Detect changes (pull_request) Successful in 22s
E2E API Smoke Test / detect-changes (pull_request) Successful in 25s
E2E Staging Canvas (Playwright) / detect-changes (pull_request) Successful in 27s
Handlers Postgres Integration / detect-changes (pull_request) Successful in 27s
Runtime PR-Built Compatibility / detect-changes (pull_request) Successful in 25s
CI / Platform (Go) (pull_request) Successful in 6s
sop-tier-check / tier-check (pull_request) Successful in 13s
CI / Shellcheck (E2E scripts) (pull_request) Successful in 7s
CI / Python Lint & Test (pull_request) Successful in 8s
Runtime PR-Built Compatibility / PR-built wheel + import smoke (pull_request) Successful in 8s
Handlers Postgres Integration / Handlers Postgres Integration (pull_request) Successful in 5s
E2E API Smoke Test / E2E API Smoke Test (pull_request) Successful in 10s
CI / Canvas (Next.js) (pull_request) Failing after 4m59s
CI / Canvas Deploy Reminder (pull_request) Has been skipped
E2E Staging Canvas (Playwright) / Canvas tabs E2E (pull_request) Successful in 7m22s
PurchaseSuccessModal.test.tsx never creates spies (no vi.spyOn, no mockImplementation) so vi.restoreAllMocks() was a no-op in its afterEach hooks. Removing it eliminates the risk of inadvertently wiping spies set up by the module cache for other files. Also reverts ApprovalBanner.test.tsx to its pre-PR-#480 state (vi.useRealTimers() in afterEach, no mockReset calls) — the PR-#480 change to vi.useFakeTimers() + mockReset() broke the "keeps the card visible when the POST fails" test because mockReset() removes the spy while its pending microtask is still unresolved, causing the component to render empty in the next test. Stable baseline: vi.useFakeTimers() in beforeEach, vi.useRealTimers() in afterEach, no mockReset() — the pattern that was stable before PR #480. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| e2e | ||
| public | ||
| src | ||
| .dockerignore | ||
| .env.example | ||
| .gitignore | ||
| components.json | ||
| Dockerfile | ||
| next.config.ts | ||
| package-lock.json | ||
| package.json | ||
| playwright.config.ts | ||
| playwright.staging.config.ts | ||
| postcss.config.js | ||
| tsconfig.json | ||
| vitest.config.ts | ||