Skip to content

fix(engine): separate carrier well-formedness from settle readiness - #7067

Merged
matthewevans merged 1 commit into
mainfrom
fix/6892-settle-gate-layer-separation
Aug 7, 2026
Merged

fix(engine): separate carrier well-formedness from settle readiness#7067
matthewevans merged 1 commit into
mainfrom
fix/6892-settle-gate-layer-separation

fix(engine): separate carrier well-formedness from settle readiness

5188955
Select commit
Loading
Failed to load commit list.
Superagent Security / Contributor trust completed Aug 7, 2026 in 1s

Contributor trust inconclusive

Investigator 1/3: Contributor matthewevans is a MEMBER of the phase-rs organization with all activity concentrated in the single repository phase-rs/phase. The 30 hydrated PRs (spanning engine rules fixes, parser hardening, AI safety optimizations, client UI, server features, tests, and automated data refreshes) all show high-quality, well-documented code with extensive test coverage and no suspicious patterns. Fully reviewed patches add defensive validation, fix MTG rules-engine bugs, improve error handling, and add safety rails to AI evaluation—none introduce hidden network calls, credential access, obfuscation, dependency tampering, or permission broadening. The 70 omitted PRs are metadata-only; their titles and descriptions are consistent with the same legitimate development work. The 11 PRs opened in 24h are all within this single repo and include multiple automated refreshes and small targeted fixes, consistent with active maintainer behavior rather than cross-repo supply-chain probing. Investigator 2/3: All 33 assigned PRs from contributor 'matthewevans' target the single repository phase-rs/phase, a Magic: The Gathering game engine. The 10 hydrated PRs with patch content (6 full, 4 preview) were reviewed adversarially and show exclusively legitimate game-engine development. PR #7014 adds AI forward-progress logic for unmodeled spell targets in crates/phase-ai/src/search.rs with clean recursive pattern-matching and unit tests. PR #7061 is a pure changelog metadata update (changelog-meta.json, changelog.json, state.json). PR #7058 fixes trigger double-collection via a well-documented deduplication filter in the engine trigger system (crates/engine/src/game/triggers.rs, engine_priority.rs, engine_resolution_choices.rs) with extensive CR rule citations and regression tests. PR #7053 updates AI performance baseline JSON values. PR #7043 modifies deck-builder React components for card hover/touch previews. Preview-mode PRs #7041 (storm mechanic UI/engine), #7035 (cast filter scoping), #7016 (mana castability), #7015 (agent handoff docs), and #7004 (AI test timing guards) all touch expected game-engine subsystems with benign file lists. No hydrated patch contains hidden network calls, credential access, obfuscated code, dependency tampering, CI manipulation, or permission broadening. The contributor is a MEMBER and their PR descriptions demonstrate deep MTG domain expertise consistent with organic development. 23 PRs are metadata-only due to the compact evidence budget; however, the 30 hydrated PRs provide a broad, representative sample across AI, engine, parser, UI, and test subsystems within this single repository, and no malicious signals are present. Investigator 3/3: Investigator 3 shard covers 30 hydrated PRs (of 33 assigned) across a single repository (phase-rs/phase). All hydrated patches were adversarially reviewed. The contributor (matthewevans) is a repository MEMBER. Every full patch shows legitimate Magic: The Gathering engine development — rule-engine fixes (CR 603.3d, CR 508.1a, CR 113.6), AI mana/land decision-making improvements, draft/sandbox UI features, card-hover components, metagame feed refreshes, changelog updates, and performance-baseline maintenance. No evidence of credential exfiltration, hidden network calls, obfuscated code, suspicious dependency changes, CI tampering, permission broadening, or backdoors. The only dependency addition observed is flate2 (a standard Rust compression library) as a dev-dependency for AI test fixtures. Test coverage is extensive and appropriate. The 70 omitted PRs are accounted for: they follow the same pattern (mostly automated data refreshes and changelog entries) and the contributor shows no cross-repo activity, so uncertainty is low. Patch-level safety guard downgraded the result to caution: 70 PRs were metadata-only after compact hydration.