5 SEPTEMBER 2026 · ROUND 5

Engineering review and hardening

Exact SDK revision validation and webhook backlog-age correction. All 14 targeted regression tests passed after Docker recovered.

Previous review · Findings · Scores · Validation data

Latest: Round 6 recovery improvements and scoring

trustweave

96/100

Previous review: 96/100

trustweave-saas

95/100

Previous review: 95/100

Assessment scope

Round 5 targeted follow-up: reviewed release-source validation and webhook recovery aging, with unchanged SDK runtime and wallet code. Round 4 broad validation remains historical evidence, not a new full-suite run. All 14 targeted database, migration and webhook tests passed after Docker recovered. Scores remain 96/95 because the remaining category deductions are still open.

Scores are engineering judgments against the same 30/25/20/15/10 rubric. They are not percentages of bug-free code or a security certification. Historical scores are preserved.

CategoryMaximumTrustWeaveSaaS
Security302929
Correctness252424
Architecture201919
Testing151514
Experience1099

Remaining deductions

trustweave

trustweave-saas

Validation evidence

AreaResultScope and limits
Release source guard2 Python tests passed; actual SDK revision and fingerprint matchLocal committed SDK. No publication, remote CI or deployment.
Backend compilationProduction and test Kotlin compilation passedProduction and test Kotlin compile; V25 migration and retry behavior also passed their database regressions.
Webhook unit tests5 passed in final targeted runTwo recovery monitor tests and three Stripe controller tests; all passed.
PostgreSQL integration and migration9 passed; 14 total targeted tests with zero failures or skipsFive Flyway and four recovery/access tests. BUILD SUCCESSFUL in 3m 14s. The targeted run excludes the whole-server coverage threshold; no full-suite/coverage rerun is claimed.
SDK and walletUnchanged runtime; Round 4 evidence retained3,729 JVM tests with 15 skips, 28 wallet unit tests and 9 browser tests were validated in Round 4, not rerun here.
SaaS broad suiteRound 4 evidence retained: 526 tests, 2 skips; coverage passed thenHistorical broad-suite baseline. The new webhook database change is now additionally covered by successful Round 5 targeted validation.

Results distinguish local database/HTTP fixtures from hosted-service validation. Optional tests that did not run remain reported as skips. Timing excludes fixture setup.

Build and test logs

Implemented improvements and remaining gaps

trustweave-saas · SA-R5-01 · verified

Require the reviewed SDK commit as well as its fingerprint

Updated the SaaS pin to the committed round-4 SDK and added exact HEAD validation. CI passes its explicitly selected immutable revision into the same guard.

Evidence: Two Python regressions pass, including rejection of branch names, abbreviated SHAs and a mismatched full SHA. The actual SDK checkout passes revision and fingerprint validation.

Limit: The commit exists locally; publication and remote CI remain unverified.

Source and tests
trustweave-saas · SA-R5-02 · verified

Repeated webhook failures no longer reset backlog age

Preserve first_failed_at with a PostgreSQL atomic upsert, while updating latest failure details. The oldest-failure metric uses the original failure time. Flyway V25 backfills existing rows and permits inserts from older application versions.

Evidence: All 14 targeted tests passed: five Flyway migration tests, four PostgreSQL webhook recovery/access tests, three Stripe controller tests and two monitor tests. This includes preserved first-failure age after retry and V25 backfill/older-version insert compatibility.

Limit: Pre-migration first-failure history cannot be reconstructed. Hosted alert delivery remains untested.

Source and tests
trustweave-saas · SA13 · remaining

Published exact-pair Linux/staging validation

The SDK is now committed and pinned locally. Publication, exact-pair remote Linux CI and designated staging validation remain pending.

Evidence: No publication or staging execution is claimed.

Limit: A matching local fingerprint cannot substitute for a reviewed, published and tested immutable pair.

Source and tests
trustweave · PROVIDER-CUSTODY · remaining

Provider maturity and production wallet custody

Most plugin capabilities remain unassessed. The reference wallet has no hardware/user-presence signing or recoverable holder-key service; supported issuer and disclosure profiles remain limited.

Evidence: Full local JVM suite passed with 15 optional/template tests skipped; live provider environments and hardware-backed custody remain unvalidated.

Limit: A complete product/profile definition and supported provider matrix are needed before these deductions can be closed.

Source and tests
trustweave-saas · BILLING-OPERATIONS · remaining

Live billing workflow and hosted alert delivery

Two Accountly live-contract tests require a separately configured Accountly/PSP stand-in. Legacy Stripe invoice handlers remain logging-only for settlement/notification purposes.

Evidence: Local signed-webhook recovery and aggregate monitoring are tested; hosted alert delivery and live Accountly flow are not.

Limit: The supported Accountly cutover/legacy Stripe workflow needs to be defined and exercised before claiming completeness.

Source and tests
trustweave-saas · LOCAL-VALIDATION · verified

Docker recovered; database-backed validation completed

After Docker became available again, its engine responded with version 29.4.1 and the blocked test selection was rerun successfully.

Evidence: Gradle BUILD SUCCESSFUL in 3m 14s; 14 tests, zero failures, errors or skips. Per-suite results are recorded in backend-validation.json.

Limit: This was a targeted regression run, not a new full-server coverage run or hosted staging validation.

Source and tests

Operational handoff

docs/round-5-operations.md covers the repaired release pin, Flyway V25, preserved failure age and deployment limits. Staging environment and release-branch details were requested during this pass and remain prerequisites for external release checks.

Implementation references: PostgreSQL advisory locks, Next.js CSP, Azure listing semantics.