Skip to content

Commit 3457dd5

Browse files
Phase C: declare gateway↔BoJ-gnosis seam in Trustfile [SEAMS] (#90)
Per the Phase A contract (`docs/integration/http-capability-gateway-boj-contract.md`) and ADR 0004, the http-capability-gateway sits in front of BoJ's unified Zig API gnosis handler as tier-2 of the rate-limit + capability-enforcement architecture. Declaring the seam closes Phase C / C3 of `standards#98`. The E2E seam test lives in the gateway repo (`web-ecosystem/http-capability-gateway:test/e2e_boj_integration_test.exs`) because the gateway is the side that owns the policy pipeline and the proxy. The seam declaration here makes the boundary discoverable from the BoJ side and lets the Seams.Policy.idr proof reference it. Refs hyperpolymath/standards#91 Closes hyperpolymath/standards#98 <!-- SPDX-License-Identifier: MPL-2.0 --> ## Summary <!-- Briefly describe what this PR does and why. Link to related issues with "Closes #N". --> ## Changes <!-- List the key changes introduced by this PR. --> - ## RSR Quality Checklist <!-- Check all that apply. PRs that fail required checks will not be merged. --> ### Required - [ ] Tests pass (`just test` or equivalent) - [ ] Code is formatted (`just fmt` or equivalent) - [ ] Linter is clean (no new warnings or errors) - [ ] No banned language patterns (no TypeScript, no npm/bun, no Go/Python) - [ ] No `unsafe` blocks without `// SAFETY:` comments - [ ] No banned functions (`believe_me`, `unsafeCoerce`, `Obj.magic`, `Admitted`, `sorry`) - [ ] SPDX license headers present on all new/modified source files - [ ] No secrets, credentials, or `.env` files included ### As Applicable - [ ] `.machine_readable/STATE.a2ml` updated (if project state changed) - [ ] `.machine_readable/ECOSYSTEM.a2ml` updated (if integrations changed) - [ ] `.machine_readable/META.a2ml` updated (if architectural decisions changed) - [ ] Documentation updated for user-facing changes - [ ] `TOPOLOGY.md` updated (if architecture changed) - [ ] `CHANGELOG` or release notes updated - [ ] New dependencies reviewed for license compatibility (MPL-2.0 / MPL-2.0) - [ ] ABI/FFI changes validated (`src/abi/` and `ffi/zig/` consistent) ## Testing <!-- Describe how you tested these changes. --> ## Screenshots <!-- If applicable, add screenshots or terminal output demonstrating the change. --> Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
1 parent b752a27 commit 3457dd5

1 file changed

Lines changed: 9 additions & 0 deletions

File tree

.machine_readable/contractiles/trust/Trustfile.a2ml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -455,6 +455,15 @@ seams:
455455
failure_mode: "fail-closed (supervisor restart)"
456456
tier: "elixir-disciplined"
457457
notes: ""
458+
- id: "gateway-boj-gnosis"
459+
description: "http-capability-gateway ↔ BoJ unified Zig API gnosis handler"
460+
from: "web-ecosystem/http-capability-gateway"
461+
to: "src/zig-api/ (gnosis handler)"
462+
contract: "docs/integration/http-capability-gateway-boj-contract.md"
463+
test_ref: "web-ecosystem/http-capability-gateway:test/e2e_boj_integration_test.exs"
464+
failure_mode: "fail-closed (circuit breaker)"
465+
tier: "elixir-disciplined"
466+
notes: "Phase C (hyperpolymath/standards#98). Tier-2 HTTP governance seam declared per ADR 0004; the gateway resolves trust at the transport (mTLS, Phase B) and forwards an authoritative X-Trust-Level to the gnosis handler. E2E seam test lives in the gateway repo because that is the side that owns the policy pipeline and the proxy."
458467
policy:
459468
seam_check: "every PR that touches either side of a declared seam MUST exercise the P2P test for that seam before merge"
460469
security:

0 commit comments

Comments
 (0)