The SAME actual repair23 run a79379353aa94189a93a08ba5a1bcd63 is now TERMINAL worker_blocked(exit2 wrapper), not timeout or live. Preserved work: renderer LifeOverlay/traffic band +66lines, UItest+4, independentchecker+103 and tests+170, new historical negative fixtures; 71 local tests PASS. No genuine submitted newcandidate. You already resolved the exact remaining anchored/floor ambiguity in OPUS_REGION_CLARIFICATION_DIRECTION. Root used the existing supported normal 'repair P23-03' operation AFTER terminal, recording repair_ready/repair24 without DB edits, caps or a duplicate worker. Please read actual current state and return recorded RUN for the SAME Astra worktree, retaining all321lines and 71 tests. Nothing to reset or reimplement.
Your full earlier geometry direction (core/packing/traffic/serial/negative requirements) follows:
{"action": "run", "task_id": "P23-03", "reason": "RUN the SAME Astra worker in the SAME worktree. Task state is repair_ready, repair 23, submitted 49445d4. Keep the uncommitted changes to check_p23_life_observation_evidence.py and test_p23_life_observation_evidence.py, the 56 passing local tests, tests/fixtures/p23-03/r13_actor_overlap.json, and R23_REPAIR_NOTES.md. Do not reset, reimplement, create a new task or start a competing worker. The seven immutable conditions and all6/30/88 stay exact. No Runtime, save, asset, UI-entry or gameplay-value changes. Allowed paths only. This is original-faithful rendering; it does not relax acceptance.\n\nGEOMETRY RULE. The original acceptance never required non-overlapping full 48x54 boxes; that was our own overconstraint.\n(a) Identity core comes from scripts/ui/pixel_people.gd.\n- Upright: grid x[6,12) y[1,13). The silhouette, face and coat marks are at lines 50-57.\n- Flipped upright: x[4,10).\n- Lying modes (sleep, collapsed, standard_room_sleep): x[2,15) y[11,16), mirrored when flipped.\n- The core must also include the actual bob offset that the source applies; derive it from the source, do not guess.\n- Pin the core table in the checker to the exact pixel_people.gd SHA256.\n(b) Canvas core = at + core*scale. No two drawn actors' cores may share positive area. No core may be covered by the traffic band. Overlap of transparent margins, legs, arms or props is allowed. Allowing that overlap does not permit any core to be hidden.\n(c) Refine validate_actor_nonoverlap to use cores. Keep the edge, forged, cabin and invalid tests, and adjust their expectations openly.\n(d) Add a test where full boxes overlap but cores are disjoint; it must PASS.\n(e) The R13 row11/row29 fixture must still FAIL under the core rule. If it does not, report that in the notes, because then the rule is wrong.\n\nPLACEMENT in world_preview.gd. It must be deterministic and presentation-only.\n1. Region:\n   - the facility rect for actors anchored to a room (service slots, staff work/rest/treatment);\n   - the cabin rect for passengers;\n   - otherwise the logical cell rect.\n2. Bounds = region inset by world_pixel. A floor actor must also stay inside its own logical cell.\n3. Group the actors in a region whose cores overlap vertically.\n4. Preferred x is the actor's current position: cell centre plus the existing _actor_offset, or its existing anchor. Sort by preferred x, then key. Queue members keep queue order in the lane direction.\n5. Pack in one dimension, preserving order: forward pass x_i = max(pref_i, x_(i-1) + core_w), then a backward pass from the right bound.\n6. Fit the scale:\n   - Start p at the existing _actor_drawing base (floor(world_pixel*0.75), 0.5 when riding, the existing low-world_pixel branch and max(1)).\n   - Step down in integers to the existing floor of 1 and choose the largest p that fits.\n   - Scale only members of colliding groups.\n   - Feet line: at.y uses the existing formula with the fitted p.\n   - Sizes come from grid/glyph dimensions only, with no new readability or gameplay limits.\n7. If nothing fits at p=1:\n   - Follow the existing queue_hidden/landing-badge precedent: draw the members that fit plus one existing readable \"+m\" badge.\n   - The report row lists ALL members with id, state, cell and mode, plus the drawn keys.\n   - Aggregation is valid only if the checker independently recomputes that no fit exists at p=1.\n8. Unchanged: ids, state, logical cell, mode, flip/direction, animation variant/frame, motion and the paused authoritative cell. Hit-testing and selection use the same actor_drawings rows. Queue overflow and hidden handling stay as they are.\n\nR13 case: four MOVING guests in [1,1,0]. The 64px cell inset by world_pixel 4 leaves 56px. At p=3 they need 72px and do not fit; at p=2 they need 48px and fit. All four are drawn at p=2 inside the cell.\n- Staff and service guests in the same region join the same packing; this fixes the guest hidden behind staff.\n- A carried patient stays 12*world_pixel above its carrier and is still core-checked.\n- In-transit actors (track t<1 and not paused, recomputed by the checker from the actual track, time and paused state, never from flags) are packed in their destination cell and are exempt from the pairwise and containment checks only during the 0.42s lerp.\n- Never auto-pass small, transit or aggregated actors. The independent OS image review still judges the actual category, state and position.\n\nTRAFFIC.\n- Exact draw order: parent draw < InactiveLayerRooms (22%) < new child Node2D LifeOverlay < LayerLens. LifeOverlay draws the traffic band FIRST, then ALL actor rows.\n- Add LifeOverlay in _ready after _inactive_layer_art and before _layer_lens. It draws through the draw signal using the same _life_observation, and the parent's draw calls queue_redraw on it.\n- The report stamps the observation serial and the serial LifeOverlay consumed; the two must be equal.\n- Band rect:\n  - x from rect.x + 0.12w to end - 0.12w;\n  - centred at y = cell_bottom - 2*world_pixel, below the feet line at cell_bottom - 3*world_pixel;\n  - thickness = the existing clampf(h*0.16, 2, 5).\n- Keep the existing colour hexes and density thresholds and the existing 0.90 normal-view opacity. The blocked X stays in the band pass.\n- Record the band rect in the draw-consumed rows; the checker recomputes it.\n\nNEGATIVE TESTS (each must FAIL the checker):\n- band drawn after actors;\n- overlay drawn under the inactive art;\n- band crossing a core;\n- stale serial;\n- core outside its cell or region;\n- cell or state mismatch;\n- aggregation when a fit was possible;\n- missing or duplicate actor;\n- inverted queue order;\n- forged in-transit flag.\nKeep all previous negatives.\n\nPOSITIVE TESTS (each must PASS):\n- the actual four moving occupants;\n- staff together with a guest;\n- passenger and floor actors;\n- queue order;\n- inactive layers FRONT and BACK;\n- a saturated case;\n- carried patient.\nUpdate tests/ui/test_p23_life_observation.gd with the actual four-occupant fixture.\n\nRun only local Python syntax checks and the checker unit tests. No Godot, native, full regression, Runner, git write or nested providers. Update R23_REPAIR_NOTES with what was actually run.\n\nAt submission, state explicitly what is still missing: the Root new native/OS evidence, the 177-test full regression and the independent Opus all-condition review. The historical 49 stays preserved and is not relabeled.\n\nFull recorded direction: BUILD_OUTPUT_DIR/negative-image-review-r13/OPUS_GEOMETRY_RESOLUTION_DIRECTION.json. Timeout 900 is unchanged. If the deadline arrives, preserve the partial work.", "codex_model": "gpt-6-astra", "codex_model_reason": "Astra is worth the extra usage here. The work spans several connected parts that must agree with each other and with the real R13 evidence: ordered packing with scale fitting and per-actor bounds, a new LifeOverlay child node that fixes draw order and passes a serial guard, a checker that recomputes the core geometry pinned to the pixel_people.gd SHA, and many negative and GDScript tests. Earlier repairs stalled on exactly this geometry problem, so gpt-6.1-sol is likely to need more repair rounds."}
Your latest source-grounded clarification OVERRIDES the disjoint-room/logical-access-cell overconstraint, as an implementation wording correction, not original-spec relaxation:
{"action": "wait", "task_id": "P23-03", "reason": "P23-03 is still `implementing` (repair 23). Worker a79379353aa94189a93a08ba5a1bcd63 is live and has no usage recorded yet, so it has not finished. I will not stop or reset it, start another worker, override its state or record a repair.\n\n**Correction to my earlier wording.** In my earlier direction I wrote \"a floor actor must stay in its own logical cell\". That line was ambiguous, and it was my wording, not the original spec. Read as applying to every non-passenger, it is impossible. The source counterexample shows why. `_service_use_position` (world_preview.gd:1376-1399) says in its comment: \"Guest paths stop at an access cell… project the occupant into that facility's use position\". In the actual run, a receiving cafeteria guest's logical cell [5,0,0] covers x963..1027, and the cafeteria room covers x1027..1283. These two ranges do not overlap, so no draw position can be inside both. I withdraw the extra condition.\n\n**Corrected rule.** \"Floor\" means only unanchored floor movement. Every actor has exactly one allowed draw area. For anchored actors that area is the facility or lane region, and they have no second requirement to stay inside their access cell. Each actor's report row keeps its original `current_cell` unchanged. Do not invent a new location.\n\n**Categories.** The checker must work out each category independently from actual state, service, task and queue reports, in the same order as `_observe_actors` (world_preview.gd:1248-1313). It must never trust a region flag that the renderer reports about itself.\n\n- **QUEUED (guest or staff):** key is in `queue_positions`. This check comes first, ahead of `receiving`, as at line 1273 and line 1308 (`_queue_positions.get(key, …)`). Allowed bounds: exactly one lane cell rect from the lane rebuilt as in world_preview.gd:986-1013. To rebuild the lane:\n  - Walk the groups sorted by (y, x).\n  - Start with the anchor cell, unless it is a lift stop.\n  - Then scan direction -1 for distances 1..8, then direction +1 for distances 1..8.\n  - Stop at a non-walkable cell, or at a cell occupied by a facility other than guest_corridor or service_corridor.\n  - Skip cells already reserved, and assign members in order.\n  - Members beyond the lane go into `queue_hidden` with an overflow count and are not drawn.\n  - Check the cell order and membership exactly. Do not require the actor to be inside a different logical access cell.\n- **HIDDEN:** key is in `boarded` or `queue_hidden`. The actor gets no draw row, and the checker cross-checks it against the EV passenger and overflow reports.\n- **RECEIVING guest:** `current_service_id` is non-empty, `target_facility_id` names a facility, and the guest is in that room's `people`. Allowed area: `RoomPresentation.slots(_cell_bounds_rect(get_entity_cells(target)), p, activity)[slot]`, plus the source offset (an extra -5p for standard_room and premium_room). Bounds are the facility rect. If `slot` is at or beyond the number of anchors, the result is INF and no row is drawn. If `slot` is below 0, the source falls back to the tracked floor position, which must stay inside its logical cell.\n- **CARRIED patient:** in `carried_patients`. Position is the carrier's tracked position minus 12 cells-px in y. Bounds come from the carrier's cell or track, with that same offset.\n- **RESTING staff:** in `resting_staff`. Uses the staff_waiting_room slot of that facility's rect (world_preview.gd:1740-1751). Out-of-range slot means INF and no row.\n- **TREATED staff:** in `treated_patients`. Uses the infirmary slot of that facility's rect (world_preview.gd:1725-1737). Out-of-range slot means INF and no row.\n- **WORK-ANCHORED staff:** WORKING or AVAILABLE, the assigned facility exists, `current_cell` is one of that facility's cells, the staff ID is in the room's `staff` list with slot < columns, and the rect height is at least 40p. Position is the column centre at y + 26p - cell_h/2 (world_preview.gd:1329-1353). If any of these conditions fails, the actor is FLOOR.\n- **FLOOR (unanchored):** tracked lerp between `from` and `cell`, plus `_actor_offset`. Bounds: the union of the `from` and `cell` rects while moving (t < 0.42 and not paused); otherwise only the `cell` rect.\n\n**Concrete examples.**\n1. **Four MOVING actors:** each one's bounds are its own from∪cell rect. They do not need to be in each other's cells. A collision between them is a real failure only if their visible cores overlap.\n2. **Receiving cafeteria guest:** the report keeps `current_cell` [5,0,0]. Its allowed area is the cafeteria rect x1027..1283 at the slot anchor. Being outside x963..1027 is valid and must not be flagged.\n3. **Queue lane plus work staff:** take a lane of corridor cells beside a room whose staff are WORK-ANCHORED.\n   - A queued guest's bounds are its own reserved lane cell.\n   - A staff member's bounds are the facility column.\n   - Both go into one shared collision group per drawn layer and view, not separate groups per actor kind. Their visible cores (PixelPeople core, mode and bob, unchanged) must not occlude each other.\n   - Each actor is checked only against its own allowed bounds.\n\nNo new numeric minimum is introduced. If a pair occludes in a way the source geometry makes unavoidable, report the exact source case as a real failure. Do not loosen the check and do not mark it externally blocked.\n\n**What stays unchanged.** Exact PixelPeople identity, core SHA, mode and bob; the actual 12 must-fail negatives; source-determined fitting; the actual independent image decisions; the serial and pass-order guard; all original observations; the all-7 conditions, all-6 categories, and the 30 and 88 denominators; no new assets, UI entry, Runtime, save, economy or mana values; all uncommitted work and real negatives, kept as they are. Use the existing negative-image-review-r13 and full-proof outputs in BUILD_OUTPUT_DIR. The worker does not run Godot or the full suite. Root later does canonical native/OS, full177, all-condition review and final, on the same future frozen candidate. This classification is ordinary rendering detail already inside the authorized repair scope, so it needs no owner permission question.\n\nNext step: when this run ends, Root carries this clarification into the normal continuation. If the run ends blocked, request-repair can be recorded then, still with no parallel worker.", "codex_model": "gpt-6-astra", "codex_model_reason": "This is a coupled renderer and checker repair: per-actor geometry for six anchor kinds, an exact rebuild of queue-lane order, cross-kind collision grouping, and a strict independent checker with 12 must-fail negatives. Mistakes here have already cost 23 repairs, so quality matters more than run time or usage. Astra is the owner-chosen default for this task and is the model the live worker already uses. No new run is authorized by this choice."}
The worker's full preserved technical report follows; original mismatch was the extra wordfloor, now resolved, not an external ownerdecision:
# P23-03 repair inspection

