Skip to content

chore(docs)!: regenerate the recipe corpus after the coordinator rename - #183

Merged
github-actions[bot] merged 1 commit into
mainfrom
feat/w51-coordinator-rename
Oct 24, 2026
Merged

github-actions[bot] merged 1 commit into
mainfrom
feat/w51-coordinator-rename

Conversation

@aitrawog

Copy link
Copy Markdown
Contributor

Summary

The coordinator repo was renamed opencharly/pod-crabbox ->
opencharly/pod-crabbox-coordinator (W5.1). This PR advances this repo's
marketplace submodule from 42b8789 to d0d55cc (the merged corpus main) and
regenerates the generated content with the pinned docs toolchain.

Generated changes (5 files + the submodule pointer):

  • src/content/docs/recipes/automation/crabbox-deploy.md — both coordinator
    references now name pod-crabbox-coordinator.
  • src/content/docs/recipes/check/crabbox.md — the coordinator link text.
  • src/content/docs/recipes/index.md — the charly-crabbox description and the
    internals index entry.
  • src/content/docs/recipes/internals/plugin-nerdctl.md ->
    plugin-containerd.md — the projection of marketplace#572
    (plugin-nerdctl -> plugin-containerd), which is an ancestor of
    d0d55cc and therefore unavoidable in any advance of this pin. Its new
    content (the verb:containerd section) is that source's change, not this
    cutover's.

Scope boundary: the catalog reference pages are NOT in this diff. The
reference/candy/…, reference/box/… and reference/plugin/… pages are
generated from the charly source tree this repo pins in
.github/workflows/deploy.yml (bafd8dbc…, 2026-10-16), not from the
marketplace. That pin is 8 days behind charly main, and advancing it is a
separate docs-pin wave (measured at 67 modified + 48 new pages) that first needs
a charly PR advancing its nested box/cachyos gitlink to the merged
distro-cachyos main. Both are tracked in opencharly/opencharly#657.

How tested

The docs toolchain was reproduced exactly as the deploy workflow builds it:
charly at bafd8dbc… (recursive), umbrella at e631aacf…, plugin-docs at
v2026.289.0814, built with TMPDIR on /var/tmp (the /tmp quota blocks the
Go $WORK write otherwise), and the docs-corpus wiring candy generated from
.github/docs-corpus/pins.tsv by build_wiring.py first (omitting that step
fails the link gate — measured).

# head ce915087b2042453c1cd7616a11699271c535065 (git rev-parse HEAD)
$ git diff --cached --numstat -- marketplace
1	1	marketplace

$ git diff --numstat
2	2	src/content/docs/recipes/automation/crabbox-deploy.md
1	1	src/content/docs/recipes/check/crabbox.md
2	2	src/content/docs/recipes/index.md
0	61	src/content/docs/recipes/internals/plugin-nerdctl.md
(plus the new recipes/internals/plugin-containerd.md, 61 lines)

$ <generator> generate --root <charly> --narrative <umbrella> \
    --plugins ./marketplace --out ./src/content/docs
charly docs: 395 recipe pages, 194 plugin pages (205 provider words), 79 cli pages,
801 candy pages, 201 box pages (1676 generated pages cleared before regeneration)
rc=0

# SECOND run, proven a no-op:
status identical: YES
numstat identical: YES
hashes identical: YES

A control run at the PREVIOUS marketplace pin reproduced the committed tree with
zero diff, so the toolchain and every pin in the deploy workflow are proven
before the bump.

