docs(kyberforge): refresh the apm-workflow exemplar figures after its retrofit

body-discipline.md and contract.md both cite apm-workflow by hard number
as the reference dispatch shape, and instruct authors to calibrate against
its body word count. The retrofit in 1e4aab5 moved every one of those
figures: body 421 -> 237, whole-file 554 -> 304, references 3,006 ->
3,222. Measured, not estimated.

The quoted closing line was stale too -- it now carries a continuation
clause, so it is quoted with an ellipsis rather than as a full sentence.

These are positive exemplars in live guidance, so they are refreshed
rather than pinned. That is the opposite treatment from the git-commits
negative example in the same file, which is pinned to 5e23250 precisely
so it keeps describing the pre-retrofit state. ADR-0020 carries the same
figures and is deliberately left alone: it self-pins every citation to
base commit f9b919d, and refreshing it would destroy the record of what
the decision was taken against.

Refs #99

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MWb5RQgCL1ye7cGp2RPb2u
This commit is contained in:
2026-08-30 16:31:43 +00:00
parent aa982b9d26
commit 264a5dbd67
4 changed files with 12 additions and 12 deletions

View File

@@ -80,13 +80,13 @@ table** plus the gates common to every branch, and each flow lives in its own se
`references/` file. Inlining all of them is a FAIL regardless of word count, because every `references/` file. Inlining all of them is a FAIL regardless of word count, because every
invocation then pays for every branch it did not take. invocation then pays for every branch it did not take.
The reference shape in this repo is `apm-workflow`: a **421-word body** dispatching to roughly The reference shape in this repo is `apm-workflow`: a **237-word body** dispatching to roughly
3,000 words of references across five mutually exclusive invocations. Its whole-file count is 554 3,200 words of references across five mutually exclusive invocations. Its whole-file count is 304
words — cite 421 when calibrating a body, or the conflation this section warns against reappears words — cite 237 when calibrating a body, or the conflation this section warns against reappears
in the finding itself. in the finding itself.
Note its wiring: a three-column table (invocation, action, reference file) closed by one line, Note its wiring: a three-column table (invocation, action, reference file) closed by one line,
*"Read only the reference file matching the requested action."* That is the endorsed shape, and it *"Read only the reference file matching the requested action …"* That is the endorsed shape, and it
is why the literal-conditional requirement above exempts a body that dispatches. Do not flag it. is why the literal-conditional requirement above exempts a body that dispatches. Do not flag it.
## Gotchas sections ## Gotchas sections

View File

@@ -120,8 +120,8 @@ A generic pointer ("see references/ for details") is a Vale error — the agent
**Dispatch is mandatory at two or more mutually exclusive flows.** The body carries the dispatch **Dispatch is mandatory at two or more mutually exclusive flows.** The body carries the dispatch
table and the gates common to every branch; each flow gets its own self-contained `references/` table and the gates common to every branch; each flow gets its own self-contained `references/`
file. Exemplar: the `apm-workflow` skill — a **421-word body** dispatching to 3,006 words of file. Exemplar: the `apm-workflow` skill — a **237-word body** dispatching to 3,222 words of
references. Calibrate against 421: that file's whole-file count is 554 words, and aiming at that references. Calibrate against 237: that file's whole-file count is 304 words, and aiming at that
number instead overshoots the body budget by ~30%. number instead overshoots the body budget by ~30%.
**Length.** 600 words SUGGESTION, 900 words FAIL, counting the **body only** — everything after **Length.** 600 words SUGGESTION, 900 words FAIL, counting the **body only** — everything after

View File

@@ -80,13 +80,13 @@ table** plus the gates common to every branch, and each flow lives in its own se
`references/` file. Inlining all of them is a FAIL regardless of word count, because every `references/` file. Inlining all of them is a FAIL regardless of word count, because every
invocation then pays for every branch it did not take. invocation then pays for every branch it did not take.
The reference shape in this repo is `apm-workflow`: a **421-word body** dispatching to roughly The reference shape in this repo is `apm-workflow`: a **237-word body** dispatching to roughly
3,000 words of references across five mutually exclusive invocations. Its whole-file count is 554 3,200 words of references across five mutually exclusive invocations. Its whole-file count is 304
words — cite 421 when calibrating a body, or the conflation this section warns against reappears words — cite 237 when calibrating a body, or the conflation this section warns against reappears
in the finding itself. in the finding itself.
Note its wiring: a three-column table (invocation, action, reference file) closed by one line, Note its wiring: a three-column table (invocation, action, reference file) closed by one line,
*"Read only the reference file matching the requested action."* That is the endorsed shape, and it *"Read only the reference file matching the requested action …"* That is the endorsed shape, and it
is why the literal-conditional requirement above exempts a body that dispatches. Do not flag it. is why the literal-conditional requirement above exempts a body that dispatches. Do not flag it.
## Gotchas sections ## Gotchas sections

View File

@@ -120,8 +120,8 @@ A generic pointer ("see references/ for details") is a Vale error — the agent
**Dispatch is mandatory at two or more mutually exclusive flows.** The body carries the dispatch **Dispatch is mandatory at two or more mutually exclusive flows.** The body carries the dispatch
table and the gates common to every branch; each flow gets its own self-contained `references/` table and the gates common to every branch; each flow gets its own self-contained `references/`
file. Exemplar: the `apm-workflow` skill — a **421-word body** dispatching to 3,006 words of file. Exemplar: the `apm-workflow` skill — a **237-word body** dispatching to 3,222 words of
references. Calibrate against 421: that file's whole-file count is 554 words, and aiming at that references. Calibrate against 237: that file's whole-file count is 304 words, and aiming at that
number instead overshoots the body budget by ~30%. number instead overshoots the body budget by ~30%.
**Length.** 600 words SUGGESTION, 900 words FAIL, counting the **body only** — everything after **Length.** 600 words SUGGESTION, 900 words FAIL, counting the **body only** — everything after