docs(archon): four-slot ledger, resolver law from source, probe self-calibration #60

Merged
dank merged 2 commits from wt/20261020-213526 into main 2026-10-20 23:30:27 -07:00
Owner

Follow-ups to #59 (the four-slot shape), no behavior change to the endpoint.

cd0be97 — vault: the four-slot ledger and the resolver's funding law

Shape block + boot ledger quote the live 1.8.1 boot: experts 20.72 GiB (78 %) / kv cache 5.64 GiB (21 %) = 747,492 tokens, 3.7 full-length sessions, --checkpoint-slots 40, queue_cap 32, sampler 12 rows, experts-from-host 8.99 GiB a rank (was 5.99).

The KV Capacity law is rewritten from the pinned source, replacing an inferred claim:

  • core/mem/vram_budget.cpp:146-156 — the cache is funded elastic − expert_floor
  • core/mem/kv.cpp:266 — ceiling = state + Σ max_seqs × ceil(max_ctx/block) × bytes: slots × window are demand, never funding
  • core/place/planner.cpp:100-104 — expert_floor = min(plane+spare, plane+spare+2·unit_max − host_room), so --host-pool-mib lowers the floor one-for-one and the cache takes it

That explains the byte-identical 45,568 row (the cache was already at its ceiling — the extra room lands in unclaimed) and prices this swap: +4,224 MiB pinned host pool bought 2.76 → 5.64 GiB of cache and cost 3.01 GiB of expert residency a card. The old "funds ~90 %, never 100 %" line was inference and is gone. Two-slot era is one Eras row with its rollback commit. Trio-comment date stamps corrected to 2026-10-20.

1aeb7af — probe: measure the chars/token ratio instead of trusting a constant

The probe's stored 3.28 chars/token (measured 2026-10-11) had drifted to 3.20 as the repo's docs grew, so leg B built ~201,900-token prompts and the engine refused them with a correct 400:

This model's maximum context length is 200000 tokens: the request (201900 tokens)
exceeds the available context size (200000 tokens) and leaves nothing to generate into

That reads as a capacity-contract failure on a healthy endpoint. The leg now prices the ratio with one ~4k-token request and sizes to 97 % of the deployed window. No new load was run for this PR — the refusal text came from the boot log.

Checks

./tests/run.sh — ALL TESTS PASSED (472); bats tests/frank_archon_unit.bats 20/20; py_compile clean. No deploy: nothing in the trio changed behaviorally (comment text only).


cwd: /home/blank/.omp/wt/wt-20261020-213526-6d1fc1f · session: 01a15cbe-157e-7527-b4b5-22f3d2feea00

Follow-ups to #59 (the four-slot shape), no behavior change to the endpoint. ## `cd0be97` — vault: the four-slot ledger and the resolver's funding law Shape block + boot ledger quote the live 1.8.1 boot: `experts 20.72 GiB (78 %) / kv cache 5.64 GiB (21 %) = 747,492 tokens`, 3.7 full-length sessions, `--checkpoint-slots 40`, `queue_cap 32`, sampler 12 rows, `experts-from-host` 8.99 GiB a rank (was 5.99). The KV Capacity law is rewritten **from the pinned source**, replacing an inferred claim: - `core/mem/vram_budget.cpp:146-156` — the cache is funded `elastic − expert_floor` - `core/mem/kv.cpp:266` — `ceiling = state + Σ max_seqs × ceil(max_ctx/block) × bytes`: slots × window are **demand**, never funding - `core/place/planner.cpp:100-104` — `expert_floor = min(plane+spare, plane+spare+2·unit_max − host_room)`, so `--host-pool-mib` lowers the floor one-for-one and the cache takes it That explains the byte-identical 45,568 row (the cache was already at its ceiling — the extra room lands in `unclaimed`) and prices this swap: +4,224 MiB pinned host pool bought 2.76 → 5.64 GiB of cache and cost 3.01 GiB of expert residency a card. The old "funds ~90 %, never 100 %" line was inference and is gone. Two-slot era is one Eras row with its rollback commit. Trio-comment date stamps corrected to 2026-10-20. ## `1aeb7af` — probe: measure the chars/token ratio instead of trusting a constant The probe's stored 3.28 chars/token (measured 2026-10-11) had drifted to 3.20 as the repo's docs grew, so leg B built ~201,900-token prompts and the engine refused them with a **correct** 400: ``` This model's maximum context length is 200000 tokens: the request (201900 tokens) exceeds the available context size (200000 tokens) and leaves nothing to generate into ``` That reads as a capacity-contract failure on a healthy endpoint. The leg now prices the ratio with one ~4k-token request and sizes to 97 % of the deployed window. No new load was run for this PR — the refusal text came from the boot log. ## Checks `./tests/run.sh` — ALL TESTS PASSED (472); `bats tests/frank_archon_unit.bats` 20/20; `py_compile` clean. No deploy: nothing in the trio changed behaviorally (comment text only). --- cwd: /home/blank/.omp/wt/wt-20261020-213526-6d1fc1f · session: 01a15cbe-157e-7527-b4b5-22f3d2feea00
dank added 2 commits 2026-10-20 23:27:23 -07:00
The shape block and boot ledger now quote the live 1.8.1 boot: experts 20.72 GiB
(78 %) / kv cache 5.64 GiB (21 %) = 747,492 tokens, 3.7 full-length sessions,
`--checkpoint-slots 40`, `queue_cap 32`, sampler 12 rows, `experts-from-host`
8.99 GiB a rank.

