Skip to content

L19: Almanac pages for Hermes, node MCP, skills, personas and fleet wizard (HUP-S11.4) - #31

Merged
SaulBuilds merged 7 commits into
hup/n7-chain-precompile-followupsfrom
hup/n7-docs-almanac-retro
Oct 5, 2026
Merged

SaulBuilds merged 7 commits into
hup/n7-chain-precompile-followupsfrom
hup/n7-docs-almanac-retro

Conversation

@SaulBuilds

Copy link
Copy Markdown
Contributor

What

Five member-facing Almanac pages under content/core/:

  • hermes.md, node-mcp.md, skills.md, personas.md, fleet-wizard.md.
  • The personas page uses the approved names (Graft, Pith, Zest, Trellis, Sprout, Crew), with Operator shipping as Crew.
  • Every page has Rule-12 frontmatter and links to the technical pages in citrate-core docs/ instead of copying them.
  • Stack commits: a signed merge of L04 (L04: contract docs use the corrected agent precompiles (F-1) #30) into this branch, and a regenerated content/_generated/content.ts that now indexes the five pages (prebuild regenerates it anyway; the tracked copy is kept in step).

Why

HUP-S11.4 (Almanac + retro): members need pages for the 0.5.0 Hermes features. The core side (g0-formal evidence, A17 amendment draft, retro draft, essay) is on citrate-core hup/n7-docs-almanac-retro.

Evidence

  • On this head (5a28b62): npm run typecheck clean; npm test 110 passed / 4 skipped; npm run build green including verify:bundle; content-lint --strict 0 em-dashes / 0 word findings; truth-lint --no-fetch OK; build-content indexes all pages and regenerating is a no-op after the commit.
  • gitleaks over origin/main..HEAD: no leaks. No compliance-claim phrases in the new pages (disclaimer gate).
  • Lane review (L19): pass-after-fixes. The reviewer fixed the Hermes page deploy-gate link (cc83e22) and checked the pages against the code: port 47204, pairing TTL 600 s, MAX_OUTSTANDING 8, all 14 MCP tool names, persona names/roles/tracks matching personas.toml, the UI strings and the citrate-agent CLI commands.

Pre-existing CI blockers (not from this PR, also failing on main)

NOT done

  • gate-g5-docs flip: needs this PR and the citrate-core docs PR merged after the core #190..#212 stack merges.
  • US-11.4 / WP-S11.4: pages, retro draft and essay are written on branches; closing needs merged PRs and the retro's "at close" section at the v0.5.0 cut.
  • ra-18 (A17 amendment): drafted in citrate-core as status proposed; closes on owner and @rule8 sign-off.
  • The links to citrate-core docs/ point at core main and will not resolve until the core stack merges.

Owner decisions (pending owner sign-off)

  • A17 Rule-3 amendment (citrate-core docs/adr/ADR-2026-10-04-rule3-amendment-1-budget-ambiguities.md), recommended default: accept all eight readings. A-1 (nonce uniqueness vs pruning) and A-2 (taint snapshot at request build) are real choices; A-3..A-8 record what the code already does. No code change either way.
  • These pages repeat defaults that are themselves pending owner sign-off: node MCP port 47204, pairing link 10 min, T0/T1/T2 role names, Guide/Operator default tracks. Publish only after the stacks merge.

External asks

None.

Playbook items

  • gate-g0-formal (closed in citrate-core, paperwork)
  • story-US-11-4 / wp-S11-4 / gate-g5-docs: drafted, close on merge

Stack (merge in this order)

  1. hup/n7-chain-precompile-followups -> main (L04, M5), L04: contract docs use the corrected agent precompiles (F-1) #30
  2. This PR: hup/n7-docs-almanac-retro -> hup/n7-chain-precompile-followups (L19, M7)

Prerequisites: #27 (next bump), the citrate-chain stack #270..#274 (for #30), and the citrate-core stack #190..#212 (for the links here). Main is squash-only with linear history; squash each PR in order and retarget this one to main after #30 lands.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H

SaulBuilds and others added 4 commits October 4, 2026 16:37
…the fleet wizard (HUP-S11.4)

Five member-facing pages under content/core for the Citrate Core 0.5.0
release: Hermes, the node MCP server, skills and verified learning, the
six personas and five tracks (owner-approved names, Operator ships as
Crew), and the fleet wizard. Each page follows the STYLE_GUIDE template,
carries Rule-12 frontmatter (created, branch, author, status), and links
to the technical pages in citrate-core docs/ and the runtime
PERSONAS.md instead of copying them (Rule 9).

Status labels say Implemented (pre-audit), arriving with 0.5.0, and name
what is still pending (owner sign-off defaults, packaged-app and
two-machine runs). Publish after the 0.5.0 stacks merge so the linked
core docs exist on main.

Gates: truth-lint (--no-fetch) OK; content-lint --strict OK (0 em-dashes,
0 word findings); build-content indexes all five pages (104 pages).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H
…cet (L19 review)

The deploy-gate row pointed at FAUCET_IN_APP and "the deploy gate notes in
the core repo". It now links the DeployGate section of src-tauri/formal/README.md
and names the faucet link for what it is (deploy gas, off by default).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H
…tack

Stack order: main -> L04 (contracts/models precompile corrections, F-1)
-> L19 (Almanac core pages, HUP-S11.4).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H
The stack merge brought in L04's regenerated content.ts, which predates
the five content/core pages. npm run build regenerates it anyway
(prebuild); committing the regenerated file keeps the tracked copy in
step with content/ (2 lines, generated by scripts/build-content.mjs).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H
SaulBuilds and others added 2 commits October 4, 2026 20:41
…o (CI fix)

Carries the next 16.3.8 bump and the regenerated address page up the docs
stack so npm audit and truth-lint pass here too.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H
SaulBuilds added a commit that referenced this pull request Oct 5, 2026
Brings in the next 16.3.8 bump (clears the npm audit gate in build) and the
address page regenerated from the current book. content.ts conflict resolved
by regenerating it with npm run content.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H
SaulBuilds added a commit that referenced this pull request Oct 5, 2026
After the merge of #31 the committed page was built by the base generator and
lacked the pointer to the generated precompile page. gen-addresses --check is
now up to date against citrate-chain main (book 0aab474b).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H
…o (genesis activation)

Carries the 40204 agent precompile genesis-activation wording up the docs
stack. content.ts is regenerated from the merged content.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H
@SaulBuilds
SaulBuilds merged commit e54069a into hup/n7-chain-precompile-followups Oct 5, 2026
5 checks passed
@SaulBuilds
SaulBuilds deleted the hup/n7-docs-almanac-retro branch October 5, 2026 04:34
Matr0xshka pushed a commit that referenced this pull request Oct 5, 2026
* docs(contracts/models): corrected precompile addresses and fail-closed calls (F-1)

Federation item F-1, the doc half. The model contracts no longer call the
unserved 0x1000 / 0x1001 / 0x1002 addresses (citrate-chain PR 273, HUP-S7.2):

- ModelRegistry registration is a record only; requestInference calls
  0x0101 MODEL_INFERENCE in its native layout.
- LoRAFactory training and merges run off chain and are recorded by the
  operator (TrainingStarted, MergeRequested, completeTraining,
  completeMerge); inferWithLoRA calls 0x0101 with the adapter id; on-chain
  LoRA arithmetic is 0x0112 LORA_APPLY / 0x0113 LORA_MERGE.
- Every call goes through CitratePrecompiles, which reverts with
  PrecompileUnavailable instead of reading "no answer" as a result.

New "Precompile calls" section: the addresses these contracts use
(0x0101, 0x0106, 0x0108, 0x0112, 0x0113, 0x0121, 0x0122), what each does
on 40204 today, and the behaviour before the agent precompile activation
height (every call reverts; nothing changes until H, which is not
scheduled). Byte layouts and gas are not copied: the section links the
chain's docs/precompiles/AGENT_PRECOMPILES.md (Rule 9). Failure modes
updated. Frontmatter: branch and updated added, audited_against_sha moved
to the stack head fa7c913. Merge after the chain stack reaches main: until
then the deployed contracts and main still carry the old constants, which
the Source section says.

content-lint --strict: green. truth-lint: one failure that is already on
main (content/chain/_generated/addresses.md behind the 40204 book).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H

* fix(ci): bump next to 16.3.8 and regenerate the address page from the current book

The build job failed at npm audit: next 16.3.3 is inside the range of the
critical next/og ImageResponse advisory (GHSA-vcvr-r3jv-pc5j, 16.2.0 to
16.3.5). Behind it, truth-lint fails because addresses.md was generated from
the 2026-09-12 book while citrate-chain main holds the 2026-09-30 book
(0aab474b). Both also fail on main.

package.json and package-lock.json match security/next-16.3.8 byte for byte,
and addresses.md is the gen-addresses output for book 0aab474b, so a later
merge of that branch adds nothing here.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H

* docs(contracts/models): agent precompiles are active from genesis on 40204

The chain lane pinned the 40204 agent precompile activation at genesis,
(40204, Some(0)), for the 2026-10-05 reroll (citrate-chain PR #273, ADR
status accepted, gas schedule owner-signed). The page still said the fork
height H was unscheduled and that 0x0112, 0x0113, 0x0121 and 0x0122 were not
active. The table, the activation paragraph and the failure-mode bullet now
say they are live from the first block of the rerolled 40204, and keep the
fail-closed revert guidance for networks where the height is not reached.
content.ts is regenerated to match.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H

* L19: Almanac pages for Hermes, node MCP, skills, personas and fleet wizard (HUP-S11.4) (#31)

* docs(core): Almanac pages for Hermes, node MCP, skills, personas and the fleet wizard (HUP-S11.4)

Five member-facing pages under content/core for the Citrate Core 0.5.0
release: Hermes, the node MCP server, skills and verified learning, the
six personas and five tracks (owner-approved names, Operator ships as
Crew), and the fleet wizard. Each page follows the STYLE_GUIDE template,
carries Rule-12 frontmatter (created, branch, author, status), and links
to the technical pages in citrate-core docs/ and the runtime
PERSONAS.md instead of copying them (Rule 9).

Status labels say Implemented (pre-audit), arriving with 0.5.0, and name
what is still pending (owner sign-off defaults, packaged-app and
two-machine runs). Publish after the 0.5.0 stacks merge so the linked
core docs exist on main.

Gates: truth-lint (--no-fetch) OK; content-lint --strict OK (0 em-dashes,
0 word findings); build-content indexes all five pages (104 pages).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H

* docs(core): Hermes page links the deploy gate model, not only the faucet (L19 review)

The deploy-gate row pointed at FAUCET_IN_APP and "the deploy gate notes in
the core repo". It now links the DeployGate section of src-tauri/formal/README.md
and names the faucet link for what it is (deploy gas, off by default).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H

* chore(content): regenerate content.ts with the core Almanac pages

The stack merge brought in L04's regenerated content.ts, which predates
the five content/core pages. npm run build regenerates it anyway
(prebuild); committing the regenerated file keeps the tracked copy in
step with content/ (2 lines, generated by scripts/build-content.mjs).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H

* chore(content): regenerate content.ts with the current address page

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lqmrq4rH9YBGCDmmemAG8H

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
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.

1 participant