feat: lint reports sections that hold only template placeholders as Unfilled Template Sections (#94)
CI / verify (push) Successful in 5m16s
CI / pwsh (push) Successful in 2m3s
Release / release (push) Successful in 34s

Files changed:
- CHANGES.md
- EVALS.md
- VERSION
- instructions/wiki-lint/SKILL.md
- instructions/wiki-manage/SKILL.md
- tools/CONTRACT.md
- tools/chemenu/blocks.py
- tools/chemenu/commands/lint.py
- tools/chemenu/evals/scorecard.py
- tools/chemenu/lint_core.py
- tools/chemenu/tests/test_blocks.py
- tools/chemenu/tests/test_evals.py
- tools/chemenu/tests/test_lint.py
- tools/chemenu/tests/test_pipeline_l0.py
- types/type-spec.md

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
This commit is contained in:
torbenandClaude Opus 5.5 committed 2026-10-04 17:11:37 +02:00
1 parent af8bcb5b57
commit a2a6baa265
15 files changed
+320 -5

No files matched your search

+8 -1
View File
@@ -47,9 +47,16 @@ mechanical half looks exactly like a complete one.
names on Windows and macOS, filename/title mismatches, broken
`raw_files:` references, raw files claimed by more than one source page, invalid type paths,
schema failures, citation/frontmatter drift, and edges whose label is missing, not authorised
by the source collection, or redundant beside a specific label on the reverse direction.
by the source collection, or redundant beside a specific label on the reverse direction, and
pages with a section that still holds nothing but its template's `TODO` placeholders.
**Do not re-derive any of it by reading pages.**
*Unfilled Template Sections* is not mechanical either - do **not** clear it under step 7.
Filling a section is authoring from a source (`wiki-manage`, AGENTS.md invariant 3), and
deleting its placeholders to quiet the finding leaves the same unwritten page without the
marker that made it visible. Retiring the page instead is `instructions/page-lifecycle.md`.
Report the pages at step 9.
The *Redundant see-also* section is the one that looks mechanical and is not - do **not**
clear it under step 7. It names a `see-also` edge standing beside a specific label on the
reverse direction, and the obvious repair destroys the thing worth keeping: `xref remove`
+2 -1
View File
@@ -47,7 +47,8 @@ requirements come from `tools/wikitool types describe <type>`.
4. **Gather what the wiki already knows** - `tools/wikitool search` again, for the surrounding
subjects - so the prose connects to existing pages instead of restating them.
5. **Draft.** Fill in the generated skeleton's TODO sections, following the tone rules in
5. **Draft.** Fill in the generated skeleton's TODO sections - `lint` reports a section still
made of nothing else as unfilled - following the tone rules in
`kb/CONVENTIONS.md` § Tone. If `provenance:` is `sourced` or `mixed`, cite
hard facts as you write them with `tools/wikitool cite add --page "<Title>" --source
"Source - X"`, which also adds `X` to `sources:` - paste the `[^cite-id]` marker it prints.