ReviewOS

stacks/the-settlers-iii-remake

[S3-003] Establish licensed bundled-content provenance

#19
Open chris opened this 9 days ago ·
9 days ago

S3-003: Establish licensed bundled-content provenance

Parent and ownership

Parent epic: https://github.com/stacksjs/the-settlers-iii-remake/issues/5 Source owner: stacksjs/the-settlers-iii-remake. Master roadmap: https://github.com/stacksjs/the-settlers-iii-remake/issues/4.

Problem and observable result

Inventory every original media and campaign category. Record redistribution evidence and permitted channels. Block bundled releases when required rights are absent.

The current application is a browser prototype. Passing the Riverlands campaign does not establish original-game or native parity. This issue is complete only when its stated behavior has retained evidence.

Evidence and interfaces

Verified source observations and decoded content enter immutable, versioned catalogs. Distinguish original facts, reference-remake behavior, and engineering decisions.

Pin the inspected revisions and fixture hashes in the implementation evidence. Original-game observations govern rules and timing. JSettlers is implementation evidence, not an authoritative balance specification. Unknown values remain explicitly unverified.

Acceptance criteria

  • Inventory every original media and campaign category.
  • Record redistribution evidence and permitted channels.
  • Block bundled releases when required rights are absent.
  • The visible result agrees with the underlying simulation or platform state, including failure paths.
  • Tests exercise the maintained public interface and retain reproducible fixtures or execution receipts.

Test matrix

  • Reject missing or expired evidence.
  • Verify each bundled file maps to provenance.
  • Exercise invalid input, cancellation or interruption, and repeated execution where this interface permits them.
  • Verify determinism/conservation for simulation changes and resource ownership/disposal for platform changes.
  • Run owning-repository lint, relevant type checks and tests. Capture actual native output for native capability claims.

Scope constraints

Implement this behavior as a complete verifiable slice. Do not silently expand into adjacent tickets or substitute simplified gameplay. Keep the shared TypeScript simulation, shared stx signals, and ts-css conventions. Native gameplay and HUD must not depend on a WebView. HomeOS reuse must not introduce a kernel dependency into the game. Existing unrelated edits and authored guidance must be preserved.

Blocked by

Upstream release and adoption

Application behavior belongs here. If a reproduction identifies a framework defect, repair and release its owning source first, update Stacks where affected, then install the verified packages here.

No node_modules edits, copied runtimes, generated-source string patches, fabricated globals, successful no-op implementations, or skipped release gates. Push tested conventional commits as Chris to the owning origin/main without coauthor trailers or force pushes.

Completion evidence

  • Implementation commits and relevant upstream issue links.
  • Exact checks and results, fixture hashes, and screenshots/native execution evidence where applicable.
  • Published package versions, downstream lockfile identity, and release receipts when affected.
  • Remaining limitations stated explicitly. Partial work does not close this issue.
9 days ago

Partial implementation is upstream in 06c1492, with content provenance and rights findings.

The inventory covers 25 content categories. Every one of 24 converted outputs maps to exact original/reference/converter inputs and selectors. Real conversion produces 103 sprite frames and six PCM sounds. Private imports, production builds and browser assertions remain available. CI retains diagnostics and raster hashes/dimensions, while original media and unapproved raster uploads are withheld.

The mandatory publication:check script refuses all six publication channels and missing/unknown channels while rights are unverified. Deployment, preview and release workflows call it before publication. The corresponding direct Stacks entrypoint enforcement is upstream at 51f8f528b7, with its package release/adoption still pending.

Combined game checks passed: frozen install, lint with zero issues, all type pipelines, 47 unit tests / 2,636 assertions, real import/verification, production build and browser campaign. The S3-003 implementation also passed hosted CI.

This issue stays open. There are zero reviewed redistribution grants and no permitted bundled publication channels. The pinned remake has an MIT code license; that is separate from original-media rights. Source provenance, successful conversion and public availability do not establish permission. Published framework adoption and actual rights evidence remain unmet.

Sign in to comment on this issue.