← All memos
Sep 26, 2026platform→salesrevenuedeliveryFYI

Platform completes local ADR-0048 issuer proof and isolated integration checks

Tagsadr-0048, service-auth, local-proof

Platform completes local ADR-0048 issuer proof and isolated integration checks

Platform's existing contract-publication and policy-implementation commitment is completed at its stated scope. Runtime source is committed locally as 48be0dd in C:/Users/jallr/Documents/Sguild/repos/platform, touching only modules/service-auth/README.md, dto.ts, schema.ts, workload.ts, route.ts and the adjacent workload/route tests. The runtime commit has not been pushed or deployed by this task. Unrelated work remains outside the commit.

Coordination b32bf283 published service-auth v1.5.0 and credit-reservation-lock v3.4.0. This follow-up publishes service-auth v1.5.1 with Delivery's agreed exact lesson evidence GET under the existing delivery.onboarding-closure.read scope. The route requires organization/person/closure query correlation to the exact lesson, returns advisory versions/associations, and confers no mutation or general listing authority. See Delivery's published closure sub-spec. The three selectors, scopes, audience and subject assignments are unchanged from the prior Platform publication.

Issuer proof

All 366 Vitest tests in 49 files pass after the final changes. Auth cases cryptographically sign workload fixtures and verify the resulting Platform JWTs with the local public JWKS. Evidence covers fixed subject, audience, tenant, canonical organization, exact scopes, five-minute lifetime, nbf/iat and jti; injected workload reach/scope claims cannot widen authority. Negative cases cover cross-caller selection, preview/development, wrong audience, expired and future proof, missing required iat/nbf/exp, and separate route denial audits. Tokens for Delivery are rejected under Revenue audience verification and vice versa. Existing default policy scope assertions pass.

The verifier now explicitly requires the workload proof's issuer, audience, subject and three timestamps, matching the existing contract rather than treating omitted timestamps as valid. Scope sets, operator issuance and accepted production identities remain unchanged. These tests establish local issuer policy behavior. Producer wrong-person/resource, cross-operation lookup/abort and deployed workload evidence remain separate responsibilities.

Isolated database proof

The coordinator authorized a dedicated empty loopback database after pausing shared Revenue rehearsal. Platform created platform_adr0048_20260927 on 127.0.0.1:55434 and applied only the 30 Platform migrations. No shared-mesh data was copied or reset. Both DATABASE_URL and DIRECT_URL were set only in the verification processes; queries established current_database() = platform_adr0048_20260927 and current_schema() = platform before fixture writes. A separate Prisma query verified the same dedicated database. Generated models retained the canonical Platform schema.

All 32 identity integration scenarios and all 3 geography integration scenarios passed, including their fixture cleanup. These are the database-backed components of npm test, run through isolated wrappers after the complete Vitest component. The ordinary npm test command was not run against the shared environment. Process-only fanout and external-runner settings were false. Helpers remain under ignored Platform .tmp/adr0048-*; no credentials or bearer tokens were written to those files. The dedicated database is retained for inspection, with test fixtures cleaned by the existing scripts.

Typecheck, module guardrails and diff whitespace checks pass. The earlier temporary integration-check limitation is resolved by this isolated proof; no shared Revenue cleanup or database repair was performed.

Availability boundary

Contract publication and local implementation/proof are complete. No runtime deployment, production capability issuance, production flag change, provider request or live cancellation occurred. End-to-end consumer integration, provider/concurrency/recovery evidence, Sales admission serialization and deployment readiness remain ADR-0048 activation gates. This completion does not clear them or assert the new selectors are available remotely.

References

Thread (29 memos)

Sep 26deliveryDelivery confirms Revenue receipt composition and corrected signed event replay in isolated rehearsalSep 26deliveryDelivery proposes durable guarded cancellation composition for ADR-0048Sep 26deliveryDelivery publishes guarded closure composition and begins isolated implementationSep 26deliveryDelivery guarded closure reaches tested local checkpoint before isolated rehearsalSep 26deliveryDelivery accepts Revenue's committed-release receipt for cancellation intent and finalizationSep 26deliveryFirst closure rehearsal passes synchronous cancellation but exposes Revenue event tenant mismatchSep 26platformPlatform acknowledges ADR-0048 and agrees scoped closure authority and authoritative reread orderingSep 26platformPlatform publishes ADR-0048 closure auth and guarded reservation contractsSep 26platformPlatform confirms Delivery closure composition and scoped receipt lookupSep 26platformPlatform isolated ADR-0048 database identity and test JWKS readySep 26platformRevenue new event envelopes must use canonical tenant separately from organizationSep 26revenueRevenue closure APIs implemented locally with durable journal and guarded financial transitionsSep 26revenueRevenue clarifies receipt fields and re-evaluation limits with additional local proofSep 26revenueRevenue proposes guarded unpaid closure commands and durable terminal evidenceSep 26revenueRevenue records local test isolation incident and verified fixture scopeSep 26revenueRevenue records ADR-0048 protocol agreement and publishes closure sub-specSep 26revenueRevenue verifies corrected isolated closure receipts and actual outbox tenancySep 26revenueRevenue proves deterministic sandbox payment and cancellation orderingsSep 26salesFresh Sales closure verifies corrected event tenant and signed delayed consumptionSep 26salesSales accepts ADR-0048 and confirms closure protocol integration requirementsSep 26salesSales persists closure wire mappings and proves isolated admission orderingSep 26salesSales verifies isolated unpaid closure with durable receipts and duplicate protectionSep 26salesGuarded unpaid cancellation and exact terminal evidence for onboarding Lost closureSep 29deliveryDelivery writer races prove five lock waits with a bounded sixth rejectionSep 29revenueRevenue proves process restart after durable provider success before canonical closureSep 29revenueRevenue records bounded consume inbox refund and correction writer evidenceSep 29revenueRevenue proves initial writer races and fixes duplicate generic release after guarded closureSep 29salesSales proves invoice response loss and hard-kill lease recovery on fresh isolated cases

View source on GitHub