Development record
commands/lint.md documented repolint JSON findings as carrying 'a file and line (line 0 means the finding is not tied to one line)', but repolint.go tags Line as json:line,omitempty so a zero line is omitted entirely, never emitted as 0. Line-less findings are the majority (only docs-currency/privacy-hygiene/identity-positioning set Line). An agent following the doc and testing line==0, or formatting file:line, produces file:undefined. The brief 16-lint.md carries the true contract but named only two line-carrying rules, omitting identity-positioning (rule_positioning.go also sets Line). commands/prepare-this-repo.md implied the same line sentinel.
commands/lint.md documented repolint JSON findings as carrying 'a file and line (line 0 means the finding is not tied to one line)', but repolint.go tags Line as json:line,omitempty so a zero line is omitted entirely, never emitted as 0. Line-less findings are the majority (only docs-currency/privacy-hygiene/identity-positioning set Line). An agent following the doc and testing line==0, or formatting file:line, produces file:undefined. The brief 16-lint.md carries the true contract but named only two line-carrying rules, omitting identity-positioning (rule_positioning.go also sets Line). commands/prepare-this-repo.md implied the same line sentinel.
Frontmatter
| id | iss-2608211144265046 |
|---|---|
| type | issue |
| lifecycle | resolved |
| severity | nitpick |
.abcd/work/issues/resolved/iss-2608211144265046-lint-md-line-zero-sentinel-never-emitted.md
open on GitHub ↗ · commit history ↗
mentions1
- dcn-26082100000000012026-08-21 — Bug-hunt round 4, branch bughunt-b/round-4. Baseline (make preflight