Skip to content

Commit 961417b

Browse files
committed
chore: auto-commit after complete-milestone
GSD-Unit: M060
1 parent 019e5fd commit 961417b

File tree

13 files changed

+439
-104
lines changed

13 files changed

+439
-104
lines changed

.gsd/CODEBASE.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Codebase Map
22

3-
Generated: 2026-04-21T17:52:34Z | Files: 500 | Described: 0/500
4-
<!-- gsd:codebase-meta {"generatedAt":"2026-04-21T17:52:34Z","fingerprint":"75e090500ae038323aae383f34bfc69de08efa06","fileCount":500,"truncated":true} -->
3+
Generated: 2026-04-21T18:05:27Z | Files: 500 | Described: 0/500
4+
<!-- gsd:codebase-meta {"generatedAt":"2026-04-21T18:05:27Z","fingerprint":"42966d944434ab3473cd1afca1c1b31de5af6947","fileCount":500,"truncated":true} -->
55
Note: Truncated to first 500 files. Run with higher --max-files to include all.
66

77
### (root)/
@@ -72,7 +72,7 @@ Note: Truncated to first 500 files. Run with higher --max-files to include all.
7272
- `fixtures/webhooks/check_suite/completed-basic.json`
7373

7474
### scripts/
75-
- *(159 files: 155 .ts, 3 .sh, 1 .md)*
75+
- *(161 files: 157 .ts, 3 .sh, 1 .md)*
7676

7777
### src/
7878
- `src/config.test.ts`
@@ -160,4 +160,4 @@ Note: Truncated to first 500 files. Run with higher --max-files to include all.
160160
- `src/jobs/workspace.ts`
161161

162162
### src/knowledge/
163-
- *(81 files: 81 .ts)*
163+
- *(79 files: 79 .ts)*

.gsd/PROJECT.md

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,19 +16,21 @@ Milestones M043-M060 are complete in repo history, and M021/S05 remains the olde
1616

1717
### M060 status
1818

19-
**M060: Knowledge Subsystem Test Backfill is in progress, with S01 complete.** The milestone is closing the highest-value knowledge-layer unit-test gaps without overlapping M027 corpus-integrity work:
19+
**M060: Knowledge Subsystem Test Backfill is complete.** The milestone backfilled the highest-value knowledge-layer unit-test gaps without overlapping M027 corpus-integrity work:
2020

2121
- **S01** added `src/knowledge/test-coverage-exemptions.ts` as the canonical runtime-target and type-only-exemption manifest, added `scripts/verify-m060-s01.ts` plus `scripts/verify-m060-s01.test.ts`, wired `bun run verify:m060:s01`, and backfilled direct same-name tests for `isolation.ts`, `wiki-fetch.ts`, `issue-retrieval.ts`, `wiki-popularity-config.ts`, `wiki-linkshere-fetcher.ts`, `wiki-popularity-scorer.ts`, and `cluster-scheduler.ts`.
2222
- The new tests prove behavior rather than snapshots, including adaptive retrieval filtering, exact issue-body truncation, MediaWiki URL/header handling, popularity-score normalization and recency weighting, batched `linkshere` pagination with fail-open continuation, overlap guards, and deterministic scheduler timer lifecycle behavior.
2323
- During S01, `start()` was made idempotent in the popularity scorer and cluster scheduler so duplicate starts cannot leak extra timers under test or production use.
24+
- **S02** added `scripts/verify-m060-s02.ts` plus `scripts/verify-m060-s02.test.ts`, wired `bun run verify:m060:s02`, registered the new verifier in `scripts/REGISTRY.md`, and established the canonical M060-vs-M027 ownership boundary in `.gsd/milestones/M027/M027-SUMMARY.md`.
25+
- The S02 ownership contract states that M060 owns direct same-name unit tests for the runtime targets declared in `src/knowledge/test-coverage-exemptions.ts` plus explicit type-only exemptions, while M027 owns persisted-corpus audit, repair/status, and live retriever acceptance proof through `verify:m027:s01` through `verify:m027:s04`.
26+
- The boundary remains truthful about shared source-file participation when proof classes differ, and preserves the existing M027 constraint that `issue_comments` remains audited and repairable but outside the live retriever.
2427

25-
Fresh slice-close verification passed:
28+
Fresh milestone-close verification passed:
2629

