Skip to content

Repair seams in generated scrolling game backgrounds - #5684

Merged
georgi merged 1 commit into
mainfrom
codex/game-background-seam-repair
Sep 8, 2026
Merged

Repair seams in generated scrolling game backgrounds#5684
georgi merged 1 commit into
mainfrom
codex/game-background-seam-repair

Conversation

@georgi

@georgi georgi commented Sep 8, 2026

Copy link
Copy Markdown
Collaborator

What changed

Generated scrolling backgrounds can fail seamless-edge validation. Adds an opt-in repair mode to SeamlessImage that blends the outer 10% along each requested axis before checking edges, preserves dimensions and center pixels, and handles transparency using premultiplied colors. Repaired output drops the original asset identity. Generated game graphs enable repair for scrolling backgrounds and leave non-tiling title artwork unchanged.

Verification

  • npm run test --workspace=packages/image-nodes -- game — 33 tests passed, including axis selection, center preservation, transparent pixels, tiny images, and 1920×1080 input.
  • npm run test --workspace=packages/protocol -- game-graph — 39 tests passed.
  • NODE_OPTIONS=--max-old-space-size=8192 npm run typecheck — passed in the development checkout.
  • npm run lint — passed in the development checkout.
  • VITEST_MAX_WORKERS=2 npm run dev:nodetool -- harness gate --base origin/main — 13/13 selfchecks passed in the development checkout.
  • Patch whitespace check passed.

Checks ran against the combined development checkout before the focused PR commit was assembled. This PR contains only seam repair and its tests. Edge detail is intentionally softened when repair is enabled; ordinary SeamlessImage calls keep repair disabled by default.

@georgi
georgi enabled auto-merge (squash) September 8, 2026 11:28
@georgi
georgi merged commit 60f17d6 into main Sep 8, 2026
23 checks passed
@georgi
georgi deleted the codex/game-background-seam-repair branch September 8, 2026 11:50
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.

1 participant