Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion DIRIGO.md
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,9 @@ ninja -C build-sycl-aot -j10 strata

The server's own levers are read from the run config (`thinking_policy`, `conv_route`, `conv_route_batch_after`,
`spec_window`, `spec_window_needle_min`, `short_answer`, `code_tune`) or the matching flags; `GET /v1/tuning` reports
every one of them plus the tuner, and `POST /v1/tune` retunes the running engine.
every one of them plus the tuner, and `POST /v1/tune` retunes the running engine. One qualification, because it bit a
measurement: `conv_route_batch_after` was ignored from the config until `b906f0b5` — before that only the flag worked,
so a config edit looked applied and was not.

## Upstream

Expand Down
4 changes: 4 additions & 0 deletions dirigo-results/0.2.13-port/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,10 @@ pack, same `args`, `conv_route: "on"`, `thinking_policy: "on"`, and the two `dat
byte-identical (`sha256 7bd9a9c35d65b68b…`). The stock server ignores the fork's lever keys rather than erroring on
them. Full details in `provenance.json`.

One key neither measured binary read: `conv_route_batch_after` was honoured only from the command-line flag until
`b906f0b5` (found 2026-11-14, after this run), so both arms here served at the default 4 — symmetric, and it does not
move the comparison, but a config-only change to that value would not have shown up in either arm.

## 1. Unit suites

| | dirigo | stock |
Expand Down
4 changes: 4 additions & 0 deletions dirigo-results/notes/improvements-2026-11-08.md
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,10 @@ is indistinguishable from 0.2.11. That is the strongest evidence yet for the lev
1. **`conv_route`'s threshold** (`conv_route_batch_after`, 4): the sweep above shows the router firing on every run,
so 2 vs 4 vs 6 is the natural next measurement — a config key, one restart per arm. And a *conversational* sweep
(repeated multi-turn prompts) to confirm the switch-back does not cost the reuse case under load.
**Closed 2026-11-14** (this note is kept as the record of 11-08): the conversational sweep ran at 1 against 4 —
1 saves 0.52 s across six one-shot requests and costs a conversation **1.88 s** per re-open, so 4 stands
([`docs/PERF-NEXT.md`](../../docs/PERF-NEXT.md) §7). Sweeping it also showed the key was inert: the server read only
the flag, so "a config key, one restart per arm" would have measured nothing. Fixed in `b906f0b5`.
2. **thinking off for small-budget code asks** — still the open quality item; harder tasks did not rescue thinking
(9/10 vs 10/10, and 10x the wall time).
3. Nothing else from today's list: `pcie_frac`, `spec_min_p 0.7`, deeper suffix windows all measured worse or noise.
Expand Down
11 changes: 7 additions & 4 deletions docs/PERF-NEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -146,10 +146,13 @@ seconds:
extraction queue clears that easily; anything that alternates a tool call with a chat turn never does.
4. **The flip costs the request right after it, and nothing else** — `C3` reuses in both arms (0.549 / 0.544), and the
repeat `R2` re-reads in both (2.330 / 2.316), because another conversation's context displaced it either way.
5. **The value was never actually settable.** Both configs produced identical results on all eleven steps until the flag
was passed by hand: `serve/server.py` read `--conv-route-batch-after` and ignored the config's
`conv_route_batch_after`, while the launcher writes the key and passes no flag. Fixed in
[PR #16](https://github.com/rwkeyes/Strata/pull/16) (unmerged — it must not touch `serve/` on this branch).
5. **The value was never actually settable, until it was fixed.** Both configs produced identical results on all
eleven steps until the flag was passed by hand: `serve/server.py` read `--conv-route-batch-after` and ignored the
config's `conv_route_batch_after`, while the launcher writes the key and passes no flag — so every deployment ran 4
whatever the config said. **Fixed and merged**: `b906f0b5`
([PR #16](https://github.com/rwkeyes/Strata/pull/16)), three files under `serve/`, resolution order flag → config → 4,
with a test that pins all four cases. It is behaviour-neutral for the deployment (its config says 4, and 4 is what it
resolves to) and it is the only code change on this branch after the snapshot — `DIRIGO.md` records that.

Decision: **4 stands.** 1 is only right for a pure single-shot queue, and this fork is not sold as one.

Expand Down
Loading