instructions: CONTRACT.md drops other files' step counts from copy-in-checklist rationale (#130)
CI / verify (push) Successful in 56s
Release / release (push) Successful in 35s

Files changed:
- CHANGES.md
- VERSION
- instructions/CONTRACT.md
This commit is contained in:
torben committed 2026-09-22 22:40:05 +02:00
1 parent 62d1c5e636
commit 50171ca099
3 files changed
+42 -8

No files matched your search

+23 -1
View File
@@ -59,7 +59,7 @@ concern - readable here, never shipped as something to parse.
--- ---
## 7.0.0-beta.15 - 2026-09-22 - Weekly review proposes task new/task close; tracker gains a closing write path ## 7.0.0-beta.16 - 2026-09-22 - instructions/CONTRACT.md drops other files' step counts from the copy-in-checklist rationale
**Author:** Torben Nehmer **Author:** Torben Nehmer
@@ -90,6 +90,7 @@ concern - readable here, never shipped as something to parse.
- Skill-Namensfamilien: weekly-review -> gtd-weekly-review, dritte Person in allen Descriptions - Skill-Namensfamilien: weekly-review -> gtd-weekly-review, dritte Person in allen Descriptions
- Veraltete Skill-Aufzaehlungen in der Instruction-Schicht nachgezogen - Veraltete Skill-Aufzaehlungen in der Instruction-Schicht nachgezogen
- gtd-weekly-review: task new nachgezogen, veralteter Begründungszeiger korrigiert - gtd-weekly-review: task new nachgezogen, veralteter Begründungszeiger korrigiert
- instructions/CONTRACT.md drops other files' step counts from the copy-in-checklist rationale
<!-- /wikitool:bumps --> <!-- /wikitool:bumps -->
### Typ `project` und Collection `kb/gtd/`: das Vorhaben als eigene Seitenart ### Typ `project` und Collection `kb/gtd/`: das Vorhaben als eigene Seitenart
@@ -469,6 +470,27 @@ stand, sind auf eine zusammengezogen; die zweite verweist nur noch.
korrekt (zwei Lese-, drei Schreibkommandos) und haelt fest, warum sie bei "anlegen" und "erledigt korrekt (zwei Lese-, drei Schreibkommandos) und haelt fest, warum sie bei "anlegen" und "erledigt
markieren" endet, nie bei "loeschen" oder "aendern". markieren" endet, nie bei "loeschen" oder "aendern".
### instructions/CONTRACT.md drops other files' step counts from the copy-in-checklist rationale
`instructions/CONTRACT.md` § "When a skill carries a copy-in checklist" used to justify the
threshold by citing each other skill's step count by number - evidence that the two-halves test
(length *and* a silently-omittable step) is what actually decides `wiki-ingest`/`wiki-lint`, not a
count fitted after the fact. Nothing kept those numbers in sync with the `SKILL.md` files they
described: one of them had already drifted silently (`wiki-query` cited at six steps where it had
been seven for a while), and the passage itself named only five of the eight skills that exist -
neither wrong number failed any check, because `docs verify` reads presence, not another file's
prose (`instructions/dev/doc-pull-through.md`).
Of the three fixes considered - a `docs verify` check against a codified step-counting convention,
a qualitative rewrite that drops the numbers, or tracking the sync as a manual `doc-pull-through.md`
duty - the qualitative rewrite won: it is the only one of the three that removes the possibility of
drift rather than catching or documenting it, and the per-skill counts were decoration for the
two-halves test, never load-bearing for it. The passage now names which skills qualify and why,
without citing a number that belongs to a file it does not own. Today's counts were checked against
the actual files before this bump (`wiki-ingest` twelve, `wiki-lint` nine, `wiki-manage` two flows
of seven, `wiki-query` seven, `wiki-status` five, `gtd-weekly-review` five, `stack-dev` six,
`stack-close` four) - all correct, confirming the passage was not itself wrong, only unguarded.
--- ---
## 6.2.0 - 2026-09-19 - Entity-Subtyp project nach codebase umbenannt ## 6.2.0 - 2026-09-19 - Entity-Subtyp project nach codebase umbenannt
+1 -1
View File
@@ -1 +1 @@
7.0.0-beta.15 7.0.0-beta.16
+18 -6
View File
@@ -330,15 +330,27 @@ required. Length alone is not the problem: a long flow of tool calls announces i
because the next call fails without the previous one. because the next call fails without the previous one.
Two skills qualify today, and the block names each of their numbered steps once, verbatim: Two skills qualify today, and the block names each of their numbered steps once, verbatim:
`wiki-ingest` (twelve steps, of which `## Not Extracted` in step 6, the coverage check in step 10 `wiki-ingest`, whose flow is long *and* carries steps that fail silently - `## Not Extracted`,
and the lint cadence in step 12 all fail quietly) and `wiki-lint` (nine, with steps 3-6 pure the coverage check, and the lint cadence all skip past with no tool error and no validator to
judgment). The rest do not, and the reason is worth stating so nobody adds one out of symmetry: catch the omission - and `wiki-lint`, whose flow contains several steps that are pure judgment
`wiki-manage` has two flows of seven, `wiki-query` seven, `wiki-status` five and calls the same way. The rest do not, and the reason is worth stating so nobody adds one out of
`gtd-weekly-review` five - none of them long enough for a reader to lose the thread. symmetry: every other skill's flow is short enough, and fails loudly enough step to step, that a
reader cannot lose the thread even without a checklist - `wiki-manage`'s two flows, `wiki-query`,
`wiki-status` and `gtd-weekly-review` all clear that bar.
<!-- dist:strip-start --> <!-- dist:strip-start -->
Dev-instance-only: `stack-dev` (six) and `stack-close` (four) sit under the same threshold. Dev-instance-only: `stack-dev` and `stack-close` sit under the same threshold, for the same
reason.
<!-- dist:strip-end --> <!-- dist:strip-end -->
None of this is counted by number on purpose: a per-skill step count is a claim about a file this
one does not own, and a claim like that can drift silently the moment the other file changes.
This passage once cited `wiki-query` at six steps where it had already been seven for a while, and
separately named only five of the eight skills that exist - neither wrong number made any check go
red, because nothing here reads another file's prose. The two-halves test above (length *and* a
silently-omittable step) is what actually does the work of picking `wiki-ingest` and `wiki-lint`
out from the rest; a count was never load-bearing for that test, only decoration for it, and
dropping it removes the one part of this passage that could be wrong without anyone noticing.
The block says that it is to be copied and carried, not read. A checklist read once is the table The block says that it is to be copied and carried, not read. A checklist read once is the table
of contents it replaced. of contents it replaced.