Repository navigation
feat(contracts): freeze frontend boundary with B05 fields, mock server, and P4 manifest - #34
Merged
Merged
Conversation
…r, and P4 manifest
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
Freezes the Gate P4 frontend boundary to unblock Milestone B05:
policysummary onIntentResponse,authorization_statusonAttemptView, andtoken_contract+explorer_urlonSettlementView).@oneshot/contractsartifacts without drift (contracts.schema.json,openapi.v1.json,api-types.ts).packages/contracts/fixtures/ui/v1/and validates them against the JSON Schema bundle viavalidate-fixtures.mjs.OPENAPI_MOCK_SERVER_VERSION = '1.0.0') in@oneshot/contractscovering all 6 frozen routes with fail-closed/retryrejection.docs/GATE_P4_MANIFEST.mdand marks Step 4 as[COMPLETED]indocs/GATE_P4_CHECKLIST.md.Scope and acceptance criteria
Product and security invariants
Invariant notes:
Contract additions are strictly optional and additive; no existing backend or worker behavior is changed. The mock server strictly forbids blind payment retries (rejects
/retrypaths). No secrets are stored or transmitted.Validation
Commands and results:
Independent review evidence
Gate A — exact candidate tree before push
Base commit SHA:
4afd70916a84946aa3230cd29ccd3b68a2b2da58Candidate tree SHA:
408976302803470862aacf47338e002bf6ffa797Candidate commit SHA (if already committed but unpushed):
0ce3a8974f3ba926bfba5ff15dcd7c85f4f81fa1Reviewer tool:
free-pi-cliReviewer model:
glm-5.3-flashVerdict:
VERDICT: PASSFindings or residual risks: Non-blocking note on mock reconcile gating for non-terminal states; no invariant, security, or idempotency violation.
The reviewed tree equals the committed tree.
Gate B — exact remote PR head
Pull request URL/number: #34
Remote head commit SHA:
0ce3a8974f3ba926bfba5ff15dcd7c85f4f81fa1Remote head tree SHA:
408976302803470862aacf47338e002bf6ffa797Reviewer tool:
free-pi-cliReviewer model:
glm-5.3-flashVerdict:
VERDICT: PASSFindings or residual risks: Non-blocking notes on mock-server synthesis semantics for non-seeded intents, allowed_recipients lack of maxItems, and context file pending gate tags. All invariants and acceptance criteria verified.
Gate B reviewed the current remote head and matches Gate A's approved tree, or a fresh Gate A was run for the changed tree.
Agent policy / repository-policyand all applicable CI checks pass.CI check evidence:
Risk and rollback
0ce3a8974f3ba926bfba5ff15dcd7c85f4f81fa1.Human merge