Skip to content

Commit 53b4138

Browse files
committed
Update testing guide: April 2 test totals & new tests
Bump TESTING_GUIDE.md to 2026-04-02 and update verified totals and re-verification dates (backend 2053, frontend 1496, combined 3549+). Add detailed coverage notes for recent PRs: LLM Tool-Calling (PR #669), MCP Server (PR #664), GDPR Data Portability/Account Deletion (PR #666), Board Metrics (PR #667), and GitHub OAuth frontend tests (PR #668), including tracking issues, test targets, and brief manual validation steps. Record addition of a developer-portal CI artifact step (PR #658) and expand planned quality expectations to include the new services and API/store coverage for OAuth and metrics.
1 parent 1799efd commit 53b4138

1 file changed

Lines changed: 63 additions & 11 deletions

File tree

docs/TESTING_GUIDE.md

Lines changed: 63 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,30 +2,30 @@
22

33
This is the active testing guide for Taskdeck.
44

5-
Last Updated: 2026-03-29
5+
Last Updated: 2026-04-02
66
Companion Active Docs:
77
- `docs/STATUS.md`
88
- `docs/IMPLEMENTATION_MASTERPLAN.md`
99
- `docs/TESTING_GUIDE.md`
1010
- `docs/MANUAL_TEST_CHECKLIST.md`
1111
- `docs/GOLDEN_PRINCIPLES.md`
1212

13-
## Current Verified Totals (2026-03-29)
13+
## Current Verified Totals (2026-04-02)
1414

15-
- Backend: 1483/1483 passing
16-
- Domain: 293
17-
- Application: 786
18-
- API integration: 392
15+
- Backend: 2053/2053 passing
16+
- Domain: 357
17+
- Application: 1260
18+
- API integration: 424
1919
- CLI contract: 4
2020
- Architecture boundaries: 8
21-
- Frontend unit: 1102/1102 passing (120 test files)
21+
- Frontend unit: 1496/1496 passing (134 test files)
2222
- Frontend E2E (smoke + automation/ops + capture loop + starter-pack fixtures + concurrency harness): default required lane passing
23-
- Combined automated total: 2585+ passing (backend 1483 + frontend unit 1102 + E2E)
23+
- Combined automated total: 3549+ passing (backend 2053 + frontend unit 1496 + E2E)
2424

2525
Verification note:
26-
- backend totals were re-verified on 2026-03-29 via `dotnet test backend/Taskdeck.sln -c Release -m:1`
27-
- frontend unit totals were re-verified on 2026-03-29 via `npx vitest --run`
28-
- significant test growth since 2026-03-06 due to TST-CODEX wave (PRs #436#448), knowledge service tests (PR #456), AGT-02 tool registry/policy/triage tests (PR #502), demo director presets/assertions/report/soak tests (PR #500), and adversarial review fixes
26+
- backend totals were re-verified on 2026-04-02 via `dotnet test backend/Taskdeck.sln -c Release -m:1`
27+
- frontend unit totals were re-verified on 2026-04-02 via `npx vitest --run`
28+
- significant test growth since 2026-03-29 due to: LLM tool-calling orchestrator and read tools (PR #669, 67 new backend tests), GDPR data portability and account deletion (PR #666, 25 new backend tests), board metrics dashboard (PR #667, 12 backend + frontend tests), MCP prototype board resources (PR #664, 7 new backend tests), GitHub OAuth frontend integration (PR #668, 5 new frontend tests), and UX-19 review card improvements
2929

3030
## Product-Coherence Testing Priorities (2026-03-07)
3131

@@ -74,6 +74,51 @@ Remaining coverage gaps (post-wave):
7474
- Frontend: 1 API module untested (captureApi), remaining composables/stores have baseline coverage
7575
- Backend: Infrastructure repositories still largely untested, remaining domain entities untested, 1 of 5 workers untested
7676

77+
## LLM Tool-Calling Coverage (PR #669, delivered 2026-04-01)
78+
79+
Tracking issue: `#649` (Phase 1 of `#647`)
80+
81+
New test coverage:
82+
- `ToolCallingChatOrchestratorTests`: multi-turn loop, timeout, max-round enforcement
83+
- `ReadToolSchemasTests`: schema generation for all 5 read tools
84+
- `MockLlmProviderToolCallingTests` / `MockToolCallDispatcherTests` / `MockToolResultsTests`: mock provider tool-calling dispatch and result formatting
85+
- `OpenAiToolCallingParseTests` / `GeminiToolCallingParseTests`: provider-specific tool-call response parsing
86+
87+
Manual validation recommended: send "What cards are in my Backlog?" via chat with Mock provider and verify dynamic tool-calling response.
88+
89+
## MCP Server Coverage (PR #664, delivered 2026-04-01)
90+
91+
Tracking issue: `#652` (Phase 1 of `#648`)
92+
93+
New test coverage:
94+
- `McpBoardResourcesTests`: `taskdeck://boards` resource listing, phantom-user fallback, multi-user board scoping
95+
96+
Manual validation recommended: configure `mcp.example.json` in Claude Code / Cursor and ask "What boards do I have?" to verify resource delivery.
97+
98+
## GDPR Data Portability Coverage (PR #666, delivered 2026-04-01)
99+
100+
Tracking issue: `#83`
101+
102+
New test coverage:
103+
- `DataExportServiceTests` (10 tests): user-scoped data export completeness, versioned payload shape, cross-user isolation
104+
- `AccountDeletionServiceTests` (15 tests): password re-auth, confirmation phrase enforcement, PII anonymization, audit ref cleanup, deactivated-user login rejection
105+
106+
## Board Metrics Coverage (PR #667, delivered 2026-04-01)
107+
108+
Tracking issue: `#77`
109+
110+
New test coverage:
111+
- `BoardMetricsServiceTests` (12 backend tests): board-scoped metric aggregation, date range filtering, label grouping
112+
- `metricsApi.spec.ts` (4 frontend tests): API client mock verification
113+
114+
## GitHub OAuth Frontend Coverage (PR #668, delivered 2026-04-01)
115+
116+
Tracking issue: `#539`
117+
118+
New test coverage:
119+
- `authApi.spec.ts` (3 tests): `getProviders` and `exchangeOAuthCode` API calls
120+
- `sessionStore.spec.ts` (2 tests): OAuth code exchange store action
121+
77122
## Backend Commands
78123

79124
Run full backend verification (recommended):
@@ -426,6 +471,7 @@ Nightly workflow: `.github/workflows/ci-nightly.yml`
426471
- scheduled/manual E2E smoke suite (`reusable-e2e-smoke.yml`)
427472
- scheduled/manual load-concurrency harness (`reusable-load-concurrency-harness.yml`)
428473
- scheduled/manual container image regression
474+
- `developer-portal`: builds API, fetches `/swagger/v1/swagger.json`, runs `@redocly/cli build-docs`, uploads `artifacts/developer-portal/` including docs from `docs/api/` (PR #658)
429475

430476
Nightly quality workflow: `.github/workflows/nightly-quality.yml`
431477

@@ -537,6 +583,10 @@ Planned quality expectations when implementation starts:
537583
- Includes database export/import guardrail coverage (sandbox gating, payload validation, file replacement)
538584
- Includes external import-adapter parsing and board upsert orchestration coverage (CSV/outreach profile, dedupe policy, rollback safety path)
539585
- Includes starter-pack manifest parsing/validation, first-party catalog validity, and apply-planning coverage
586+
- Includes LLM tool-calling orchestrator coverage (multi-turn loop, timeout, round limits) and read tool schema generation
587+
- Includes GDPR data export service (user-scoped completeness, versioned payload) and account deletion service (re-auth, confirmation phrase, PII anonymization)
588+
- Includes board metrics service coverage (aggregation, date range, label grouping)
589+
- Includes MCP board resource coverage (listing, phantom-user fallback, multi-user scoping)
540590
- HTTP contracts and behavior mappings:
541591
- `backend/tests/Taskdeck.Api.Tests`
542592
- Includes core + automation/archive/chat/ops/log/health controllers
@@ -562,6 +612,8 @@ Planned quality expectations when implementation starts:
562612
- `frontend/taskdeck-web/src/tests`
563613
- Components, stores, API modules, composables, utilities
564614
- Includes shared utility tests for `queryBuilder` and `errorMessage`
615+
- Includes GitHub OAuth API client and session store coverage (`authApi`, `sessionStore`)
616+
- Includes board metrics API client and store coverage (`metricsApi`, `metricsStore`)
565617
- End-to-end journeys:
566618
- `frontend/taskdeck-web/tests/e2e`
567619
- Includes deterministic starter-pack fixture bootstrap coverage for `small`, `medium`, and `edge` manifest scenarios

0 commit comments

Comments
 (0)