Outcome
Burn down the M1 matrix in #5 until every required observable client behavior is implemented, verified, or explicitly rejected as a product non-goal.
Scope and invariants
- Review every domain row against its final server/protocol/renderer/client owner and shipped contract.
- Add missing focused issues rather than collecting implementation in this epic.
- Run independent behavioral, visual semantic-mask, accessibility, failure-recovery, and wrapper scenarios with exact release inputs.
- Validate that no classic-only parser, plugin, library, packet, config, asset, or classic source checkout is required.
- Record approved approved-grantor migrations and preserve notices; distinguish them from independent implementations.
Acceptance criteria
- Matrix reports zero unowned, unverified, or ambiguous required rows.
- All exclusions have explicit product approval and do not silently change existing issue design choices.
- Linux/Windows parity runs cover representative supported input/display/audio/backend combinations.
- M3/M4/M5 scenario set passes against pinned release candidates with no Python or classic process.
- The report identifies deliberate technical differences separately from player-facing differences.
Dependencies and parallelization
Depends on all client-owned migration issues and cross-repository parity epics. It gates packaging/cutover but not parallel implementation.
Licensing
Client code/tests are MIT. Legacy reuse requires an audited approved-grantor grant; all other implementation is independent. Content, sound, and graphics retain their exact asset licenses and notices.
Program equivalence output
Publish the completed client matrix using the capability/result contract in atrinik#279, including exact release/resource coordinates, automated and named manual evidence, semantic rendering masks, and approved differences. This issue is a native blocker of atrinik#280; no broad visual tolerance or prose sign-off may hide an unowned required row.
Outcome
Burn down the M1 matrix in #5 until every required observable client behavior is implemented, verified, or explicitly rejected as a product non-goal.
Scope and invariants
Acceptance criteria
Dependencies and parallelization
Depends on all client-owned migration issues and cross-repository parity epics. It gates packaging/cutover but not parallel implementation.
Licensing
Client code/tests are MIT. Legacy reuse requires an audited approved-grantor grant; all other implementation is independent. Content, sound, and graphics retain their exact asset licenses and notices.
Program equivalence output
Publish the completed client matrix using the capability/result contract in atrinik#279, including exact release/resource coordinates, automated and named manual evidence, semantic rendering masks, and approved differences. This issue is a native blocker of atrinik#280; no broad visual tolerance or prose sign-off may hide an unowned required row.