Rulebook compliance

  • R0 — /charly-build:docs, /charly-tools:docs-site,
    /charly-internals:marketplace, /charly-internals:git-workflow,
    /charly-internals:cutover-policy, /charly-internals:strict-policy were
    loaded before the first tool action.
  • R1 — two anomalies were RCA'd before remediation: the omitted
    build_wiring.py step (mechanism: the catalog wiring candy is what makes the
    plugin pages exist; missed control: reproducing the generator command without
    the workflow's preceding step; root fix: run the workflow in order) and the
    Go $WORK disk quota exceeded (mechanism: TMPDIR on the full /tmp; root
    fix: TMPDIR=/var/tmp/...). Zero warnings on the final run.
  • R2/R3 — the corpus is regenerated, never hand-edited; no workaround.
  • R4 — no documented command changed.
  • R5 — every marketplace-derived coordinator reference updates in this
    commit; the catalog generator's stale pin is named above with its owning wave.
  • R6 — git status read first; no force-push, no bypass.
  • R7 — the emitted corpus is validated at its boundary by the real generator
    on the committed tree, and a second run is proven a no-op.
  • R8 — no live service boundary is crossed.
  • R9 — the generator binary was built from the pinned plugin-docs
    v2026.289.0814; the charly tree is the deploy workflow's pinned commit.
  • R10 — docs/corpus change class; the gate is the generation determinism
    proof and the control run, pasted above.

Change classification

Generated-corpus regeneration + a submodule pin. Attribution tier:
fully tested and validated — the change-class generation gate ran on the final
tree, its changed paths executed live, and the second run is a no-op.

Filed issues

The catalog-page advance is a separate pin wave, tracked in
opencharly/opencharly#657 (the W5.1/W5.2 tracking issue). It is not a finding
on this PR: this PR's generation source is the marketplace, and its claim is
scoped to that source.

Agent: containerd-crabbox-program/w51 · session 8b1c01cf-7f79-4a75-bff8-240415a06208
Assisted-by: Claude Code deepseek-v4.1-flash:cloud (fully tested and validated)

- bump the marketplace submodule 42b8789 -> d0d55cc: the merged corpus with
  the coordinator repo rename (marketplace#571) and #572's
  plugin-nerdctl -> plugin-containerd projection, an ancestor of that main
- regenerate: the crabbox recipe pages name pod-crabbox-coordinator and the
  internals recipe follows #572

The catalog reference pages are generated from this repo's pinned charly
CI-time commit, not the marketplace; advancing them is the separate docs pin
wave tracked in opencharly/opencharly#657.

A second generation is a no-op.

Assisted-by: Claude Code deepseek-v4.1-flash:cloud (fully tested and validated)
@github-actions

Copy link
Copy Markdown

Review — PASS

What the diff shows

The PR is a generated-corpus regeneration plus a submodule advance. Re-deriving each claim against the provided state:

  • Submodule pointer — marketplace moves 42b8789… → d0d55cc…, exactly as the body states. ✓
  • automation/crabbox-deploy.md — both pod-crabbox candy references become pod-crabbox-coordinator (line 18 narrative, line 45 plan-checks list). No broken links; only text changed. ✓
  • check/crabbox.md — the parenthetical repo name opencharly/pod-crabbox → opencharly/pod-crabbox-coordinator; the /recipes/crabbox/crabbox-coordinator/ link target (a skill page, not the renamed repo) is untouched. ✓
  • index.md — charly-crabbox description now says pod-crabbox-coordinator, and the internals index entry plugin-nerdctl → plugin-containerd matches the renamed page. ✓
  • plugin-nerdctl.md → plugin-containerd.md — title, H1, and "Use when" updated, plus a new verb:containerd section. The body honestly attributes this substantive section to marketplace#572 (an ancestor of d0d55cc, hence unavoidable in any advance of the pin) rather than to the cutover. No dangling reference to the old name survives in the diff, and the old path is removed (rename), so there is no leftover legacy file.

Body honesty

  • The changed-file accounting reconciles: the "5 files" corresponds to the five numstat content entries (the rename counts as delete+add: 0 61 old + 61-line new), and "the submodule pointer" is the separate 1 1 marketplace entry — matching the pasted numstat. No count contradiction with the 5-path git view (the rename collapses to one path).
  • The scope-boundary claim is true of this diff: no reference/candy|box|plugin/… pages appear here. The deferral to W5.1/W5.2: rename the coordinator to pod-crabbox-coordinator, then create pod-crabbox as the lease base image opencharly#657 is a scoping statement, not an unbacked pass claim.
  • Testing evidence (generator counts, rc=0, second-run no-op, control run at the prior pin) is internally consistent and is the appropriate gate for a docs/generated-corpus change class. These are local-run attestations I cannot re-execute, but nothing in the diff contradicts them, and the change itself (text substitutions + one generated page) is exactly what a clean regeneration of that rename would produce.

Security / scope / tests

  • No secrets, injection surface, dependency, or privilege change — pure documentation content and a submodule pin.
  • The "test" for this change class is generation determinism, which the body documents; that is proportionate.
  • No comments exist (<comment_thread> empty), so there is no maintainer sign-off to weigh and no stale claim to disposition; the change stands on its own evidence.

Non-blocking notes

  • The prose "5 files + the submodule pointer" reads as 6 to a casual reader even though it is numstat-consistent; a future edit could say "5 generated-content entries (one of them a rename) + the submodule pointer" for clarity.
  • The added verb:containerd table is carried in via the pin advance; it is disclosed, not smuggled, but reviewers of the marketplace#572 change own its correctness.

No blocking defects found: the change does what the body claims, is coherent, complete, and honestly attributed.

Verdict: PASS


ollama-cloud/deepseek-v4.1-flash — action-review.

View action run

@github-actions
github-actions Bot enabled auto-merge (squash) October 24, 2026 06:45
@github-actions
github-actions Bot merged commit 1851dcd into main Oct 24, 2026
4 checks passed
charly-auto-merge Bot added a commit that referenced this pull request Oct 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants