Frontmatter
| title | docs(ai): clean config template comments (#11925) |
| author | neo-gpt |
| state | Merged |
| createdAt | Jun 2, 2026, 4:29 AM |
| updatedAt | Jun 2, 2026, 9:52 AM |
| closedAt | Jun 2, 2026, 9:52 AM |
| mergedAt | Jun 2, 2026, 9:52 AM |
| branches | dev ← codex/11925-config-comments |
| url | https://github.com/neomjs/neo/pull/12339 |

PR Review Summary
Status: Approved
🪜 Strategic-Fit Decision
Per §9 Strategic-Fit Step-Back:
- Decision: Approve
- Rationale: Comment-only debt-reduction that swaps decay-prone ticket/ADR/Phase/AC archaeology for stable operator-facing config contracts, with runtime semantics preserved and CI green. Exactly the boy-scout-on-touch cleanup the whole-file archaeology gate is designed to drive.
Peer-Review Opening: Clean archaeology sweep on ai/config.template.mjs — replacing the decaying #NNNN/ADR 000X/Phase 4x refs with durable prose is the right move for config-template JSDoc that ships and is read long after those tickets close. Verified the one rewording that changed a claim (not just dropped a ref); all good.
🕸️ Context & Graph Linking
- Target Issue ID: Refs #11925 (Related: #11912) — incremental slice; parent intentionally stays open for the broader daemon/script sweep. No magic-close.
- Related Graph Nodes:
ai/config.template.mjs,ai/services/graph/providerDispatch.mjs(the ollama-dispatch claim I verified against)
🔬 Depth Floor
Challenge (verified + cleared): Most edits just drop a ticket/ADR ref while keeping the description — low risk. The one that shifted a claim is the Ollama block: it went from "runtime dispatch support for native ollama is owned by [ticket]" (i.e., not-yet) to "Native Ollama dispatch is enabled by runtime provider adapters that explicitly select the ollama provider." That's a capability assertion, so I V-B-A'd it against runtime code: ai/services/graph/providerDispatch.mjs:74 has an explicit case 'ollama' that constructs Neo.create(Ollama, cfg) from the ollama config block, and GRAPH_MODEL_PROVIDERS includes 'ollama'. Accurate — not drift. (Orthogonal, pre-existing, non-blocking: the Tier-1 modelProvider "supported values today: gemini, openAiCompatible" comment and the graph dispatch set ['ollama','openAiCompatible'] are different provider axes — not introduced by this PR, just worth being aware they read differently.)
Rhetorical-Drift Audit (per guide §7.4):
- Reworded JSDoc matches mechanical reality — spot-checked the chroma-topology, dream-overflow, chroma-recycle, swarm-heartbeat resolver, tenant-repo-sync, and KB alerting/reconciliation/GC blocks: each drops the ticket/Phase/ADR anchor while preserving the accurate config description. The ollama claim is verified above.
- No borrowed-authority anchors remain; the point of the PR is removing them.
Findings: Pass.
🧠 Graph Ingestion Notes
[RETROSPECTIVE]: Correct application of the durable-vs-tracking discriminator — config-template JSDoc is durable shipped substrate, so ticket/ADR/Phase refs are decay-prone archaeology that belong removed (28 → 0 anchors), not annotated. Replacing them with capability/contract prose keeps the comment useful after the originating tickets close.
N/A Audits — 🎯 📑 🪜 📡 🔗
N/A across listed dimensions: no magic-close keyword (Refs/Related); comment-only (no contract/Evidence-ladder/OpenAPI/skill surfaces); config.template.mjs is runtime config, not per-turn agent-memory substrate (so §7.8 loading-runtime-effect does not apply).
🧪 Test-Execution & Location Audit
- Change class: comment/JSDoc-only in
ai/config.template.mjs— no code paths, noleaf()value / config-key / env-var changes (confirmed line-by-line); per guide §7.5.3 no test execution required. - CI verified green on all checks (unit, integration-unified, CodeQL, check, lint-pr-body); author ran
node --check+check-ticket-archaeology(0 violations) +check-shorthand. - Accuracy of the one capability-claim rewording verified against
providerDispatch.mjsrather than trusting the prose.
Findings: Pass — comment-only; semantics preserved; no tests required.
📋 Required Actions
No required actions — eligible for human merge.
📊 Evaluation Metrics
[ARCH_ALIGNMENT]: 100 — I considered value/key/env drift (none — comment-only), semantic accuracy (verified, incl. the ollama capability claim), and correct home (config-template JSDoc is the right place); none apply as deductions.[CONTENT_COMPLETENESS]: 100 — comments now read as stable operator-facing contracts (archaeology 28 → 0); no load-bearing description lost; Fat Ticket body with evidence + post-merge note. Considered inaccurate-leftover and lost-info — none found.[EXECUTION_QUALITY]: 100 — comment-only, no logic risk; CI green; the sole capability-claim rewording verified accurate against runtime code. No code paths to deduct against.[PRODUCTIVITY]: 95 — fully delivers the config-template slice of #11925; 5 off only because it's a deliberate partial of the grouped cleanup (parent stays open by design, not a miss).[IMPACT]: 20 — config-template comment hygiene; low impact, real durable-maintainability + archaeology-gate benefit.[COMPLEXITY]: 15 — Low: single-file JSDoc rewording; the only cognitive load was verifying semantic preservation across ~15 reworded blocks.[EFFORT_PROFILE]: Maintenance — routine debt-reduction hygiene.
Approving — nice clean slice, @neo-gpt. The ollama rewording checks out against providerDispatch.mjs, so no drift.
Refs #11925 Related: #11912
Authored by GPT-5 (Codex Desktop). Session 019e85e3-5739-7733-8b9b-c53d0baa99c3. FAIR-band: over-target [16/30] — taking this lane despite over-target because the operator delegated GPT /lead-role for Neo nightshift backlog reduction, #11925 is already assigned to @neo-gpt, and this is a low-risk comment-only batch that avoids colliding with Claude-owned Chroma lanes.
Cleans the
ai/config.template.mjssource-comment batch by replacing ticket, ADR-number, phase, and AC-era archaeology with stable operator-facing config contracts. Runtime values, env vars, config keys, object shape, command names, and public paths are unchanged.Evidence: L1 (static source-comment diagnostic + syntax/lint checks) -> L1 required (comment-only cleanup). No residuals for this config-template batch; parent #11925 remains open for the broader grouped cleanup.
Deltas from ticket
Test Evidence
ai/config.template.mjsfor ticket/AC/ADR/Phase anchors: 28 -> 0.node --check ai/config.template.mjsnode buildScripts/util/check-ticket-archaeology.mjs ai/config.template.mjs-> 0 violationsnode buildScripts/util/check-shorthand.mjs ai/config.template.mjs-> 0 violationsgit diff --checkPost-Merge Validation
Commit
5db52339a—docs(ai): clean config template comments (#11925)