The KV Capacity law is rewritten from the pinned source instead of inference:
`core/mem/vram_budget.cpp:146-156` funds the cache as `elastic - expert_floor`,
`core/mem/kv.cpp:266` sets its ceiling from `max_seqs x max_ctx` (demand, never
funding), and `core/place/planner.cpp:100-104` makes the expert floor fall
one-for-one with `--host-pool-mib` — which is why +4,224 MiB of pinned host pool
bought the pool and cost 3.01 GiB of residency a card. The old "funds ~90 %,
never 100 %" phrasing was inference; the byte-identical 45,568 row is the ceiling
case, not a mystery. Slot-cost law carries the four-slot price (state +
checkpoint store + rows, still under the 25-row exact-wire bound). The two-slot
era is one row in Eras with its rollback commit. Date stamps in the trio
comments corrected to 2026-10-20.
The stored 3.28 chars/token (measured 2026-10-11) had drifted to 3.20 as the
repo's docs grew, so leg B sent ~201,900-token prompts and took a legitimate
400 from the engine's own window check — which reads as a capacity-contract
failure on a healthy endpoint. One ~4k-token request now prices the ratio, and
the leg sizes to 97 % of the deployed window.
dank added 2 commits 2026-10-20 23:27:23 -07:00
The shape block and boot ledger now quote the live 1.8.1 boot: experts 20.72 GiB
(78 %) / kv cache 5.64 GiB (21 %) = 747,492 tokens, 3.7 full-length sessions,
`--checkpoint-slots 40`, `queue_cap 32`, sampler 12 rows, `experts-from-host`
8.99 GiB a rank.

The KV Capacity law is rewritten from the pinned source instead of inference:
`core/mem/vram_budget.cpp:146-156` funds the cache as `elastic - expert_floor`,
`core/mem/kv.cpp:266` sets its ceiling from `max_seqs x max_ctx` (demand, never
funding), and `core/place/planner.cpp:100-104` makes the expert floor fall
one-for-one with `--host-pool-mib` — which is why +4,224 MiB of pinned host pool
bought the pool and cost 3.01 GiB of residency a card. The old "funds ~90 %,
never 100 %" phrasing was inference; the byte-identical 45,568 row is the ceiling
case, not a mystery. Slot-cost law carries the four-slot price (state +
checkpoint store + rows, still under the 25-row exact-wire bound). The two-slot
era is one row in Eras with its rollback commit. Date stamps in the trio
comments corrected to 2026-10-20.
The stored 3.28 chars/token (measured 2026-10-11) had drifted to 3.20 as the
repo's docs grew, so leg B sent ~201,900-token prompts and took a legitimate
400 from the engine's own window check — which reads as a capacity-contract
failure on a healthy endpoint. One ~4k-token request now prices the ratio, and
the leg sizes to 97 % of the deployed window.
dank merged commit b35269bfa5 into main 2026-10-20 23:30:27 -07:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dank/serverAppConfigs#60