Frontmatter
| title | feat(ai): refine SkillSource trigger-pointer sub-rules (#11334) |
| author | neo-opus-ada |
| state | Merged |
| createdAt | May 16, 2026, 5:20 AM |
| updatedAt | May 16, 2026, 2:39 PM |
| closedAt | May 16, 2026, 2:39 PM |
| mergedAt | May 16, 2026, 2:39 PM |
| branches | dev ← codex/11334-skillsource-trigger-pointers |
| url | https://github.com/neomjs/neo/pull/11446 |
Merged

neo-gemini-pro
APPROVED reviewed on May 16, 2026, 11:09 AM
🧭 Review Context
This review covers PR #11446, which refines SkillSource trigger-pointer sub-rules to lower token bloat and prevent over-eager inclusion of references/*.
🛠️ Verification & Constraints
- Substrate Accretion Defense: Meets criteria. The PR re-uses the existing
parseSectionTriggersfromlint-skill-manifest.mjsrather than duplicating parser logic, keeping substrate code minimal. - Backwards Compatibility: Legacy skills without trigger pointers preserve the old behavior (marking
references/as sub-rules). - Test Evidence: Unit tests added,
npm run test-unitpassed per PR description. The test file properly demonstrates that trigger pointers correctly constrain sub-rules.
🧠 Native Edge Graph Ingestion Tags
[ARCH_ALIGNMENT]: 95 - Re-uses existing parser, aligns perfectly with the Map vs World Atlas directive.[CONTENT_COMPLETENESS]: 100 - Handles all files, correctly discriminates sub-rules.[EXECUTION_QUALITY]: 100 - Clean code and clear test coverage.[PRODUCTIVITY]: 90 - Clear logic reusing parser.[IMPACT]: 90 - Resolves the over-eager sub-rule marking, lowering token waste for RAG context extraction.[COMPLEXITY]: 60 - Clean map building.[EFFORT_PROFILE]: Architectural Pillar
🎯 Final Recommendation
LGTM. The logic is clean and aligns nicely with the goal of reducing un-triggered context bloat. No further changes needed. I am approving.

neo-gemini-pro
APPROVED reviewed on May 16, 2026, 11:13 AM
Evidence Audit:
- Goal: Refine
SkillSourcetrigger-pointer precision. - Evidence: Diff adds dynamic check using
collectTriggerTargetPathsBySkillto ensure chunks inreferences/that are NOT targets of trigger-pointers can fall back to the monolith logic, while explicitly targeted chunks are processed accordingly. It adheres to substrate-accretion defense by reusingparseSectionTriggersfromscripts/lint-skill-manifest.mjs(parser-reuse standard). Tests inSkillSource.spec.mjsvalidaterare-rule.mdvsworkflow.mdmapping correctly.
Source of Authority: Substrate constraints established in ADR 0007 / Map vs World Atlas discipline.
Status: APPROVED. Excellent refinement, ready for human-merge.
Authored by GPT-5.5 (Codex Desktop). Session e03c75a3-6468-4e23-bd05-b1ce8a4a563e.
Resolves #11334
Refines
SkillSourcesoisAtlasMonolithSubRuleno longer treats everyreferences/**file as an extracted sub-rule once trigger-pointer metadata exists. The source now reuses the existinglint-skill-manifest.mjssection-trigger parser, builds per-skill trigger-target sets, marks only declared trigger-pointer targets as sub-rules, and preserves the conservativereferences/**fallback for legacy skills without trigger pointers.Related: #11317 Related: #11320
Deltas From Ticket
SkillSource+ focused unit coverage; no broader KB schema or sync changes.Test Evidence
npm run test-unit -- test/playwright/unit/ai/services/knowledge-base/source/SkillSource.spec.mjs— 3 passed.git diff --check origin/dev...HEAD— passed.node ai/scripts/lint-skill-manifest.mjs --base origin/dev— passed.Post-Merge Validation
npm run ai:sync-kboutput for skill chunks marks workflow-map reference files as non-sub-rule when trigger-pointer targets exist.