<?xml version="1.0" encoding="UTF-8"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude"
     category="info"
     docName="draft-das-agentic-effectuation-boundary-00"
     ipr="trust200902"
     submissionType="IETF"
     version="3">
  <front>
    <title abbrev="Agentic Effectuation Boundary">When AI Agents Hold the Keys: Threat Model and Execution-Finality Requirements for Autonomous High-Consequence Systems</title>
    <seriesInfo name="Internet-Draft" value="draft-das-agentic-effectuation-boundary-00"/>
    <author initials="S." surname="Das" fullname="Sangam Das">
      <organization>Independent Researcher</organization>
      <address>
        <postal>
          <city>Balasore</city>
          <region>Odisha</region>
          <country>IN</country>
        </postal>
        <email>info@sangamdas.com</email>
      </address>
    </author>
    <date year="2026" month="September" day="19"/>
    <area>Security</area>
    <keyword>AI agents</keyword>
    <keyword>execution finality</keyword>
    <keyword>authorization</keyword>
    <keyword>critical infrastructure</keyword>
    <keyword>robotics</keyword>
    <keyword>payments</keyword>
    <keyword>effectuation boundary</keyword>
    <abstract>
      <t>
        AI agents are increasingly being delegated authority to invoke APIs,
        move money, modify enterprise state, operate infrastructure, and
        trigger physical actions.  Existing mechanisms for authentication,
        authorization, proof-of-possession, attestation, request
        preconditions, and authorization-context propagation are necessary
        building blocks, but they do not by themselves establish a universal
        invariant that the exact consequential act approved earlier is the
        exact act permitted to become effective now.
      </t>
      <t>
        This document defines a threat model for autonomous high-consequence
        agents and identifies an effectuation-boundary gap: a request can be
        correctly authenticated, correctly authorized, correctly attested,
        and still be unsafe to execute because parameters, policy state,
        external prerequisites, delegation state, lineage, or the execution
        path changed after the earlier decision.  The document describes an
        execution-finality architecture in which a proposed act remains
        non-effective until a protected enforcement point verifies exact-act
        binding, freshness, current policy state, anti-replay state, required
        provenance, and path completeness immediately before effectuation,
        with authority consumed in coordination with the consequential
        commit.
      </t>
    </abstract>
  </front>

  <middle>
    <section numbered="true" toc="include">
      <name>Introduction</name>
      <t>
        The security model of software is changing as AI systems move from
        generating content to initiating consequential operations.  An agent
        may prepare a payment, change a cloud route, dispatch a warehouse
        robot, alter an industrial setpoint, or invoke another privileged
        agent without a human reviewing every individual operation.
      </t>
      <t>
        The core vulnerability considered here is not simply that an AI model
        might be wrong.  The vulnerability is that a machine-generated act
        can cross from computation into an externally meaningful consequence
        even when the authorization evidence was created for a different act,
        a different state, an earlier policy epoch, an earlier dependency
        state, or a different execution path.
      </t>
      <t>
        Existing industry mechanisms address important parts of this
        problem.  OAuth authorization constrains access to protected
        resources; Rich Authorization Requests can carry structured
        authorization details; DPoP sender-constrains tokens; Transaction
        Tokens propagate identity and authorization context through service
        chains; RATS and EAT provide evidence and claims about platform state;
        HTTP conditional requests can prevent operations against a changed
        target representation.
      </t>
      <t>
        Those controls remain useful and are not replaced by this document.
        The architectural delta is narrower: the component that is able to
        make the consequential operation effective independently verifies
        that the exact act being committed is still authorized under the
        current relevant state, and couples successful verification with
        single-use consumption or equivalent anti-reuse state.
      </t>

      <section numbered="true" toc="include">
        <name>Problem Sequence</name>
        <t>
          The problem can be summarized as:
        </t>
        <artwork type="ascii-art"><![CDATA[
  autonomous computation
          |
          v
  proposed consequential act
          |
          v
  authentication / authorization / attestation
          |
          |   time passes; state changes; delegation changes;
          |   parameters may be substituted; retries may occur;
          |   another path may bypass the earlier check
          v
  EFFECTUATION BOUNDARY
          |
          +----> payment settles
          +----> breaker changes state
          +----> robot moves
          +----> data leaves trust boundary
          +----> privileged API mutates state

  Security question:
  Is the exact act crossing this boundary authorized NOW,
  under the state and constraints that matter to the consequence?
        ]]></artwork>
      </section>

      <section numbered="true" toc="include">
        <name>Industry-Standard Terminology and Functional Equivalence</name>
        <t>
          The terminology in this document is intended to describe functions,
          not require a particular product name or implementation.  The same
          architecture may appear under different terminology in financial,
          industrial, telecom, cloud, safety, distributed-systems, or
          hardware-security environments.
        </t>
        <table>
          <name>Functional Equivalence</name>
          <thead>
            <tr>
              <th>Term used here</th>
              <th>Equivalent or related industry terms</th>
              <th>Underlying function</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Candidate Act</td>
              <td>transaction intent, command, job, API mutation, control action</td>
              <td>The exact operation proposed before it is allowed to become effective.</td>
            </tr>
            <tr>
              <td>Non-Effective State</td>
              <td>staged state, prepared state, uncommitted state, pending command</td>
              <td>The operation exists but has not yet produced its governed consequence.</td>
            </tr>
            <tr>
              <td>Execution Handle</td>
              <td>bounded capability, transaction authorization artifact, one-shot permit</td>
              <td>Cryptographic or protected authority bound to an exact act and constraints.</td>
            </tr>
            <tr>
              <td>Finality Sink</td>
              <td>policy enforcement point, reference monitor, command gate, actuation gate, safety interlock, commit gate</td>
              <td>The component or boundary whose successful action first makes the governed consequence effective.</td>
            </tr>
            <tr>
              <td>Policy Epoch</td>
              <td>generation number, fencing epoch, configuration version</td>
              <td>A version marker used to reject authority created under stale policy or delegation state.</td>
            </tr>
            <tr>
              <td>Act Binding</td>
              <td>transaction binding, parameter binding, request-object binding</td>
              <td>Cryptographic association between authority and the exact canonical operation.</td>
            </tr>
            <tr>
              <td>Atomic Consume</td>
              <td>check-and-commit, compare-and-swap, transactional consume, idempotency commit</td>
              <td>Prevents the same authority from becoming the basis for multiple governed effects.</td>
            </tr>
            <tr>
              <td>Path Completeness</td>
              <td>complete mediation, anti-bypass, chokepoint enforcement</td>
              <td>Ensures alternate paths cannot produce the same consequence without the required gate.</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>

    <section numbered="true" toc="include">
      <name>Scope</name>
      <t>
        This document focuses on machine-generated acts with potentially
        irreversible, high-cost, safety-relevant, or externally binding
        effects.  Examples include financial settlement, critical
        infrastructure control, robotic actuation, privileged enterprise
        changes, protected data release, and autonomous inter-agent
        delegation.
      </t>
      <t>
        This document does not standardize bank settlement protocols, grid
        protection algorithms, robot motion planning, model alignment, or
        domain-specific safety certification.  It defines a cross-domain
        security boundary and the properties expected at that boundary.
      </t>
    </section>

    <section numbered="true" toc="include">
      <name>Threat Model</name>
      <t>
        The threat model assumes that one or more upstream components can be
        buggy, compromised, stale, adversarially influenced, or operating on
        incomplete information.  The model does not require the AI model
        itself to be malicious.
      </t>
      <t>
        Relevant adversaries and failure sources include prompt injection,
        malicious tool output, compromised service workloads, stolen
        credentials, stale authorization context, policy revocation races,
        parameter substitution, replay, retry storms, split-brain services,
        schema drift, compromised plugins, malicious insiders, incomplete
        provenance, and alternate execution paths.
      </t>

      <section numbered="true" toc="include">
        <name>Assets</name>
        <ul>
          <li>financial balances and settlement authority;</li>
          <li>industrial and grid control state;</li>
          <li>robotic motion and safety envelopes;</li>
          <li>privileged enterprise resources;</li>
          <li>confidential data and network egress;</li>
          <li>delegation state and policy configuration;</li>
          <li>auditability of machine-generated consequences.</li>
        </ul>
      </section>

      <section numbered="true" toc="include">
        <name>Security Boundary</name>
        <t>
          The protected boundary is the point at which a candidate operation
          first becomes externally meaningful.  A high-assurance deployment
          treats code that proposes the act as less trusted than the
          component that verifies and releases the effect.
        </t>
      </section>
    </section>

    <section numbered="true" toc="include">
      <name>High-Attention Threat Scenarios</name>

      <section numbered="true" toc="include">
        <name>Scenario 1: The Perfectly Authenticated Fraudulent Transfer</name>
        <t>
          A treasury agent is authorized to initiate vendor payments.  It
          holds valid OAuth credentials and a proof-of-possession key.  An
          attacker influences the model through an invoice attachment and
          causes the beneficiary account to be substituted after a legitimate
          approval workflow has completed.
        </t>
        <t>
          Authentication can still succeed.  Sender-constrained access can
          still succeed.  The agent can still be the legitimate software
          presenting the token.  The missing property is whether settlement
          authority is cryptographically bound to the exact beneficiary,
          amount, currency, invoice basis, policy epoch, and single-use
          transaction instance that the sink is about to commit.
        </t>
        <artwork type="ascii-art"><![CDATA[
  approved:
    pay(vendor=A, account=X, amount=100000)

             attacker-controlled substitution
                         |
                         v

  executed:
    pay(vendor=A, account=Y, amount=100000)

  If the sink validates only "agent may pay vendors",
  the authorization is valid while the act is wrong.
        ]]></artwork>
      </section>

      <section numbered="true" toc="include">
        <name>Scenario 2: The Correct Breaker Command at the Wrong State</name>
        <t>
          A grid-management agent computes a breaker operation using telemetry
          observed at time T1.  Before the command reaches the actuator,
          topology, load, protection status, or operator override state
          changes at T2.  The command remains syntactically valid and the
          controller identity remains authorized.
        </t>
        <t>
          The safety question is therefore not only who issued the command,
          but whether the exact command remains admissible under the current
          control epoch and the current prerequisites that the deployment
          chooses to make execution-critical.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Scenario 3: The Robot Executes Yesterday's Safe Plan</name>
        <t>
          A warehouse agent generates a route and grasp sequence while an
          aisle is clear.  A worker, another robot, or a pallet subsequently
          changes the local environment.  A stale prepared command is later
          delivered by a retrying service.
        </t>
        <t>
          Model correctness at planning time is insufficient.  A protected
          actuation gate can require freshness, a current safety epoch,
          command digest equality, single-use authority, and any
          domain-specific interlock result required by the robot controller.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Scenario 4: Narrow Delegation Becomes Broad Effect</name>
        <t>
          Agent A delegates a task to Agent B, which invokes Agent C.  Each
          hop propagates valid identity and authorization context, but the
          final command includes parameters not present when the original
          delegation was evaluated.  This can occur through tool schema
          expansion, default arguments, data enrichment, or a compromised
          intermediate service.
        </t>
        <t>
          A final sink that verifies only the caller or scope may accept a
          semantically broader act.  Exact-act binding makes the final
          parameter set an object of verification rather than an assumption
          about well-behaved intermediaries.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Scenario 5: A Retry Becomes a Double Consequence</name>
        <t>
          The agent submits a payment or actuation request.  The network
          times out after the underlying effect occurs but before the agent
          receives confirmation.  The agent retries.  Generic request
          authentication does not necessarily distinguish a legitimate retry
          from a second authorized effect.
        </t>
        <t>
          The execution authority therefore needs an idempotency or
          single-consumption semantic coordinated with the effect boundary.
          For physical systems where rollback is impossible, the protected
          state transition must prevent command re-release even if higher
          layers repeat the request.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Scenario 6: The Emergency Path Becomes the Attack Path</name>
        <t>
          The primary API passes through a final enforcement gate, but a
          legacy interface, local maintenance command, direct message bus, or
          privileged recovery path can produce the same consequence without
          that gate.  An attacker routes the operation through the
          uncontrolled path.
        </t>
        <t>
          This is a complete-mediation problem.  Execution-finality is not
          established if a governed consequence has an alternate effectuation
          path that is outside the required enforcement set.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Scenario 7: Attested Platform, Unauthorized Consequence</name>
        <t>
          A workload presents fresh attestation evidence showing approved
          software and expected platform state.  The workload then asks to
          perform an operation that is outside the intended transaction or
          uses stale delegation state.
        </t>
        <t>
          Attestation answers an important question about the entity and its
          state.  It does not by itself establish that a specific
          consequential act is authorized for effectuation.  The
          architecture can use RATS/EAT evidence as an input while still
          requiring act-specific authorization at the sink.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Scenario 8: Missing Lineage Is Treated as No Restriction</name>
        <t>
          A downstream service receives an act without required provenance or
          delegation lineage.  If missing lineage is interpreted as an empty
          restriction set, stripping metadata can increase authority.
        </t>
        <t>
          A safer semantic is to distinguish EMPTY from UNKNOWN.  EMPTY means
          the verified lineage is intentionally empty.  UNKNOWN means the
          required lineage cannot be established.  For consequences whose
          policy requires lineage, UNKNOWN remains non-effective.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Scenario 9: Split-Brain Commit</name>
        <t>
          One subsystem records that an operation failed while another
          subsystem has already committed the consequence.  A compensating
          retry or secondary controller then creates an inconsistent or
          duplicated state.
        </t>
        <t>
          Deployments should define which state transition is authoritative,
          how idempotency survives crashes, and whether the authority
          consumption record and the consequential commit can be made atomic
          or recoverably coupled.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Scenario 10: Tool Schema Drift Changes the Meaning of the Same Call</name>
        <t>
          An agent was approved to invoke a tool when version 7 of the schema
          mapped a field to a read-only operation.  Version 8 changes a
          default, expands a wildcard, or maps the same high-level request to
          a state-changing operation.
        </t>
        <t>
          Authority can therefore be bound not only to textual arguments but
          also to the tool or mapping revision whose semantics were
          evaluated.  Digest or version mismatch causes re-evaluation rather
          than dynamic assumptions of equivalence.
        </t>
      </section>
    </section>

    <section numbered="true" toc="include">
      <name>Why OAuth Plus Sender-Constrained Authorization Does Not Alone Solve Irreversible Effectuation</name>
      <t>
        OAuth is directly relevant to this problem, and this document does
        not claim that OAuth authorization is weak or inappropriate.  OAuth
        answers delegation and protected-resource access questions.  Rich
        Authorization Requests can express fine-grained transaction details.
        DPoP and mutual-TLS certificate-bound access tokens can make an access
        token sender-constrained, sometimes informally described as
        "non-bearer", so possession of a copied token alone is insufficient.
      </t>
      <t>
        The remaining problem appears when a valid authorized request is able
        to trigger an irreversible or externally binding effect.  Sender
        constraint proves that the presenter possesses the required key.  It
        does not, by itself, prove that the irreversible effect about to occur
        is still the exact effect whose semantics were evaluated, that all
        execution-critical dependencies remain current, or that the authority
        and effect will be consumed as one recoverable state transition.
      </t>

      <section numbered="true" toc="include">
        <name>Holder-of-Key Is Not Exact-Act Finality</name>
        <t>
          A DPoP proof binds an OAuth presentation to a key and to selected
          HTTP request properties.  A certificate-bound token similarly binds
          token use to the holder of the corresponding private key.  These are
          strong defenses against stolen-token use.  However, the legitimate
          key holder can still be a buggy, compromised, stale, or
          adversarially influenced agent.
        </t>
        <t>
          The relevant distinction is:
        </t>
        <artwork type="ascii-art"><![CDATA[
  sender-constrained authorization asks:

      "Is this token being presented by the legitimate key holder,
       for an allowed protected-resource request?"

  execution-finality additionally asks:

      "Is this exact consequential act, with these final semantics,
       permitted to become effective NOW, under the current
       execution-critical state, and can this authority create
       no unintended second effect?"
        ]]></artwork>
      </section>

      <section numbered="true" toc="include">
        <name>RAR Can Describe the Act; Description Is Not the Commit Invariant</name>
        <t>
          RFC 9396 can carry highly specific authorization details, including
          payment amount and creditor information.  If an authorization
          profile includes every execution-relevant field, and the resource
          server verifies those exact fields at the final commit boundary,
          then simple parameter substitution can already be prevented.
          This document explicitly relies on that capability where available.
        </t>
        <t>
          The residual case is state or semantics not fully represented by the
          authorization object: a beneficiary alias resolves differently, a
          tool or mapping revision changes, a delegation or policy epoch
          advances, an external prerequisite changes, a physical safety state
          changes, or an alternate path performs the same consequence without
          traversing the resource server check.
        </t>
        <t>
          Therefore, the delta is not "OAuth cannot describe a payment".
          The delta is that authorization description alone does not define a
          cross-domain commit-time invariant covering current dependencies,
          irreversible effect, anti-replay state, and path completeness.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Token Replay Protection Is Not Effect Replay Protection</name>
        <t>
          DPoP proof freshness, token sender constraint, and token replay
          defenses operate on protocol credentials and requests.  A different
          failure occurs when the first request commits the external effect
          but the response is lost.  A legitimate client may then construct a
          new valid proof and retry the authorized request.
        </t>
        <t>
          For an irreversible effect, the system needs an application or sink
          invariant such as a transaction identifier, idempotency key,
          one-shot capability, protected replay store, or equivalent state
          that is coordinated with the actual commit.  Preventing reuse of a
          stolen credential and preventing duplication of an already
          committed consequence are related but distinct properties.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Authorization-Time State Is Not Necessarily Effectuation-Time State</name>
        <t>
          An authorization server can make a correct decision at time T1.
          The resource server can receive a valid sender-constrained token at
          T2.  Between T1 and the irreversible effect at T3, an external
          prerequisite, policy generation, delegation, device state, mapping,
          or safety condition can change.
        </t>
        <artwork type="ascii-art"><![CDATA[
  T1  AS authorizes a specific operation
          |
          |    valid RAR / token / sender constraint
          v
  T2  RS accepts a request from the legitimate key holder
          |
          |    relevant external or local state changes
          v
  T3  irreversible effect becomes real
          |
          +--> settlement
          +--> actuator release
          +--> protected data egress
          +--> destructive enterprise mutation

  The property introduced here is a defined check at T3, not merely
  another credential evaluated at T1 or T2.
        ]]></artwork>
      </section>

      <section numbered="true" toc="include">
        <name>OAuth-Sufficient Deployments</name>
        <t>
          There is an important limiting case.  If an OAuth deployment already
          binds every execution-relevant field, verifies those bindings at the
          component that performs the final effect, revalidates every required
          changing prerequisite, prevents alternate bypass paths, and couples
          idempotent or single-use authorization state to the actual commit,
          then that deployment already implements most of the execution-
          finality invariant described here.
        </t>
        <t>
          In that case, this document does not require replacing OAuth.  Its
          value is to make those properties explicit, portable, testable, and
          applicable to systems whose final consequence is not merely an HTTP
          resource response, including message-driven services, hardware
          control, robotics, industrial actuation, and autonomous settlement.
        </t>
      </section>
    </section>

    <section numbered="true" toc="include">
      <name>Why This Internet-Draft Is Different</name>
      <t>
        This document is not a new general authorization framework.  It does
        not define who a principal is, how a user delegates access, how
        consent is collected, or how a model decides what action to propose.
        It starts after those mechanisms have produced an apparently
        authorized candidate act.
      </t>
      <t>
        The document attempts to standardize the security properties of the
        final transition from an authorized proposal to an effective
        consequence.  That makes the unit of analysis the effectuation
        boundary rather than the login session, access token, model output,
        API call, or attested workload.
      </t>
      <artwork type="ascii-art"><![CDATA[
  EXISTING LAYERS                         THIS DOCUMENT

  identity  ---------------------+
  authentication ----------------+----+
  OAuth delegation --------------+    |
  RAR / scopes ------------------+    |
  sender constraint -------------+    |  inputs
  workload identity -------------+    |
  attestation -------------------+    |
  safety / policy state ---------+----+
                                      |
                                      v
                             +------------------+
                             | EFFECTUATION GATE|
                             | exact act?       |
                             | current state?   |
                             | current epoch?   |
                             | required lineage?|
                             | unused authority?|
                             | governed path?   |
                             +--------+---------+
                                      |
                                      v
                                 IRREVERSIBLE
                                  CONSEQUENCE
        ]]></artwork>

      <section numbered="true" toc="include">
        <name>Proposed Interoperability Surface</name>
        <t>
          The candidate interoperability surface is deliberately small:
          an exact-act commitment, an authority identifier or nonce, a sink
          identifier, freshness, relevant epoch or dependency commitments,
          constraints, and a verifiable result or receipt where required.
          Existing OAuth, COSE, RATS, or workload-identity artifacts can carry
          or supply these values if the responsible working groups determine
          that profiling existing mechanisms is preferable to defining new
          protocol objects.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Protocol-Level Distinguishing Invariants</name>
        <ol>
          <li><t>The candidate act is explicitly non-effective before final verification.</t></li>
          <li><t>The final sink reconstructs or obtains the exact act that will become effective.</t></li>
          <li><t>Authority is compared against that exact act, not merely against caller identity or broad scope.</t></li>
          <li><t>Selected mutable state is revalidated at the effectuation boundary.</t></li>
          <li><t>Authority reuse and crash/retry behavior are defined relative to the actual consequence.</t></li>
          <li><t>Missing required provenance is UNKNOWN and fails closed rather than silently widening authority.</t></li>
          <li><t>All materially equivalent effectuation paths are within the stated enforcement coverage.</t></li>
        </ol>
      </section>
    </section>

    <section numbered="true" toc="include">
      <name>IETF Working-Group Relevance and Possible Dispatch</name>
      <t>
        The problem is cross-area because an autonomous act can begin as an
        OAuth-authorized API operation, traverse several workloads, consume
        attestation evidence, cross a CBOR/COSE boundary, and terminate at a
        database, payment rail, gateway, or physical controller.  The
        document therefore separates the common invariant from any single
        encoding or transport.
      </t>
      <table>
        <name>Relationship to IETF Groups</name>
        <thead>
          <tr>
            <th>Group or venue</th>
            <th>Relevant existing work</th>
            <th>Potential relationship to this draft</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td>OAuth</td>
            <td>delegated authorization, RAR, DPoP, token exchange, Transaction Tokens</td>
            <td>Primary integration point for authorization inputs and multi-hop authorization context.  A profile could bind OAuth authorization to an exact execution commitment without redefining OAuth.</td>
          </tr>
          <tr>
            <td>WIMSE</td>
            <td>workload identity and least-privilege access across multi-service environments</td>
            <td>Relevant when an agentic act crosses several workloads and the final sink must distinguish workload identity from authority for the final consequence.</td>
          </tr>
          <tr>
            <td>RATS</td>
            <td>remote attestation evidence, attestation results, appraisal, epoch-related state</td>
            <td>Attestation can supply trustworthy state predicates to the finality sink.  This draft keeps attestation evidence separate from act authorization.</td>
          </tr>
          <tr>
            <td>COSE</td>
            <td>CBOR signing, MAC, encryption, keys, and registered COSE attributes</td>
            <td>Relevant if an execution handle or finality receipt needs a compact integrity-protected CBOR representation or new registered attributes.</td>
          </tr>
          <tr>
            <td>ACE / CoRE</td>
            <td>authorization and constrained application protocols for resource-constrained environments</td>
            <td>Potential profile venue for constrained controllers, robots, gateways, or industrial devices where the effectuation sink is not a conventional web service.</td>
          </tr>
          <tr>
            <td>DISPATCH / security dispatch process</td>
            <td>routing new cross-cutting work and identifying overlap with existing WGs</td>
            <td>Suitable first venue if no current WG owns the cross-domain effectuation-boundary invariant.</td>
          </tr>
          <tr>
            <td>SAAG</td>
            <td>cross-cutting Security Area discussion</td>
            <td>Useful for threat-model review and architectural criticism.  SAAG is a discussion forum rather than a document-adopting WG.</td>
          </tr>
        </tbody>
      </table>

      <section numbered="true" toc="include">
        <name>Likely Standards Decomposition</name>
        <t>
          The work can be decomposed rather than forcing one working group to
          standardize every layer:
        </t>
        <ol>
          <li><t><strong>Architecture / threat model:</strong> define the effectuation boundary, attacker model, and invariants.</t></li>
          <li><t><strong>Authorization profile:</strong> define how existing OAuth authorization details or transaction context bind to an exact act when OAuth is used.</t></li>
          <li><t><strong>Attestation binding:</strong> define how RATS results or epoch evidence become execution predicates without turning attestation into authorization.</t></li>
          <li><t><strong>Compact object format:</strong> reuse COSE/CBOR only if a portable execution-handle or receipt representation is needed.</t></li>
          <li><t><strong>Constrained-device profile:</strong> map the invariant to CoAP/ACE or device-local enforcement when an irreversible act occurs outside an HTTP service.</t></li>
        </ol>
      </section>

      <section numbered="true" toc="include">
        <name>Question for Dispatch</name>
        <t>
          The central dispatch question is therefore not whether the IETF
          should invent another authorization protocol.  It is whether
          existing IETF mechanisms, when combined, already define an
          interoperable and testable invariant for the final irreversible
          effect, and if not, which existing working group or new narrowly
          scoped effort should own that invariant.
        </t>
      </section>
    </section>

    <section numbered="true" toc="include">
      <name>Why Existing Controls Do Not Fully Close the Effectuation Boundary</name>
      <t>
        The mechanisms below are complementary.  This section describes the
        remaining boundary condition rather than a defect in those protocols.
      </t>
      <table>
        <name>Complementary Controls and Residual Boundary Question</name>
        <thead>
          <tr>
            <th>Mechanism</th>
            <th>Primary property</th>
            <th>Residual question at effectuation</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td>OAuth authorization</td>
            <td>Delegated access to a protected resource.</td>
            <td>Does current authority bind the exact final act and current execution-critical state?</td>
          </tr>
          <tr>
            <td>RAR</td>
            <td>Structured authorization details.</td>
            <td>Are the committed parameters exactly those details, and are later-changing prerequisites still satisfied?</td>
          </tr>
          <tr>
            <td>DPoP</td>
            <td>Sender-constrained token presentation.</td>
            <td>Does the legitimate sender possess authority for this exact consequential act?</td>
          </tr>
          <tr>
            <td>Transaction Tokens</td>
            <td>Propagation of identity and authorization context through a call chain.</td>
            <td>Is propagated context sufficient for a commit-time decision at the final consequence boundary?</td>
          </tr>
          <tr>
            <td>RATS / EAT</td>
            <td>Evidence and claims about entity/platform state.</td>
            <td>Is this exact act authorized, current, single-use, and path-complete?</td>
          </tr>
          <tr>
            <td>HTTP If-Match</td>
            <td>Conditional method execution against a matching target representation.</td>
            <td>What about non-resource dependencies, multiple resources, delegation epochs, physical actuation, or consequences outside one HTTP origin?</td>
          </tr>
        </tbody>
      </table>
    </section>

    <section numbered="true" toc="include">
      <name>Execution-Finality Architecture</name>
      <t>
        The proposed architecture separates the ability to compute an act
        from the authority required to make that act effective.
      </t>
      <artwork type="ascii-art"><![CDATA[
    +---------------------+
    | Model / Agent / App |
    +----------+----------+
               |
               | proposes exact Candidate Act
               v
    +---------------------+
    | Non-Effective State |
    +----------+----------+
               |
               | protected validation
               v
    +-----------------------------+
    | Authorization / Policy /    |
    | Attestation / Safety Inputs |
    +--------------+--------------+
                   |
                   | issue act-bound authority
                   v
       +-------------------------+
       | Execution Handle        |
       | digest + nonce + epoch  |
       | constraints + expiry    |
       +------------+------------+
                    |
                    v
       +-------------------------+
       | FINALITY SINK           |
       | - reconstruct act       |
       | - compare digest        |
       | - verify freshness      |
       | - verify current epoch  |
       | - verify required state |
       | - verify lineage        |
       | - consume once          |
       +------------+------------+
                    |
          success only
                    v
             EFFECTUATION
        ]]></artwork>

      <section numbered="true" toc="include">
        <name>Canonical Candidate Act</name>
        <t>
          A deployment defines a deterministic representation of the
          execution-relevant fields.  One abstract form is:
        </t>
        <artwork type="ascii-art"><![CDATA[
  A = Canon(
        operation,
        target,
        arguments,
        principal,
        delegated_by,
        purpose,
        budget,
        destination,
        tool_or_schema_revision,
        policy_epoch,
        dependency_commitments,
        sink_id
      )

  act_digest = H(A)
        ]]></artwork>
        <t>
          Canonicalization is application-specific and must avoid ambiguous
          encodings.  Fields that can change the consequence need to be
          represented either directly or by an unambiguous commitment.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Act-Bound Execution Authority</name>
        <t>
          A representative execution handle can be modeled as:
        </t>
        <artwork type="ascii-art"><![CDATA[
  EH = Protect(
        act_digest,
        authority_id,
        nonce,
        issued_at,
        expires_at,
        policy_epoch,
        constraint_set,
        sink_id
      )
        ]]></artwork>
        <t>
          Protect() can be implemented with an integrity-protected token,
          protected local object, hardware-bound capability, or another
          construction that provides the deployment's required authenticity
          and anti-forgery properties.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Effectuation Predicate</name>
        <t>
          Let S_now be the protected state visible to the finality sink.
          A candidate act A becomes eligible for effectuation only if the
          required predicates are true:
        </t>
        <artwork type="ascii-art"><![CDATA[
  Permit(A, EH, S_now) =

      ValidProtection(EH)
   AND H(Canon(A)) == EH.act_digest
   AND Fresh(EH)
   AND NotConsumed(EH.nonce)
   AND EH.policy_epoch == S_now.policy_epoch
   AND PolicyAllows(A, S_now)
   AND RequiredDependenciesCurrent(A, S_now)
   AND RequiredLineage(A) != UNKNOWN
   AND SinkMatches(EH.sink_id)
   AND PathIsGoverned(A)

  Effectuate(A) only if Permit(...) == TRUE.
        ]]></artwork>
      </section>

      <section numbered="true" toc="include">
        <name>Check-and-Effect Semantics</name>
        <sourcecode type="pseudocode"><![CDATA[
function effectuate(candidate_act, execution_handle):
    act = canonicalize(candidate_act)

    begin protected_transition:
        assert verify_handle(execution_handle)
        assert hash(act) == execution_handle.act_digest
        assert current_time <= execution_handle.expires_at
        assert replay_store.is_unused(execution_handle.nonce)
        assert policy_epoch() == execution_handle.policy_epoch
        assert current_policy_allows(act)
        assert required_dependencies_are_current(act)
        assert required_lineage(act) != UNKNOWN
        assert sink_id() == execution_handle.sink_id

        reserve_or_mark_inflight(execution_handle.nonce)

        result = commit_governed_effect(act)

        if result == COMMITTED:
            replay_store.mark_consumed(execution_handle.nonce)
            protected_commit()
            return SUCCESS

        protected_abort_or_recover()
        return FAILURE
        ]]></sourcecode>
        <t>
          Exact crash semantics depend on the underlying consequence.  For a
          database or payment rail, transactional or idempotent commit
          primitives may exist.  For irreversible physical actuation, the
          protected state machine should ensure that a crash cannot cause the
          same authority to release the command a second time.
        </t>
      </section>
    </section>

    <section numbered="true" toc="include">
      <name>Required Security Properties</name>
      <t>
        A system claiming an execution-finality property for a governed class
        of acts should make the following properties externally reviewable:
      </t>
      <ol>
        <li>
          <t><strong>EF-1 Exact-Act Binding:</strong> authority is bound to a
          deterministic representation of the execution-relevant act.</t>
        </li>
        <li>
          <t><strong>EF-2 Commit-Time Revalidation:</strong> state designated
          as execution-critical is checked at or immediately before the
          effectuation boundary.</t>
        </li>
        <li>
          <t><strong>EF-3 Anti-Replay:</strong> the same authority cannot
          silently create multiple governed effects unless multiplicity is
          explicitly authorized.</t>
        </li>
        <li>
          <t><strong>EF-4 Epoch/Fencing:</strong> revocation, policy change,
          delegation change, or schema revision can invalidate previously
          issued authority when the deployment requires it.</t>
        </li>
        <li>
          <t><strong>EF-5 Fail-Closed Unknowns:</strong> required but
          unavailable lineage or state is represented as UNKNOWN rather than
          inferred to mean unrestricted authority.</t>
        </li>
        <li>
          <t><strong>EF-6 Path Completeness:</strong> all paths capable of
          producing the governed consequence are included in the enforcement
          model or explicitly identified as exceptions.</t>
        </li>
        <li>
          <t><strong>EF-7 Sink-Local Verification:</strong> the effectuation
          component does not rely solely on an upstream statement that
          validation occurred.</t>
        </li>
        <li>
          <t><strong>EF-8 Recoverable Commit Semantics:</strong> crash,
          timeout, retry, and split-brain behavior cannot silently turn one
          authorized act into multiple effects.</t>
        </li>
      </ol>
    </section>

    <section numbered="true" toc="include">
      <name>Domain Profiles</name>

      <section numbered="true" toc="include">
        <name>Corporate Treasury and Autonomous Payments</name>
        <t>
          A financial profile can bind beneficiary identifier, destination
          account, amount, currency, fee bound, invoice or business basis,
          source account, approval class, settlement rail, policy epoch,
          transaction nonce, and any risk or human-approval evidence required
          by the deployment.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Power and Industrial Control</name>
        <t>
          A control profile can bind device or zone, command type, setpoint,
          allowed range, control epoch, topology or configuration commitment,
          maintenance state, operator override state, and required
          domain-specific safety interlock result.  Execution-finality is not
          a substitute for protection relays or safety engineering; it is a
          gate that can make selected safety and authorization predicates
          technically necessary for command release.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Robotic Logistics</name>
        <t>
          A robotics profile can bind robot identity, command sequence,
          workspace or zone, payload class, maximum speed or force envelope,
          route revision, local safety epoch, freshness window, and the
          actuation sink expected to consume the authority.
        </t>
      </section>
    </section>

    <section numbered="true" toc="include">
      <name>Industrial Relevance and Deployment Context</name>
      <t>
        The effectuation-boundary problem is relevant to current industry
        architectures because major AI and cloud platforms are already
        exposing models to tools, APIs, enterprise workflows, code execution,
        operating-system actions, and physical robotics stacks.  The examples
        in this section are illustrative integration contexts only.  They do
        not assert that any named vendor has a security defect, lacks a
        particular control, or endorses this document.
      </t>
      <t>
        The common architectural trend is that model output is increasingly
        able to cause external state transitions.  As that authority grows,
        the security question shifts from whether a model may call a tool in
        principle to whether the exact consequential act crossing the final
        boundary is still permitted under current state.
      </t>

      <section numbered="true" toc="include">
        <name>OpenAI: Long-Running Agents and Tool Execution</name>
        <t>
          OpenAI publicly describes its Agents API as infrastructure for
          building and running cloud agents that can manage context, use
          tools, coordinate subagents, work with files, run code, and persist
          intermediate state.  See
          <eref target="https://openai.com/index/introducing-the-agents-api/">
          Introducing the Agents API</eref>.
        </t>
        <t>
          In such an architecture, execution-finality is potentially relevant
          below the agent harness: the model or harness may legitimately
          decide to invoke a tool, while a downstream finality sink can still
          verify the exact operation, current policy epoch, destination,
          replay state, and any execution-critical dependency before an
          irreversible external effect is released.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Anthropic: Autonomous Tool Use</name>
        <t>
          Anthropic describes current Claude models as capable of planning,
          using tools such as browsers and terminals, and running
          autonomously.  See
          <eref target="https://www.anthropic.com/news/claude-sonnet-5">
          Introducing Claude Sonnet 5</eref>.
        </t>
        <t>
          Tool-use systems create a natural separation between model
          reasoning and external effect.  This document focuses on that
          separation: a tool call can be syntactically valid and originate
          from an authorized agent while the eventual side effect still
          requires exact-act binding, freshness, current-state validation,
          and anti-replay semantics.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Microsoft: Autonomous Enterprise Agents</name>
        <t>
          Microsoft documents autonomous capabilities in Copilot Studio in
          which agents can react to events, make decisions, and execute tasks
          without waiting for an interactive user prompt.  See
          <eref target="https://learn.microsoft.com/en-us/microsoft-copilot-studio/guidance/autonomous-agents">
          Design autonomous agent capabilities</eref>.
        </t>
        <t>
          Enterprise workflows frequently terminate in systems of record,
          ticketing systems, identity infrastructure, financial systems, or
          other stateful services.  The proposed finality boundary can be
          placed immediately before the mutation that carries the legally,
          financially, or operationally meaningful consequence, independently
          of which orchestration product generated the request.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Google Cloud: Managed Agent Runtimes and Agent-to-Agent Systems</name>
        <t>
          Google Cloud documents Vertex AI Agent Engine as supporting
          deployment and operation of agents, including code execution,
          memory, and Agent-to-Agent protocol support.  See
          <eref target="https://docs.cloud.google.com/vertex-ai/docs/release-notes">
          Vertex AI release notes</eref>.
        </t>
        <t>
          Multi-agent and multi-service systems make authority propagation
          especially important because the component that generated an intent
          may be several hops away from the component that performs the final
          effect.  The execution-finality model therefore treats propagated
          identity, authorization context, and attestation as inputs, while
          reserving the last act-specific decision for the effectuation
          boundary.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>AWS: AgentCore and Enterprise Tool Connectivity</name>
        <t>
          AWS describes Amazon Bedrock AgentCore as a platform for building,
          deploying, and operating agents that take actions across tools and
          enterprise data with identity, access control, policy management,
          tool connectivity, session state, evaluation, and observability.
          See
          <eref target="https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/what-is-bedrock-agentcore.html">
          Amazon Bedrock AgentCore overview</eref>.
        </t>
        <t>
          Those controls are complementary to this document.  An
          execution-finality profile can sit at a payment adapter, deployment
          API, data-release gateway, or other consequence-producing resource
          and require a final exact-act and current-state check even when
          upstream runtime, identity, and policy controls all succeeded.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>NVIDIA: Robotics and Physical Actuation</name>
        <t>
          NVIDIA Isaac is an AI robotics development platform for autonomous
          mobile robots, robot arms, manipulators, and humanoids, with
          supporting motion-planning, perception, simulation, and deployment
          components.  See
          <eref target="https://developer.nvidia.com/isaac">
          NVIDIA Isaac</eref>.
        </t>
        <t>
          Robotics makes the effectuation distinction concrete.  A planner
          can generate a valid trajectory while the physical environment
          changes before actuation.  The relevant sink may therefore be the
          command gate immediately before a motor controller, PLC, or robot
          control interface, where freshness, safety epoch, robot identity,
          command digest, and single-use release authority can be checked.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Apple: On-Device Models, Tool Calling, and App Actions</name>
        <t>
          Apple documents its Foundation Models framework as supporting
          structured output and tool calling, while App Intents exposes app
          actions to system experiences including Siri and Apple
          Intelligence.  See
          <eref target="https://developer.apple.com/documentation/foundationmodels">
          Foundation Models</eref> and
          <eref target="https://developer.apple.com/apple-intelligence/">
          Apple Intelligence</eref>.
        </t>
        <t>
          On-device agentic systems are relevant because the final
          consequence may occur locally rather than at a cloud resource
          server.  A device-side finality sink can mediate file changes,
          communication, payment initiation, privacy-sensitive data release,
          peripheral control, or another local action without requiring the
          model itself to be the trusted enforcement component.
        </t>
      </section>

      <section numbered="true" toc="include">
        <name>Cross-Vendor Interoperability Significance</name>
        <t>
          The industrial value of a standards-layer invariant becomes greater
          when the proposing agent, authorization server, workload runtime,
          tool provider, and effectuation system are operated by different
          vendors.  For example, a model from one provider may run in a cloud
          agent platform from another vendor, invoke a third-party enterprise
          tool, and ultimately request an action from a bank, industrial
          controller, robot, telecom network, or local device.
        </t>
        <artwork type="ascii-art"><![CDATA[
   Model Provider
        |
        v
   Agent Runtime
        |
        v
   Identity / OAuth / Workload Authorization
        |
        v
   Tool or Service Chain
        |
        v
   Third-Party Consequence Boundary
        |
        +--> money moves
        +--> data leaves
        +--> infrastructure changes
        +--> robot actuates

   Interoperability question:

   What machine-verifiable object and sink behavior allow the last
   component to verify the exact authorized consequence without
   trusting every upstream implementation choice?
        ]]></artwork>
      </section>

      <section numbered="true" toc="include">
        <name>Why a Standards-Level Treatment Matters</name>
        <t>
          A single-vendor deployment can implement these properties as an
          internal engineering choice.  In a cross-vendor system, however,
          relying parties need an interoperable way to determine what was
          authorized, what exact act is being committed, which mutable state
          was required to remain current, whether the authority has already
          been consumed, and which component is responsible for the final
          check.
        </t>
        <t>
          This is the reason the topic is potentially relevant to the IETF:
          the proposed work is not intended to prescribe how OpenAI,
          Anthropic, Microsoft, Google, AWS, NVIDIA, Apple, or any other
          vendor should build an agent.  It asks whether interoperable
          protocol artifacts and verification semantics are needed when
          independently operated systems exchange authority for actions whose
          consequences cannot safely be inferred from identity or bearer
          possession alone.
        </t>
      </section>
    </section>

    <section numbered="true" toc="include">
      <name>Adversarial Test Matrix</name>
      <table>
        <name>Minimum Negative Tests</name>
        <thead>
          <tr>
            <th>Test</th>
            <th>Mutation or failure</th>
            <th>Expected result</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td>T1</td>
            <td>Change one execution-relevant argument after authorization.</td>
            <td>Reject.</td>
          </tr>
          <tr>
            <td>T2</td>
            <td>Replay an already consumed handle.</td>
            <td>Reject without duplicate effect.</td>
          </tr>
          <tr>
            <td>T3</td>
            <td>Advance policy or delegation epoch after handle issuance.</td>
            <td>Reject or require reauthorization.</td>
          </tr>
          <tr>
            <td>T4</td>
            <td>Strip required lineage metadata.</td>
            <td>UNKNOWN; remain non-effective.</td>
          </tr>
          <tr>
            <td>T5</td>
            <td>Use a valid handle at a different sink.</td>
            <td>Reject.</td>
          </tr>
          <tr>
            <td>T6</td>
            <td>Retry after ambiguous network timeout and committed effect.</td>
            <td>No duplicate effect.</td>
          </tr>
          <tr>
            <td>T7</td>
            <td>Change a committed dependency after the final upstream read.</td>
            <td>Reject if that dependency is declared execution-critical.</td>
          </tr>
          <tr>
            <td>T8</td>
            <td>Invoke an alternate effectuation path that omits finality verification.</td>
            <td>Path considered non-conformant or outside governed coverage.</td>
          </tr>
          <tr>
            <td>T9</td>
            <td>Change tool or mapping revision with identical high-level request text.</td>
            <td>Reject or re-evaluate.</td>
          </tr>
          <tr>
            <td>T10</td>
            <td>Present valid attestation evidence with an act outside authority.</td>
            <td>Reject the act while preserving attestation result.</td>
          </tr>
        </tbody>
      </table>
    </section>

    <section numbered="true" toc="include">
      <name>Relationship to Current IETF Work</name>
      <t>
        OAuth deployments can provide delegated authorization, structured
        authorization detail, token sender constraint, and authorization
        context.  Execution-finality can consume those artifacts rather than
        duplicate them.  The distinguishing requirement is that the final
        effectuation component verifies the exact consequential act and any
        execution-critical current state.
      </t>
      <t>
        RATS and EAT can provide evidence about the platform, workload, or
        security state involved in issuing or consuming execution authority.
        Such evidence can become an input predicate without conflating
        attestation with transaction authorization.
      </t>
      <t>
        HTTP conditional requests provide a useful model for preventing a
        state-changing method from operating on a target representation that
        no longer matches an expected entity tag.  High-consequence agentic
        systems may additionally depend on non-HTTP state, multiple
        resources, policy generations, physical state, delegated authority,
        or cross-service prerequisites.
      </t>
    </section>

    <section numbered="true" toc="include">
      <name>Operational Considerations</name>
      <t>
        Not every agent action needs a high-assurance finality gate.  A
        deployment can define consequence classes and require stronger
        enforcement only for high-value, irreversible, safety-relevant, or
        externally binding operations.  This allows fast local verification
        on the hot path while slower logging, transparency, or anchoring
        mechanisms operate off the critical path.
      </t>
      <t>
        Implementers should explicitly document what the sink protects, which
        fields are part of the act digest, which states are revalidated, the
        lifetime of authority, crash recovery behavior, and known bypass
        paths.  An assertion of "atomic authorization" without a documented
        failure model is not independently testable.
      </t>
    </section>

    <section numbered="true" toc="include">
      <name>Privacy Considerations</name>
      <t>
        Execution handles should avoid carrying unnecessary personal or
        commercially sensitive information.  Where feasible, the handle can
        carry commitments or opaque references while the sink retrieves the
        minimum state required for verification.  Audit receipts should be
        designed to prove relevant facts without automatically becoming
        detailed activity-surveillance logs.
      </t>
    </section>

    <section numbered="true" toc="include">
      <name>Security Considerations</name>
      <t>
        The finality sink becomes a high-value target.  Its key material,
        anti-replay state, policy epoch, canonicalization code, and commit
        adapter require protection commensurate with the consequence being
        governed.  A sink that can be bypassed, rolled back, or induced to
        canonicalize two different acts identically does not provide the
        claimed property.
      </t>
      <t>
        Denial of service is a deliberate tradeoff of fail-closed
        enforcement.  Deployments should distinguish states that truly
        require fresh verification from states that can be safely cached,
        and should define emergency procedures without creating an
        unaudited permanent bypass.
      </t>
      <t>
        Exact-act binding is only as strong as the chosen canonical form.
        Indirect effects, server-side defaults, wildcard expansion, schema
        upgrades, currency conversions, routing substitutions, or device-side
        transformations may need to be incorporated by digest, version, or
        explicit constraint.
      </t>
    </section>

    <section numbered="true" toc="include">
      <name>Open Questions for the IETF Community</name>
      <ol>
        <li><t>Which existing token or capability formats are most suitable for carrying exact-act commitments without creating a new token family?</t></li>
        <li><t>Which state belongs in a portable protocol object and which state should remain sink-local?</t></li>
        <li><t>How should cross-service dependency commitments be represented without turning every action into a distributed transaction?</t></li>
        <li><t>What minimal evidence allows a relying party or auditor to distinguish a deployment with atomic consume semantics from one that merely claims them?</t></li>
        <li><t>How should effectuation-path coverage be described when a device has multiple legacy, emergency, local, or hardware control paths?</t></li>
        <li><t>Can Transaction Tokens, RATS evidence, OAuth authorization details, or COSE objects be profiled to express this boundary without duplicating existing standards?</t></li>
      </ol>
    </section>

    <section numbered="true" toc="include">
      <name>IANA Considerations</name>
      <t>
        This document has no IANA actions.
      </t>
    </section>

    <section numbered="true" toc="include">
      <name>Additional Public Technical Resources</name>
      <t>
        The following non-normative resources provide broader architectural
        background and runnable reference material.  Their inclusion does not
        make them part of the protocol requirements of this document.
      </t>
      <ul>
        <li>
          <t>
            <eref target="https://zenodo.org/records/22082995">
            The Internet Solved Communication. It Never Solved Authority.
            </eref>
          </t>
        </li>
        <li>
          <t>
            <eref target="https://github.com/sangmdas/Execution-Finality-Architechture-for-AI-Machines-">
            Execution-Finality Architecture for Machine-Generated Acts.
            </eref>
          </t>
        </li>
        <li>
          <t>
            <eref target="https://github.com/sangmdas/tool_use-Is-Not-invoke-Binding-Execution-Finality-to-Agentic-Tool-Call-Interfaces-and-MCP">
            tool_use Is Not invoke(): Runnable Agentic Tool-Call Reference Implementation.
            </eref>
          </t>
        </li>
      </ul>
    </section>
  </middle>

  <back>
    <references>
      <name>Normative and Informative References</name>

      <reference anchor="RFC8705" target="https://www.rfc-editor.org/info/rfc8705">
        <front>
          <title>OAuth 2.0 Mutual-TLS Client Authentication and Certificate-Bound Access Tokens</title>
          <author initials="B." surname="Campbell"/>
          <author initials="J." surname="Bradley"/>
          <author initials="N." surname="Sakimura"/>
          <author initials="T." surname="Lodderstedt"/>
          <date year="2020" month="February"/>
        </front>
        <seriesInfo name="RFC" value="8705"/>
      </reference>

      <reference anchor="RFC9110" target="https://www.rfc-editor.org/info/rfc9110">
        <front>
          <title>HTTP Semantics</title>
          <author initials="R." surname="Fielding"/>
          <author initials="M." surname="Nottingham"/>
          <author initials="J." surname="Reschke"/>
          <date year="2022" month="June"/>
        </front>
        <seriesInfo name="RFC" value="9110"/>
      </reference>

      <reference anchor="RFC9334" target="https://www.rfc-editor.org/info/rfc9334">
        <front>
          <title>Remote ATtestation procedureS (RATS) Architecture</title>
          <author initials="H." surname="Birkholz"/>
          <author initials="D." surname="Thaler"/>
          <author initials="M." surname="Richardson"/>
          <author initials="N." surname="Smith"/>
          <author initials="W." surname="Pan"/>
          <date year="2023" month="January"/>
        </front>
        <seriesInfo name="RFC" value="9334"/>
      </reference>

      <reference anchor="RFC9396" target="https://www.rfc-editor.org/info/rfc9396">
        <front>
          <title>OAuth 2.0 Rich Authorization Requests</title>
          <author initials="T." surname="Lodderstedt"/>
          <author initials="J." surname="Richer"/>
          <author initials="B." surname="Campbell"/>
          <date year="2023" month="May"/>
        </front>
        <seriesInfo name="RFC" value="9396"/>
      </reference>

      <reference anchor="RFC9449" target="https://www.rfc-editor.org/info/rfc9449">
        <front>
          <title>OAuth 2.0 Demonstrating Proof of Possession (DPoP)</title>
          <author initials="D." surname="Fett"/>
          <author initials="B." surname="Campbell"/>
          <author initials="J." surname="Bradley"/>
          <author initials="T." surname="Lodderstedt"/>
          <author initials="M." surname="Jones"/>
          <author initials="D." surname="Waite"/>
          <date year="2023" month="September"/>
        </front>
        <seriesInfo name="RFC" value="9449"/>
      </reference>

      <reference anchor="RFC9700" target="https://www.rfc-editor.org/info/rfc9700">
        <front>
          <title>Best Current Practice for OAuth 2.0 Security</title>
          <author initials="T." surname="Lodderstedt"/>
          <author initials="J." surname="Bradley"/>
          <author initials="A." surname="Labunets"/>
          <author initials="D." surname="Fett"/>
          <date year="2025" month="January"/>
        </front>
        <seriesInfo name="RFC" value="9700"/>
      </reference>

      <reference anchor="RFC9711" target="https://www.rfc-editor.org/info/rfc9711">
        <front>
          <title>The Entity Attestation Token (EAT)</title>
          <author initials="L." surname="Lundblade"/>
          <author initials="G." surname="Mandyam"/>
          <author initials="J." surname="O'Donoghue"/>
          <author initials="C." surname="Wallace"/>
          <date year="2025" month="April"/>
        </front>
        <seriesInfo name="RFC" value="9711"/>
      </reference>

      <reference anchor="TXN-TOKENS" target="https://datatracker.ietf.org/doc/draft-ietf-oauth-transaction-tokens/">
        <front>
          <title>Transaction Tokens</title>
          <author initials="A." surname="Tulshibagwale"/>
          <author initials="G." surname="Fletcher"/>
          <author initials="P." surname="Kasselman"/>
          <date year="2026" month="July" day="30"/>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-oauth-transaction-tokens-11"/>
      </reference>
    </references>
  </back>
</rfc>