27-
- `bun test --max-concurrency=2 src/knowledge/isolation.test.ts src/knowledge/wiki-fetch.test.ts src/knowledge/issue-retrieval.test.ts src/knowledge/wiki-popularity-config.test.ts src/knowledge/wiki-linkshere-fetcher.test.ts src/knowledge/wiki-popularity-scorer.test.ts src/knowledge/cluster-scheduler.test.ts`
28-
- `bun test ./scripts/verify-m060-s01.test.ts`
29-
- `bun run check:orphaned-tests`
30+
- `git diff --stat HEAD $(git merge-base HEAD main) -- ':!.gsd/'`
3031
- `bun run verify:m060:s01`
31-
- `bun run verify:m060:s01 --json`
32+
- `bun run verify:m060:s02`
33+
- `gsd_milestone_status(M060)` confirmed both slices complete
3234

3335
### M059 status
3436

@@ -67,8 +69,10 @@ Fresh milestone-close verification passed:
6769
### Notable current seams
6870

6971
- **M060 knowledge coverage seam:** `src/knowledge/test-coverage-exemptions.ts` defines the exact S01 runtime-target and type-only-exemption contract for the knowledge-layer backfill.
70-
- **M060 verifier seam:** `scripts/verify-m060-s01.ts` proves package wiring, registry registration, direct same-name test coverage for the seven selected runtime modules, and that the 11 explicit exemptions remain type-only. `--json` output exposes stable check IDs and localized status codes for future milestone verification.
72+
- **M060 direct-test verifier seam:** `scripts/verify-m060-s01.ts` proves package wiring, registry registration, direct same-name test coverage for the seven selected runtime modules, and that the 11 explicit exemptions remain type-only. `--json` output exposes stable check IDs and localized status codes for future milestone verification.
73+
- **M060 ownership-boundary verifier seam:** `scripts/verify-m060-s02.ts` proves package/registry wiring, rendered decision D171 presence, and the canonical M027 summary markers that distinguish M060 unit-test ownership from M027 corpus-level audit/repair/retriever proof without claiming file exclusivity.
7174
- **Knowledge same-name ownership seam:** `bun run check:orphaned-tests` remains the structural gate that enforces direct same-name ownership across `src/knowledge` and the rest of the repo.
75+
- **M060/M027 boundary narrative seam:** `.gsd/milestones/M027/M027-SUMMARY.md` now carries the canonical `M060/M027 ownership boundary` section that future verifiers and milestone closers should treat as the durable narrative contract.
7276
- **Script registry seam:** `scripts/verify-m059-s01.ts` proves `scripts/REGISTRY.md` coverage, duplicate detection, usage-truth validation, scope-contract coverage for tracked shell helpers, and `package.json` wiring for `verify:m059:s01`.
7377
- **Orphan-audit seam:** `scripts/verify-m059-s02.ts` proves that every `usage: none` row is either explicitly retained with evidence or marked removed in the S02 appendix, and that package wiring remains correct.
7478
- **Registry inventory seam:** `scripts/REGISTRY.md` is the repo-owned classification surface for all tracked script files and carries the parser-friendly S02 orphan-audit appendix for caller-free script disposition.
@@ -111,9 +115,9 @@ See `.gsd/REQUIREMENTS.md` for the explicit requirement inventory and status map
111115
- [x] M059: Script Registry & Orphan Audit
112116
- [x] S01: Create the script registry
113117
- [x] S02: Sweep orphan scripts
114-
- [ ] M060: Knowledge Subsystem Test Backfill
118+
- [x] M060: Knowledge Subsystem Test Backfill
115119
- [x] S01: Test the highest-centrality knowledge files
116-
- [ ] S02: Reconcile M027 overlap
120+
- [x] S02: Reconcile M027 overlap
117121
- [ ] M021: Issue Triage Foundation
118122
- [x] S01: Issue Corpus Schema Store
119123
- [x] S02: Issue MCP Tools
@@ -127,4 +131,4 @@ See `.gsd/REQUIREMENTS.md` for the explicit requirement inventory and status map
127131
- Execute the umbrella in this order: **M029 -> M028 -> M027**.
128132
- Hold the **M031/M032** portion until **#98** and **#99** are complete.
129133
- [x] #98 — M059 Script Registry & Orphan Audit
130-
- [ ] #99 — M060 Knowledge Subsystem Test Backfill
134+
- [x] #99 — M060 Knowledge Subsystem Test Backfill

0 commit comments

Comments
 (0)