Cloud brief 2026-10-27 - gfx-1007b review leftovers (#149,
Fix three small leftovers from the gfx-1007b-port review. One focused commit per item, TDD (failing GUT test first where testable headless).
Branch: gfx-review-leftovers/2026-10-27 from origin/main. Push the branch only. NO merge, NO PR, NO deploy, NO BUILD bump, do not touch main or ~/Claude/godot-tvos.
Read first
Section titled “Read first”CLAUDE.md, docs/architecture/rendering-and-performance.md, docs/architecture/coop-and-pilots.md, docs/reference/running-and-testing.md, docs/architecture/godot-gotchas.md, .claude/skills/bh-write-test/SKILL.md.
Items (in order)
Section titled “Items (in order)”- #149
fx/marker_budget.gd:52-101allocates arrays + a Dictionary every sim tick (up to 400 candidates). Reuse member buffers (clear, don’t reallocate). Behaviour must be identical; add a test proving same output across repeated calls and no growth in buffer identity/size beyond need. - #150
render/weapon_pickup_renderer.gd:88,203: (a) pickup banner shows one at a time in co-op: make it handle both pilots sensibly (queue or one per pilot, pick the simplest that does not overlap); (b) absorb ring usessim.player.radiusfor both pilots: use the absorbing pilot’s own radius. - #151
render/weapon_pickup_renderer.gd:223: world label is a hard-coded 12px; make it honour the TextSize setting (find how other world labels/HUD do it; do not invent a new mechanism).
Load-bearing rules
Section titled “Load-bearing rules”- /sim pure + deterministic; seed baselines in
tests/test_determinism*.gdmust NOT change. If they would, stop and report; repins are Chris’s call (bh-determinism-repin). - Never hand-edit
Sim_Const.BUILD. Commit anyproject.godotedit BEFOREscripts/gate.sh. Nevercpintoplatform/tvos/. - Any shader edit is out of scope (headless gate cannot compile shaders).
- Renderer changes cannot be visually verified in the cloud: say so, list them under on-device verification.
Install Godot 4.7.1 stable Linux x86_64, godot --headless --import, confirm GUT green on main first (scripts/check-test-count.sh).
scripts/gate.sh + scripts/check-test-count.sh must pass. If something can’t run, say exactly what.
Output
Section titled “Output”Per-item summary (files, tests, before/after), anything skipped and why, gate result, what needs on-device verification. Tag claims [Certain]/[Likely]/[Guessing]. Use Fixes #N in each commit message.