<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!DOCTYPE rfc [
]>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude"
     category="info"
     docName="draft-das-execution-finality-ai-boundary-00"
     ipr="trust200902"
     submissionType="IETF"
     consensus="false"
     obsoletes=""
     updates=""
     xml:lang="en"
     tocInclude="true"
     tocDepth="3"
     symRefs="true"
     sortRefs="false"
     version="3">

  <front>
    <title abbrev="Execution Finality at the AI Boundary">An Execution Interlock at the AI Model-to-External-Effect Boundary</title>

    <seriesInfo name="Internet-Draft" value="draft-das-execution-finality-ai-boundary-00"/>

    <author fullname="Sangam Das" initials="S." surname="Das">
      <address>
        <postal>
          <city>Balasore</city>
          <region>Odisha</region>
          <country>IN</country>
        </postal>
        <phone>+91 9861363532</phone>
        <email>info@sangamdas.com</email>
      </address>
    </author>

    <date year="2026"/>

    <area>Security</area>
    <workgroup>Individual Submission</workgroup>

    <keyword>execution finality</keyword>
    <keyword>computation is not authority</keyword>
    <keyword>authorization</keyword>
    <keyword>agentic AI</keyword>
    <keyword>safety interlock</keyword>
    <keyword>candidate act</keyword>
    <keyword>AI safety</keyword>
    <keyword>AI governance</keyword>
    <keyword>trustworthy AI</keyword>
    <keyword>AI agents</keyword>
    <keyword>tool use</keyword>
    <keyword>zero trust</keyword>
    <keyword>confidential computing</keyword>
    <keyword>remote attestation</keyword>
    <keyword>fail closed</keyword>
    <keyword>capability laundering</keyword>
    <keyword>high-risk AI systems</keyword>

    <abstract>
      <t>An AI system's ability to compute an operation is not the same as
      authorization for that operation to take effect outside the system. This
      document defines an enforcement boundary at which an operation produced
      by an AI system is verified against the effect it will actually produce,
      rather than against the effect that was requested or approved upstream,
      and specifies that the operation carries no external consequence until
      that verification succeeds.</t>

      <t>The boundary is complementary to alignment, sandboxing, monitoring,
      and interpretability, which reduce the likelihood that an unsafe
      operation is produced. This document addresses the separate question of
      what prevents a produced operation from becoming effective. The
      mechanism functions as a safety interlock: it does not restrict what the
      system may compute, only whether a specific computed operation may take
      effect. The invariant is that computation is not authority.</t>
    </abstract>
  </front>

  <middle>

    <!-- ================================================================ -->
    <section anchor="introduction" numbered="true">
      <name>Introduction</name>

      <section anchor="capability-to-effect" numbered="true">
        <name>From Model Capability to External Effect</name>

        <t>Increasing model capability widens the gap between what an AI system
        can compute or propose and what it is authorized to make externally
        effective.</t>

        <t>An operation generated by a model may be syntactically valid,
        operationally executable, and within the model's available tool
        interface, and may nevertheless be unauthorized for the specific
        purpose, target, parameters, context, or time in which it would
        execute. Existing controls act on the production of the operation.
        This document acts on its effectuation.</t>

        <t>The problem statement is:</t>

        <blockquote>What prevents a consequential AI-generated operation from
        becoming externally effective until independently verifiable
        authorization conditions for that exact operation have been
        satisfied?</blockquote>

        <t>This is a different problem from determining whether the model
        should have generated the operation at all.</t>
      </section>

      <section anchor="relationship-safety" numbered="true">
        <name>Relationship to Model-Level Safety Controls</name>

        <t>Alignment, monitoring, sandboxing, interpretability, and policy
        enforcement reduce the probability that an unsafe or unauthorized
        operation is generated. An execution architecture cannot rely on those
        controls succeeding in every case, and this document does not propose
        replacing them.</t>

        <t>The two approaches address different points in the lifecycle.
        Model-level controls constrain what is produced. Execution-finality
        controls constrain whether what has been produced can acquire the
        authority required to cause a consequence.</t>
      </section>

      <section anchor="what-is-enforced" numbered="true">
        <name>What Is Enforced</name>

        <t>An operation emitted by an AI system is treated as a proposal rather
        than as authority to execute. It remains without external effect while
        authorization and execution conditions are evaluated by a component the
        requester cannot influence. Successful validation produces protected
        validation evidence and a narrowly scoped, non-transferable execution
        capability bound to that specific operation.</t>

        <t>At the boundary where the operation could first produce an
        externally consequential effect, an enforcement point reconstructs the
        effect that is about to occur and verifies it against the validated
        capability. Divergence between the authorized effect and the actual
        effect fails closed.</t>

        <t>Generation, computation, tool selection, prior approval, or
        possession of a general-purpose credential does not, in itself, permit
        crossing that boundary.</t>
      </section>

      <section anchor="capability-release" numbered="true">
        <name>Capability Release as a Consequence Boundary</name>

        <t>The boundary is not limited to physical or financial actuation.
        Where the governed resource is model capability itself, the
        response-release boundary is the point of consequence: a model obtained
        under one declared purpose may be prompted to yield capability
        applicable to a different and prohibited purpose, without any
        downstream tool call occurring.</t>

        <t>Publicly reported misuse cases illustrate the timing property that
        motivates this work. Where such misuse has been identified through
        provider threat-intelligence and account-level enforcement,
        identification followed release. The capability conveyed in the
        responses had already left the system. This is not evidence that
        provider controls failed; it is evidence that those controls operate
        downstream of the boundary specified here.</t>
      </section>
    </section>

    <!-- ================================================================ -->
    <section anchor="definitions" numbered="true">
      <name>Conventions and Definitions</name>

      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>",
      "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
      NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>",
      "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
      "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are
      to be interpreted as described in BCP 14 <xref target="RFC2119"/>
      <xref target="RFC8174"/> when, and only when, they appear in all
      capitals, as shown here.</t>

      <section anchor="core-terms" numbered="true">
        <name>Core Architecture Terms</name>

        <dl newline="true" spacing="normal">
          <dt>Candidate Act</dt>
          <dd>An operation produced by an AI system that, if effectuated, would
          cause an effect outside the system's computational environment. A
          Candidate Act is a proposal. Its existence conveys no authority. It
          includes the operation's target, parameters, declared purpose, and
          invocation context, since authorization is evaluated against the
          specific instance, not the operation class.</dd>

          <dt>Non-Effective State</dt>
          <dd>The condition of a Candidate Act between its production and its
          authorization. In this state the Candidate Act <bcp14>MUST NOT</bcp14>
          produce any effect observable outside the enforcement domain.
          Non-Effective State is the default; effectiveness is the exception
          that must be earned.</dd>

          <dt>Consequence Boundary</dt>
          <dd>The point at which a Candidate Act would first produce an
          externally observable or irreversible effect. Examples include
          transmission of a message, settlement of a payment, mutation of
          infrastructure state, actuation of a device, modification of an
          access control, and release of a model response to a requester. Every
          path capable of producing the protected effect is itself a
          Consequence Boundary; an unguarded path is a bypass, not an
          exception.</dd>

          <dt>Protected Enforcement Domain (PED)</dt>
          <dd>The validation environment, isolated from the AI system that
          produced the Candidate Act. The distinguishing property is
          non-influence: the model, its tool layer, and the requester
          <bcp14>MUST NOT</bcp14> be able to alter the PED's inputs, policy,
          keys, or decision. A validator that can be argued with by the system
          it validates is not a PED.</dd>

          <dt>Independent Validation</dt>
          <dd>Evaluation of a Candidate Act inside the PED against an authority
          predicate the requester cannot manufacture. Validation is
          act-specific. Approval of a similar act, an earlier act, or the same
          act under different parameters is not approval of this act.</dd>

          <dt>Execution Handle</dt>
          <dd>The artifact issued on successful validation. An Execution Handle
          is act-bound, being cryptographically bound to the digest of the
          specific Candidate Act; non-bearer, in that possession alone is
          insufficient and presentation requires proof of the binding, so a
          captured handle is not usable by a different holder or for a
          different act; scoped, being constrained to a named Finality Sink,
          boundary, and validity window; and single-consequence, authorizing
          one crossing rather than a standing permission.</dd>

          <dt>Finality Sink</dt>
          <dd>The enforcement point at the Consequence Boundary. The Finality
          Sink verifies the Execution Handle immediately before the effect
          occurs, and <bcp14>MUST</bcp14> fail closed on absent, expired,
          mismatched, replayed, or unverifiable evidence. The Finality Sink is
          the last component with the ability to withhold consequence.</dd>

          <dt>Reconstructed Actual Effect</dt>
          <dd>The effect the Finality Sink determines it is about to produce,
          derived from the operation as it exists at the boundary, not from the
          request as it was authorized. Verification compares the reconstructed
          actual effect against the effect bound into the Execution Handle.
          This comparison is what distinguishes execution finality from a
          conventional policy enforcement point, which checks a token against a
          request and cannot detect divergence introduced after the
          decision.</dd>

          <dt>Authority Predicate</dt>
          <dd>The condition that must hold for a Candidate Act to be
          authorized. It <bcp14>MUST</bcp14> be verifiable by the PED and
          <bcp14>MUST NOT</bcp14> be assertable by the requester. Where the
          only evidence for the predicate is a claim made by the requesting
          system, the architecture is inapplicable.</dd>

          <dt>Validation Record</dt>
          <dd>The tamper-evident, hash-chained record of validation decisions.
          It establishes after the fact which acts crossed the boundary, under
          which authority, and on what evidence. Absent lineage is UNKNOWN, not
          EMPTY, and <bcp14>MUST</bcp14> fail closed.</dd>
        </dl>
      </section>

      <section anchor="ai-terms" numbered="true">
        <name>AI-Specific Terms</name>

        <dl newline="true" spacing="normal">
          <dt>Inference Boundary</dt>
          <dd>The boundary between model computation and delivery of its output
          to any consumer, human or programmatic. Where the protected object is
          model capability rather than a downstream action, the Inference
          Boundary is the Consequence Boundary.</dd>

          <dt>Generation and Release</dt>
          <dd>Distinct events. Generation is the production of output within
          the enforcement domain. Release is its delivery across the Inference
          Boundary. Output that has been generated but not released has caused
          no consequence and may still be withheld.</dd>

          <dt>Protected Capability</dt>
          <dd>Capability embodied in model outputs that is itself the governed
          resource, for example capability whose release is restricted by law,
          licence, or declared purpose, independent of whether the recipient
          subsequently acts on it.</dd>

          <dt>Declared Purpose</dt>
          <dd>The purpose asserted by the requester at invocation. A Declared
          Purpose is an input to validation, never an authorization. It is
          requester-assertable and therefore cannot serve as an Authority
          Predicate.</dd>

          <dt>Capability Laundering</dt>
          <dd>Obtaining a system under one Declared Purpose and eliciting
          capability applicable to a different, unauthorized purpose. The
          defining property is that no boundary violation is visible in any
          single request; the violation is in the relationship between the
          declared scope and the capability released.</dd>

          <dt>Tool Invocation Candidate Act</dt>
          <dd>A tool call emitted by a model, for example a tool_use block or a
          function-call object, treated as a Candidate Act. Emission of the
          call is not invocation of the tool. The dispatch point between the
          model's emitted call and the tool's execution is a Consequence
          Boundary.</dd>

          <dt>Agentic Continuation</dt>
          <dd>Autonomous production of subsequent Candidate Acts from the
          result of a prior one. Each continuation is a separate Candidate Act
          requiring separate validation; authorization does not propagate along
          a chain.</dd>
        </dl>
      </section>

      <section anchor="known-limits" numbered="true">
        <name>Known Limits</name>

        <t>Two properties are not addressed by this architecture and are stated
        here rather than left implied.</t>

        <ol spacing="normal">
          <li>Consequential-act classification. Determining which acts are
          consequential is itself a decision. If that classification is
          influenced by the AI system, the architecture fails open at its entry
          point. The classifier <bcp14>MUST</bcp14> reside inside the PED.</li>

          <li>Decomposition and aggregation. An objective that is prohibited in
          aggregate may be decomposed into requests that are each individually
          authorized. Per-act validation does not detect this, and
          cross-session mosaic aggregation remains open.</li>
        </ol>
      </section>
    </section>

    <!-- ================================================================ -->
    <section anchor="existing-work" numbered="true">
      <name>Relationship to Existing IETF Work</name>

      <t>This section states what existing mechanisms provide and what they do
      not, so that the delta is explicit rather than implied.</t>

      <section anchor="bearer" numbered="true">
        <name>Bearer Semantics and Key-Bound Tokens</name>

        <t>OAuth 2.0 <xref target="RFC6749"/> and the Bearer Token Usage
        specification <xref target="RFC6750"/> define credentials where
        possession is sufficient: any party holding the token may exercise it.
        Proof-of-possession semantics <xref target="RFC7800"/>,
        certificate-bound tokens <xref target="RFC8705"/>, and DPoP
        <xref target="RFC9449"/> narrow this by binding a token to a key or a
        client instance.</t>

        <t>Difference. These bind a credential to who is presenting it. None
        bind a credential to which operation is about to occur. A key-bound
        token held by the legitimate client remains usable for any operation
        within its scope, including one the model composed after the token was
        issued. An Execution Handle is bound to the digest of a single
        Candidate Act and authorizes one crossing.</t>
      </section>

      <section anchor="fine-grained" numbered="true">
        <name>Fine-Grained Authorization</name>

        <t>Rich Authorization Requests <xref target="RFC9396"/> allow an
        authorization request to carry structured authorization_details
        describing actions, locations, and data types. GNAP
        <xref target="RFC9635"/> generalizes the delegation model and removes
        the requirement for pre-registered clients, with resource-server-facing
        connections defined separately <xref target="RFC9767"/>.</t>

        <t>Difference. Both describe the operation at authorization time, as
        the client states it. Neither requires the resource server to
        reconstruct the effect it is about to produce and compare it against
        what was authorized. Where the requesting party is generative, the gap
        between the described operation and the executed operation is the
        attack surface, and it opens after the authorization decision is
        made.</t>
      </section>

      <section anchor="pep" numbered="true">
        <name>Policy Enforcement Points</name>

        <t>The PDP/PEP model is long established <xref target="RFC2753"/>
        <xref target="RFC3198"/>, with COPS <xref target="RFC2748"/> as a
        transport for policy decisions and the AAA authorization framework
        <xref target="RFC2904"/> describing pull, push, and agent sequences.
        Token introspection <xref target="RFC7662"/> allows a resource server
        to validate a token at time of use.</t>

        <t>Difference. Three, and they are the substance of this document.</t>

        <ol spacing="normal">
          <li>The decision evaluates the request. This architecture requires
          verification against the reconstructed actual effect at the boundary,
          which detects divergence introduced after the decision.</li>

          <li>No existing framework requires the decision point to be
          non-influenceable by the requesting entity. In conventional
          deployments the requester is a client; here it is a system capable of
          composing inputs to the policy evaluation itself. The Protected
          Enforcement Domain requirement is not an implementation
          preference.</li>

          <li>Enforcement is conventionally placed at the admission or access
          point. This document places it at the consequence boundary, and
          requires that every path capable of producing the protected effect
          carry a sink.</li>
        </ol>
      </section>

      <section anchor="integrity" numbered="true">
        <name>Message Integrity</name>

        <t>HTTP Message Signatures <xref target="RFC9421"/> provide integrity
        over a message as composed and transmitted. TLS 1.3
        <xref target="RFC8446"/> with channel bindings <xref target="RFC5929"/>
        <xref target="RFC9266"/> binds a credential presentation to a transport
        channel.</t>

        <t>Difference. These establish that the message received is the message
        sent, and that it arrived over the expected channel. They cannot
        establish that the message, however faithfully transmitted, is an
        authorized act. Integrity is not authority; a correctly signed
        instruction to do the wrong thing verifies successfully.</t>
      </section>

      <section anchor="attestation" numbered="true">
        <name>Remote Attestation</name>

        <t>The RATS architecture <xref target="RFC9334"/> defines Attester,
        Verifier, and Relying Party roles, producing evidence about the state
        of an entity.</t>

        <t>Difference. Attestation answers whether a system is in a known-good
        configuration. It does not answer whether a specific operation emitted
        by that system is authorized. A model running on fully attested
        hardware, in an attested software stack, can emit an unauthorized
        Candidate Act; the attestation remains valid throughout. Attestation is
        a useful input to validation and an inadequate substitute for it. This
        document uses attestation to establish the integrity of the Protected
        Enforcement Domain, not the legitimacy of the act.</t>
      </section>

      <section anchor="delegation" numbered="true">
        <name>Delegation Chains</name>

        <t>Token Exchange <xref target="RFC8693"/> defines impersonation and
        delegation, including actor chains where authority is conveyed
        onward.</t>

        <t>Difference. Propagation of authority along a chain is precisely what
        Agentic Continuation forbids. Each act derived from the result of a
        prior act is a new Candidate Act requiring independent validation. A
        chain in which step n inherits authority from step n-1 permits an agent
        to reach, through legitimate individual steps, a state no single
        authorization contemplated.</t>
      </section>

      <section anchor="constrained" numbered="true">
        <name>Constrained Environments</name>

        <t>The ACE framework <xref target="RFC9200"/> carries the OAuth model
        into constrained devices.</t>

        <t>Difference. The same gap applies, transposed: the authorization
        server decides, the resource server enforces possession, and nothing
        verifies the actuation about to occur against the actuation
        authorized.</t>
      </section>

      <section anchor="summary-table" numbered="true">
        <name>Summary</name>

        <table anchor="comparison-table">
          <name>Binding, basis, and timing of verification</name>
          <thead>
            <tr>
              <th>Mechanism</th>
              <th>Binds</th>
              <th>Verified against</th>
              <th>Verified when</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Bearer tokens <xref target="RFC6750"/></td>
              <td>Nothing</td>
              <td>Possession</td>
              <td>At request</td>
            </tr>
            <tr>
              <td>PoP, mTLS, DPoP <xref target="RFC7800"/> <xref target="RFC8705"/> <xref target="RFC9449"/></td>
              <td>Key or client</td>
              <td>Presenter identity</td>
              <td>At request</td>
            </tr>
            <tr>
              <td>RAR, GNAP <xref target="RFC9396"/> <xref target="RFC9635"/></td>
              <td>Described operation</td>
              <td>Stated request</td>
              <td>At authorization</td>
            </tr>
            <tr>
              <td>Message signatures <xref target="RFC9421"/></td>
              <td>Message bytes</td>
              <td>Transmission integrity</td>
              <td>At receipt</td>
            </tr>
            <tr>
              <td>Attestation <xref target="RFC9334"/></td>
              <td>Entity state</td>
              <td>Known-good configuration</td>
              <td>At appraisal</td>
            </tr>
            <tr>
              <td>This document</td>
              <td>Specific act</td>
              <td>Reconstructed actual effect</td>
              <td>At consequence</td>
            </tr>
          </tbody>
        </table>
      </section>

      <section anchor="delta" numbered="true">
        <name>Statement of the Delta</name>

        <t>No existing specification requires that the effect an enforcement
        point is about to produce be reconstructed and compared against the
        effect that was authorized, immediately before the effect occurs, with
        fail-closed behaviour on divergence. Terminology in this document is
        used consistently with <xref target="RFC4949"/> where corresponding
        terms exist.</t>
      </section>
    </section>

    <!-- ================================================================ -->
    <section anchor="wg-relevance" numbered="true">
      <name>Relevance to IETF Working Groups</name>

      <t>This section identifies where the work intersects existing IETF and
      IRTF efforts, and what would be required from each. It is offered to
      assist venue determination, not to assert charter fit.</t>

      <section anchor="dispatch" numbered="true">
        <name>DISPATCH</name>

        <t>DISPATCH is the venue for the initial question. Following the
        conclusion of SECDISPATCH, DISPATCH provides the standing venue for
        new-work proposals across the ART and SEC areas, so a security-area
        architecture proposal now enters there rather than through a separate
        security dispatch process.</t>

        <t>The question for DISPATCH is whether an enforcement boundary defined
        at the point of external effect, rather than at admission,
        authorization, or transport, is within IETF scope, and if so which
        group should develop it. The work is security-area in substance: it
        concerns credential semantics, enforcement placement, and fail-closed
        behaviour, not application semantics. Where the outcome is a profile of
        existing mechanisms rather than a new protocol, the relevant group is
        likely OAUTH.</t>
      </section>

      <section anchor="oauth-wg" numbered="true">
        <name>OAUTH</name>

        <t>The most direct implementation path. An act-bound,
        single-consequence credential could plausibly be expressed as a
        constrained profile over existing OAuth machinery: authorization_details
        <xref target="RFC9396"/> carrying the Candidate Act digest, DPoP
        <xref target="RFC9449"/> or mTLS binding <xref target="RFC8705"/>
        supplying the non-bearer property, and a new confirmation claim
        expressing the act binding.</t>

        <t>What is missing from OAuth today and would need definition: a
        requirement that the resource server reconstruct the effect it is about
        to produce and compare it to the bound digest, with divergence failing
        closed. This is a resource-server-side obligation, which OAuth has
        historically specified sparingly.</t>
      </section>

      <section anchor="gnap-specs" numbered="true">
        <name>GNAP Specifications</name>

        <t>The GNAP working group has concluded. Its published specifications
        remain relevant as material to profile rather than as a venue: the
        negotiated grant model <xref target="RFC9635"/> and its explicit
        resource-server-facing connections <xref target="RFC9767"/> accommodate
        multi-party, per-act grants more naturally than OAuth's client-centric
        model. An agent requesting authority for one operation, with the grant
        terminating on use, is closer to GNAP's shape than to a scoped access
        token. Work building directly on OAuth 2.0 is directed to the OAuth
        working group.</t>
      </section>

      <section anchor="rats-wg" numbered="true">
        <name>RATS</name>

        <t>Two distinct roles. First, attestation establishes the integrity of
        the Protected Enforcement Domain, namely the claim that the validator
        is running the expected code and that the AI system cannot influence
        it. Second, and separately, this document argues that a valid
        attestation of the emitting system says nothing about the legitimacy of
        an act that system emits. RATS would be the venue for the first and the
        group most likely to challenge the second, which is why the distinction
        is stated explicitly in <xref target="attestation"/>.</t>
      </section>

      <section anchor="scitt-wg" numbered="true">
        <name>SCITT</name>

        <t>The Validation Record is an append-only, hash-chained,
        tamper-evident log of authorization decisions, structurally the same
        object SCITT specifies for supply-chain statements. Reusing SCITT's
        transparency service and receipt semantics, rather than defining a
        parallel log format, would be the preferable path if the shapes
        align.</t>
      </section>

      <section anchor="wimse-wg" numbered="true">
        <name>WIMSE</name>

        <t>Where the emitting entity is an autonomous workload rather than a
        user-delegated client, workload identity is the substrate on which
        act-binding sits. The question WIMSE work raises for this document: an
        agent's identity is stable across the acts it emits, so identity alone
        cannot distinguish an authorized act from an unauthorized one emitted
        by the same identity. Act-level binding is complementary to
        workload-level identity, not a substitute.</t>
      </section>

      <section anchor="ace-wg" numbered="true">
        <name>ACE</name>

        <t>Where the consequence boundary is physical actuation in a
        constrained environment, the same requirement applies under tighter
        resource limits. The reconstructed-effect comparison must be cheap
        enough to run on the actuating device, which constrains the design more
        sharply than any other deployment class.</t>
      </section>

      <section anchor="http-wg" numbered="true">
        <name>HTTPBIS and HTTPAPI</name>

        <t>If act-bound authority is conveyed over HTTP, a header field and its
        processing rules require definition, including behaviour on absence,
        which must be rejection rather than pass-through. This is the concrete
        wire-format work, and its absence is the most common objection to
        architecture-level drafts.</t>
      </section>

      <section anchor="tls-wg" numbered="true">
        <name>TLS</name>

        <t>Channel bindings <xref target="RFC9266"/> are one component of the
        presentation binding described in <xref target="core-terms"/>,
        preventing a valid presentation from being replayed on a different
        connection. No TLS change is proposed.</t>
      </section>

      <section anchor="irtf-groups" numbered="true">
        <name>IRTF</name>

        <t>PEARG is relevant where the protected effect is disclosure of
        personal data and the authority predicate is a purpose constraint.
        Broader questions, namely whether effect-level enforcement is tractable
        for systems whose outputs are not enumerable in advance, and the
        decomposition and aggregation limits stated in
        <xref target="known-limits"/>, are research questions rather than
        engineering ones, and are offered as such.</t>
      </section>

      <section anchor="questions" numbered="true">
        <name>Questions to the Community</name>

        <ol spacing="normal">
          <li>Is the gap real: is there an existing mechanism that verifies the
          effect about to be produced against the effect authorized, at the
          point of effect?</li>

          <li>If it is real, is it IETF work or does it belong to implementers
          of individual systems?</li>

          <li>If it is IETF work, which of the above is the venue, and should
          the first deliverable be a profile of existing mechanisms rather than
          a new protocol?</li>
        </ol>
      </section>
    </section>

    <!-- ================================================================ -->
    <section anchor="architecture" numbered="true">
      <name>Architecture Overview</name>

      <figure anchor="fig-architecture">
        <name>Candidate Act to External Effect</name>
        <artwork type="ascii-art" align="left"><![CDATA[
    +--------------------------------------------------------+
    |         AI System (not trusted for authority)           |
    |    inference | tool selection | parameter composition   |
    +---------------------------+----------------------------+
                                |
                                v
                      +-------------------+
                      |  Candidate Act    |  proposal only;
                      |  digest = D       |  conveys no authority
                      +---------+---------+
                                |
                 ...............|...............
                 :      Non-Effective State     :  (default)
                 :...............|..............:
                                 |
  ===============================|=========================
  |  Protected Enforcement Domain (not influenceable by   |
  |  the AI system, its tool layer, or the requester)     |
  |                              v                        |
  |                  +----------------------+             |
  |                  | Independent          |             |
  |                  | Validation           |             |
  |                  |  - authority         |             |
  |                  |    predicate         |             |
  |                  |  - this act only     |             |
  |                  +---+--------------+---+             |
  |                 deny |              | permit          |
  |                      |              v                 |
  |                      |   +---------------------+      |
  |                      |   | Execution Handle    |      |
  |                      |   |  bound to D         |      |
  |                      |   |  non-bearer         |      |
  |                      |   |  single-consequence |      |
  |                      |   |  scoped to sink     |      |
  |                      |   +----------+----------+      |
  |                      v              |                 |
  |            +-------------------+    |                 |
  |            | Validation Record |<---+                 |
  |            | (hash-chained)    |                      |
  |            +-------------------+                      |
  ==============================|==========================
                                |
                                v
    +--------------------------------------------------------+
    |                    Finality Sink                       |
    |   1. reconstruct the effect E' about to be produced    |
    |   2. compare E' to the effect bound into the handle    |
    |   3. verify freshness, channel binding, single use     |
    |                                                        |
    |      match --> proceed      divergence --> fail closed |
    +---------------------------+----------------------------+
                                |
                                v
                     ######################
                     #   External Effect  #
                     ######################
]]></artwork>
      </figure>

      <section anchor="contrast" numbered="true">
        <name>Contrast with Conventional Enforcement</name>

        <figure anchor="fig-contrast">
          <name>Conventional enforcement compared with execution finality</name>
          <artwork type="ascii-art" align="left"><![CDATA[
  Conventional (PDP/PEP, OAuth, ACE):

    request --> [ decide on the REQUEST ] --> token
                                               |
                              [ PEP: is this token valid? ] --> effect

    The described request and the produced effect are never compared.


  This document:

    candidate act --> [ decide on THIS ACT ] --> act-bound handle
                                                      |
            [ sink: is the effect I am about to produce the effect
              that was authorized for this act? ] --> effect

    Divergence introduced after the decision is detected at the
    boundary, not assumed absent.
]]></artwork>
        </figure>
      </section>
    </section>

    <!-- ================================================================ -->
    <section anchor="resources" numbered="true">
      <name>Resources and Companion Work</name>

      <section anchor="primary-impl" numbered="true">
        <name>Primary Reference Implementation (Non-Normative)</name>

        <t>The runnable implementation of the architecture described in this
        document is the Execution-Finality Reference Implementation for AI
        agents, GPUs, confidential computing, and zero-trust automation
        <xref target="EF-REFIMPL"/>.</t>

        <t>This repository is the practical companion to this document. It
        implements the Candidate Act, Protected Enforcement Domain, act-bound
        Execution Handle, and Finality Sink described in
        <xref target="definitions"/> and <xref target="architecture"/> as
        executable code, and is the reference a reviewer should consult before
        concluding that the architecture is unimplementable or that its cost is
        prohibitive.</t>

        <t>Measurements reported there reflect the environments in which they
        were run; readings may vary elsewhere.</t>
      </section>

      <section anchor="background" numbered="true">
        <name>Technical Background</name>

        <t>"The Internet Solved Communication. It Never Solved Authority"
        <xref target="DAS-AUTHORITY"/> provides technical background, an
        architectural explanation, diagrams, use cases, and supporting material
        on execution finality. This document specializes the general statement
        made there to the AI model-to-external-effect boundary.</t>

        <t>"Declared Purpose Is Not Authorization: Capability Laundering and
        Execution Finality at the AI Inference Boundary"
        <xref target="DAS-CAPABILITY-LAUNDERING"/> treats model capability as
        the governed resource and the response-release boundary as the Finality
        Sink.</t>
      </section>

      <section anchor="foundational-drafts" numbered="true">
        <name>Foundational Companion Drafts</name>

        <t>draft-das-execution-finality-protocol-layer defines the shared
        vocabulary this document uses, and the cold-path and hot-path split.
        Related foundational work includes
        draft-das-protocols-candidate-act-finality and
        draft-das-hardware-enforced-execution-finality.</t>
      </section>

      <section anchor="ai-drafts" numbered="true">
        <name>AI and Agentic Profiles</name>

        <t>draft-das-agentic-tool-binding binds the Candidate Act profile onto
        tool_use, function calling, and MCP tools/call, and is the concrete
        dispatch-point specification for the Tool Invocation Candidate Act
        defined in <xref target="ai-terms"/>. Further companion drafts are
        draft-das-agentic-execution-finality;
        draft-das-purpose-execution-finality, which addresses capability
        laundering and the Declared Purpose and Authority Predicate
        distinction; draft-das-enterprise-ai-output-finality and
        draft-das-protocols-enterprise-ai, which present the same mechanism
        from the missing-layer and compromised-workload entry points
        respectively; draft-das-execution-finality-ai-interoperability, which
        specifies challenge-bound presentation and exact-effect binding;
        draft-das-rats-frontier-model-extraction; and
        draft-das-rats-attestation-bnd-execution-finality.</t>
      </section>

      <section anchor="domain-drafts" numbered="true">
        <name>Regulatory and Domain Profiles</name>

        <t>draft-das-eu-ai-act-execution-enforcement,
        draft-das-global-privacy-execution-enforcement,
        draft-das-digital-sovereignty-finality,
        draft-das-child-safe-rendering-finality,
        draft-das-payment-execution-finality,
        draft-das-ot-actuation-finality,
        draft-das-precision-bounded-egress,
        draft-das-ai-native-6g-execution-finality,
        draft-das-ntn-rf-execution-finality,
        draft-das-map-discovery-communication-finality, and
        draft-das-6g-query-scoped-communication-handles.</t>
      </section>

      <section anchor="faq" numbered="true">
        <name>Frequently Raised Questions</name>

        <t>Questions commonly raised about this architecture, including
        performance and latency under each enforcement topology,
        hardware-enforcement and attestation cost, binding integrity and
        lineage continuity, replay and time-of-check to time-of-use handling,
        and the treatment of missing lineage as UNKNOWN rather than EMPTY, are
        addressed in the reference implementation
        <xref target="EF-REFIMPL"/> and in the engineering-considerations
        material carried by the companion drafts listed above. They are not
        restated here.</t>

        <t>Critical review is invited, including on points where the treatment
        in those materials may be inaccurate or incomplete.</t>
      </section>
    </section>

    <!-- ================================================================ -->
    <section anchor="security" numbered="true">
      <name>Security Considerations</name>

      <section anchor="ped-compromise" numbered="true">
        <name>Compromise of the Protected Enforcement Domain</name>

        <t>The architecture reduces to the security of the Protected
        Enforcement Domain. An adversary who can alter the PED's policy, keys,
        inputs, or decision output can authorize arbitrary Candidate Acts, and
        every downstream verification will pass correctly. No property claimed
        in this document survives PED compromise.</t>

        <t>The PED therefore <bcp14>MUST</bcp14> be isolated from the AI system
        that produces Candidate Acts, including from its tool layer, its
        retrieval surfaces, and any content the model can influence.
        Attestation of the PED <xref target="RFC9334"/> establishes that it is
        running the expected code; it does not establish that the AI system is
        trustworthy, and the two claims are not interchangeable.</t>
      </section>

      <section anchor="classification-risk" numbered="true">
        <name>Classification of Consequential Acts</name>

        <t>The decision of which acts are consequential is the entry point to
        the entire mechanism. If that classification is influenced by the AI
        system, the architecture fails open before any validation occurs: an
        act classified as inconsequential never reaches a sink.</t>

        <t>The classifier <bcp14>MUST</bcp14> reside inside the PED.
        Classification <bcp14>MUST</bcp14> default to consequential where the
        determination is uncertain, since the cost of validating an
        inconsequential act is latency and the cost of missing a consequential
        one is unbounded.</t>
      </section>

      <section anchor="unguarded" numbered="true">
        <name>Unguarded Paths</name>

        <t>The guarantee holds only if every path capable of producing the
        protected effect carries a Finality Sink. A single unguarded path is a
        bypass, not a gap in coverage: an adversary needs one, and the presence
        of sinks elsewhere provides no compensating protection.</t>

        <t>Deployments <bcp14>MUST</bcp14> enumerate the paths capable of
        producing each protected effect. Where enumeration is not possible, the
        guarantee is not available and <bcp14>SHOULD NOT</bcp14> be
        claimed.</t>
      </section>

      <section anchor="availability" numbered="true">
        <name>Availability and Fail-Closed Behaviour</name>

        <t>Denial of service against the PED prevents validation and therefore
        prevents consequence. This is the intended behaviour: unavailability
        <bcp14>MUST</bcp14> result in denial, never in pass-through.</t>

        <t>This is the one respect in which the mechanism resembles a fuse
        rather than an interlock: loss of the enforcement path leaves the
        system unable to produce external effects until the path is restored.
        Deployments in which unavailability is less acceptable than
        unauthorized action are outside the scope of this document, and the
        trade-off <bcp14>MUST</bcp14> be made explicitly rather than by
        configuring a fallback that degrades to permit.</t>

        <t>Operators face real pressure to add such a fallback under load. A
        deployment that permits on validation failure provides none of the
        properties described here.</t>
      </section>

      <section anchor="divergence-bounds" numbered="true">
        <name>Divergence Detection Bounds</name>

        <t>The comparison described in <xref target="architecture"/> is only as
        strong as the fidelity of the reconstructed actual effect. Where the
        sink cannot fully reconstruct the effect it is about to produce,
        because the effect depends on state resolved after the sink or on an
        interpretation performed downstream, the comparison verifies a proxy,
        and divergence introduced beyond the reconstruction point is
        undetected.</t>

        <t>The sink <bcp14>MUST</bcp14> be positioned at the last point at
        which the effect is fully determined.</t>
      </section>

      <section anchor="replay" numbered="true">
        <name>Replay, Freshness, and Binding</name>

        <t>Execution Handles are single-consequence. Implementations
        <bcp14>MUST</bcp14> reject presentation of a handle that has already
        been consumed, <bcp14>MUST</bcp14> enforce a validity window, and
        <bcp14>MUST</bcp14> bind the presentation to the channel and the named
        sink, so that a valid presentation cannot be replayed elsewhere.
        Distinct replay classes, namely the same act to a different sink, the
        same handle for a second crossing, and replay after expiry,
        <bcp14>MUST</bcp14> be distinguished in the Validation Record rather
        than collapsed into a single failure code.</t>

        <t>Time-of-check to time-of-use conditions between validation and the
        boundary are addressed by act binding: a mutation after validation
        changes the reconstructed effect and fails the comparison.</t>
      </section>

      <section anchor="absent-evidence" numbered="true">
        <name>Absent Evidence</name>

        <t>Missing validation evidence, missing lineage, and missing binding
        material are UNKNOWN, not EMPTY. Each <bcp14>MUST</bcp14> fail closed.
        An implementation that treats an absent field as an unconstrained one
        inverts the property this document specifies.</t>
      </section>

      <section anchor="not-provided" numbered="true">
        <name>Properties Not Provided</name>

        <t>This document does not prevent an authorized act with harmful
        consequences where the authority predicate was satisfied; decomposition
        of a prohibited objective into individually authorized acts;
        cross-session aggregation, where no single act is unauthorized but
        their union is; or anything occurring inside the AI system prior to the
        production of a Candidate Act.</t>

        <t>These are stated so that deployments do not rely on protection that
        is not offered.</t>
      </section>
    </section>

    <!-- ================================================================ -->
    <section anchor="iana" numbered="true">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>

  </middle>

  <back>

    <references>
      <name>Normative References</name>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
    </references>

    <references>
      <name>Informative References</name>

      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2748.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2753.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2904.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3198.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4949.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5929.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6749.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6750.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7519.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7662.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7800.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8446.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8693.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8705.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9200.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9266.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9334.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9396.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9421.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9449.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9635.xml"/>
      <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9767.xml"/>

      <reference anchor="EF-REFIMPL" target="https://github.com/sangmdas/Execution-Finality-for-AI-Agents-GPUs-Confidential-Computing-and-Zero-Trust-Automation">
        <front>
          <title>Execution-Finality Reference Implementation: Runnable Implementation for AI Agents, GPUs, Confidential Computing, and Zero-Trust Automation</title>
          <author fullname="Sangam Das" initials="S." surname="Das"/>
          <date year="2026"/>
        </front>
      </reference>

      <reference anchor="DAS-AUTHORITY" target="https://zenodo.org/records/22082995">
        <front>
          <title>The Internet Solved Communication. It Never Solved Authority</title>
          <author fullname="Sangam Das" initials="S." surname="Das"/>
          <date year="2026"/>
        </front>
        <seriesInfo name="DOI" value="10.5281/zenodo.22082995"/>
      </reference>

      <reference anchor="DAS-CAPABILITY-LAUNDERING" target="https://doi.org/10.5281/zenodo.22719527">
        <front>
          <title>Declared Purpose Is Not Authorization: Capability Laundering and Execution Finality at the AI Inference Boundary</title>
          <author fullname="Sangam Das" initials="S." surname="Das"/>
          <date year="2026" month="September"/>
        </front>
        <seriesInfo name="DOI" value="10.5281/zenodo.22719527"/>
      </reference>

    </references>

  </back>
</rfc>
