refactor(stripe): consume dunite-stripe response DTOs (DEV-515 pt 1) #447

Merged
longjacksonle merged 2 commits from feat/DEV-515-consume-stripe-dtos into main 2026-08-03 20:30:29 +02:00

What

First slice of DEV-515 (under the DEV-495 epic): consume the shared dunite-stripe response DTOs, replacing bunyip's local copies. models/stripe.rs re-exports the seven DTOs from the crate so every crate::models::stripe::* / crate::models::* path is unchanged. The DB StripeConfig model, secret encryption helpers, and StripeConfigResponse stay here (app-specific).

Next slice (follow-up)

The async-stripe StripeService (35 methods, 1642 LOC) + the runtime StripeConfig, behind a neutral StripeServiceError. a8n-tools adoption is separate (with its DTO-field reconciliation).

Testing

cargo build -p bunyip-domain -p bunyip-api clean; clippy + fmt clean; the 17 retained encryption / masking / config unit tests pass. Depends on dunite PR #29.

🤖 Generated with Claude Code

https://claude.ai/code/session_01QLd9c7niucrqx68v4AxVss

## What First slice of DEV-515 (under the DEV-495 epic): consume the shared `dunite-stripe` response DTOs, replacing bunyip's local copies. models/stripe.rs re-exports the seven DTOs from the crate so every `crate::models::stripe::*` / `crate::models::*` path is unchanged. The DB `StripeConfig` model, secret encryption helpers, and `StripeConfigResponse` stay here (app-specific). ## Next slice (follow-up) The async-stripe `StripeService` (35 methods, 1642 LOC) + the runtime `StripeConfig`, behind a neutral `StripeServiceError`. a8n-tools adoption is separate (with its DTO-field reconciliation). ## Testing `cargo build -p bunyip-domain -p bunyip-api` clean; clippy + fmt clean; the 17 retained encryption / masking / config unit tests pass. Depends on dunite PR #29. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01QLd9c7niucrqx68v4AxVss
refactor(stripe): consume dunite-stripe response DTOs (DEV-515 pt 1)
Some checks failed
E2E PR gate / Install + reachability (no deployment secrets) (pull_request) Successful in 24s
Check / fmt + clippy + build + tests (pull_request) Has been cancelled
64404c1dc8
Replace bunyip's local async-stripe response DTOs (product / price / subscription / subscription-item / checkout-price / invoice / webhook-endpoint) with the shared dunite-stripe crate, re-exported from models/stripe.rs so every crate::models::stripe::* / crate::models::* path is unchanged across bunyip-domain and bunyip-api. The DB StripeConfig model, the secret encryption helpers, and StripeConfigResponse stay here (app-specific). First slice of DEV-515; the async-stripe StripeService + runtime config land in the follow-up. Pinned to the crate's branch rev; the 17 retained encryption/masking/config unit tests pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QLd9c7niucrqx68v4AxVss
Merge remote-tracking branch 'origin/main' into feat/DEV-515-consume-stripe-dtos
All checks were successful
E2E PR gate / Install + reachability (no deployment secrets) (pull_request) Successful in 23s
Check / fmt + clippy + build + tests (pull_request) Successful in 13m38s
Create release / Create release from merged PR (pull_request) Has been skipped
a800234eaf
# Conflicts:
#	Cargo.lock
#	crates/bunyip-domain/Cargo.toml
longjacksonle scheduled this pull request to auto merge when all checks succeed 2026-08-03 20:21:58 +02:00
longjacksonle deleted branch feat/DEV-515-consume-stripe-dtos 2026-08-03 20:30:30 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
psa-systems/bunyip!447
No description provided.