Release: develop -> main - #4217
Merged
Merged
Conversation
* feat(bank): integrate Bank Frick WebAPI * fix(bank): harden Bank Frick status polling * test(bank): enforce Bank Frick coverage * fix(bank): harden Bank Frick state tracking * test(bank): lock Frick tracking metadata * fix(bank): widen Frick payment order lookups * fix(bank): tighten Frick customer validation * fix(bank): keep liquidity reserved for deletion-requested Frick orders * fix(bank): decouple Frick auto-approval from transmission switch * fix(bank): overlap Bank Frick statement watermark * refactor(bank): isolate Bank Frick code for coverage gating * test(bank): gate the full Bank Frick surface at 100% coverage * fix(bank): harden Bank Frick integration * fix(bank): avoid false-positive TODO marker * fix: apply Ultra Test-Agent repair for PR #4196 Automated repair triggered by Ultra Test-Agent PR Guard. Previous head: 77eb99e * fix(bank): resolve Bank Frick deep-review findings Address the independent deep review (1 blocking, 11 major, 12 minor), aligning Bank Frick with the Yapeal reference pattern throughout. - Sender selection: data-driven sendPriority tie-breaker instead of throwing on plurality (throw only on a genuine Frick priority tie) - camt.053: reject malformed entries per-entry instead of failing the whole statement; fail closed on a missing bank reference in strict mode - Payout idempotency: atomic reservation before transmit, self-heal on a definitive not-found - BOOKED lookup no longer requires fields Bank Frick never sends; reconcile net of booked charges - Add the Frick liquidity-balance case; reconcilability guard for send-only rows; preserve terminal failure reasons; HTTP timeouts - Keep the customer-facing remittanceInfo (bank reference lives in frickReference); verify signed responses over raw bytes - Migration no longer inserts bank rows; new account and legacy cleanup are documented manual production steps * fix(bank): address re-review findings in the Bank Frick fix commits The prior fix commits introduced four new defects the re-review caught; resolve them. - Scope the stuckFiatOutputs health clause to Frick, so a deploy no longer reports DEGRADED from pre-existing, long-settled non-Frick payouts - Fold frickReference into the atomic payout reservation and re-heal it in the status poller, so a crash between the two writes cannot strand reconciliation - Make the accounting charge direction-aware (a debit amount is already gross) to match the net-of-charge outgoing reconciliation and stop double-counting the charge - Make the not-found self-heal clear conditional, so an overlapping transmit cannot blind the status poller by clearing a just-reserved row Regression test per defect (each fails against the pre-fix code); full suite green, Frick coverage stays 100%. * style(bank): wrap payment observer spec helper signature for prettier * chore(bank): isolate the Bank Frick coverage gate in its own jest config Move the 100% coverageThreshold out of the shared package.json jest block into a dedicated jest.frick.config.js used only by test:frick:cov, so the strict per-file threshold on the shared iso20022.service.ts can no longer red an unrelated test:cov run. Behaviour-neutral for the Frick gate (same 7 files, same 100%, same CI step); also add the new root config to eslint ignores alongside the existing root configs. --------- Co-authored-by: Ultra Test-Agent Fixer <ultra-test-agent-fixer@users.noreply.github.com>
github-actions
Bot
requested review from
TaprootFreak and
davidleomay
as code owners
July 15, 2026 12:43
TaprootFreak
approved these changes
Jul 15, 2026
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.
Automatic Release PR
This PR was automatically created after changes were pushed to develop.
Commits: 1 new commit(s)
Checklist