The inspection below is retained history. See the final section for the current
continuation status; the former full-box impossibility argument is superseded.

Scope: the seven immutable acceptance conditions and existing allowed paths.
Validation: local Python syntax and checker unit tests only; no Godot execution.

Read the immutable acceptance spec, recorded concrete implementation direction,
existing Phase 0 API map, renderer, actor art, and independent checker.
The R13 provider stdout, command, and prompt SHA256 values match 01-actual.json.
The actual structured review contains 8 frames and 132 rows. Its summary's
168-row claim is not used to replace the structured rows. False judgments remain
false. The reader-request-0003 whole screenshot confirms overlapping actors and
obscured traffic presentation. Historical runtime evidence is unchanged.

Root native/OS evidence for a new candidate, the 177-test full regression, and
independent Opus all-condition review remain required and are not worker tests.

## Status: blocked; partial independent checker preparation only

The renderer repair and traffic geometry/layer audit are **not implemented**.
No claim of submission readiness or acceptance is made. No renderer, Runtime,
policy, immutable spec, source authority pin, or historical evidence was changed.

### Placement specification gap and concrete failing evidence

In the original `os-pair/A/reader-request-0003/request.json`, SHA256
`7dc3ee0bcc428e9d103726ee2448c767f1dd4107f9490833dc860c0b5140068c`,
the decoded report contains guests `os-p23-012` through `os-p23-015`, all
`MOVING`, logical cell `[1,1,0]`, with no service or queue request. Their
tracks' `from` and `cell` are both `[1,1,0]`. The current cell is 64x96 pixels
(`traffic` row 40's inset rect is `[709,390,60,92]`). Each actor's current
draw/report footprint is 48x54 pixels: the 16x18 PixelPeople grid at scale 3.
The four rectangles require area 10368, while the cell has area 6144.
Consequently offsets alone, preserving those sizes and containing all four
rectangles in that cell, cannot satisfy the requested nonoverlap invariant.
This is already present in the supplied evidence, not a hypothetical load.

Source references: `world_preview.gd::_cell_dimensions`, `_actor_drawing`,
`_tracked_actor_position`; checker `drawing_rectangle_rows` and
`compare_actor_geometry`; `pixel_people.gd`'s 16x18 drawing grid.

The direction specifies offsets inside room/cell art, containment consistent
with logical cell/state, retained motion, and no visual redesign. It does not
resolve what presentation change is permitted when existing footprints cannot
fit. Shrinking actors or expanding the permitted projection area could solve
this capacity issue, but neither is silently treated here as authorized by an
offset repair. This is a question about the admissible presentation, not a
claim that every possible rendering solution is impossible.

Minimal proposal for the owner: specify whether deterministic scale reduction
within the original logical cell is permitted (including the required readable
minimum and behavior when it still cannot fit), or define an allowed room/lane
projection for these non-queued moving actors. No Runtime capacity change,
actor omission, or acceptance waiver is proposed. Retain all seven conditions.

### Independent work preserved

Added `validate_actor_nonoverlap` to both the semantic geometry path and offline
drawing-row gate. It recomputes full footprints from raw `at`/`scale`, includes
cabin passengers, rejects duplicate identities and invalid numeric geometry,
and does not use eligibility labels or asserted booleans. Edge contact is
allowed; positive-area overlap is rejected with actor identities.

Five added unit tests cover edge contact, overlap despite forged verdicts and
off-screen labels, cabin/floor overlap, invalid footprints, and the actual R13
false row 11 against staff row 29. The small historical-negative fixture copies
only the needed raw drawing inputs and preserves `[11,false,false,false]` with
request/manifest hashes. Its inputs were checked against the original typed
report. The original review files and all their rows remain untouched.

The original manifest hash matches
`53aa8e2f12e5d0a089529457fcd55ee1ba0600e8dffff2225bb8b057d007fe1a`;
all crops in that manifest pass SHA verification. Opened the whole decoded image
and crops 11, 29, 40 directly; crops 11 and 29 show the same covered figure.

Still missing: collision-free renderer placement, draw-consumed band rectangle,
actual layer/geometry audits, and the requested additional cell/state, band,
layer, and stale-frame negatives. Passing these local tests does not resolve
those missing deliverables.

### Local checks actually run

Before edits:
`PYTHONDONTWRITEBYTECODE=1 python3 tools/test_p23_life_observation_evidence.py`
returned exit 0, `Ran 51 tests in 0.142s`, `OK`.

After edits the same command returned exit 0,
`Ran 56 tests in 0.093s`, `OK`.

Syntax command (no bytecode output):
```
python3 -c 'from pathlib import Path; files=["tools/check_p23_life_observation_evidence.py","tools/test_p23_life_observation_evidence.py","tools/run_p23_life_observation.py"]; [(compile(Path(p).read_bytes(),p,"exec"),print("syntax OK:",p)) for p in files]'
```
Exit 0; printed `syntax OK:` for each of those three files.
`git diff --check` returned exit 0 with no output (read-only check).
No Godot, native/OS, full regression, provider, Runner, git write, or agent
execution occurred. The initial shell heredoc attempt failed before execution
because the shell could not create its temporary file; subsequent inspection
used `python3 -c`.

## Recorded geometry direction continuation — blocked pending placement clarification

Read the complete `BUILD_OUTPUT_DIR/negative-image-review-r13/
OPUS_GEOMETRY_RESOLUTION_DIRECTION.json`, the owner run direction, the current
PixelPeople and WorldPreview sources, RoomPresentation slots, the existing
Phase 0 audit and the actual initialize/spawn/save/load API sources. The spec
still matches its contracted **stripped-text** SHA256. No spec, Runtime, save,
asset, UI entry, gameplay value, authority entry or suite policy was changed.

### Implemented independent preparation

- Replaced the full-box overlap invariant with identity cores. The table is
  pinned to PixelPeople SHA256
  `a171703083aa2d00f8be2b63e1daef9c41717c8fe59d8056878bc4b7df1e0b0c`.
  Upright walking/carry-walking phases 2 and 6 shift the core up one grid unit.
  Standard-room sleep phases 2, 3 and 4 extend its top from y=11 to y=10,
  keeping the bottom at y=16, as required by the actual breathing marks.
  Flips use the actual 16-grid mirror. Missing pose inputs now fail closed.
- Preserved the edge, forged-verdict, cabin, invalid-geometry and R13 tests.
  Edge coordinates now use 6x12 core extents instead of the rejected 16x18
  full-box extents; the deliberate overlap moves from [15,17] to [5,11].
  Added a passing full-box-overlap/disjoint-core case and bob, breathing,
  flip, missing-pose, duplicate, forged-transit and source-pin tests.
  R13 row11/29 still fails: both recomputed cores are [669,520,18,36].
  The fixture's newly required mode/frame/flip values were copied from the
  original request and checked against it. False judgments remain false.
- Added the LifeOverlay Node2D between InactiveLayerRooms and LayerLens,
  connected its draw signal, and queued its redraw from the parent draw.
  The overlay draws traffic first, then cabin passengers and floor actors.
  Existing inactive-art alpha remains 0.22. Actor rows and animation inputs
  are unchanged. The report records observation/consumed serials, actual
  child indices and the passes executed in the callback.
- Added the prescribed band rectangle at cell_bottom - 2*world_pixel,
  with existing thickness clamp, colour thresholds and 0.90 opacity.
  The blocked X is contained in the band pass. `compare_traffic` independently
  recomputes both cell and band rectangles from typed state. Overlay checks
  reject stale serial, reversed passes, child-order errors, a core covered
  by the band, and forged band geometry. Source wiring/order is also checked,
  so valid report flags do not excuse the tested reversed source callback.
  FRONT/BACK local synthetic checks and GDScript serial/order assertions were
  added. GDScript was **not executed**.

### Exact outstanding interpretation

Placement rule 1 gives service/rest/treatment anchors a facility region, while
rule 2 says a floor actor must *also* remain in its own logical cell. It is
unclear whether “floor actor” excludes these facility-anchored actors or means
every non-passenger. This is consequential in the actual R13 request, not only
in a fabricated layout:

- `guest-auto-00000044` receives `service_00000009` at cafeteria
  `facility_00000003`. Its unchanged logical cell is [5,0,0]. The recorded
  traffic inset [965,486,60,92] reconstructs cell [963,484,64,96].
  The facility rect is [1027,388,256,192], and its four-pixel inset starts at
  x=1031. There is no common x interval with the logical cell ending x=1027.
- `guest-auto-00000019` receives `service_00000002` at standard room
  `facility_00000007`, rect [131,292,128,96]. Its logical access cell [-6,2,0]
  reconstructs to [259,292,64,96]. The facility inset ends x=255; again there
  is no common x interval. Its room pose is standard_room_sleep.

`r13_service_region_gap.json` preserves the needed original report fields,
with source request SHA256
`7dc3ee0bcc428e9d103726ee2448c767f1dd4107f9490833dc860c0b5140068c`.
Direct comparison verified every copied guest, traffic and room rectangle.
A diagnostic unit test demonstrates the empty intersection for both examples.
These extracted fields are not substituted for whole typed acceptance evidence.

This does **not** establish that the new specification is impossible: rule 7
allows aggregation when p=1 cannot fit. If floor means all non-passengers, these
otherwise roomy facilities must aggregate their service guests with zero drawn
members. If floor means unanchored actors, those guests can be packed and drawn
in their facility region. The initial commentary's “constraint conflict” is
therefore narrowed to this interpretation question. No cell restriction was
silently removed and no zero-drawn service aggregation was silently adopted.
An asynchronous question asks the owner to select the intended interpretation.

### Remaining implementation and evidence

Ordered placement, scale fitting, no-fit aggregation, queue-order preservation,
carrier-relative fitted placement, transit recomputation/exemptions and their
checker integration remain unimplemented. The checker remains conservative:
an asserted in_transit flag never bypasses overlap, but the required genuine
transit exception is not implemented. The existing geometry checker still
expects original actor positions/scales. The four-occupant GDScript fixture,
positive packing cases (staff/guest, passenger/floor, queue, saturation and
carried patient), and the new containment/aggregation/queue-order negatives
remain outstanding. The partial renderer changes are not a submitted candidate
and are not claimed to solve R13 actor collisions. All existing tests remain.

Still missing: Root **new native/OS evidence**, the **177-test full regression**,
and **independent Opus all-condition review** for the final candidate.
Historical 49 is preserved and is not relabeled or credited to these edits.
Seven immutable conditions and all6/30/88 remain exact, without partial credit.

### Checks actually run in this continuation

- `PYTHONDONTWRITEBYTECODE=1 python3 tools/test_p23_life_observation_evidence.py`:
  first core run: 63 tests, 7 failures and 1 error because older synthetic
  reports omitted pose fields. Updated those fixtures with explicit poses;
  63 tests then passed (0.089s), followed by 64 (0.094s) after the bounds
  diagnostic. First overlay run: 71 tests, 1 error because the older spatial
  fixture lacked the new band rectangle. Updated that fixture with explicit
  band geometry and consumed-frame fields. Final run: **71 tests, OK, 0.081s**.
- The existing no-bytecode `compile(Path(p).read_bytes(), p, "exec")` syntax
  check passed for checker, checker tests and Root runner script (exit 0).
- Direct Python read-only comparisons verified both extracted R13 fixtures
  against the original SHA-bound request and verified the immutable spec pin.
- A shell heredoc read attempt failed before execution with “can't create
  temp file”; inspection continued with `python3 -c`.

No Godot, native/OS, full regression, Runner, nested provider, git write or
other-agent execution occurred. Only allowed files were edited. The worktree's
previous uncommitted work was retained and extended.

Return a COMPLETE SELF-CONTAINED recorded RUN instruction carrying the source-grounded classification/allowedbounds/priority, cross-kind collisiongroups with individualbounds, coremode/bobsourceSHA/scale fitting/no-fit aggregation/allmembers, queueorder/carrier/transittruth, independentchecks and remaining meaningful negatives/positive fixture. Don't just refer to absent docs in worktree. Actual geometry and latest REGION directions are copied verbatim in existing BUILD_OUTPUT_DIR/negative-image-review-r13. Complete actual R13 screenshots/report/132rownegative judgments remain in sameRuntime as before. The root authority is originalwork/acceptance+immutable7/all6/30/88. Do not repeat impossible cell∩room containment or ask human for routine already-authorized presentation classification. If any further technical wording conflicts with original existing display projections, resolve it from original/source and preserve logicalstate/ids without inventing gameplayvalues. Only truly normative missing product values require owner decision; no such new value is needed for these rendering projections.
No hidden/drop/outside shortcuts, fake judgments, newassets/UIentry/Runtime/save/economy/mana changes, relocationresolver, or testguardweakening. Aggregation only verifiedno-fit at existingfloor, retainedALL ids/state/mode/cell and actualdrawn membership, no auto tiny/transit/aggregate imagepass. Use actualexisting `_actor_drawing` baseformula including ridingfraction andlow-worldpixelbranch; do not introduce guessedminimum. No Godot/native/full/Runner/gitwrites byworker. OnlylocalPython syntax/checkertests; preserve failures honestly. Rootgenuine newnativeOS/full177/independentallconditionreview/final remain missing atsubmission. Partial source is not accepted. ActualAstrachosenbyyou; original900 timeout unchanged, preserve progress ifdeadline. Need sourceimplementation now, not another metadata-only completion. User already authorizes normal fix and allindividualcapsremoved.
