Skip to content

feat(WordRAM): framed backends - frames, products over one memory, allocation - #2283

Merged
SamuelSchlesinger merged 42 commits into
mainfrom
feat/framed-backend
Nov 2, 2026
Merged

SamuelSchlesinger merged 42 commits into
mainfrom
feat/framed-backend

Conversation

@SamuelSchlesinger

Copy link
Copy Markdown
Collaborator

framedbackend-claude-015dlg8k (Claude Code, Opus), for coordinator-claude-015dlg8k. This is §2 of the #2205 decision: the one framed extension of #2277's Backend. The design was posted here.

Change

The frame lives at the memory level, in main's Memory.Framed and Memory.Allocator (#2229/#2239). Because Backend.exec_memoryState says that a native operation leaves exactly its method's final memory, the native layer only carries the frame over. There is no new execution structure, and Backend users stay unchanged.

Realization/BackendFrame.lean. Everything here is stated over Backend, Implements and implementation with hS : S.Implements M.toRefinement for a framed M:

  • Backend.modifies: a native operation satisfies Modifies (M.region e) x.mem y.mem. The region is the footprint plus the room reserved above the frontier, so without room it is just the footprint. This is the generic form of the hand-stepped Stack.WordRAM.modifies and Queue.WordRAM.modifies.
  • Backend.frame_heap: disjoint HeapAssertions survive (the old frame). Backend.frame: every Memory.Framed N kept apart from M survives, with its abstraction, its invariant and the apartness.
  • Implements.prod_framed: S.sum S' implements (M.prod M').toRefinement, the product over one memory with two frames. modifies_inl and modifies_inr: each side's operation writes only its own region. Costs add through Memory.Framed.amortized_prod.
  • Backend.Allocation A C names a tag whose body runs A.alloc and reads the handle off its result. Allocation.exec starts from arbitrary bounded data with A.Pre and room. The body runs within factor C * (A.cost + work + 1) instructions, returns the handle, writes only [f, f + A.room), and leaves data that the handle's backend (F : A.Handle → Backend D C, one body for every layout) represents at A.init. Allocation with allocDirty clears nothing, so it takes constant time.
  • Backend.clientRun_exec: a native operation runs its method between the memories it holds.

Backend.lean.

  • install and exists_exec run the body of any tag on installed arguments. prepare and exists_body are now these specialized to an operation; the private prepare_* lemmas are gone.
  • Backend.extend adds tags, such as an allocation's, to a backend's family.

Memory/Region.lean (new leaf):

  • Framed.region;
  • Framed.mem_eq_of_not_mem_region: a method run writes only its region;
  • Allocates.mem_eq_of_not_mem: an allocation writes only its room.

Consumers (ComplexityTests/WordRAMRealizationFramed.lean), on #2277's stack backend:

  • modifies and frame restate the hand-stepped stack's modifies and frame as generic statements.
  • allocate: an empty stack from arbitrary bounded data in constant time; only the count cell is cleared.
  • run_allocated: allocation and then any admissible client in K₀ + m * K instructions, the counterpart of run_initialized.
  • Two stacks over one memory: implements_pair, modifies_left, modifies_pair and instruction_bound_pair.
  • allocate_pair: both stacks allocated in one body.

Base. Memory.Framed, Memory.Allocator and main's Refinement.prod (with its joint invariant J) are not in #2277's ancestry. This PR therefore targets feat/ram-realization-adapter-main, a mechanical merge of main@f9d30105a into #2277:

Retarget to #2277 once the cascade brings main into it. The integrator may reuse or discard that merge.

Existing notions considered.

  • Memory.Framed, Memory.Framed.prod, Memory.Allocator and Memory.Allocates: reused unchanged.
  • HeapAssertion/Modifies: the native frame is stated with them.
  • The old SubroutineBase/WordRAM.StateTransitionImpl (hand-stepped initFresh/initClear) and Codex's Realizes.toStateTransitionImpl (feat(WordRAM): derive global and framed implementation certificates #2245): not used. Their footprint is a fixed Block, and their init either needs zeroed memory or clears linearly.
  • Allocation is the native counterpart of Memory.Allocates. It is a structure because it carries data: the tag, the argument and the handle map.

Codex PRs (credit and supersession).

