Feature: import credited Xevious sprite sheets - #6
Merged
Conversation
StarshipSuperjam
marked this pull request as ready for review
July 29, 2026 17:54
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Purpose
Import the five supplied Xevious sprite sheets while preserving their third-party attribution.
Impact: The Scratch project carries the supplied reference sheets without making a false ownership, permission, or license claim.
Scope
Add an inactive Scratch costume library backed by provenance-enforced overlay assets.
Change profile — the shape of this pull request at a glance:
Part of #Nline below says it is one slice of a larger effort.This is a description, not a gate — it never blocks a merge. It is here so you can weigh the change by what it touches, not by its line count.
Impact: All five sheets become available in the generated project and remain reviewable in source control.
Behaviors
The generated Scratch project contains all five credited sprite sheets without changing current gameplay.
sprite_sheetstarget contains five named costumes —test_sprite_sheet_library_is_hidden_and_credited.test_sprite_sheet_library_is_hidden_and_credited.test_canonical_source_preserves_original_json_values_and_order.test_current_source_survives_build_import_roundtrip.test_media_transfer_record_requires_provenance_attestation.Out of scope
This change does not slice the sheets into gameplay-ready frames or add enemy behavior.
Impact: The import remains reversible and does not overstate what attribution permits.
Risk
The main risk is redistributing third-party game artwork without a stated reusable license.
Impact: Provenance is explicit, files remain unchanged, historical-target and round-trip tests bound structural risk, and the operator remains the merge gate.
Validation
All local project and Engine validation passed on reviewed commit
6360983.3a870e44…274eand produced deterministic build hash78f214f7…db76c.docs/mechanics/001-sprite-sheet-library.md.Impact: An approver can rely on deterministic packaging, exact file identity, provenance coverage, and the full automatic test gates; these checks do not establish legal permission.
Review
Quick review completed with no extra cold review passes; automatic checks found and helped fix migration assumptions, with no unresolved product finding.
main; both were already current, so zero index files changed and no work was lost.6360983and submitted6360983, 0 lines were added and 0 deleted or modified.If the merge button is greyed but every check passed, it may be an unresolved review conversation — here's what that means and what you can do.
GitHub won't let a pull request merge while a review comment on it is still marked unresolved — even when all the automated checks are green. The merge button just greys out. This isn't a failure; it's a comment someone left that hasn't been settled yet.
You can settle it yourself. Read the comment, decide you're genuinely satisfied it's been handled, and then mark it resolved — resolving it is you accepting the point it raised, so it's worth doing only once you've read it, never as a formality to get past the button. The engine never resolves one of these for you: a comment flagged a concern, and clearing it unread would defeat the reason it's there.
To find it: open the pull request's Conversation tab (or Files changed) and look for the comment with a Resolve conversation button. If a rebase or a force-push moved the lines the comment was attached to, GitHub marks it outdated and hides it — on the Conversation tab, expand the collapsed outdated comments to reach it, read it there, and only then resolve it.
Impact: This is the engine's own quick-review account; the approver's merge is the binding gate.
Files of interest
Start with the credit record, then inspect the Scratch target and enforcement changes.
docs/ASSET_CREDITS.mdsrc/xevious/assets/provenance.jsonsrc/xevious/project.jsontools/check_mechanics_record.pytests/test_scratch_project.pyImpact: These files most directly determine which images ship, how their origin is represented, and how future imports remain honest.
AI involvement
Codex planned, implemented, tested, and documented the import; the operator selected the source, required attribution, and chose quick review.
Impact: AI judgment is load-bearing in Scratch integration and provenance wording; source selection, risk acceptance, and final approval remain human decisions.