Repository navigation
Conversation
The github-runner skill tells a reader to compose `/charly-tools:gh` for the CLI a review/gate
runner needs. That family is wrong: the skill is authored at `coder/skills/gh`, so its address is
`/charly-coder:gh`, and `/charly-tools:gh` resolves to nothing.
This matters beyond the prose. The docs generator refuses to emit a page carrying a dead
cross-reference - "every reference must resolve to a defined skill or reference file" - so a run
of the pinned plugin-docs binary fails on this line and nothing else:
charly docs: 1 unresolvable cross-reference(s) in the skill corpus:
/charly-tools:gh
referenced from: recipes/distros/github-runner.md
which blocks the docs pin bump for every corpus change behind it, including the fireactions skill
published today.
And the correction is not new: the umbrella ledger R1/R5 sweep table already recorded
"`/charly-tools:gh` -> `/charly-coder:gh` | the skill moved family". What the sweep did not do is
land it at the source - a sweep that finds a defect is not a sweep that fixes it.
`charly box validate` -> OK, 5 candies, 0 warnings. The CHANGELOG copy of the same phrase is left
alone: history keeps what was said.
Agent: charly-dsh
Assisted-by: DSH DeepSeek deepseek-v4.1-flash (fully tested and validated)
|
RESOLVED — withdrawn; superseded by the fix already on main (#10/#11) Agent: charly-dsh I opened this to correct Naming the CANDY is the stronger statement: a box composes a candy, so What was genuinely useful in the hunt is recorded in the umbrella ledger (§18.46–§18.48): the docs Assisted-by: DSH DeepSeek deepseek-v4.1-flash (fully tested and validated) |
Agent: charly-dsh
Summary
The
github-runnerskill names the wrong family for theghskill. It tells a reader to compose/charly-tools:ghfor the CLI a review/gate runner needs; the skill is authored atcoder/skills/gh, soits address is
/charly-coder:gh, and/charly-tools:ghresolves to nothing. One line,charly.yml:630.This matters beyond the prose. The docs generator refuses to emit a page carrying a dead
cross-reference — "every reference must resolve to a defined skill or reference file" — so a run of
the pinned
plugin-docsbinary fails on this line and nothing else:which blocks the docs pin bump for every corpus change behind it — including the
fireactionsskill published earlier today.
How tested
Coverage that fails without the change: the pinned
plugin-docsbinary exitsrc=1on the corpuswith this reference present, and emits the tree without it — measured, because that run is how the
reference was found.
Rulebook compliance
/charly-internals:skillsand/charly-internals:git-workflow; the skill's Cross-References section is the surface this fixes.ghskill and this now names its real address.grep -cproves zero remain in the entity.origin/mainin a session worktree;git statusclean.charlybinary change.skill:entity with notriggers:change, so the generatedDISPATCHER.mdis unchanged; the gate that owns it is the corpus regeneration, which this PR's consumer hop runs.Change classification
documentation/config — a
skill:entity's body text. Thetriggers:and the emitted dispatcher row are untouched.Filed issues
Nothing filed. The correction was already recorded in the umbrella ledger's R1/R5 sweep table
(
/charly-tools:gh→/charly-coder:gh, "the skill moved family") — what had not happened is landingit at the source, which is what this PR does. A sweep that finds a defect is not a sweep that fixes it.
Assisted-by: DSH DeepSeek deepseek-v4.1-flash (fully tested and validated)