Add Sothera dies-edict regression tests (#5255) - #5604
Conversation
|
Warning You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again! |
matthewevans
left a comment
There was a problem hiding this comment.
Blocked — the test binary does not compile: this PR registers a module whose file it does not ship. Fix is one line; the linked-issue claim also needs correcting.
🔴 Blocker 1 — main.rs registers a module from your other branch (build break)
crates/engine/tests/integration/main.rs:781 adds:
mod issue_5263_chaos_warp;but this PR ships only issue_5255_sothera_supervoid.rs. issue_5263_chaos_warp.rs lives in #5600, not here. CI says it plainly:
error[E0583]: file not found for module `issue_5263_chaos_warp`
That single stray line is why all four Rust checks fail (lint, coverage-gate, and both test shards) — the whole integration test binary fails to build, so nothing in it runs, including your Sothera test.
Fix: drop the mod issue_5263_chaos_warp; line from this PR's main.rs. Keep only mod issue_5255_sothera_supervoid;. It looks like this branch was cut from your #5600 branch and picked up its registration; rebasing onto a clean origin/main will also clear it.
🔴 Blocker 2 — Closes #5255 is not supported by the issue
The PR body says Closes #5255, which would auto-close that issue on merge. Two problems:
- The issue is internally inconsistent. #5255 is titled "Sothera, the Supervoid?" and its Summary describes a dies-edict trigger — but its "Oracle text (verified from card-data.json)" section is for a different card, The End (
Cards: the end): "This spell costs {2} less to cast if your life total is 5 or less. Exile target creature or planeswalker…". The Discord extraction attached the wrong card, so the issue does not actually establish the Sothera behavior you are testing. Parser status: has_gapson that issue — the mechanic is flagged as not fully parsed. A test asserting the fixed behavior is premature until the fix lands.
Fix: remove the closing keyword (use Refs #5255 if you want the backlink). The issue needs re-triage — its Oracle text does not match its title — and should not be silently closed by a test PR.
🟡 Non-blocking
Test placement is correct: crates/engine/tests/integration/ with a mod line, so no no_top_level_test_binaries violation. That part is right.
Recommendation: request-changes. Remove the stray mod issue_5263_chaos_warp;, rebase onto clean origin/main, and drop Closes #5255. Once the binary compiles, the Sothera test can actually be evaluated on its merits — right now it never runs.
The phase-rs#5255 branch accidentally registered mod issue_5263_chaos_warp without the module file, breaking integration test compilation in CI. Co-authored-by: Cursor <cursoragent@cursor.com>
Parse changes introduced by this PR✓ No card-parse changes detected. |
|
Thanks for the quick turnaround on the stray I'm going to decline this one, though, and I want to be specific about why so it's useful rather than just a "no". The coverage already exists on The one genuinely new idea is neutralized by its own fallback. Driving the trigger through On issue selection — and this is the most useful thing I can give you. Two things to check before opening a regression-test PR:
There are ~19 open Closing this one; #5255 stays open for triage. |
Closes #5255
Summary
main(feat(parser): Sothera, the Supervoid dies-edict exile + end-step linked reanimation #5404).player_scope: Opponentexile when a controlled creature dies.Test plan
issue_5255_sothera_dies_trigger_parses_opponent_scoped_exile_edictissue_5255_sothera_dies_trigger_exiles_opponent_creaturesothera_each_opponent_exiles_own_creature(existing)sothera_reanimates_only_linked_creature_with_two_counters(existing)Verification