Contents

Documentation verification

Validate the complete teaching tree before publishing it. Run source commands from a claimed lane through yoke dev run --lane <lane> --. Add new source pages to git before validation; a gitless tree such as an installed wheel uses every present page.

Check and publish

python3 -m yoke_core.domain.documentation_render write --root docs/public
python3 -m yoke_core.domain.install_bundle_docs_validation check --root docs/public
python3 -m yoke_core.domain.documentation_residue --root <lane>

Edit nav.yaml and authored pages, then regenerate their navigation. The corpus check verifies the complete nav tree, links and fragments, current derived blocks, privacy, visual text fallbacks and the hard 350-line maximum after wrapping at 80 columns. Every yoke:visual marker needs explanatory prose, a list or a table in the same heading section, before or after the marker. Headings, comments, code, images and link-only paragraphs do not count. Pages above the advisory 20,000-character target need readability review; that target alone does not refuse publication. Use the render measure command for those review notes. Scenario checks still establish whether teaching works.

docs/public is the only committed copy. The yoke-core wheel build validates it and refuses before packaging an invalid corpus, and bundle assembly validates the served corpus again, including gitless wheel and container trees, before delivery. A Yoke source checkout's .yoke/docs is a gitignored copy that yoke dev setup, lane preparation and the checkout's git hooks regenerate; editing it repairs nothing. Successful validation is cached only for that root and its content digest.

Refusals and review signals

Every refusal prints CODE target: detail. Repair: ...; commands exit 1 if any refusal remains. Fix every named target and repeat the failed check.

Code Repair
OVERSIZED_PAGE Split at meaningful topic boundaries and regenerate navigation.
PRIVATE_CONTENT Replace private material with portable placeholders and rebuild.
RETIRED_REFERENCE Cite the current concept-tree home and enforcing command.
STALE_NAV_BLOCK Regenerate navigation blocks from the current tree.
VISUAL_FALLBACK_MISSING Explain the visual in readable Markdown in its section so GitHub readers receive the same teaching.
CORPUS_ROOT_MISSING Restore/select the named source checkout and README.
CORPUS_READ_FAILED Restore readable git metadata and retry.

The navigation contract owns nav and link refusal details. Private content includes concrete personal home paths, iCloud locations, machine-specific temporary captures and private identity assignments. Explicit home placeholders, generic scratch-file recipes and explicitly labeled schema/example identifiers are portable teaching; all-zero identifier examples are synthetic.

The repository's HC-doc-health fails for public corpus defects or retired references. It recursively checks contributor Markdown links and fragments, excluding archived records; those findings are REVIEW warnings, not proof of a public publication failure. Address inaccurate teaching through its actual owner. A warning never grants permission to ignore a required fix.

The retired-reference scan inspects tracked content, including test fixtures and model records. It excludes historical archives, immutable Pack versions, historical release hashes and pytest timing data. Live Pack metadata, model records and consumer tests remain checked. A kept filename at its current nested home is valid.

Verify the exact candidate

Commit all served changes, then verify the declared full candidate and the consumer's actual build evidence:

python3 -m yoke_core.domain.install_bundle_docs_validation verify-candidate --root <lane> --commit <full-sha> --receipt <installed-receipt> --consumer-evidence <build-output>/yoke-docs-build-evidence.json

--receipt is optional when no installed receipt is being verified. The producer contract owns the evidence schema, location, identity rules and exact repairs for CANDIDATE_IDENTITY_MISMATCH and CONSUMER_PROOF_MISSING. Verification checks that HEAD is the declared commit, the checkout is clean, any receipt names that commit and the commit carries a public corpus. Missing proof never falls back to an older corpus or ambient package metadata.

Refresh an installed project

Run yoke project refresh after the release carrying these sources is installed. The installer removes retired files whose bytes still have release/manifest ownership proof. A locally modified file produces install_drift_local_edits and preserves all files; save the edits outside installer-owned paths, restore the recorded release bytes and rerun refresh. Interrupted applies retain their staged candidate record; rerunning refresh recovers exact planned states.

Verification ยท Yoke