chore: update coverage stats and badges - #31
Merged
Conversation
matthewevans
enabled auto-merge (squash)
April 8, 2026 19:43
This was referenced Jul 4, 2026
matthewevans
added a commit
that referenced
this pull request
Jul 12, 2026
* docs(engine): sweep CR 609.3 citations — per-site reclassification (#32) CR 609.3 is "If an effect attempts to do something impossible, it does only as much as possible." Of 158 citations, 97 genuinely implement that rule (impossible/no-op/empty-pool/do-as-much-as-possible) and are left untouched. 61 were misattributed and are reclassified per-site: - optionality ("you may" / accept-decline) -> CR 608.2d, the rule for choices an effect offers during resolution; its worked example is literally "You may sacrifice a creature". NOT CR 603.5, which is scoped to triggered abilities only. The sibling field `optional_for` already carried CR 608.2d. - "choose any number" -> CR 107.1c ("any number" = any positive number or zero). - repeat_for loop-count and iteration driving -> CR 608.2c (instructions are followed in the order written). NOT CR 107.1, which only says the game uses integers. - preceding-effect / tracked-set back-references ("the number of cards drawn this way") -> CR 608.2c. Every replacement number was grep-verified against docs/MagicCompRules.txt. Comment-only; no behavior change. * docs(engine): sweep CR 701.16a citations — per-site reclassification (#31) CR 701.16a is Investigate ("Create a Clue token"). Of 30 citations, 15 genuinely implement Investigate and are left untouched. 15 were misattributed: - sacrifice contexts (6) -> CR 701.21a ("To sacrifice a permanent, its controller moves it from the battlefield directly to its owner's graveyard"): the Forge sacrifice effect, the Sacrifice AST count field, the sacrifice AST builder's ObjectCount filter lift, the "target opponent sacrifices" controller override, Pox Plague's chain test, and Krark-Clan Ironworks' sacrifice-as-cost assert. - private "look at" contexts (9) -> CR 701.20e ("Some effects instruct a player to look at one or more cards ... shown only to the specified player"): the Dig look-step parsers, Gonti's look-then-exile-face-down idiom, and both reveal-vs-look contrast pairs, whose public side (CR 701.20a, Reveal) was already correct. Every replacement number was grep-verified against docs/MagicCompRules.txt. Comment-only; no behavior change. * docs(engine): sweep CR 614.12a citations — per-site reclassification (#41) CR 614.12a is "If a replacement effect that modifies how a permanent enters the battlefield requires a choice, that choice is made before the permanent enters." 133 of 145 citations genuinely implement it (as-enters choices, Devour co-entry, Karoo / Mox Diamond MayCost, enters-with-your-choice-of-counter, enter-as-copy, deferred-entry replay) and are left untouched. 12 were misattributed onto the post-replacement continuation machinery, which is event-type agnostic and fires for damage/life replacements where no permanent enters the battlefield: - cross-event-type substitution (Lich-class "if you would gain life, draw that many cards instead") and the generic continuation lifecycle (9) -> CR 614.6, "If an event is replaced, it never happens. A modified event occurs instead." NOT CR 615.5, which is prevention-specific (it speaks of the amount of damage that was prevented). - Swans of Bryn Argoll's prevented-damage-source stash (1) -> drop 614.12a; that site's CR 615.5 + CR 609.7 citations were already correct and sufficient. - two serde backward-compat migration sites -> annotation dropped entirely, per CLAUDE.md "do not annotate boilerplate, serialization, or plumbing." HOLD-OUT: parser/swallow_check.rs is under concurrent edit and is excluded; its one 614.12a site is CORRECT as written (MayCost is the Karoo/Mox as-enters cost). Every replacement number was grep-verified against docs/MagicCompRules.txt. Comment-only; no behavior change. --------- Co-authored-by: matthewevans <matthewevans@users.noreply.github.com>
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.
Automated update of README coverage badges from latest card data.