Parent
Parent: #1606 (umbrella). Also unblocks #1575 merge.
Blocking
Blocks #1636 (schema/outbox leaf).
Problem
PR #1575 CI fails Integration (media-buy) on:
tests/integration/test_delivery_poll_behavioral.py::TestBatchContinuesPastFailedSend::test_failed_send_does_not_abort_batch
Assertion: expected the batch-complete tally in the log; got: ''
Mock proves both buys were attempted (mb_fail, mb_ok), so the batch loop ran. Empty caplog.text indicates log capture flake (CI logging/logfire), not missing tally logic.
Fix direction
Coordination
Review comment left on #1575
Out of scope
Durable outbox / sequence reservation (#1606 L1+).
Parent
Parent: #1606 (umbrella). Also unblocks #1575 merge.
Blocking
Blocks #1636 (schema/outbox leaf).
Problem
PR #1575 CI fails
Integration (media-buy)on:tests/integration/test_delivery_poll_behavioral.py::TestBatchContinuesPastFailedSend::test_failed_send_does_not_abort_batchAssertion:
expected the batch-complete tally in the log; got: ''Mock proves both buys were attempted (
mb_fail,mb_ok), so the batch loop ran. Emptycaplog.textindicates log capture flake (CI logging/logfire), not missing tally logic.Fix direction
_send_reports()return(reports_sent, errors)and assert on the return value instead of (or in addition to) caplog.Coordination
Review comment left on #1575
Out of scope
Durable outbox / sequence reservation (#1606 L1+).