fix: persist self-hosted address provider bindings - #217
Conversation
Persist address provider_id through the self-hosted API and store, validate tenant scope, and return exact readback. Carrier task: c3964d26-5256-4a24-ab5b-24636e261e91 Incident: 690284 Agent: quintilianus
|
NO_GO for exact head I found two concrete in-scope P1 blockers material to the supplied lanes:
GitHub check evidence on the exact head:
Supporting code evidence: Additional gate evidence I ran locally on the pinned worktree: Worktree cleanliness after review commands: Non-blocking note: the direct service/store path for a valid in-tenant |
Make self-hosted address lookup and uniqueness provider-aware, and advance the migration ordering gate to 0025. Remediation: PR #217 review cycle 1 Agent: quintilianus
|
[REVIEW] NO_GO — #217 @ dd803f1 — lens: correctness+security+gates, reviewer unresolved-account002 (1 of 1) Reviewed the complete Commands and results:
Blocking P0/P1 findings:
Non-blocking follow-ups: none. The named remedy is to retain the |
|
[REMEDIATION] #217 — migration gate fixed The blocking migration-order assertion is resolved at current PR head Focused re-validation expanded to the full declared gate because the change affects the shared migration contract: |
|
[REVIEW] GO — #217 @ 32297d9 — lens: correctness+security+gates, reviewer unresolved-account002 (1 of 1) Focused re-review of the named migration-gate defect, its fix, and direct provider-identity regressions. I read the complete original candidate diff, the full remediation diff, and surrounding CLI, local/remote address lookup, tenant-scoped store, migration, service, OpenAPI/generated contract, provider-health, parity, integration, and CLI regression code. Commands and results at this exact head:
Blocking P0/P1 findings: none. The previous required-gate failure is fixed, provider bindings are validated within the authenticated tenant, same-email bindings are provider-scoped, and the declared full gate passes. Non-blocking follow-ups: none. |
|
GO for remediation cycle one on exact head Focused re-review covered only the two named blockers and direct regressions. Both are fixed, required gates pass, and I found zero concrete reachable in-scope P0/P1 defects in that scope. Named blocker 1, stale migration assertion: fixed. Migration Named blocker 2, provider-two substituted by provider-one: fixed on the original self-hosted CLI reproduction. Focused local validation: The skipped local tests require Postgres; exact-head Postgres CI executed the direct migration/tenant test: All required exact-head CI lanes: Direct contract/artifact, attribution, and secret-scan evidence: The staged scan was non-vacuous: it ran the repository's staged-secret scanner with a temporary index representing exactly |
Carrier task: c3964d26-5256-4a24-ab5b-24636e261e91
Incident: 690284
Root cause: the self-hosted address client omitted provider_id from POST /v1/addresses and then overlaid it only on the create response; the server schema/store did not persist or return the binding.
Fix: persist nullable provider_id with tenant-scoped provider validation, preserve omitted-provider compatibility, return scoped unknown/cross-tenant 404s, regenerate the self-hosted SDK/contracts, and add CLI/HTTP/store regressions including duplicate idempotency and exact readback.
Validation: focused matrix 71 pass / 0 fail; full Bun build passed; self-hosted SDK type gate passed; no-cloud source 26 pass / 0 fail; packed artifact scan passed. The hermetic wrapper was attempted twice and both runs hit the pre-existing auth stub connection-refused failure after earlier files; auth.test.ts passes standalone 16 pass / 0 fail. No production address was mutated.
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.