<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" docName="draft-watts-boundary-jurisdiction-architecture-01" category="info" ipr="trust200902" submissionType="IETF">
  <front>
    <title>Boundary Jurisdiction Architecture for Agentic and Delegated Systems</title>
    <author fullname="Deonte Watts" initials="D." surname="Watts">
      <organization>Independent Researcher</organization>
      <address>
        <postal>
          <city>San Francisco</city>
          <region>CA</region>
          <country>US</country>
        </postal>
        <email>deonte@goodshyt.fun</email>
        <uri>https://orcid.org/0009-0005-8586-3650</uri>
      </address>
    </author>
    <date year="2026" month="10" day="11" />
    <area>Security</area>
    <workgroup>Individual Submission</workgroup>
    <abstract>
      <t>This document describes a protocol-neutral architecture for separating possession of capability from jurisdiction over consequential authority boundaries. It models authority as reachability in a time-indexed capability graph, defines revocation cuts, and specifies fail-closed semantics for delegation and revocation closure.</t>
    </abstract>
  </front>
  <middle>
    <section anchor="sec-introduction" numbered="true">
      <name>Introduction</name>
      <t>Agentic and delegated systems can create, cache, exchange, and exercise authority through multiple services. Revocation of one credential can leave consequential paths through derived credentials, queues, cached decisions, or delegated descendants.</t>
      <t>The governing principle is that possession of a capability does not imply jurisdiction over the boundary conditions that enable its consequential use. Capability, evidence, authorization, enforcement, and execution are distinct states.</t>
    </section>
    <section anchor="sec-conventions-and-terminology" numbered="true">
      <name>Conventions and Terminology</name>
      <t>The key words MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, NOT RECOMMENDED, MAY, and OPTIONAL are to be interpreted as described in BCP 14 when, and only when, they appear in all capitals.</t>
      <t>Untrusted closure C is the set of principals whose consequential authority derives from an untrusted or adaptively controlled root. Consequential resource Q is a resource or state transition with an external effect. Commitment boundary B_Q is the first state after which an action cannot reliably be revoked by the registered control plane. Revocation cut K is a declared set of independently controlled capability edges disconnecting registered paths from C to commitment boundaries. Closure is a bounded prospective claim relative to a documented inventory.</t>
    </section>
    <section anchor="sec-capability-graph-model" numbered="true">
      <name>Capability Graph Model</name>
      <t>A deployment is modeled as a time-indexed directed graph G_t=(V_t,E_t) with nodes for principals, services, credentials, queues, commitment boundaries, and resources, and edges for enabled capabilities.</t>
      <t>Each edge SHOULD bind source, destination, operation, scope, issuer, subject, start, expiry, parent grant, revocation identifier, risk class, and provenance. Implementations MUST distinguish structural paths from paths enabled at evaluation time.</t>
    </section>
    <section anchor="sec-revocation-dominating-cut" numbered="true">
      <name>Revocation-Dominating Cut</name>
      <t>A registered cut K is structurally valid only if every registered path from an authority-derived untrusted principal to every registered commitment boundary intersects K. A validator SHOULD compute the descendant closure, remove K, and check that no boundary remains reachable.</t>
      <t>A closure claim is invalid if the sink set, cut set, or path inventory is absent. Empty inventory MUST NOT be interpreted as proof of complete coverage.</t>
    </section>
    <section anchor="sec-revocation-closure-semantics" numbered="true">
      <name>Revocation Closure Semantics</name>
      <t>Let t_r denote the request time and T_prop the declared upper bound on propagation. A system MUST NOT report prospective closure before enforcement becomes effective at t_r+T_prop, absent independently justified earlier effective time.</t>
      <t>Prospective closure requires independently controlled cut enforcement, descendant revocation, deferred-effect inventory, fail-closed enforcement, no known bypass outside the registered graph, and measured propagation. Closure is model-relative and does not prove absence of all physical channels.</t>
    </section>
    <section anchor="sec-authority-diode" numbered="true">
      <name>Authority Diode</name>
      <t>Evidence MAY flow from untrusted computation to an authorization service. Untrusted computation MUST NOT have arbitrary write access to authorization state. Authority returns only via bounded grants issued by an authorization principal and enforced by an independent gate.</t>
      <t>A grant SHOULD bind principal, resource, operations, scope, budget, expiry, policy digest, nonce, parent grant, and issuer integrity protection.</t>
    </section>
    <section anchor="sec-delegation-and-descendant-revocation" numbered="true">
      <name>Delegation and Descendant Revocation</name>
      <t>Delegation MUST be representable as a derivation relation. Revoking a parent MUST NOT leave descendants enabled beyond the specified propagation bound unless independently authorized under recorded policy.</t>
      <t>Inventories SHOULD cover cached bearer credentials, presigned URLs, leases, persistent sessions, queues, retry workers, scheduled jobs, and remote delegates.</t>
    </section>
    <section anchor="sec-closure-receipt" numbered="true">
      <name>Closure Receipt</name>
      <t>A closure receipt SHOULD include authority epoch, root revocation identifier, graph/profile version, cut-set digest, sink-set digest, completion time, coverage statement, unresolved paths, evidence digest, and status.</t>
      <t>Permitted statuses are REQUESTED, PROPAGATING, CLOSED, PARTIAL, FAILED, and UNKNOWN. CLOSED MUST NOT be emitted if required paths are unresolved or a verifier is indeterminate.</t>
    </section>
    <section anchor="sec-failure-semantics" numbered="true">
      <name>Failure Semantics</name>
      <t>Missing topology, stale graph state, monitoring failures, unverifiable policy state, or unmodeled consequential paths MUST NOT silently promote a claim to CLOSED; return PARTIAL, FAILED, or UNKNOWN as appropriate.</t>
    </section>
    <section anchor="sec-security-considerations" numbered="true">
      <name>Security Considerations</name>
      <t>Threats include stale replicas, replayed grants, cache divergence, races, queue persistence, compromised enforcement, incomplete cut sets, confused-deputy delegation, and missing topology. A cut controlled by the untrusted authority cannot establish independent enforcement.</t>
      <t>Cryptographic integrity provides representation and provenance integrity, not graph completeness or policy correctness. Operational closure requires structural validation and measured enforcement.</t>
    </section>
    <section anchor="sec-privacy-considerations" numbered="true">
      <name>Privacy Considerations</name>
      <t>Capability graphs and closure receipts can expose organizational topology and principal relationships. Implementations SHOULD minimize topology disclosure and use opaque identifiers.</t>
    </section>
    <section anchor="sec-iana-considerations" numbered="true">
      <name>IANA Considerations</name>
      <t>This document requests no IANA actions.</t>
    </section>
    <section anchor="sec-non-normative-conformance-examples">
      <name>Illustrative Conformance Checks</name>
      <t>A verifier MUST NOT issue CLOSED for a registered path that remains enabled after the propagation bound.</t>
      <t>A verifier MUST NOT issue CLOSED when its commitment-boundary inventory is empty or unavailable without separately documented proof that this is the complete expected inventory.</t>
      <t>A verifier SHOULD test queued work, descendant grants, replayed tokens, stale cache state, and independently administered cut enforcement.</t>
      <t>These are proposed tests, not assertions that implementations have passed them.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <reference anchor="RFC2119" target="https://www.rfc-editor.org/rfc/rfc2119">
        <front>
          <title>Key words for use in RFCs to Indicate Requirement Levels</title>
          <author fullname="IETF" />
        </front>
      </reference>
      <reference anchor="RFC8174" target="https://www.rfc-editor.org/rfc/rfc8174">
        <front>
          <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
          <author fullname="IETF" />
        </front>
      </reference>
      <reference anchor="RFC7009" target="https://www.rfc-editor.org/rfc/rfc7009">
        <front>
          <title>OAuth 2.0 Token Revocation</title>
          <author fullname="IETF" />
        </front>
      </reference>
      <reference anchor="RFC8785" target="https://www.rfc-editor.org/rfc/rfc8785">
        <front>
          <title>JSON Canonicalization Scheme (JCS)</title>
          <author fullname="IETF" />
        </front>
      </reference>
    </references>
  </back>
</rfc>