You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Post-0.31][Backend] Evaluate policy dispatch alternatives with measured crossover evidence #37
Follow-up to #32 and D3. 0.31 retains linear tags and direct action stubs. 0.32 is a planning target only.
Compare the existing dispatcher with saved-selector routing and bounded comparison trees before choosing whether to implement either. A jump table needs a separate exact-target-set decision; no crossover threshold has been accepted.
Acceptance:
Use the current immediate planner and unchanged dense/sparse/high-u32 fixture matrix.
Report dispatcher bytes and every action's success/rejection cycles separately.
Preserve unknown-tag precheck, common-check order, first-failure behavior and selector lifetime.
Bind routing to exact decoder/action targets in the independent checker; mutate selector, branch and call targets.
Record the chosen threshold or retain the current dispatcher if measurements do not justify a change; run backend and CI gates.
Completed the bounded 0.32 dispatch evaluation. Retain the existing linear dispatcher and direct action stubs. No production crossover threshold or new optimization profile is admitted.
Balanced routing: 402 paired cases across dense/sparse/high-u32 tags and sizes 1–64; 314 byte/cycle tradeoff rows, 82 favoring linear routing and 6 ties.
Saved selector: 804 cases; 205 tradeoff rows and 599 favoring the current design. The two-pass probe includes a clobbering common-check surrogate and distinguishes unknown-tag rejection from common-check failure.
Late-action savings do not remove early-path regressions/code growth. The routing microbenchmarks embed the selected input and support only their finite local comparisons; they are not a production threshold or whole-transaction speedup claim.
The retained production matrix and independent checker continue to enforce unknown-tag prechecks, common-check/first-failure order, exact decoder/action destinations, selector dataflow and outgoing-argument ownership. No new machine shape is adopted, so the current versioned checker contract remains authoritative.
See the experiment decisions, paired frontier and historical full-gate record. CI/backend passed at clean source 6a453d3015784784a27ba1aa0a4b6b1a73db79a8; unchanged ceilings and 6,782 comparable metrics passed. Archived source identities are not relabeled as the latest client commit.
Closure audit on 2026-10-04: all seven archive byte counts/SHA-256 values in that gate record match. Fresh focused replay on the 0.32 checkout based on 35bf983d passed 9 policy-artifact-checker tests and 6 cost_experiments tests, including both dispatch alternatives. Commands: cargo test --locked -p cellscript --test policy_artifact_checker -- --test-threads=1 (run with cost_measurement in the same invocation), and cargo test --locked -p cellscript cost_experiments --lib -- --test-threads=1.
This resolves the issue's explicit option to retain current routing when measurements do not justify replacement. A jump table or broader routing policy still needs its own design/evidence; none is implied by closure.
Activity
a19q3 commentedon Oct 4, 2026
Completed the bounded 0.32 dispatch evaluation. Retain the existing linear dispatcher and direct action stubs. No production crossover threshold or new optimization profile is admitted.
See the experiment decisions, paired frontier and historical full-gate record. CI/backend passed at clean source
6a453d3015784784a27ba1aa0a4b6b1a73db79a8; unchanged ceilings and 6,782 comparable metrics passed. Archived source identities are not relabeled as the latest client commit.Closure audit on 2026-10-04: all seven archive byte counts/SHA-256 values in that gate record match. Fresh focused replay on the 0.32 checkout based on
35bf983dpassed 9 policy-artifact-checker tests and 6cost_experimentstests, including both dispatch alternatives. Commands:cargo test --locked -p cellscript --test policy_artifact_checker -- --test-threads=1(run withcost_measurementin the same invocation), andcargo test --locked -p cellscript cost_experiments --lib -- --test-threads=1.This resolves the issue's explicit option to retain current routing when measurements do not justify replacement. A jump table or broader routing policy still needs its own design/evidence; none is implied by closure.