Skip to content

fix: two silent failures in Nyquist validation layer#827

Open
Bantuson wants to merge 3 commits intogsd-build:mainfrom
Bantuson:feature/nyquist-validation-layer
Open

fix: two silent failures in Nyquist validation layer#827
Bantuson wants to merge 3 commits intogsd-build:mainfrom
Bantuson:feature/nyquist-validation-layer

Conversation

@Bantuson
Copy link
Contributor

Summary

  • new-project.md never wrote nyquist_validation to config.json — agents reading config directly treated absent key as falsy, silently disabling validation
  • Step 5.5 in plan-phase.md was narrative markdown that Claude skipped under context pressure — no enforcement, no gate, no catch

Changes

  • Write nyquist_validation: depth !== "quick" to both config blocks in new-project.md
  • All agent skip conditions: "is false" → "explicitly set to false; absent = enabled"
  • Step 5.5 now MANDATORY with Write tool requirement + file-existence verification
  • Step 7.5 gates planner spawn on VALIDATION.md presence
  • Check 8e blocks Dimension 8 if VALIDATION.md missing
  • Health checks W008 (absent key) and W009 (RESEARCH without VALIDATION)
  • addNyquistKey repair action for /gsd:health --repair

Test plan

  • grep -rn "nyquist_validation" . --include="*.md" --include="*.cjs" — all refs use "explicitly false" pattern
  • New project with standard depth → config.json has nyquist_validation: true
  • New project with quick depth → config.json has nyquist_validation: false
  • Remove key from config → plan-phase still runs Nyquist steps
  • /gsd:health on project with absent key → W008
  • Phase with RESEARCH.md Validation Architecture but no VALIDATION.md → W009
  • /gsd:health --repair → adds key to config

🤖 Generated with Claude Code

Bantuson and others added 3 commits February 21, 2026 20:40
…ompt conventions

Reduces token overhead of Dimension 8 and related agent additions by ~37%
with no behavioral change. Removes theory explanation, dead XML tags
(<manual>, <sampling_rate>), aspirational execution tracking, and
documentation-density prose from runtime agent bodies.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
…ip conditions

new-project.md never wrote the key, so agents reading config directly treated
absent as falsy — silently disabling validation. Now both config blocks write
`nyquist_validation: depth !== "quick"`. All agent skip conditions changed from
"is false" to "explicitly set to false; absent = enabled".

Co-Authored-By: Claude Opus 4.6 <[email protected]>
Step 5.5 was narrative markdown that Claude skipped under context pressure.
Now MANDATORY with Write tool requirement and file-existence verification.
Step 7.5 gates planner spawn on VALIDATION.md presence. Check 8e blocks
Dimension 8 if file missing. Health checks W008/W009 detect drift.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant