Skip to content

debug: SR_FORCE_ARENA_IDS to pin a gauntlet floor's arena line-up - #43

Merged
scrimshawlife-ctrl merged 1 commit into
mainfrom
debug/force-arena-ids
Aug 31, 2026
Merged

scrimshawlife-ctrl merged 1 commit into
mainfrom
debug/force-arena-ids

Conversation

@prabu-openclaw

Copy link
Copy Markdown
Collaborator

A DEBUG-only env hook that makes art/QA passes on the replay arenas reproducible.

Why

A gauntlet floor rolls random arenas and persists them, so checking a specific arena's background meant relaunching until it happened to come up. With 20 arenas that's slow.

What

SR_FORCE_ARENA_IDS forces an exact line-up and wins over the persisted picks:

SIMCTL_CHILD_SR_FORCE_ARENA_IDS=arena_08,arena_09 \
  xcrun simctl launch <udid> com.hexwireaaron.game

Safety

  • Wrapped in #if DEBUG — cannot affect a Release build.
  • Ids are validated against ArenaPool; unknown ids are filtered out, and if nothing valid remains it falls through to the normal random roll. A typo can't produce an empty floor.
  • Reads only; no persistence writes.

Follows the existing SR_AUTOSTART_MISSION_ID debug-hook pattern.

Validation

Used throughout the arena art pass — pinned line-ups loaded exactly as specified, and the log confirms the resolution (SR_FORCE_ARENA_IDS → ["arena_08", "arena_09"]).

Code-only; no files added/removed, so no XcodeGen regeneration needed.

🤖 Generated with Claude Code

Art and QA passes on the replay arenas were awkward: the floor rolls
random arenas and persists them, so hitting a specific arena meant
relaunching until it came up.

DEBUG-only env hook that forces an exact line-up and wins over the
persisted picks, so a launch is reproducible:

  SIMCTL_CHILD_SR_FORCE_ARENA_IDS=arena_08,arena_09 \
    xcrun simctl launch <udid> com.hexwireaaron.game

Ids are validated against ArenaPool, so a typo or an unknown id falls
through to the normal random roll rather than producing an empty floor.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

@scrimshawlife-ctrl scrimshawlife-ctrl left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

DEBUG-only #if DEBUG hook, validated against ArenaPool, CI green across hygiene, tests, Debug/Release, and unsigned archive. Squash-merging.

@scrimshawlife-ctrl
scrimshawlife-ctrl merged commit 9191537 into main Aug 31, 2026
7 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