Assistant: codex Assistant-Model: gpt-5.6-sol Assistant-Session: 01a05e30-2884-71b0-98d7-7edd16ae737b
629 lines
23 KiB
Markdown
629 lines
23 KiB
Markdown
# Gate House — Architecture Doctrine Blueprint
|
|
|
|
**Repository:** `gate-house`
|
|
**Project family:** NetKingdom
|
|
**Artifact:** `ArchitectureBlueprint.md`
|
|
**Status:** Current — doctrine architecture; no runtime role
|
|
**Version:** 0.2
|
|
**Date:** 2026-09-01
|
|
**Decision:** `decisions/decisions.md` GH-DEC-2026-001
|
|
|
|
---
|
|
|
|
## 1. Purpose and authority
|
|
|
|
This document describes the architecture of NetKingdom security doctrine: the
|
|
responsibility boundaries, semantic contracts, invariants, and conformance
|
|
loop Gate House maintains. It does not specify a Gate House service. Gate House
|
|
has no request-time position, stores no runtime state, and renders no
|
|
authorization decision.
|
|
|
|
The v0.1 Blueprint described Gate House as a deterministic authority plane.
|
|
That design was withdrawn by GH-DEC-2026-001 because it put the deterministic
|
|
decision point inside a non-deterministic Staff repository. Its disposition is
|
|
recorded in
|
|
[`history/2026-09-01-authority-plane-blueprint-retirement.md`](history/2026-09-01-authority-plane-blueprint-retirement.md),
|
|
and the complete historical text remains available at Git object
|
|
`75ce372:ArchitectureBlueprint.md`.
|
|
|
|
This document is subordinate, in order, to:
|
|
|
|
1. `decisions/decisions.md`;
|
|
2. `spec/ActiveSecretsManagementCanon_v0.3.md`;
|
|
3. `INTENT.md`;
|
|
4. the accepted NetKingdom security-layer standard.
|
|
|
|
Where they conflict, the higher artifact wins and this Blueprint must be
|
|
corrected.
|
|
|
|
The architectural maxim is:
|
|
|
|
> **Cognition proposes. Authority disposes. Infrastructure executes.**
|
|
|
|
## 2. Architectural shape
|
|
|
|
NetKingdom separates security responsibilities by determinism and artifact:
|
|
|
|
```text
|
|
Taxonomy names the concepts and semantic contracts
|
|
↓
|
|
Tooling holds consistent, performant, scalable state
|
|
↑
|
|
Engines expose deterministic APIs over modeled concepts
|
|
↑
|
|
Staff proposes doctrine, plans, changes, and supervision
|
|
```
|
|
|
|
The arrows are dependency direction, not authority flow. Staff acts through
|
|
Engine APIs and never reaches Tooling directly.
|
|
|
|
For a protected action, the architecture is:
|
|
|
|
```text
|
|
human / agent / workload proposes an action
|
|
↓
|
|
identity and context engines supply authoritative facts
|
|
↓
|
|
access-engine renders a deterministic decision
|
|
↓ GRANT only
|
|
secrets-engine materializes target-specific authority when needed
|
|
↓
|
|
ops-warden / resource-side enforcement executes within the grant
|
|
↓
|
|
evidence sources emit records; audit-core protects accepted records
|
|
↓
|
|
kings-guard observes posture and findings; whitehat-security challenges controls
|
|
```
|
|
|
|
Gate House is outside this runtime path. It specifies what each boundary must
|
|
mean and reviews whether the path conforms.
|
|
|
|
### 2.1 Responsibility boundary
|
|
|
|
| Component | Architectural responsibility |
|
|
| --- | --- |
|
|
| info-tech-canon / NetKingdom canon | shared terminology and standards of record |
|
|
| key-cape | authentication, federation, and identity tooling profile |
|
|
| user-engine | authoritative user, account, and membership facts |
|
|
| tenant-engine | authoritative tenant and organizational facts |
|
|
| zone-engine | authoritative zone identity and membership facts |
|
|
| access-engine | the only policy decision point; evaluates access rules |
|
|
| secrets-engine | credential abstraction, custody, and lifecycle |
|
|
| OpenBao | protects and issues secret, lease, and PKI material |
|
|
| ops-mason / ops-warden | construct and operate access lanes and perimeters |
|
|
| kings-guard | observation, bounded posture, findings, and containment requests |
|
|
| whitehat-security | adversarial execution of assurance specifications |
|
|
| Gate House | doctrine, authority context, invariants, conformance, and curriculum |
|
|
|
|
Two boundaries are lexical as well as architectural:
|
|
|
|
- an **access lane** says how a worker reaches a host and belongs to ops-mason
|
|
and ops-warden;
|
|
- an **access rule** says whether an action may occur and belongs to
|
|
access-engine.
|
|
|
|
## 3. Core domain model
|
|
|
|
Gate House fixes the following meanings. Owning engines choose storage and wire
|
|
representations without changing the semantics.
|
|
|
|
| Term | Meaning |
|
|
| --- | --- |
|
|
| **Principal** | Human, organization, workload, or system on whose behalf authority originates. |
|
|
| **Actor** | Entity directly attempting the action. |
|
|
| **Runtime Identity** | Concrete workload instance performing execution. |
|
|
| **Tenant** | Security and organizational domain in which the action occurs. |
|
|
| **Environment** | Governed operational environment containing the target. |
|
|
| **Mandate** | Standing organizational authorization defining what an autonomous actor is intended to do. |
|
|
| **Delegation** | Scoped transfer of authority that preserves principal and actor and does not widen authority. |
|
|
| **Authority Ceiling** | Maximum authority an actor can obtain. |
|
|
| **Operating Mode** | Assistant or Autonomous security regime. |
|
|
| **Task** | Bounded unit of work for which authority is requested. |
|
|
| **Action** | Canonical operation requested of a protected resource. |
|
|
| **Resource** | Canonical target of an action. |
|
|
| **Posture** | Bounded security-state input from a trusted source. |
|
|
| **Decision Evidence** | Record of the identities, inputs, policy, conditions, and result that produced a decision. |
|
|
| **Credential Binding** | Mapping from granted authority to the mechanism a target accepts. |
|
|
|
|
A mandate is not a credential, a task is not a mandate, identity is not
|
|
authorization, and a credential is not the source of authority.
|
|
|
|
Access-engine renders `GRANT`, `DENY`, `REQUIRE_APPROVAL`, or `DEFER`.
|
|
Gate House defines the vocabulary and invariants of those outcomes but neither
|
|
evaluates nor emits them.
|
|
|
|
## 4. Authority context contract
|
|
|
|
The normative logical contract is
|
|
[`authority-context.v1`](docs/contracts/authority-context.md), recorded by
|
|
[ADR-001](docs/adr/ADR-001-canonical-authority-context-contract.md) and
|
|
[ADR-002](docs/adr/ADR-002-principal-actor-runtime-identity-model.md).
|
|
|
|
Every agentic authority request must be able to express:
|
|
|
|
```text
|
|
principal
|
|
actor
|
|
runtime identity
|
|
tenant
|
|
environment
|
|
mandate
|
|
task
|
|
operating mode
|
|
```
|
|
|
|
These are input claims alongside verified identity claims, requested action and
|
|
resource, authoritative resource facts, policy, approval, posture, and limits.
|
|
No field grants authority by being present. Caller assertion must remain
|
|
distinguishable from authoritative evidence.
|
|
|
|
Principal, actor, and runtime identity are separate semantic roles. They may
|
|
resolve to the same subject in a legitimate direct operation, but a consumer
|
|
must not copy one into a missing role or use one generic identifier to erase
|
|
delegation and runtime attribution.
|
|
|
|
Missing, conflicting, stale, or unresolvable security-critical context fails
|
|
closed. `DEFER` is reserved for non-security-critical enrichment and is not a
|
|
substitute for evidence needed to decide a protected operation.
|
|
|
|
## 5. Agentic operating modes
|
|
|
|
Operating mode is a security regime, not a deployment label.
|
|
|
|
### 5.1 Assistant
|
|
|
|
A human is actively engaged and can observe, redirect, approve, or stop at
|
|
human latency.
|
|
|
|
- the human remains principal;
|
|
- the agent remains an identifiable actor;
|
|
- the concrete agent session or workload remains identifiable as runtime;
|
|
- privileged authority is bound to active supervision and short lifetime;
|
|
- the human's reusable credentials are not copied into agent context;
|
|
- interruption and confirmation remain available for high-impact actions.
|
|
|
|
Human disconnect, session timeout, or loss of supervision must not silently
|
|
convert an Assistant workflow into privileged Autonomous operation.
|
|
|
|
### 5.2 Autonomous
|
|
|
|
A scheduled, triggered, or event-driven actor runs without continuous human
|
|
supervision.
|
|
|
|
It requires:
|
|
|
|
- a unique actor identity and concrete runtime identity;
|
|
- a named governance owner;
|
|
- an explicit, current mandate and bounded task;
|
|
- an authority ceiling and tenant, environment, resource, and action bounds;
|
|
- runtime, concurrency, tool-call, token, compute, and credential-TTL bounds;
|
|
- an independent kill switch and lifecycle termination path;
|
|
- protected evidence sufficient for reconstruction;
|
|
- no borrowed human credential.
|
|
|
|
### 5.3 Transition
|
|
|
|
A transition from Assistant to Autonomous is a governed change. It requires a
|
|
new authority request under the Autonomous requirements; it is not a mutation
|
|
or fallback of an in-flight Assistant context.
|
|
|
|
## 6. Mandates, delegation, and ceilings
|
|
|
|
A mandate is a governed declaration of why an autonomous actor exists. A
|
|
logical mandate includes, at minimum:
|
|
|
|
```yaml
|
|
id: mandate:release-automation
|
|
revision: 7
|
|
owner: team:platform-release
|
|
purpose: deploy approved releases
|
|
operating_mode: autonomous
|
|
lifecycle:
|
|
starts_at: 2026-09-01T00:00:00Z
|
|
expires_at: 2026-12-01T00:00:00Z
|
|
termination_ref: kill-switch:release-automation
|
|
authority_ceiling:
|
|
tenants: [tenant:platform]
|
|
environments: [production]
|
|
actions: [release.deploy]
|
|
resources: [k8s://cluster-a/ns/payments/*]
|
|
constraints:
|
|
max_runtime: 30m
|
|
max_concurrency: 1
|
|
max_mutations_per_task: 1
|
|
```
|
|
|
|
This is a logical governance shape, not a Gate House storage schema.
|
|
Access-engine owns how the authoritative mandate reference becomes policy
|
|
input.
|
|
|
|
Delegation attenuates:
|
|
|
|
```text
|
|
child authority ⊆ delegated authority ⊆ principal authority ⊆ authority ceiling
|
|
```
|
|
|
|
No agent reasoning, tool availability, approval, posture, budget, or child
|
|
delegation may widen the ceiling.
|
|
|
|
## 7. Deterministic authority boundary
|
|
|
|
Every privileged action crosses an access-engine or resource-side deterministic
|
|
authority boundary. The same authoritative input state and policy version must
|
|
produce the same decision.
|
|
|
|
The decision must be able to account for:
|
|
|
|
```text
|
|
WHO principal, actor, runtime identity
|
|
WHERE tenant, environment, zone, resource
|
|
WHAT action and normalized parameters
|
|
WHY task, mandate, delegation
|
|
UNDER WHICH policy, approval, posture, quotas, budgets, ceiling
|
|
UNTIL WHEN expiry and credential TTL
|
|
```
|
|
|
|
Evaluation is monotonic toward restriction: after application of the authority
|
|
ceiling, no later input may create authority beyond it. This is a property Gate
|
|
House specifies and access-engine implements; it is not a prescribed policy
|
|
algorithm or evaluation order.
|
|
|
|
Approval is an independently governed, actor/action/resource/parameter/time
|
|
binding. It can satisfy an explicit approval requirement but cannot exceed the
|
|
authority ceiling or compensate for invalid identity, mandate, tenant, or
|
|
environment context.
|
|
|
|
## 8. Posture and containment contract
|
|
|
|
King's Guard publishes bounded posture observations. Access-engine maps trusted
|
|
posture to deterministic restrictions. Gate House owns the asymmetry:
|
|
|
|
> **Posture may reduce authority, require stronger authorization, or request
|
|
> containment. It must not probabilistically manufacture additional
|
|
> authority.**
|
|
|
|
Accepted direction:
|
|
|
|
```text
|
|
King's Guard observes DEGRADED / SUSPICIOUS / CONTAIN
|
|
↓ bounded posture with source, subject, freshness, and reason
|
|
access-engine applies a versioned deterministic rule
|
|
↓
|
|
authority stays equal or becomes narrower
|
|
```
|
|
|
|
Forbidden direction:
|
|
|
|
```text
|
|
adaptive system says “looks safe”
|
|
↓
|
|
new or wider authority
|
|
```
|
|
|
|
A containment request does not authorize containment. Access-engine decides
|
|
whether it may occur; ops-warden or the responsible Engine performs the
|
|
authorized action. If posture is unavailable or stale, configured fallback
|
|
must not expand authority over the last authoritative state or baseline policy.
|
|
|
|
## 9. Authority, credentials, and execution
|
|
|
|
The responsibility chain is:
|
|
|
|
```text
|
|
access-engine decides whether authority exists
|
|
secrets-engine selects how granted authority is materialized
|
|
OpenBao protects and issues credential material
|
|
ops-warden operates the access lane or trusted execution path
|
|
resource independently enforces the presented authority
|
|
```
|
|
|
|
Credential invariants:
|
|
|
|
- credentials are issued only after authority exists;
|
|
- credential scope and audience do not exceed the grant;
|
|
- credential lifetime does not exceed the authority lifetime;
|
|
- revocation and expiry semantics remain linked;
|
|
- raw reusable credentials do not enter model context;
|
|
- trusted brokered execution is preferred to disclosing credentials to an
|
|
agent;
|
|
- Gate House never accesses OpenBao or another Tooling system directly.
|
|
|
|
An unavailable credential mechanism means execution cannot proceed. It does
|
|
not cause another component to invent authority or silently substitute a
|
|
broader credential.
|
|
|
|
## 10. MCP and tooling doctrine
|
|
|
|
MCP is a capability interface, not an authority system. Tool discovery means
|
|
that an operation exists; it does not mean the actor may invoke it.
|
|
|
|
A sensitive tool definition should provide enough stable metadata for a PEP to
|
|
construct a normalized request:
|
|
|
|
```yaml
|
|
tool: restart_service
|
|
action: kubernetes.deployment.restart
|
|
resource_schema: k8s-resource.v1
|
|
parameter_schema: restart-service.v1
|
|
risk_class: privileged-write
|
|
reversible: true
|
|
```
|
|
|
|
The enforcement path is:
|
|
|
|
```text
|
|
agent selects tool
|
|
↓
|
|
MCP server / resource PEP constructs normalized request
|
|
↓
|
|
access-engine decision
|
|
↓ GRANT only
|
|
separately issued, resource- and audience-bound authority
|
|
↓
|
|
tool execution and evidence emission
|
|
```
|
|
|
|
Inbound-token passthrough is forbidden by default. The downstream resource
|
|
must receive authority intended for that resource, not whatever ambient token
|
|
the caller happened to possess.
|
|
|
|
## 11. Change Dynamics Envelope
|
|
|
|
Agentic systems can exceed human review speed even while each individual action
|
|
looks ordinary. The Change Dynamics Envelope bounds the cumulative rate, scope,
|
|
concurrency, and duration of change.
|
|
|
|
Dimensions include:
|
|
|
|
- concurrent mutating actors and actions per grant;
|
|
- resources per task and mutations per resource;
|
|
- task duration, credential TTL, and agent-chain depth;
|
|
- deployment frequency and destructive-action quota;
|
|
- tenant, environment, repository, and resource-class boundaries;
|
|
- read/write and reversible/irreversible action separation;
|
|
- token, compute, tool-call, and external-service spend.
|
|
|
|
Hard limits such as authority ceilings, production concurrency, destructive
|
|
quotas, and environment boundaries are deterministic enforcement inputs. Soft
|
|
signals such as cost warnings and anomaly recommendations may ask for review or
|
|
reduce authority, but do not grant it.
|
|
|
|
Economic budgets are useful blast-radius controls. They are never
|
|
authorization.
|
|
|
|
### 11.1 Independent stop paths
|
|
|
|
Autonomous write authority must be stoppable without actor cooperation.
|
|
Depending on the owning Engine, the deterministic mechanisms may suspend an
|
|
actor or mandate, revoke grants and credentials, restrict an environment to
|
|
read-only, or require approval for mutations.
|
|
|
|
Degradation moves toward restriction:
|
|
|
|
```text
|
|
NORMAL → RESTRICTED → READ_ONLY → BLOCKED
|
|
```
|
|
|
|
Diagnostic visibility should remain available longer than mutation authority
|
|
where policy can safely separate them.
|
|
|
|
## 12. Tenant isolation and policy self-modification
|
|
|
|
Tenant context is explicit for protected actions. An omitted tenant is not a
|
|
wildcard, and a platform actor does not receive implicit cross-tenant authority.
|
|
Tenant, environment, resource, and action bounds compose by intersection.
|
|
|
|
Changes to authority ceilings, policy packages, identity trust, tenant mapping,
|
|
approval rules, posture mapping, audit configuration, credential bindings, or
|
|
kill switches require stronger and independently governed authorization than
|
|
ordinary workload changes.
|
|
|
|
An actor must not have routine authority to widen the policy that constrains
|
|
itself. An attempted self-escalation is denied and emitted as high-value
|
|
security evidence.
|
|
|
|
## 13. Decision evidence and audit
|
|
|
|
Decision evidence must support reconstruction of:
|
|
|
|
- principal, actor, runtime identity, tenant, environment, task, and mandate;
|
|
- action, resource, and normalized-parameter digest;
|
|
- operating mode, approval, and posture inputs;
|
|
- authority ceiling, quotas, budgets, and expiry;
|
|
- policy identifier and version;
|
|
- decision, reason, grant or approval references, and credential binding;
|
|
- execution target, result, and relevant state transition.
|
|
|
|
The actor being audited must not be able to alter or erase authoritative
|
|
evidence. Each owning system emits evidence for its own state transitions;
|
|
Gate House is not a central runtime audit writer.
|
|
|
|
### 13.1 Completeness bound
|
|
|
|
An append-only archive with a verified hash chain proves that records it holds
|
|
were not altered or truncated after arrival. It cannot prove a record was ever
|
|
sent. Therefore:
|
|
|
|
- completeness is the emitting system's obligation;
|
|
- load-bearing evidence emission is atomic with the state change, normally by
|
|
a local transactional outbox;
|
|
- heartbeat and reconciliation make silent omission detectable where required;
|
|
- no conformance claim says merely that “the audit record proves it happened.”
|
|
|
|
The approval evidence contracts are the reference application:
|
|
|
|
- [`approval-outbox.md`](docs/contracts/approval-outbox.md);
|
|
- [`approval-emission-detection.md`](docs/contracts/approval-emission-detection.md);
|
|
- [`approval-consumption.md`](docs/contracts/approval-consumption.md).
|
|
|
|
## 14. Failure semantics
|
|
|
|
Security-critical ambiguity fails closed.
|
|
|
|
| Failure | Required architectural outcome |
|
|
| --- | --- |
|
|
| access-engine or required policy unavailable | Protected operation denied. |
|
|
| identity, tenant, environment, mandate, or delegation unresolved | Denied when the fact is security-critical. |
|
|
| posture unavailable or stale | Configured restrictive fallback; never additional authority. |
|
|
| approval unavailable, invalid, revoked, consumed, or mismatched | Approval-dependent operation denied. |
|
|
| credential materialization unavailable | No credential-dependent execution; the decision is not widened or replaced. |
|
|
| protected evidence cannot be durably coupled to a state change | That state change does not commit. |
|
|
| evidence archive unavailable after a local outbox commit | Retry asynchronously; do not roll back the committed safety action. |
|
|
| stale cache conflicts with newer restriction or revocation | New authority denied; caches must not outlive their safe staleness policy. |
|
|
|
|
Fail closed does not mean one global availability rule. Each state owner must
|
|
make the safety transition and its evidence atomic locally so an unavailable
|
|
archive cannot block emergency revocation.
|
|
|
|
## 15. Architectural invariants
|
|
|
|
These stable identifiers retain the v0.1 Blueprint's invariant lineage, now
|
|
stated against the correct ownership boundary.
|
|
|
|
### A-01 — No probabilistic privilege
|
|
|
|
No LLM or statistical component is the final source of privilege.
|
|
|
|
### A-02 — Explicit actor
|
|
|
|
Every privileged action resolves to an explicit actor.
|
|
|
|
### A-03 — Autonomous mandate
|
|
|
|
Every autonomous privileged action resolves to an explicit current mandate.
|
|
|
|
### A-04 — Attenuating delegation
|
|
|
|
Delegated authority does not exceed parent authority or the authority ceiling.
|
|
|
|
### A-05 — Explicit tenant scope
|
|
|
|
Every protected action has explicit tenant or estate-defined non-tenant scope.
|
|
|
|
### A-06 — Deterministic protected boundary
|
|
|
|
Production mutations cross deterministic access-engine or resource-side
|
|
policy enforcement.
|
|
|
|
### A-07 — Bounded lifetime
|
|
|
|
Authority and its credential material do not outlive their configured expiry.
|
|
|
|
### A-08 — Independent revocation
|
|
|
|
Emergency reduction or revocation does not depend on the affected actor
|
|
cooperating.
|
|
|
|
### A-09 — Restrictive posture
|
|
|
|
Adaptive posture may restrict authority but cannot probabilistically create
|
|
new authority.
|
|
|
|
### A-10 — Credential separation
|
|
|
|
Credentials represent granted authority; they are not its source.
|
|
|
|
### A-11 — Protected ceiling
|
|
|
|
Actors cannot ordinarily modify the controls defining their own authority
|
|
ceiling.
|
|
|
|
### A-12 — Actor-resistant evidence
|
|
|
|
Authoritative evidence is protected from the actor being audited, subject to
|
|
the completeness bound in §13.1.
|
|
|
|
### A-13 — Restrictive failure
|
|
|
|
Failure of a security-critical dependency does not silently expand authority.
|
|
|
|
### A-14 — No accidental autonomy
|
|
|
|
Assistant sessions do not silently become Autonomous sessions.
|
|
|
|
### A-15 — Incorrect-agent tolerance
|
|
|
|
Deterministic boundaries continue to hold when every agent behaves incorrectly.
|
|
|
|
## 16. Conformance architecture
|
|
|
|
Gate House doctrine is real only when the loop turns:
|
|
|
|
```text
|
|
Gate House asserts an invariant or contract
|
|
↓
|
|
owning Engines and Staff repositories implement it
|
|
↓
|
|
whitehat-security executes the assurance specification
|
|
↓
|
|
kings-guard observes behavior and findings
|
|
↓
|
|
findings return to Gate House as doctrine change
|
|
```
|
|
|
|
The Canon's T-01…T-10 are specifications owned by Gate House and executed by
|
|
whitehat-security. They cover malicious-model behavior, credential
|
|
exfiltration, human disconnect, policy self-modification, confused-deputy
|
|
behavior, approval replay, circuit breakers, evidence reconstruction, audit
|
|
failure, and revocation closure.
|
|
|
|
Their executable handoff is
|
|
[`asm-assurance-targets.v1`](docs/assurance/asm-t01-t10-executable-targets.md).
|
|
Results return under
|
|
[`conformance-reporting.v1`](docs/contracts/conformance-reporting.md), and the
|
|
kings-guard observation half follows
|
|
[`posture-findings-return.v1`](docs/contracts/posture-findings-return.md).
|
|
|
|
The reference scenarios are:
|
|
|
|
- UC-01 — human-assisted read;
|
|
- UC-02 — autonomous release;
|
|
- UC-03 — dynamic database access;
|
|
- UC-04 — containment;
|
|
- UC-05 — self-escalation attempt.
|
|
|
|
Passing prose review is insufficient. A conformance report names the invariant,
|
|
owning implementation, test or observation, evidence bound, result, and finding
|
|
return path.
|
|
|
|
## 17. ADR disposition and remaining doctrine work
|
|
|
|
| ADR | Disposition |
|
|
| --- | --- |
|
|
| ADR-001 | Accepted — canonical authority-context contract. |
|
|
| ADR-002 | Accepted — principal / actor / runtime identity model. |
|
|
| ADR-003 | Lapsed — policy-engine selection belongs to access-engine. |
|
|
| ADR-004, ADR-005, ADR-008, ADR-011, ADR-012 | Engine implementation decisions; no Gate House runtime ADR. Their doctrine survives in invariants and contracts. |
|
|
| ADR-006 | Still meaningful — posture input contract with kings-guard. |
|
|
| ADR-007 | Credential separation is doctrine here; materialization implementation belongs to secrets-engine. |
|
|
| ADR-009 | Still meaningful — Assistant session binding. |
|
|
| ADR-010 | Still meaningful — Autonomous mandate model. |
|
|
| ADR-013 | Still meaningful — MCP authorization integration. |
|
|
| ADR-014 | Still meaningful — policy self-modification protection. |
|
|
|
|
Future ADRs in Gate House decide doctrine and responsibility boundaries. They
|
|
must not select an Engine's implementation technology or create a Gate House
|
|
runtime surface.
|
|
|
|
## 18. Blueprint summary
|
|
|
|
Gate House establishes the security doctrine that makes the runtime chain
|
|
coherent. It does not join that chain as a service.
|
|
|
|
```text
|
|
agent decides what to attempt
|
|
↓
|
|
engines establish identity and context
|
|
↓
|
|
access-engine decides what may cross
|
|
↓
|
|
secrets-engine materializes bounded authority
|
|
↓
|
|
the perimeter and resource enforce it
|
|
↓
|
|
evidence and adversarial review show whether the doctrine held
|
|
```
|
|
|
|
> **The mandate and operating mode are Gate House's. The decision is
|
|
> access-engine's. The credential is secrets-engine's. The perimeter is
|
|
> ops-mason's and ops-warden's.**
|