This is the record of an abcd-managed repository

abcdBetav0.16.2 · 2026-11-06

Development record

Quoted YAML nulls split capture and record-lint verdicts: capture unquotes before IsNull, record-lint reads the raw value

issueresolvedmajoriss-285

Quoted YAML nulls split capture and record-lint verdicts: capture unquotes before IsNull, record-lint reads the raw value

An issue record carrying impact: "NULL": capture's decodeScalar (internal/core/capture/parse.go:188) strips the double quotes before validateStrict calls frontmatter.IsNull, so abcd capture resolve accepts the record — while record-lint's checkIssueImpact reads the raw value with quotes intact, ParseImpact fails, and the issue_impact_valid blocker fires on the record capture just accepted. The comment at internal/core/lint/lint.go:2397 claims this split is impossible. PR #294 widened the disagreement window from one spelling ("null") to three; its own tests pin both sides of the contradiction (internal/core/frontmatter/frontmatter_test.go:76 vs internal/core/lifeboat/graveyard_abandoned_test.go:167). The fix is to normalise quoting on one side, not to widen literal sets. Evidence: .abcd/work/reviews/2026-08-19-pr-294-null-predicate/ (F1, F2). Forge mirror: #372

Frontmatter

idiss-285
typeissue
lifecycleresolved
severitymajor

mentions3