Round 3: the last two places that render "cannot tell" as "fine" - #9
Merged
Conversation
THE SCRIPTED FAKE DROPPED THE OFF-SESSION GUARD — third instance of this class. ScriptedPaymentGateway extends FakePaymentGateway, whose entire purpose after this campaign is refusing what production refuses, and then overrode charge() and threw that away. None of the five dunning suites vaulted an instrument, so every intent they produced was non-off-session — meaning the whole adaptive-dunning, smart-retry and card-updater surface was green against a `pending` result the real Stripe and Mollie gateways cannot return. Both refuse such an intent with FAILED, which opens dunning; the tests asserted the opposite. Fixed on both sides, which is the point: the fake now defers to the parent's refusal before consulting its script, AND the five suites vault a default method, as any account actually being dunned necessarily has. Twelve tests failed when the guard was restored — that is the measure of how much was being asserted about a call production would never make. REPORTNEXUS PRINTED "NOTHING TO DO" FOR A BOARD THAT MEASURED NOTHING. It read only triggered() and approaching(), so a deployment whose dataset location is unreachable — every state unknown — got "No US states have triggered or are approaching" and a SUCCESS exit. The alert emitter and the console were both fixed earlier; this scheduled command was the last one left, and it is the one an operator reads in a cron log. It now names the unmeasured states, says plainly that this is NOT "below", points at the env var, and exits non-zero so a cron watcher sees it.
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.
The scripted fake dropped the off-session guard — third instance
ScriptedPaymentGatewayextendsFakePaymentGateway, whose entire purpose after this campaign is refusing what production refuses — then overrodecharge()and threw it away.None of the five dunning suites vaulted an instrument, so every intent they produced was non-off-session. The whole adaptive-dunning, smart-retry and card-updater surface was green against a
pendingresult the real Stripe and Mollie gateways cannot return — both refuse such an intent withFAILED, which opens dunning. The tests asserted the opposite.Fixed on both sides: the fake defers to the parent's refusal before consulting its script, and the five suites vault a default method, as any account actually being dunned necessarily has. Twelve tests failed when the guard was restored — that is the measure of how much was being asserted about a call production would never make.
ReportNexus printed "nothing to do" for a board that measured nothing
It read only
triggered()andapproaching(), so a deployment whose dataset location is unreachable — every stateunknown— got "No US states have triggered or are approaching" and aSUCCESSexit.The alert emitter and the console were fixed in earlier rounds; this scheduled command was the last one left, and it's the one an operator reads in a cron log. It now names the unmeasured states, says plainly this is not "below", points at the env var, and exits non-zero.
Gate
pint · PHPStan level max (0 errors) · 1034 tests — green.