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).
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
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.
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 main2026-10-20 23:30:27 -07:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
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 lawShape 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-host8.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 fundedelastic − expert_floorcore/mem/kv.cpp:266—ceiling = state + Σ max_seqs × ceil(max_ctx/block) × bytes: slots × window are demand, never fundingcore/place/planner.cpp:100-104—expert_floor = min(plane+spare, plane+spare+2·unit_max − host_room), so--host-pool-miblowers the floor one-for-one and the cache takes itThat 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 constantThe 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:
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.bats20/20;py_compileclean. 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