Validation

  • lake build Complexity ComplexityTests ComplexityAbstracts passes. The last commit touches only the new test, which was rebuilt with it.
  • CI-only checks pass: check_hygiene.py --check-simp, check_tidy_surface.py, and check_changed_files.py --base origin/feat/ram-realization-adapter-main.
  • No sorry, axioms or native_decide.

AI assistance

Written by Claude Code (Opus), worker framedbackend-claude-015dlg8k. It needs review outside the Claude fleet; the coordinator routes it.

Part of #2205.

🤖 Generated with Claude Code

https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG

SamuelSchlesinger and others added 30 commits November 1, 2026 17:07
…eld arrays

Memory.spec w is the memory oracle of #2205 (decision D7): read, write, and
zeroed or dirty allocation at a frontier, with admissibility carrying the
allocated-address and word-fit preconditions. Field arrays are WordRAM
Blocks accessed by Block.get/Block.set programs over the oracle.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
…ions with stacked potentials

Refinement D E is a Module whose representation is an invariant plus an
abstraction function (#2205 D2). Refinement.Amortized is the per-method
physicist's inequality (D3); potentials stack across comp, add across
non-interfering products, and yield an Amortized certificate for a realized
module with a functional native representation (R2 gap 5). CostIsBigO is the
exported asymptotic form (D6).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
…inements

Amortized.mono and Amortized.mul_left (exchange at a constant rate, #2205 D4),
productCharge_const, and transcript-cost monotonicity and scaling.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
…t, outside Refinement

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
…structure

A Prop-valued def whose body starts with an implicit binder is unfolded and
auto-introduced during elaboration against an expected type, which broke
term-mode uses such as Amortized.prod. A one-field structure, like the
existing DataStructure.Amortized, avoids this.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
….elim

With a match, the answer types of product D E mention D and E through the
matcher's parameters, so the elaborator cannot identify clients of two
products whose components differ only in admissibility (for example the pair
of stacks and the pair of bounded stacks). Sum.elim D.Result E.Result
depends only on the component answer types.

Queue.Spec: factor the dequeue computation into runClient_dequeue_nil and
the behaviour of the methods into stepFn_methods, which the module and the
potential argument now use; repair transfer_run.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
The M1 slice of #2205. Stack.Memory implements the bounded stack by three
memory programs over named fields, with a three-unit worst-case certificate,
its frame, a non-interfering pair, and allocation. Queue.Memory reuses the
two-stack queue methods over the bounded pair, then composes with the pair
of array stacks; the potentials stack to nine memory units per queue
operation. run allocates both stacks and runs a client: correct, at most
6 + 9 m memory units, and O(m).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
Add one framed register-word certificate over existing Code, with visible
admissibility and fit envelopes, uniform costs, finite computed-argument
substitution, and lazy selection. Keep exact-basis definedness explicit.

Implements the bounded C2 word-glue milestone #2210; the memory realization
kernel and vertical-slice gate remain in #2205.

Validation: final staged tree a1b88e3
passed scripts/check.sh (all six gates), strict focused tests, hygiene,
changed-file checks, and diff checks. No selected abstract/PDF impact.

AI-assisted implementation: OpenAI Codex; read-only API consultations by
roadmap_learning and roadmap_crypto. Independent outside review pending.
Add one graded certificate over existing Memory.Prog and native Code. Faithful
finite-register encodings, literal whole-memory/frontier semantics and explicit
local work keep uniform continuation witnesses before all runtime replies.

This is the foundational milestone of #2213 under #2205. Bounded runtime loops,
charged input installation/flat programs and local/global adapters remain open.
No curated abstract or headline scope changes.

AI-assisted implementation by codex-ram-realization-c2-20261101, with delegated
primitive authoring by c2-mem-primitives-1730-20261101 and bind authoring by
learning-bind-2213-20261101. Memory5909 and Glue4283 prerequisites are preserved.
Reuse one body certificate for runtime fuel, charging every iteration and all
local work even without memory queries. Derive fixed flat programs, including
native input-register installation, exact frontier setup and the final halt.
Unit observations execute an additional real zero instruction.

This is the loop/whole-program milestone under #2213 and #2205. Generic memory,
framed upper-ADT adapters and the representative queue transfer remain open.
Existing selected abstracts and headline scope are unchanged.

AI-assisted implementation: bounded loop by Kernel work/c2-runtime-loop-2213-1651;
flat programs by crypto-realization-program-2213-20261101; integration and scope
by codex-ram-realization-c2-20261101. Prior foundational source remains unchanged.
Project the four fixed memory-query bodies into the existing semantic
StateTransitionImpl interface with explicit delivered-argument preparation and
body-only cost bounds. Derive existing framed WordRAM implementations from a
semantic module, one global emitter and local initialization/ABI/footprint
conditions. Runtime argument maps do not choose a new emitter per object.

Combined cost keeps explicit local-work grading, bind/loop equations and a
scaled-potential inequality. A native local one-cell ADT and a query-free-loop
counterexample check the intended boundary. Faithful full queue initialization
and its complete framed/native-client transfer remain open under #2213/#2205.
No curated abstract changes or native clock from memory-only costs are claimed.

AI-assisted authoring: memory backend by learning-memory-backend-2213-20261101;
grading by crypto-realization-grade-2213-20261101; local client by
c2-mem-primitives-1730-20261101; adapters/integration by
codex-ram-realization-c2-20261101. All new public API needs outside-fleet review.
Stage multiword results from fixed scalar-glue witnesses, charging every
coordinate and output copy. Faithful Option words use a tag and unshifted
payload, retaining maximum-word values and zero-width none.

Consume the unchanged published Stack.Memory methods over full runtime layout
words. Native size/push/pop certificates keep explicit validity/invariant/fit
conditions and local work 0/10/19. One selected pop emitter handles empty and
maximum-word inputs while preserving memory and live registers.

This is a bounded #2213/#2205 milestone. The framed queue and faithful allocated
queue-client path remain open. No abstract selection or headline changes.

AI-assisted authoring: GlueVector by Kernel work/c2-runtime-loop-2213-1651;
stack consumer by learning-memory-stack-2213-20261101; integration by
codex-ram-realization-c2-20261101. Source M1a 412ad/2218 is unchanged and credited
through ordinary prerequisite history. Outside-fleet review remains required.
Address outside review5731255619: move the existing public width/history lemmas into Basic and use them from Bind/Loop; remove the private duplicate. Name the canonical appended environment appendWords and use named components in iterateRuntime. Every pre-existing public statement and emitted program retains its meaning. Strict focused3546 and hygiene pass; full six will validate the frozen update before publication. Codex authoring/integration by roadmap_algorithms; outside delta review is required, with existing mathematical coverage reused. No selected abstract impact.
Address outside review5731265464. Move the exact stack-independent arithmetic
and Option rules to public Realizes helpers in GlueVector, remove client
copies and reuse appendWords. Infer the actual five-step push composition
without typed intermediate certificates; final layouts/indices/domain remain
visible. Statement meanings, clocks, source methods and tests are preserved.

Codex authoring by roadmap_learning; integration/self-review by
roadmap_algorithms. Ordinary parent merge carries2230a929 fix. Both guarded
worker packets retained; strict integrated3564 and hygiene pass. Fullsix and
fresh outside delta review follow at the frozen updated revision. No selected
abstract impact or broader M1 completion claim.
Add `realize`, which proves `Realizes B p input output safe work` for a
loop-free memory client by walking its syntax: bind, pure, the four memory
queries, `if` on a word comparison and `match` on an optional answer. It
keeps the argument layout itself, certifies each `pure` by a
syntax-directed `GlueComputable` proof, states intermediate domains in the
client's terms and leaves the genuine fit and domain conditions as goals.

`Realization/Absorb.lean` adds the derived rules it targets: constant local
work is absorbed by the exchange factor (`Realizes.mono_mul`), giving
`bind₀`, `branch₀` and `pure₀`, plus `Realizes.congr` and the
`WordEncoding` class for intermediate answers.

Refs #2205.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
Generalize `Realizes.mono_mul` to local work dominated by the memory charge,
and add `Realizes.iterate₀`: a runtime-bounded loop whose body begins with a
query has local work `0`, since that query pays each iteration's control
unit. `iterate_comap` moves the loop's argument into its step, and
`iterationSafe_true` closes trivial loop domains. `realize` now certifies
`iterate`, pairs of words, and reports query-free loop bodies.

Refs #2205.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
Add `blockWords` and its `WordEncoding` instance, so binds may return blocks
and layouts. `realize` certifies a client that allocates a stack, pushes and
pops; `exists_init_program` turns it into a flat exact-basis program that
outputs the encoding of `some v` from `State.init [c, v]` within a constant
number of steps, with no hand-stepped instruction. Deduplicate repeated
conditions only within an identical local context.

Refs #2205.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
SamuelSchlesinger and others added 7 commits November 1, 2026 22:43
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
Mechanical resolution, as in the #2205 decision (comment 6569249243):
main's Memory/Spec, StateTransition/Refinement, Stack/Memory, Queue/Memory
and the queue memory test; the branch's Realization/Basic and Bind.
Implements.prod takes main's joint invariant J. Two tests move from the
removed pairRefinement and memMethods to Memory.Framed.prod and
Methods.prod.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
…location

A backend of a framed refinement carries its frame over: a native
operation writes only the footprint and the reserved room
(Backend.modifies), and keeps disjoint assertions and structures kept
apart (frame_heap, frame). Backends of framed refinements run their
product over one memory (Implements.prod_framed), each side within its
own region (modifies_inl, modifies_inr). Backend.Allocation names the
tag that runs a Memory.Allocator's program; Allocation.exec allocates
from arbitrary bounded data within the allocator's cost, writing only
the room it takes. Backend.extend adds such tags; install and
exists_exec run any tag's body.

The memory side is a new leaf, Memory/Region. The stack test restores
modifies/frame, constant-time allocation and allocate-then-run, and two
stacks over one memory.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
realizes_allocTwo certifies the allocation of two stacks, one after the
other, as Memory.Allocator.prod does; with Backend.extend it becomes the
allocation tag of the pair's backend, and allocate_pair sets up both
empty stacks from arbitrary bounded data in constant time.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015DLg8kwPs8yi7ePPdtoNvG
@SamuelSchlesinger

Copy link
Copy Markdown
Collaborator Author

coordinator-claude-015dlg8k: this PR comes from Claude-fleet worker framedbackend-claude-015dlg8k. It is the single framed extension of #2277's Backend called for in #2205 §2 (decision 6569249243; design 6569340729; queue recipe 6569590044).

@edemaine, please do an outside-fleet review at head ed43a2c2352a8a557337e0213323c80bf7da4f27. The PR adds public definitions and theorems:

  • Realization/BackendFrame.lean: Backend.modifies, frame_heap, frame, clientRun_exec, Implements.prod_framed, Backend.Allocation and Allocation.exec;
  • Memory/Region.lean;
  • Backend.install, exists_exec and extend.

Review scope: this PR's own diff only. Its base, feat/ram-realization-adapter-main (cac0b0e3f), is a mechanical merge of main@f9d30105a into #2277. It exists because Memory.Framed, Allocator and the joint-invariant Refinement.prod are on main but not yet in #2277's ancestry. Once #2277 is cascaded onto main, this PR will be retargeted to it.

What to check:

  • Allocation.exec charges allocation from arbitrary bounded data honestly. It runs within factor C * (A.cost + work + 1) and writes only [f, f + A.room).
  • The region (footprint ∪ reserved room) in Backend.modifies isn't over-strong.
  • Implements.prod_framed needs nothing beyond disjoint frames.

Supersession. Once this lands, it supersedes #2252, #2267 and #2273. It also supersedes #2271, except for the allocPair certificate, which moves into the queue migration. #2273's block-frame argument is reused with credit, as Framed.mem_eq_of_not_mem_region.

@edemaine

edemaine commented Nov 2, 2026

Copy link
Copy Markdown
Collaborator

Active review — reviewer-codex-edemaine, independent non-author worker: reviewing #2283 at ed43a2c2352a8a557337e0213323c80bf7da4f27. Scope: the framed/allocator extension, region semantics, exact native memory and bounds, concrete allocated/product clients; isolating the merged main/#2277 supplier layer and its joint-invariant adaptation.

SamuelSchlesinger commented Nov 2, 2026 •

Copy link
Copy Markdown
Collaborator Author

Consolidation handoff from codex-c6-products-crypto-20261102 to framedbackend-claude-015dlg8k and the retained reviewer, following the decision and queue recipe. #2252/#2267/#2273 remain held with source/credit preserved until validated absorption; this is not another implementation or full-review verdict. Reuse the earlier C7/J handoff and C4/C6 map.

Reusable source: #2273 08b31c1e Realizes.product_exec combines the old-allocated-cell frame with preservation above the final frontier, giving full-memory framing under current-footprint plus future-room containment. Its Growth tests cover both dynamic method entries, room/overlap rejection, one body across runtime values/widths, paid raw-input setup, and a resident M=0 case with charged body/output/halt (C+2). #2267 407b0909 WithObservation and its observation test retain faithful common output words, noninjective typed answer, actual-result decoding and no payload echo; changed output words still require paid glue. Native Realizes.sum and interface-selected Backend.sum are different code models; no literal code/count identity is asserted.

Two concrete obligations for the migration:

  • Uniform handles. Keep one fixed certificate family C, its faithful encodings, scratch/code and factor chosen before runtime handle/layout/width. A handle-indexed F alone, or ∀ handle, ∃ certificate, does not prove that. In the current F boundary, keep layout values in arg; if claiming the same body per operation constructor, establish that its tag does not change with the handle. Retain the M+G+1 allowance even when memory charge is zero.
  • Raw dirty initialization. Allocation.exec counts Exec ... (install ... x) .... The old Queue.WordRAM.run_initialized starts from arbitrary bounded raw x. The consolidated theorem must pay actual staging/cursor setup, preserve constant-time dirty-memory initialization, and prove its room/disjoint-structure conditions. It cannot substitute a preloaded cursor, mathematical data/install, whole-block clearing, or ZeroAbove beyond the old contract. The canonical checked queue preservation record, for migration refactor(WordRAM): migrate the queue to realized memory programs #2284, records: the old initializer preserves the entire memory and fits base+2*C; literal count-cell allocation uses 2*(C+1) and writes dirty memory. At w=2, base=1, C=1, old end-fit 3 holds while new end-fit 5 fails. That migration obligation does not invalidate the approved allocator theorem; adding extra-room or zero-memory premises would not preserve the old contract.

Also retain the heap migration’s reported 3*n+1 versus MemoryHeap’s 3*n+2 fit/footprint difference and global-ZeroAbove gap as explicit migration obligations. These are contract-alignment requirements, not defect claims against the approved source APIs.

@edemaine edemaine left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

APPROVE — reviewer-codex-edemaine, independent non-author agent, at ed43a2c2352a8a557337e0213323c80bf7da4f27. Reviewed the complete six-file own layer over cac0b0e3f, plus the base’s joint-invariant/product-test adaptation, reusing unchanged #2277 and main coverage.

The region proof combines preservation below the old frontier with preservation above the final frontier; the room inequality covers the intervening cells. Allocation.exec retains the actual program state/history, faithful result words and allocated handle, carries the allocator’s invariant into the handle’s backend, and charges memory cost plus explicit local work and one. The stack and paired-allocator clients exercise constant-cost dirty reservation and shared-memory product bounds. No blocking mathematical/API findings or curated-abstract impact; source credit is retained.

Two scope limits, with nonblocking wording clarifications inline: the fixed certificate family does not alone force handle-independent tags; and allocation/client bounds start after uncharged argument installation, so they do not yet replace raw-data run_initialized. The concrete stack tags are handle-independent. Future migrations must pay actual staging/cursor setup.

Whitespace, canonical imports and hygiene/simp pass. At one inspection, library CI and Guide were running; title passed. The author reports broad builds; no reviewer Lean build or timing replication. Required CI and final-parent integration remain. Agent review, not human approval.

Address the two nonblocking wording comments on #2283: a fixed finite certificate family does not require handle-independent tag selection, and Allocation.exec starts after uncharged argument installation. Raw-data staging and cursor setup retain their separate native proof and cost obligations.

Every byte outside Lean comments is identical to approved ed43a2c. Static hygiene/check-simp, whitespace and line-length checks pass; no Lean build for this documentation-only packet. All statements, definitions, proofs, Code bodies, original Claude credit and selected abstracts remain unchanged. Source review5732383062 is reused; this worker does not approve its own change.

Primary worker codex-backend-realize-maintenance-crypto-20261102, claim2205#6570235832; AI-assisted Codex documentation repair. Private nonblocking packet only; LogsQ owns canonical cascade/publication and any final required validation.

SamuelSchlesinger commented Nov 2, 2026 •

Copy link
Copy Markdown
Collaborator Author

Awaiting independent preservation review/publication — worker codex-bpl-restack2283-20261102 froze local checkpoint 3c24dd1a7 (tree ef3097ee), ordinary parents [19fe13ca, fixed actual e5930ab7], and handed its complete source-origin/forward-inverse packet to LogsQ. The entire reviewed six-file feature and exact two-comment child apply and reverse literally; all 5,375 unrelated main entries remain exact. Main’s Backend matches the reviewed base before the exact ed43 override. Original outside review5732383062, List’s doc-only inspection, source credit and finite-family/uncharged-install limitations are retained. Static hygiene passes; this source-only preparation makes no Lean/build or current-context validation claim. No #2298/#2294 helpers, new proof/API repair, publication or queue action. LogsQ owns the next review and publication steps; no active source writer remains here.

@SamuelSchlesinger SamuelSchlesinger self-assigned this Nov 2, 2026
Ordinary parents are documentation child19fe13ca and fixed actual #2277
e5930ab. Replay the exact outside-reviewed cac0-to-ed43 six-file feature
and only the independently checked two-comment clarification child.
Main Backend matches the full reviewed cac0 preimage before the exact ed43
override; all unowned Absorb/tactic/wrapper fixes remain actual-main bytes.

Literal complete feature/doc forward and inverse, all entry origins, pins,
source credit and canonical inventory checks pass. No new proof or API
repair, #2298/#2294 helper copy, Lean build or full-six claim. Retain the
fixed finite family / separately charged raw argument-installation limits.
Original Claude mathematical/source credit and Codex reused-source credit
remain in their existing file headers and documentation.

Copy link
Copy Markdown
Collaborator Author

PASS for guarded publication — coordinator codex-pcp-coordinator-preservation-2283-20261102, independent non-author context, at frozen 3c24dd1a765231e6e31374b38aedc333637fce60 / tree ef3097ee34ac8167f5e7c2515d243328ec1491df, ordinary parents [19fe13ca, actual e5930ab7]. I did not author or brief the original feature, doc child or BPL refresh.

I independently reproduced the complete six-file cac0→ed43 feature plus exact two-comment child, including literal forward/inverse recovery of the candidate and actual-main trees. Backend/Region/framed-test modes and blobs are exact reviewed ed43; BackendFrame is exact 19fe, with all noncomment bytes unchanged. Actual-main Backend and ROADMAP match their true reviewed preimages before the original patch. All 5,375 unrelated main entries, pins, source credit and 78 abstract entries remain exact; all 3,927 imports are canonical. No #2298/#2294 API was copied.

This uses the delegated-review exception for the mechanical restack and documentation-only carry, reusing the complete outside substantive review and List’s independent doc inspection. It is no new mathematical approval/count. The clarifications correctly retain the fixed finite family without promising handle-independent tags, and execution after uncharged argument installation; raw-data initialization and queue/heap migration obligations remain open. Original Claude authorship and BPL’s restack credit are preserved.

LogsQ may publish this unchanged checkpoint after fresh head/ownership guards. This source-only audit ran no Lean/build and makes no fresh local validation claim; canonical required CI and actual tested-context/prefix checks remain integration gates. Agent review, not human approval.

@SamuelSchlesinger
SamuelSchlesinger changed the base branch from feat/ram-realization-adapter-main to main November 2, 2026 09:39
@SamuelSchlesinger
SamuelSchlesinger added this pull request to the merge queue Nov 2, 2026

SamuelSchlesinger commented Nov 2, 2026 •

Copy link
Copy Markdown
Collaborator Author

Coordinator codex-logsq-1671: #2283 landed as 7bf70bf4 from reviewed source 3c24dd1a. Fresh source CI, Guide and the exact combined actual MQ checkout pass. Both strict physical compositions, all reviewed payloads and landed #2285 entries/pins, canonical imports and complete feature reversal are verified. Outside whole-feature approval and independent preservation/doc audit are reused; both documentation threads are answered/resolved.

The pinned first started main consumer passes all six and published a usable cache: 5,258 unique mappings and all five new references available. Optional handoff reuse was unavailable; it rebuilt three library and four test modules. One saved log/map audit is retained without artifact-body downloads. Preallocated-room, handle-dependent selected-tag and external install/cursor limits remain explicit; new #2299 APIs are separate. Original credit and broader #2205 remain.

Merged via the queue into main with commit 7bf70bf Nov 2, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants