Research log / RL-017

RL-017 Local simulation benchmark and failure-driven harness improvement

Evidence grade AC

Field Value
Date 2026-09-13
Harness version baseline 2026-09-13-delegated-pages-4; final 2026-09-13-css-sized-edits-6
Hardware RTX 4060 Laptop GPU, 8 GB; 15.7 GB RAM; i7-12650H; Ollama 0.34.0
Models qwen2.5:1.5b-instruct, temperature 0, 4,096-token served context
Evidence grade A (controlled repeated simulation) + C (harness tests)
Pre-registered yes: observation, hypotheses and method written before the baseline simulation
Source record user request, 2026-09-13; RL-016

Observation

The existing simulator records scenario pass/fail and wall time, but not the server token counts and durations needed to compare useful work per second. RL-016 measured isolated writing speed for six models. It did not measure speed and task success together across the conversational harness.

Hypotheses

Intervention

The baseline ran before any routing change. Measurement-only changes add optional timing fields to the existing usage observer and aggregate them in npm run sim; they do not alter prompts, routing, budgets or model requests. The interventions were: direct creation for explicitly named undated tasks; one deterministic fast path for casual task-list wording; and a CSS-only model contract for generic visual restyling, with bounded CSS validation and host-side insertion into the preserved HTML. Specific code changes still use exact replacements.

Method

  1. Run all simulator scenarios three times on the configured 1.5B model. Each scenario uses a fresh disposable database and synthetic content.
  2. Record every inference's server token counts and nanosecond durations, aggregate prompt and generation throughput, and read the served context and GPU allocation from Ollama's local /api/ps endpoint.
  3. Select the largest non-known repeatable failure cluster. State H3's concrete prediction and baseline before changing model-facing code.
  4. Add the narrow deterministic guard and regression case, bump HARNESS_VERSION, then rerun the cluster five times and the full simulator.
  5. Run unit tests, typecheck and build. Review ../website/CLAIMS.md.

Results

Baseline — all scenarios, three repeats

H3 focused run — casual conversation, five repeats

H4 full comparison — all scenarios, three repeats

H5 focused and final results

Threats to validity

Conclusion

H1, H2, H4 and H5 were supported. H3's direct-mutation claim was supported, but its initial whole-scenario prediction was refuted because the repeat exposed a second independent lookup error. Repeated local simulation improved the harness from 40 to 42 passing scenarios without changing the model. The useful pattern was to reduce inference where the operation is explicit and reduce the response shape where creative model output is still needed.

Follow-ups

Reproduce

npm run sim -- 3
npm test
npm run typecheck