test(FN-2197): reconcile skipped-test inventory and stabilize planning resume coverage

- Add docs/skipped-test-inventory.md with the current intentional skip patterns and rationale across test suites
- Link the skipped-test inventory from docs/README.md for easier discovery
- Record reconciliation of older skip follow-up tasks that are now covered and no longer active backlog
- Stabilize PlanningModeModal conversation-history resume testing by overriding stream behavior in the targeted test case
This commit is contained in:
Fusion
2026-04-20 14:11:28 -07:00
committed by gsxdsm
parent 42476ec3da
commit 238c5e27ec
4 changed files with 70 additions and 0 deletions

13
.DONE Normal file
View File

@@ -0,0 +1,13 @@
FN-2197 complete (2026-04-20)
Summary:
- Audited active skipped-test usage across package test suites and documented the reconciled inventory.
- Added `docs/skipped-test-inventory.md` and linked it from `docs/README.md`.
- Confirmed older actionable skip follow-ups (FN-2085, FN-2076, FN-2106, FN-2109) are resolved and no longer represented as active skip backlog.
- Stabilized `PlanningModeModal` conversation-history resume test by overriding stream behavior in the targeted test case to avoid racey question replacement.
Verification commands:
- pnpm lint
- pnpm typecheck
- VITEST_MAX_WORKERS=2 pnpm test
- pnpm build

View File

@@ -62,6 +62,7 @@ For a full walkthrough (installation, onboarding, first task, and daily workflow
| [Agent Sandbox Research](./agent-sandboxing-research.md) | Research on agent isolation, capability enforcement, and sandboxing approaches |
| [Agent Gap Analysis](./agent-paperclip-gap-analysis.md) | Gap analysis for agent Paperclip integration |
| [Test Audit Report](./test-audit-report.md) | Test coverage and effectiveness audit with recommendations |
| [Skipped Test Inventory](./skipped-test-inventory.md) | Current intentional test-skip inventory and reconciliation status for older skip follow-ups |
| [Dashboard Load Performance](./performance/dashboard-load.md) | SQLite index analysis and optimization for dashboard boot path queries |
## External Resources

View File

@@ -0,0 +1,51 @@
# Skipped Test Inventory
_Last audited: 2026-04-20 (FN-2197)_
This document tracks intentional skip usage in test suites so stale follow-up backlog items can be retired quickly.
## Current Inventory
Audit command:
```bash
rg -n "\b(it|test|describe)\.skip\b|\bskipIf\b|\?\s*it\s*:\s*it\.skip" packages --glob "**/*.{test,spec}.{ts,tsx}"
```
Current results:
1. **Intentional cross-coverage alias**
- `packages/engine/src/executor.test.ts`
- `it.skip("step-session skill selection covered in step-session-executor.test.ts", ...)`
- Rationale: dedicated coverage exists in `step-session-executor.test.ts`; this marker documents ownership.
2. **Environment-gated integration aliases**
- `packages/dashboard/src/server-static-assets.test.ts`
- `packages/dashboard/src/__tests__/websocket.test.ts`
- `packages/dashboard/src/__tests__/server-webhook.test.ts`
- Pattern: `loopbackBindingAvailable ? it : it.skip`
- Rationale: these integration tests require loopback binding support in the runtime environment.
3. **Build-output-gated checks**
- `packages/cli/src/__tests__/bundle-output.test.ts`
- `packages/dashboard/app/__tests__/build-output.test.ts`
- Pattern: `it.skipIf(...)` / `test.skipIf(...)`
- Rationale: assertions are valid only when build artifacts are present.
## Older Follow-up Reconciliation
Previously tracked actionable skip follow-ups are now resolved and should not be treated as open backlog:
- **FN-2085**: wildcard proxy POST body forwarding coverage is active.
- **FN-2076 / FN-2106 / FN-2109**: NewAgentDialog and MissionInterviewModal rollback favorite-toggle regressions are active interaction tests.
Searches for those IDs in repository test code and docs now return no active TODO/skip markers tied to unresolved work.
## Policy
When adding a new skip marker, include one of the following:
- a clear environment/build gate explanation, or
- a direct reference to the active test that owns equivalent coverage.
Avoid opening follow-up tasks for intentional gate/alias skips unless behavior coverage is actually missing.

View File

@@ -884,6 +884,11 @@ describe("PlanningModeModal", () => {
describe("Conversation history", () => {
it("restores all persisted Q&A pairs when resuming a session", async () => {
mockConnectPlanningStream.mockImplementationOnce(() => ({
close: vi.fn(),
isConnected: vi.fn().mockReturnValue(true),
}));
const resumedQuestion: PlanningQuestion = {
id: "q-current",
type: "text",