refactor(infra): enforce coding and testing standards across all services (STA-243)#269
Merged
Merged
Conversation
…TA-243) - Add @ConditionalOnMissingBean to fallback adapters in S2, S3, S4, S5, S6 so real provider beans take precedence in sandbox profile - Fix USDC decimal scaling in DevCustodyAdapter (truncate, not throw) - Replace wget Docker healthchecks with TCP checks, fix Temporal command - Disable JaCoCo (incompatible with Java 25) - Exclude @tag(sandbox) tests from default test runs - Widen recipient_account_hash column for full SHA-256 digest Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ices (STA-243) - Remove all Javadoc and TODO comments from 300+ production files - Move 11 config classes to correct packages (application/config or infrastructure/config) per hexagonal architecture standard - Extract IsolatedTransactionExecutor port to remove Spring transaction infrastructure imports from domain layer (S4, S5) - Move TASK_QUEUE constant from application to domain layer (S1) - Replace DataIntegrityViolationException with RuntimeException in domain handler (S1) - Convert non-BDD Mockito (when/verify) to BDD style (given/then) across 8 test files - Replace generic argument matchers (any, anyString, eq) with actual values in test stubs and verifications Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
Important Review skippedToo many files! This PR contains 300 files, which is 150 over the limit of 150. ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (300)
You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
…243) The comment-removal pass in 35a3a18 accidentally collapsed six requestMatchers(...).permitAll() lines into a single nonsense path /actuatorauth/**, causing /v1/auth/**, /v1/invitations/**, /actuator/**, Swagger, and /.well-known/** to all require JWT auth. Four merchant-iam business tests failed as a result because they could no longer log in. Restore the original permit list so business tests pass. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.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.
Summary
Follow-up to #248. Applies the coding and testing standards from
stablebridge-tx-recoveryacross the entire platform, cleaning up legacy patterns and aligning all services with hexagonal architecture rules.What changed
1. Build and sandbox fixes
@ConditionalOnMissingBeanon fallback adapters (S2, S3, S4, S5, S6) so real provider beans take precedence in sandboxDevCustodyAdapter(truncate, not throw)@Tag("sandbox")tests from default test runs2. Domain layer violations (hexagonal architecture)
IsolatedTransactionExecutorport in S4 + S5 to remove Spring transaction infrastructure imports from domain layerTASK_QUEUEconstant from application to domain layer (S1)DataIntegrityViolationExceptionwithRuntimeExceptionin domain handler (S1)3. Package structure
application/config/orinfrastructure/config/) across 6 services4. Test standards
when/verify) to BDD style (given/then) across 8 test filesany(),anyString(),eq()) with actual values where applicable5. Comments and Javadoc cleanup
/** ... */Javadoc blocks from ~300 production files// TODOand// FIXMEcomments// ── ...,// -- ... ---)Totals
Test plan
./gradlew compileJava compileTestJava --parallel— BUILD SUCCESSFUL./gradlew test --parallel(excluding cross-service integration tests) — all passCloses STA-243