# Memory mechanism and minimal controller comparison — memory-mechanism-v1

Registered 2026-10-14 before model dispatch. Base f4162cf. One study, two independent blocks, six new apparatuses, 48 scheduled task executions, 24 using an LLM. Prior 6/6 versus 6/6 correctness, five versus seven calibrations and 40 versus 35 dispatches remain unchanged. The accepted-operation decomposition is three extra retrieval calls, two fewer calibrations and four additional rejections, with all other operation counts equal. This is accounting, not a counterfactual model trajectory.

Question: how much calibration-saving behavior can ordinary persistent observations and deterministic tools explain, and what does the LLM add? Predictions: rule persistence may use three calibrations per block versus six for rule episodic, at matched correctness. These are predictions, to be verified by actual execution. Earlier frozen fixtures are verified offline with zero provider requests and clean disposable stores. Their outputs never enter the new policies.

Runtime: byte-identical production package e668e42492ade662b3b3f2f2f5754cca54be45c01b94ef1fcff6fb603d87ad64 in a new immutable runtime directory inside an isolated worktree. Model qwen3.8:27b-q4_K_M, digest 25b843619e944cd0ae6069f94ff4e5e26a16e109ccbc0a66a0f05979ed70098e. Successful sampling seed 424242, temperature .7, top_p .8, top_k 20, min_p 0, context 8192, generated cap 512, think=false. Preserve prompts, schemas, scientific APIs, six-decimal sensor precision, inclusive parameter intervals, controller-assigned identities, execution fences and final-turn behavior. Timing wrappers add no policy information. Frozen source, inputs, policies, tools, fixtures, tests and contracts are sealed and locally committed before inference. Public-safe registration r1 must be published and its actual receipt verified before dispatch; no backdating.

State and identity: exact neutral apparatus ID equality is the public matching rule, stable dynamics within each apparatus. SQLite stores authentic before/after observations with apparatus, experiment, task and environment provenance. Persistent policies may search catalog metadata and retrieve observations; episodic policies can access only current-task observations. Records and identities are preserved privately, but prior estimates, integrations, labels, model statements and conversation context are unavailable across tasks. Every estimate is recomputed from authentic observations. No derived cross-task coefficient cache. Each condition/block starts empty, no ancestry. The four controllers use the same storage, estimation and integration implementation and arguments contract. Deterministic policies receive only the same context object exposed to the model, without a backend/controller/evaluator reference.

Policies: LLM_PERSISTENT and LLM_EPISODIC select every action, argument and final label with the fixed model. RULE_PERSISTENT searches exact apparatus metadata (limit six), retrieves matching catalog IDs sorted lexically and uses their authentic observations; if absent, it executes the first calibration in lexical experiment-ID order. RULE_EPISODIC uses the same procedure, with prior-task observations inaccessible. Both recompute a full inclusive parameter interval from all available matching observations, integrate the exact registered target under public assumptions and map explicit certified event status to OCCURS or DOES_NOT_OCCUR. Unresolved integration or estimation permits the next untried legal calibration in lexical order only when four slots remain for calibration, estimation, integration and finish; otherwise INSUFFICIENT_EVIDENCE. Eighth slot finish only. No hidden coefficient, truth, prior-run answer, special case label or LLM in rule policies. Journal transport rows for rules are logical policy decisions and contribute zero actual provider requests/tokens/time.

Fixtures: generator seeds 2026101402 and 2026101403, block-one neutral IDs unit-14/unit-57/unit-82 and block-two unit-36/unit-65/unit-93, assigned independently of dynamics. Established generator family: integer world seeds 1000000..2147483646; unchanged simulator signed coefficient magnitude uniform .06.. .18. First target x grid 10000..240000 divided by a million, revisit band equal-probability close 498000..499980 or wall 50..1950. Symmetric p1/A and p2/B, zero velocities, y=.5, six steps, strict separation reduction > .0001. First passing candidate, cap 1000 per apparatus. Retain every rejection and reason privately; no selection inference. Filters: previously unused target geometry; calibration x=.25/.3 never physically aliases a sealed target; each of both offered calibrations certifies the same full-interval label; margin >= max(1e-5, ten enclosure widths); both outcomes possible under public parameter domain; every revisit changes outcome. Decimal endpoints and independent sealed coordinate arithmetic cross-check references. Verify six distinct new seeds and twelve distinct target geometries before registration; unexpected duplicates stop preparation. Results are conditional on this engineered, identifiable constructed distribution.

Within each block: A,B,C,A,C,B. All four controllers receive identical fixtures. Cyclic condition-order rotations at the twelve task positions use shifts 0,1,2,3 repeated three times; each condition occupies each serial position exactly three times. Serialized dispatch, no simultaneous provider use. Restart all four controllers after all task-three executions in each block, checkpoint and compare recovery state and permitted source IDs. Fresh model context every task; only allowed observation retrieval carries cross-task evidence.

Scoring: all 48 scheduled rows, terminal label, correct/incorrect, error, explicit abstention, incompletion, execution failure, calibrations, selected source IDs, scientific operations, retrievals, rejections and resources. +1 correct, -1 incorrect, 0 explicit abstention; failures and missing terminals separate, utility undefined for missing terminals. No imputed correctness or successful efficiency from missing data. Apparatus is the unit: six apparatus totals, two blocks, within-family persistent/episodic differences, first encounters/revisits separate, matched-correct rule/LLM comparisons. Descriptive variation only, dependent revisits not independent samples, no precise population estimates. Constant labels and historical-label-copying references included (copying undefined at first encounters).

Budgets: at most eight model decisions per LLM task; 192 inference calls including auxiliary, 1600000 full logical input tokens (including cached input), 98304 generated, 512 generated and 300 seconds per request; 14400 seconds actual model-loading/provider-request wall time. Loading nested within provider elapsed and counted once. No auxiliary inference, warmup, transport retries, downloads, paid services or interference. Durable conservative UTF-8 input bounds, 512 output and 300 seconds before dispatch; known actuals settle only when verified; canceled requests stay spent, all unknown dimensions stay fully reserved. Historical uncertain 34852 input tokens, 1024 generated tokens and 600 seconds remain held separately. Rule runs/offline verification use zero inference; preparation/reporting outside inference budget.

Recovery: exclusive process lock and durable FULL/WAL journal. Exact committed operations/requests replay without effect. A persisted returned response can resume only through unchanged journal fences; an executing fence without committed action stops. No redispatch of unresolved/canceled transports in this registration: unknown usage or effect stops the entire partial study. Retain reservation, spent decision and all checkpoints and evidence; explicit response call identity and frozen late-response fencing remain tested. A recovery that cannot prove at-most-once effects stops rather than bypassing the journal. No adaptive prompt/fixture changes, replacement tasks or outcome-selected retries.

Resources: actual provider requests, full logical input/generated tokens, scientific execution, simulator calibration execution, exclusive storage/journal/retrieval, other controller processing, guards, model loading and total task elapsed separately. Timer scopes are exclusive; task residual reported. Loading also shown as nested provider component, never added to total. Provider request elapsed may include scheduling/cache effects; seed/token counts imply no determinism, FLOPs, energy or monetary cost. Report a hypothetical extra-calibration-cost surface C(n,h): measured noncalibration overhead difference H plus calibration simulator difference minus saved calibrations times an assumed added cost c seconds/calibration. Breakeven c=measured total-overhead difference / calibrations saved; report only where correctness matched and savings positive, label assumptions explicitly. Seconds are wall-time scenarios, not energy or money; token dimensions remain separately measured.

Verification before dispatch: rule information parity, zero hidden access, offline earlier scientific correctness and predicted calibration counts, new fixture reproducibility/boundaries, fresh stores, budget and unknown-usage guards, exact runtime/settings, memory isolation, restart/fences and no duplicate accepted effects. Closeout provider-disabled replay reconstructs every LLM request, recomputes observations/scientific facts, replays accepted operations without effect, scores all rows and reconciles budgets/usage. Public packet includes generator description, rule pseudocode, tool contracts, safe action records, per-task results and hashes. Private source, model text, full fixtures/journals/raw logs, hidden dynamics and infrastructure withheld; no full public replay claim. Separate r2 findings publication through existing approved static allowlist, verified URL/revision/manifest/UTC or specific blocker and ready bundle. Local commits only, nothing pushed. Keep all other workstreams separate.

Interpretation: matching rule performance establishes a simpler implementation for this task. An LLM advantage requires equivalent information and a faithful baseline. No consciousness inference. Propose one next task breaking a specific simplifying assumption; do not launch it.
