<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.43 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-pinto-agent-authz-contestability-01" category="std" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title abbrev="Agent Contestability Bindings">Contestability Bindings for Authorized Agent Actions</title>
    <seriesInfo name="Internet-Draft" value="draft-pinto-agent-authz-contestability-01"/>
    <author initials="T." surname="Pinto" fullname="Tiago Pinto">
      <organization>Independent Researcher</organization>
      <address>
        <postal>
          <country>Portugal</country>
        </postal>
        <email>tiago@donttrustverify.pt</email>
        <uri>https://donttrustverify.pt</uri>
      </address>
    </author>
    <date year="2026" month="September" day="11"/>
    <area>Security</area>
    <keyword>agent authorization</keyword>
    <keyword>contestability</keyword>
    <keyword>verifiable evidence</keyword>
    <abstract>
      <?line 54?>

<t>Authorization artifacts can provide signed evidence of a permission under specified authorization rules. Receipts can record a signed claim or protocol event that the authorization was exercised, and outcome evidence can describe what followed. None of those artifacts necessarily tells a person or organization affected by the action where the authorization can be contested, which procedure applies, whether a filing changes execution state, or who selected the contestation forum.</t>
      <t>This document defines a transport-independent Contestability Binding for authorized agent actions. The binding commits an authorization to a versioned Contestation Parameters Object that identifies the forum, submission mechanism, Standing Policy, procedure, time bounds, declared effect policy, and selection evidence. A forum can acknowledge one exact authorization or publish a reusable acceptance manifest for closed Authorization Binding Profile and Authorization Trust Profile identifier pairs. A deterministic verifier validates the binding, separately classifies evidence claiming pre-execution verification by the executor, and reports forum-selection provenance as unilateral, multiparty, externally selected, or indeterminate. Where a filing is declared to affect execution state, the verifier also separates the issuer's declared policy, the executor's signed acceptance, the authenticated trigger, and the executor's claimed application.</t>
      <t>The mechanism makes the bound contestation parameters identifiable and verifiable, supporting discoverability while resisting post-action substitution. It does not determine standing, prove forum independence, resolve a dispute, select a remedy, establish legal enforceability, or decide whether the original authorization was legitimate.</t>
    </abstract>
  </front>
  <middle>
    <?line 62?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Agent authorization can be action-bound, time-bounded, signed, logged, and receipted. That improves the answer to one question:</t>
      <ul empty="true">
        <li>
          <t>Was this action authorized under the selected rules?</t>
        </li>
      </ul>
      <t>It does not answer a different question:</t>
      <ul empty="true">
        <li>
          <t>If this authorization produces a contested consequence, before whom can the authorization or its use be challenged, under which procedure, and who chose that forum?</t>
        </li>
      </ul>
      <t>A URI labelled <tt>challenge_forum</tt> is not sufficient. If the authorization issuer can name, replace, or differently present the forum to each audience, the path exists syntactically while remaining captured operationally. A bound field can evidence that a contestation locator was declared in the artifact; it cannot by itself prove delivery or independence.</t>
      <t>This document therefore separates three properties:</t>
      <ol spacing="normal" type="1"><li>
          <t><strong>Binding:</strong> the contestation parameters are cryptographically committed to the exact authorization; pre-execution presentation and ordering are reported separately.</t>
        </li>
        <li>
          <t><strong>Discoverability:</strong> a verifier can identify the bound forum, procedure, Standing Policy, deadlines, and submission references.</t>
        </li>
        <li>
          <t><strong>Selection provenance:</strong> authenticated evidence and local trust inputs support classification of the forum selection as issuer-only, multiparty, externally selected, or indeterminate.</t>
        </li>
      </ol>
      <t>The verifier never returns <tt>independent</tt>. Independence is a governance and trust conclusion. It returns evidence about how selection occurred.</t>
      <section anchor="running-example-an-affected-party-outside-the-authorization">
        <name>Running example: an affected party outside the authorization</name>
        <t>A platform authorizes an agent to suspend Alice's account after a policy event. The Authorization Artifact is valid, action-bound, time-bounded, and signed. The executor verifies it, suspends the account, and produces a valid receipt.</t>
        <t>Alice is materially affected but is not the authorization principal, agent, issuer, executor, approver, or relying party. The Authorization Artifact and receipt can provide evidence that the platform's authorization and recording checks were satisfied for the supplied artifacts. They do not necessarily allow Alice or an independent verifier to determine:</t>
        <ul spacing="normal">
          <li>
            <t>where the suspension can be contested;</t>
          </li>
          <li>
            <t>which standing policy and procedure governed at execution time;</t>
          </li>
          <li>
            <t>when the filing window closes;</t>
          </li>
          <li>
            <t>whether a filing changes execution state;</t>
          </li>
          <li>
            <t>whether the named forum agreed to receive that class of contestation;</t>
          </li>
          <li>
            <t>who selected the forum;</t>
          </li>
          <li>
            <t>whether the forum or procedure was substituted after the suspension.</t>
          </li>
        </ul>
        <t>The interoperability failure is not that every deployment chooses a different forum. The failure is that two implementations receiving the same Authorization Artifact can validate the authorization and still reach incompatible or non-reproducible conclusions about the contestation path bound to it.</t>
      </section>
      <section anchor="minimum-interoperable-result">
        <name>Minimum interoperable result</name>
        <t>Section 6.2 defines the authoritative structured-result contract. Given the same Authorization Artifact, action, CPO, verification time, selected profiles, and trust inputs, conforming implementations are expected to agree on every field that those inputs make deterministically derivable. The following abstract-protocol example illustrates one complete result:</t>
        <sourcecode type="json"><![CDATA[
{
  "binding": "valid",
  "pre_execution_evidence": "executor_attested",
  "discoverability": "complete",
  "forum_acknowledgement": "valid_class",
  "forum_operational_status": "not_checked",
  "selection_provenance": "unilateral",
  "access_binding": "valid",
  "notice_evidence": "delivered",
  "retrievability": "not_checked",
  "filing_window_status": "open",
  "policy_freshness": "indeterminate",
  "declared_effect": "none",
  "effect_acceptance": "not_required",
  "effect_trigger": "not_applicable",
  "effect_ordering": "not_applicable",
  "effect_application": "not_applicable",
  "reasons": []
}
]]></sourcecode>
        <t>They are not expected to agree that the forum is fair, independent, affordable, competent, or legally authoritative. Those conclusions remain outside the protocol.</t>
      </section>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words <strong>MUST</strong>, <strong>MUST NOT</strong>, <strong>REQUIRED</strong>, <strong>SHALL</strong>, <strong>SHALL NOT</strong>,
<strong>SHOULD</strong>, <strong>SHOULD NOT</strong>, <strong>RECOMMENDED</strong>, <strong>NOT RECOMMENDED</strong>, <strong>MAY</strong>, and
<strong>OPTIONAL</strong> 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>
      <section anchor="protocol-requirements">
        <name>Protocol requirements</name>
        <t>The mechanism is designed to satisfy the following requirements.</t>
        <t><strong>R1 (Pre-execution binding):</strong> A cryptographically valid Contestability Binding does not by itself establish pre-execution presentation or ordering. A deployment or profile claiming pre-execution presentation or enforcement of the Contestability Binding MUST bind the contestation parameters to the Authorization Artifact and MUST present them to the enforcing executor before execution. A self-asserted <tt>issued_at</tt> value is insufficient evidence of ordering. To support that pre-execution claim, the selected profile MUST bind the CPO digest into an executor-signed verification or execution record, or supply equivalent authenticated ordering evidence. A post-execution declaration cannot retroactively satisfy the pre-execution claim.</t>
        <t><strong>R2 (Exact action and authorization binding):</strong> The binding MUST identify one Authorization Artifact or authorization instance and the canonical action it covers. It MUST NOT be reusable across different actions or authorization instances.</t>
        <t><strong>R3 (Substitution resistance):</strong> The forum, submission mechanism, Standing Policy, procedure, filing window, effect policy, and selection policy MUST be integrity-protected. A mutable locator without a bound digest is insufficient.</t>
        <t><strong>R4 (Forum acknowledgement):</strong> A profile claiming a forum-acknowledged contestation path MUST carry authenticated evidence that the named forum accepted the forum identifier, submission mechanism, procedure, and class of actions or authorizations covered. An issuer naming an unconsenting forum is disclosure, not a forum-acknowledged path.</t>
        <t><strong>R5 (Selection provenance):</strong> A verifier MUST derive forum-selection provenance from authenticated evidence and local trust inputs. The object MUST NOT turn an issuer's self-asserted claim of independence into a protocol result.</t>
        <t><strong>R6 (Affected-party delivery or discovery):</strong> A profile claiming affected-party access to the contestation binding MUST define how a person or organization that did not participate in the authorization obtains the CPO and the evidence needed to verify its binding. Availability only to the issuer, agent, or executor is insufficient. The filing clock MUST be based on an authenticated event defined by the profile; an issuer-asserted notice time alone MUST NOT shorten the affected party's window.</t>
        <t><strong>R7 (Structured, non-collapsed result):</strong> Verification MUST return and keep separate the structured-result fields defined in Section 6.2, which is the authoritative result contract. It MUST NOT collapse them into a bare <tt>contestable: true</tt> result.</t>
        <t><strong>R8 (Effect acceptance and application separation):</strong> An issuer-declared active effect MUST NOT be reported as executor-accepted unless the named executor authenticated the same authorization, CPO, effect-policy, and forum-acceptance digests before execution. Executor acceptance MUST NOT be reported as application. A filing or other trigger MUST be authenticated under the bound trigger profile. Application MUST be reported only from separately verified executor evidence and ordering MUST be verified under the bound serialization profile. None of those records proves physical state or authorizes a remedy.</t>
        <t>R4 and R6 are profile requirements rather than universal claims about every Authorization Artifact. A deployment can use the base object only for disclosure, but it cannot claim a forum-acknowledged path or a path conforming to the affected-party access profile without satisfying the corresponding requirements.</t>
      </section>
      <section anchor="adversarial-survival-tests-for-r4-and-r6">
        <name>Adversarial survival tests for R4 and R6</name>
        <t>R4 and R6 are deliberately tested against claims that a signature or URI cannot establish.</t>
        <section anchor="r4-acknowledgement-is-not-selection-or-availability">
          <name>R4: acknowledgement is not selection or availability</name>
          <t>The following cases MUST remain distinguishable:</t>
          <table>
            <thead>
              <tr>
                <th align="left">Case</th>
                <th align="left">Acknowledgement result</th>
                <th align="left">Selection result</th>
                <th align="left">Operational result</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">Issuer names a forum that never signed</td>
                <td align="left">
                  <tt>absent</tt></td>
                <td align="left">derived separately</td>
                <td align="left">
                  <tt>not_checked</tt></td>
              </tr>
              <tr>
                <td align="left">Forum signs for the exact authorization</td>
                <td align="left">
                  <tt>valid_exact</tt></td>
                <td align="left">derived separately</td>
                <td align="left">
                  <tt>not_checked</tt></td>
              </tr>
              <tr>
                <td align="left">Forum signs a standing manifest for a class that includes the authorization</td>
                <td align="left">
                  <tt>valid_class</tt></td>
                <td align="left">derived separately</td>
                <td align="left">
                  <tt>not_checked</tt></td>
              </tr>
              <tr>
                <td align="left">Forum signature is valid but its accepted scope does not cover the authorization</td>
                <td align="left">
                  <tt>invalid_scope</tt></td>
                <td align="left">derived separately</td>
                <td align="left">
                  <tt>not_checked</tt></td>
              </tr>
              <tr>
                <td align="left">Forum acknowledged the scope but the endpoint is unreachable</td>
                <td align="left">acknowledgement remains valid</td>
                <td align="left">derived separately</td>
                <td align="left">
                  <tt>unreachable</tt></td>
              </tr>
              <tr>
                <td align="left">Forum and issuer are the same controlling party</td>
                <td align="left">acknowledgement may be valid</td>
                <td align="left">normally <tt>unilateral</tt></td>
                <td align="left">derived separately</td>
              </tr>
            </tbody>
          </table>
          <t>A valid forum signature authenticates a signed commitment under the accepted forum key over a defined scope. It does not prove that the forum was selected independently, remains reachable, will accept a particular filer, or will decide according to the bound procedure.</t>
          <t>An acknowledgement can be either exact or class-based. A class-based acknowledgement is valid only if the verifier can deterministically establish that the authorization falls within the signed class. A free-text class description is insufficient.</t>
        </section>
        <section anchor="r6-access-must-survive-the-effect-being-contested">
          <name>R6: access must survive the effect being contested</name>
          <t>The following cases MUST NOT collapse into <tt>available</tt>:</t>
          <ul spacing="normal">
            <li>
              <t>the CPO is retrievable only after logging into the account that the action suspended;</t>
            </li>
            <li>
              <t>a signed notice was issued but no evidence establishes that it was delivered;</t>
            </li>
            <li>
              <t>a discovery URI is public but leaks the existence or subject of a sensitive action;</t>
            </li>
            <li>
              <t>the CPO is available to the principal but not to a distinct Affected Party;</t>
            </li>
            <li>
              <t>the issuer serves audience-specific CPOs under different authorization artifacts;</t>
            </li>
            <li>
              <t>the filing window substantially expires before the first access method becomes usable;</t>
            </li>
            <li>
              <t>the affected party is not identifiable until after execution.</t>
            </li>
          </ul>
          <t>The protocol therefore separates notice issuance, delivery evidence, and current retrievability. Under <tt>agent-contestability-notice-v1</tt>, a valid Contestability Notice signature yields the protocol classification <tt>issued</tt> only when it verifies under the same locally trusted issuer-role key that authenticated the signed CPO issuer and all required Notice-to-CPO bindings succeed. It does not prove human issuance, receipt, comprehension, or successful access.</t>
          <t>An affected-party profile for an action that disables or controls a credential MUST provide at least one access method that does not depend solely on that credential. Otherwise the action can remove the means of contesting itself.</t>
        </section>
      </section>
      <section anchor="signature-topology-survival-test">
        <name>Signature-topology survival test</name>
        <t>A naive construction in which the forum signs the final CPO fails three tests:</t>
        <ol spacing="normal" type="1"><li>
            <t>If the final CPO contains the forum signature, signing the final CPO creates a circular signature input.</t>
          </li>
          <li>
            <t>If the forum signs every authorization instance, the construction requires an online forum interaction per action and discloses instance metadata before execution.</t>
          </li>
          <li>
            <t>If the forum signs only a free-text action class, class membership is not interoperably decidable.</t>
          </li>
        </ol>
        <t>The base design therefore separates:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Contestation Terms:</strong> the canonical per-authorization facts to which every signature ultimately refers;</t>
          </li>
          <li>
            <t><strong>Forum Acceptance Evidence:</strong> either an exact signature over a closed forum-relevant projection of the Contestation Terms or a reusable Forum Acceptance Manifest for one or more closed authorization-profile digests;</t>
          </li>
          <li>
            <t><strong>Selection Evidence:</strong> signatures over the Contestation Terms digest and Forum Acceptance Evidence digest;</t>
          </li>
          <li>
            <t><strong>CPO Envelope:</strong> the terms and evidence, signed by the CPO issuer;</t>
          </li>
          <li>
            <t><strong>Authorization Binding:</strong> a digest of the completed CPO Envelope covered by the Authorization Artifact or companion binding statement.</t>
          </li>
        </ul>
        <t>This ordering is acyclic: the forum first signs either a reusable manifest or an exact forum-terms digest; selectors then sign the complete terms and acceptance-evidence digests; the CPO issuer signs the resulting envelope; finally, the Authorization Artifact or companion statement binds the completed CPO digest.</t>
        <t>An active effect extends, but does not alter, that graph. The executor signs an Effect Acceptance Statement over the completed Authorization Artifact and CPO. A forum filing receipt later binds the CPO digest. An Effect Application Record binds both the acceptance and receipt digests. For a pre-execution hold, the executor's hold or refusal record then binds the application record; for a post-execution fence, the earlier execution record binds the acceptance and the later application record binds the receipt. No signer is required to sign bytes containing its own signature.</t>
        <t>For class acceptance, the forum signs accepted ABP and Authorization Trust Profile identifier pairs, not an open expression language. A verifier returns <tt>valid_class</tt> only after it has independently verified and projected the Authorization Artifact under one of those exact pairs. Merely carrying profile identifiers is insufficient.</t>
      </section>
    </section>
    <section anchor="scope">
      <name>Scope</name>
      <t>This document specifies:</t>
      <ul spacing="normal">
        <li>
          <t>a Contestation Parameters Object (CPO);</t>
        </li>
        <li>
          <t>exact and reusable class-based forum acceptance evidence;</t>
        </li>
        <li>
          <t>an Authorization Binding Profile interface for native authorization systems;</t>
        </li>
        <li>
          <t>two ways to bind a CPO to an authorization;</t>
        </li>
        <li>
          <t>profiles for classifying pre-execution evidence without claiming physical proof;</t>
        </li>
        <li>
          <t>an optional declared effect policy, Executor Effect Acceptance Statement, authenticated filing trigger, and Effect Application Record;</t>
        </li>
        <li>
          <t>a deterministic verification algorithm;</t>
        </li>
        <li>
          <t>a structured result that keeps binding, discoverability, forum acknowledgement, operational status, selection provenance, notice evidence, retrievability, and effect evidence separate;</t>
        </li>
        <li>
          <t>security requirements for substitution, equivocation, dead endpoints, abusive deadlines, issuer-controlled forums, trigger replay, and execution races.</t>
        </li>
      </ul>
      <t>This document does not specify:</t>
      <ul spacing="normal">
        <li>
          <t>a dispute-resolution protocol or case state machine;</t>
        </li>
        <li>
          <t>arbitrator discovery, evidence exchange, adjudication, appeal, award, or remedy;</t>
        </li>
        <li>
          <t>who legally has standing;</t>
        </li>
        <li>
          <t>whether a forum is impartial, competent, affordable, or legally valid;</t>
        </li>
        <li>
          <t>which effect policy a deployment ought to choose, or whether an external system is legally or operationally compelled to honor it;</t>
        </li>
        <li>
          <t>the legitimacy of the authorization, policy, issuer, or consequence.</t>
        </li>
      </ul>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t><strong>Authorization Artifact:</strong> A signed object expressing, under an authorization system, a permission for an identified agent, workload, or delegate to perform a bounded action.</t>
      <t><strong>Authorization Instance Identifier (<tt>authorization_id</tt>):</strong> A globally unique or collision-resistant identifier for one authorization instance.</t>
      <t><strong>Action Digest (<tt>action_digest</tt>):</strong> A digest over the canonical action the executor will evaluate.</t>
      <t><strong>Contestation Parameters Object (CPO):</strong> The closed, signed object defined in Section 4.</t>
      <t><strong>Contestation Terms:</strong> The canonical, unsigned per-authorization facts inside a CPO. Role signatures refer to its digest rather than recursively signing an envelope that contains those signatures.</t>
      <t><strong>Contestability Binding:</strong> A commitment from an Authorization Artifact to a CPO, either directly or through a companion binding statement.</t>
      <t><strong>Forum:</strong> The service or institution designated to receive a contestation. Identification of a forum does not assert independence or legal jurisdiction.</t>
      <t><strong>Exact Forum Acceptance Statement:</strong> A forum-signed acceptance of one closed, forum-relevant projection of the Contestation Terms.</t>
      <t><strong>Forum Acceptance Manifest (FAM):</strong> A reusable forum-signed statement accepting contestations for authorization classes successfully verified and projected under one or more closed ABP and Authorization Trust Profile identifier pairs, subject to bound procedure, time, and continuity constraints.</t>
      <t><strong>Authorization Binding Profile (ABP):</strong> An adapter specification referenced by a bound profile identifier that verifies one native Authorization Artifact type and deterministically projects the closed authorization tuple consumed by this document.</t>
      <t><strong>Authorization Trust Profile:</strong> A set of trust inputs and issuer-authority rules referenced by a bound profile identifier and applied by an ABP. It answers which issuer keys are accepted; the ABP answers how the native artifact is verified and projected. A profile identifier is not necessarily a content digest unless the profile defining that identifier says so.</t>
      <t>Throughout this document, a bound profile reference identifies the exact versioned semantics to be applied. A profile identifier is not by itself a content-integrity proof or a trust authorization. If a selected profile is content-addressed, that profile MUST define the exact referenced bytes, digest algorithm, and comparison rule. If a selected profile controls trust, the verifier MUST accept that profile identifier through trusted local policy before applying its trust inputs or authority rules. Signed protocol data MAY bind or name a selected profile, but MUST NOT make an otherwise untrusted profile, trust anchor, or key trusted merely by carrying that identifier. References that already define explicit content-digest semantics retain those semantics.</t>
      <t><strong>Effect Policy:</strong> The issuer-signed declaration in the CPO terms that selects <tt>none</tt>, <tt>hold_before_execution</tt>, or <tt>fence_after_execution</tt> and, for an active mode, binds the executor and the trigger, state-machine, idempotency, serialization, and trust profiles.</t>
      <t><strong>Executor Trust Profile:</strong> A set of trust inputs, executor-key authority rules, rotation rules, and compromise semantics referenced by a bound profile identifier and accepted through trusted local policy to verify effect acceptance and application records.</t>
      <t><strong>Effect Executor:</strong> The party named by an active Effect Policy that signs effect acceptance and application records and controls, or participates under a bound serialization profile in controlling, the target hold or fence transition. It can be the action executor but is not assumed to be the same party.</t>
      <t><strong>Executor Effect Acceptance Statement:</strong> An executor-signed commitment, made over a completed authorization and CPO before execution, to process a bound active effect policy.</t>
      <t><strong>Filing Receipt:</strong> A forum-authenticated record accepting or refusing one contestation submission. Only an accepted receipt verified under the bound trigger profile can be an effect trigger.</t>
      <t><strong>Effect Application Record:</strong> An executor-signed claim describing how it processed one authenticated trigger under the bound effect policy. It is not proof of physical state or a remedy.</t>
      <t><strong>Standing Policy:</strong> A versioned policy describing which roles or parties may file. This document verifies its identity and integrity, not the correctness of its determinations.</t>
      <t><strong>Selection Authority:</strong> A party permitted by the relying party's trust profile to participate in or determine forum selection.</t>
      <t><strong>Affected Party:</strong> A person or organization whose interests may be materially affected by an authorized action. An Affected Party need not be the principal, agent, issuer, executor, or relying party.</t>
    </section>
    <section anchor="contestation-parameters-object">
      <name>Contestation Parameters Object</name>
      <t>The object is first shown in JSON diagnostic form for readability. The mandatory executable profile in Section 4.14 encodes the corresponding closed data model using Core Deterministic CBOR and signs each role statement with COSE_Sign1. The JSON form is not a wire encoding and MUST NOT be hashed or signed.</t>
      <sourcecode type="json"><![CDATA[
{
  "type": "agent-contestation-parameters-v1",
  "terms": {
    "authorization_id": "urn:uuid:...",
    "authorization_binding_profile": {
      "uri": "https://example/profiles/account-action-authz/3",
      "digest": { "alg": "sha-256", "value": "base64url..." }
    },
    "authorization_trust_profile": {
      "uri": "https://example/trust/account-action-issuers/5",
      "digest": { "alg": "sha-256", "value": "base64url..." }
    },
    "authorization_issuer": "https://issuer.example/keys/3",
    "authorization_validity": {
      "not_before": "2026-08-11T00:00:00Z",
      "not_after": "2026-08-12T00:00:00Z"
    },
    "action_digest": { "alg": "sha-256", "value": "base64url..." },
    "forum": {
      "id": "https://forum.example/",
      "submission_endpoint": "https://forum.example/cases",
      "verification_key_id": "https://forum.example/keys/2026-1"
    },
    "standing_policy": {
      "uri": "https://example/policies/standing/7",
      "digest": { "alg": "sha-256", "value": "base64url..." }
    },
    "procedure": {
      "uri": "https://example/procedures/agent-actions/4",
      "digest": { "alg": "sha-256", "value": "base64url..." }
    },
    "filing_window": {
      "basis": "authenticated_delivery_time",
      "duration_seconds": 2592000
    },
    "effect_policy": {
      "mode": "none"
    },
    "selection_policy": {
      "uri": "https://example/policies/forum-selection/2",
      "digest": { "alg": "sha-256", "value": "base64url..." }
    },
    "affected_party_access": [
      {
        "method": "effect_notice",
        "notice_profile": "agent-contestability-notice-v1",
        "available_until": "2026-09-10T00:00:00Z"
      },
      {
        "method": "authenticated_lookup",
        "discovery_uri": "https://pf.example/contest/urn:uuid:...",
        "authentication_profile": {
          "uri": "https://pf.example/authn/notice/1",
          "digest": { "alg": "sha-256", "value": "base64url..." }
        },
        "available_until": "2026-09-10T00:00:00Z"
      }
    ],
    "issued_at": "2026-08-11T00:00:00Z",
    "expires_at": "2026-09-10T00:00:00Z",
    "nonce": "base64url..."
  },
  "forum_acceptance": {
    "mode": "class_manifest",
    "manifest_digest": { "alg": "sha-256", "value": "base64url..." }
  },
  "selection_evidence": [
    {
      "selector_id": "https://principal.example/keys/4",
      "role": "principal",
      "signature": "base64url..."
    },
    {
      "selector_id": "https://registry.example/keys/9",
      "role": "external_selector",
      "signature": "base64url..."
    }
  ],
  "issuer": "https://issuer.example/keys/3",
  "signature": "base64url..."
}
]]></sourcecode>
      <section anchor="cpo-time-terms">
        <name>CPO time terms</name>
        <t><tt>issued_at</tt> is the CPO issuer's authenticated claimed issuance time for the
terms. It does not establish external ordering, delivery, publication, or
executor possession. <tt>expires_at</tt> is the issuer-declared expiration bound for
those terms.</t>
        <t>An executable profile that uses either field in a validity decision MUST
identify the authenticated comparison event or time, the exact comparison
predicate, and the failure classification. A profile MUST NOT treat
<tt>issued_at</tt> as a filing-window event class unless that event class is
separately authenticated under the selected filing-window profile. CBAP-1
defines its concrete comparisons in Section 6.4.</t>
      </section>
      <section anchor="closed-structure">
        <name>Closed structure</name>
        <t>Every map in the mandatory executable profile is closed. A verifier MUST reject an unknown map member, duplicate map key, unsupported object type or version, non-deterministic encoding, or value outside the profile's CDDL. Payload-level <tt>crit</tt> processing is therefore unnecessary in CBAP-1. COSE protected-header processing remains governed by Section 4.15.</t>
      </section>
      <section anchor="forum-information">
        <name>Forum information</name>
        <t><tt>forum.id</tt>, <tt>submission_endpoint</tt>, and <tt>verification_key_id</tt> MUST be present. A human-readable name alone is insufficient. A deployment that sends a filing to <tt>submission_endpoint</tt> MUST use authenticated transport. This is an operational transport requirement, not by itself a verification predicate; successful network access does not establish forum independence. For generic evaluation of <tt>forum_operational_status</tt>, the base document explicitly delegates an optional Forum Operational Status Profile selected and accepted by trusted local verifier policy, not by the CPO issuer; the authenticated CPO supplies only the exact <tt>forum.submission_endpoint</tt> target. The selected profile MUST completely define the exact observation/evidence object, its integrity or authentication and trusted observation authority, URI/redirect/DNS/transport handling, observation time and freshness relative to <tt>verification_time</tt>, the exact predicates that distinguish <tt>reachable</tt> from <tt>unreachable</tt>, and a deterministic reduction rule when multiple observations exist. A verifier MUST NOT silently perform network I/O or substitute another endpoint, probe convention, timeout, retry rule, trust source, or success criterion. <tt>forum_acknowledgement</tt> and <tt>retrievability</tt> are separate result dimensions and MUST NOT by themselves establish <tt>forum_operational_status</tt>. No selected operational-status profile yields <tt>forum_operational_status: not_checked</tt>; a selected profile with admissible evidence proving its success predicate yields <tt>reachable</tt>, admissible evidence proving its failure predicate yields <tt>unreachable</tt>, and a selected profile whose required evidence or semantics are absent, invalid, stale, ambiguous, unsupported, non-reducible, or otherwise not deterministically evaluable yields <tt>indeterminate</tt>. Missing evidence alone MUST NOT be classified as <tt>unreachable</tt>. CBAP-1 defines and selects no Forum Operational Status Profile and therefore <tt>forum_operational_status</tt> remains <tt>not_checked</tt> on every CBAP-1 path.</t>
        <t><tt>forum_acceptance</tt> has exactly three base modes: <tt>none</tt>, <tt>exact</tt>, and <tt>class_manifest</tt>. The <tt>none</tt> mode is the closed object <tt>{ "mode": "none" }</tt> and MUST contain no acceptance-evidence digest member; it means this authenticated CPO names a forum but binds no Forum Acceptance Evidence. The <tt>exact</tt> mode identifies an Exact Forum Acceptance Statement by digest and the <tt>class_manifest</tt> mode identifies a Forum Acceptance Manifest by digest. For <tt>none</tt>, no <tt>acceptance_digest</tt> or <tt>forum_acceptance_digest</tt> exists and <tt>forum_acknowledgement</tt> is <tt>absent</tt>; missing, invalid, unsupported, or otherwise unevaluable evidence required by <tt>exact</tt> or <tt>class_manifest</tt> MUST NOT be reclassified as <tt>absent</tt>. The accepted input in the evidence-bearing modes covers only the facts to which the forum commits: accepted authorization scope, forum identity and key, submission endpoint, Standing Policy, procedure, filing-window rule, filing-receipt profile, and withdrawal or continuity policy. Selection provenance and the issuer's declared effect policy remain separately signed facts; a forum acknowledgement does not authenticate either one. For exact acceptance, inclusion of authorization issuer, authorization validity, and action digest in <tt>forum_terms</tt> means only that those projected values are within the forum's acknowledged scope; the forum signature does not authenticate the Authorization Artifact that supplied them or establish issuer authority for the action. A CPO signed with <tt>forum_acceptance.mode = none</tt> cannot be upgraded in place by attaching later acceptance evidence: changing the mode or adding an acceptance digest changes the signed CPO and therefore requires a new CPO and corresponding authorization binding.</t>
        <t>A valid acknowledgement authenticates a signed commitment under the accepted forum key to receive the declared scope under the bound parameters. It does not prove availability, neutrality, legal jurisdiction, or performance.</t>
        <t>An exact acknowledgement binds the <tt>forum_terms_digest</tt> for one authorization instance. A class acknowledgement binds one or more closed ABP and Authorization Trust Profile identifier pairs. A verifier MUST refuse a class acknowledgement when the Authorization Artifact has not itself been verified and projected under one of those exact pairs.</t>
        <t>For exact acceptance, the <tt>signed_at</tt> value authenticated by the forum signature MUST be no later than the authenticated lower bound of the authorization's executable validity interval, <tt>valid_from</tt> MUST be no later than that same boundary, and <tt>valid_until</tt> MUST be no earlier than the end of the declared filing window. The base verifier defines no replacement-forum continuity exception to that <tt>valid_until</tt> predicate. A bound withdrawal policy MAY describe an intended operational handoff or replacement-forum continuity procedure, and deployments SHOULD plan for continuity when a forum withdraws, becomes unavailable, or transfers responsibility, but that operational guidance does not satisfy, extend, or replace the base <tt>valid_until</tt> requirement. A future extension MAY make replacement continuity verifier-relevant only by defining authenticated predecessor and replacement identities, authorization/scope linkage, continuity and ordering semantics, trust inputs, a deterministic verifier predicate, and a failure classification. For class acceptance, the verifier MUST require the executable authorization-validity interval from successful ABP projection to be wholly contained within <tt>may_bind_from</tt> through <tt>may_bind_until</tt>, inclusive, as specified in Section 4.11. Those FAM bounds do not establish the creation, signing, binding, or first-reference time of the Authorization Artifact or companion binding statement. The CPO filing-window duration admitted by a FAM MUST NOT exceed the FAM <tt>maximum_filing_horizon_seconds</tt>; that field is a duration bound, not an absolute deadline. A later withdrawal MUST NOT by itself erase or rewrite a historical forum acknowledgement: if the original Exact Forum Acceptance or FAM still verifies under the applicable historical trust and compromise semantics, <tt>forum_acknowledgement</tt> MUST retain the result established by that original evidence. Evidence that the original acceptance key was not valid or authorized at the relevant signing time is a failure of the historical acceptance evidence and is distinct from a later withdrawal. The bound withdrawal-policy URI+digest identifies the policy under which a deployment MAY evaluate withdrawal or continuity; that reference alone does not establish that a withdrawal occurred. The exact verified policy MAY define or identify the versioned withdrawal or continuity profile to be used; a verifier MUST NOT substitute an unbound local profile for one selected by the bound policy. A profile that claims verifier-evaluated withdrawal or continuity MUST verify the exact bound withdrawal-policy bytes and digest and MUST completely define the withdrawal or continuity evidence object, event type and closed schema, signer or key authority, binding to the affected forum and acceptance evidence, authenticated event time or ordering evidence, ordering relative to execution when an <tt>after execution</tt> claim is made, predecessor/successor linkage where continuity is claimed, a closed profile-specific result vocabulary, and deterministic failure classification for missing, invalid, ambiguous, conflicting, stale, unsupported, or non-comparable evidence. Without such a supported profile and its required evidence, the base verifier makes no withdrawal or continuity-status claim and MUST NOT alter <tt>forum_acknowledgement</tt>, filing, effect, or replacement-forum semantics merely from the policy reference. Any profile-specific withdrawal or continuity result is separate from the Section 6.2 base structured result and MUST NOT overwrite <tt>forum_acknowledgement</tt>, <tt>forum_operational_status</tt>, or <tt>retrievability</tt>. The filing-receipt profile identifies the authenticated response a conforming forum returns after accepting or refusing a filing; for FAM class acceptance it is authenticated forum metadata, not a CPO class-comparison operand. This document does not otherwise define the filing exchange.</t>
      </section>
      <section anchor="policies-by-digest">
        <name>Policies by digest</name>
        <t>The Standing Policy, procedure, and selection policy MUST be bound by digest. A mutable URI without a digest MUST be refused. A verifier MAY apply a stricter local policy than the referenced procedure or filing window.</t>
        <section anchor="filing-window-basis">
          <name>Filing-window basis</name>
          <t>The filing window MUST identify the authenticated event from which its duration is calculated. Initial event classes are:</t>
          <ul spacing="normal">
            <li>
              <t><tt>execution_time</tt>: authenticated time in the executor's action or execution record;</t>
            </li>
            <li>
              <t><tt>transparency_publication_time</tt>: authenticated registration time of the Contestability Notice or CPO digest under a selected transparency profile;</t>
            </li>
            <li>
              <t><tt>authenticated_delivery_time</tt>: time in a transport-specific delivery receipt bound to the <tt>notice_digest</tt> of the complete received signed Contestability Notice under the selected Notice profile.</t>
            </li>
          </ul>
          <t>An issuer-signed <tt>issued_at</tt> value alone is not one of these event classes.</t>
          <t>If a selected event class can yield multiple authenticated candidate times in one verification instance, the selected filing-window profile MUST define a deterministic selection or aggregation rule that reduces those candidates to exactly one filing-clock value before the deadline is computed. The profile MAY, for example, select the earliest or latest authenticated candidate when that rule is stated explicitly. A verifier MUST NOT substitute a reduction convention that the selected profile does not state, including local arrival order or array order.</t>
          <t>If the selected event evidence is absent or invalid, if a required reduction rule is undefined, or if the authenticated evidence cannot produce exactly one filing-clock value under that rule, the verifier returns <tt>filing_window_status: indeterminate</tt>; it MUST NOT silently substitute local receipt time or another clock.</t>
          <t>A profile can define a deterministic combination or fallback among event classes, but it MUST state the precedence rule. To derive generic <tt>filing_window_status</tt>, the selected filing-window profile MUST additionally define the exact filing-clock/start representation, the interpretation of <tt>duration_seconds</tt>, deterministic checked addition or an equivalent rule for deriving the closing value, the behavior when that value is non-representable, and one deterministic comparison domain for the filing-clock/start value, verification time, and closing value. It MUST define the opening- and closing-boundary operators including equality at each boundary, and MUST partition every admitted deterministically comparable state into exactly one of <tt>not_open</tt>, <tt>open</tt>, or <tt>closed</tt>; those predicates MUST be mutually exclusive and collectively exhaustive. A verifier MUST NOT invent a local conversion, epoch mapping, rounding, clamping, wrapping, arithmetic, or boundary convention. If any required authenticated value or required profile rule is unavailable, unsupported, non-representable, incomplete, or not deterministically comparable, <tt>filing_window_status</tt> is <tt>indeterminate</tt> unless another earlier already-defined classification applies. Verification authenticates the selected clock input and computes the window under those profile rules; it does not establish that the rule gave the Affected Party a fair opportunity to act.</t>
        </section>
      </section>
      <section anchor="effect-policy">
        <name>Effect policy</name>
        <t>An <tt>effect_policy</tt> declares whether an authenticated contestation filing is intended to support a protocol-visible transition result for the named executor. The base modes are:</t>
        <ul spacing="normal">
          <li>
            <t><tt>none</tt>: filing has no automatic execution effect under this binding;</t>
          </li>
          <li>
            <t><tt>hold_before_execution</tt>: selects a hold result that is satisfied only when an accepted filing is authenticated and ordered before the bound execution boundary and the bound executor evidence records the required hold state rather than an execution transition for that boundary;</t>
          </li>
          <li>
            <t><tt>fence_after_execution</tt>: selects a fence result that is satisfied only when an accepted filing is authenticated and ordered after action execution but before the bound finality boundary and the bound executor evidence records the required fence transition.</t>
          </li>
        </ul>
        <t>An active-effect profile using <tt>hold_before_execution</tt> MUST NOT select <tt>execution_time</tt> as its filing-window basis. It MUST select an authenticated filing-window event that can occur before the execution boundary, such as conforming delivery or transparency-publication evidence or another profile-defined pre-execution event.</t>
        <t>The base protocol deliberately has no <tt>profile_defined</tt> escape value. An unexamined extension cannot be assigned the semantics of a hold or fence. A future mode requires a standards-defined value or a versioned extension understood by every verifier making a claim about it.</t>
        <t>In the base protocol, a CPO with <tt>forum_acceptance.mode = none</tt> MUST use <tt>effect_policy.mode = none</tt>; a disclosure-only CPO cannot claim a base active effect because no authenticated forum-acceptance digest or forum-authenticated filing-receipt profile exists for the R8 active-effect binding. For <tt>effect_policy.mode = none</tt>, no effect parameters are present and <tt>effect_acceptance</tt> is <tt>not_required</tt>. For either active mode, the policy MUST contain:</t>
        <sourcecode type="json"><![CDATA[
{
  "mode": "fence_after_execution",
  "executor": {
    "id": "https://executor.example/",
    "verification_key_id": "https://executor.example/keys/8"
  },
  "executor_trust_profile": {
    "uri": "https://pf.example/trust/effect-executors/2",
    "digest": { "alg": "sha-256", "value": "base64url..." }
  },
  "trigger_profile": {
    "event": "accepted_filing_receipt",
    "uri": "https://forum.example/profiles/filing-receipt/1",
    "digest": { "alg": "sha-256", "value": "base64url..." }
  },
  "state_machine_profile": {
    "uri": "https://pf.example/profiles/account-finality/2",
    "digest": { "alg": "sha-256", "value": "base64url..." }
  },
  "target_state_digest": {
    "alg": "sha-256",
    "value": "base64url..."
  },
  "application_deadline": {
    "basis": "authenticated_trigger_time",
    "duration_seconds": 30
  },
  "idempotency_profile": {
    "uri": "https://pf.example/profiles/trigger-idempotency/1",
    "digest": { "alg": "sha-256", "value": "base64url..." }
  },
  "serialization_profile": {
    "uri": "https://pf.example/profiles/action-serialization/3",
    "digest": { "alg": "sha-256", "value": "base64url..." }
  }
}
]]></sourcecode>
        <t><tt>trigger_profile</tt> MUST identify an authenticated event and its complete verification rules. For <tt>accepted_filing_receipt</tt>, <tt>trigger_profile.event</tt> MUST select that event class, and the profile reference formed by <tt>trigger_profile.uri</tt> and <tt>trigger_profile.digest</tt> MUST equal, as one exact URI+digest pair, the <tt>submission_receipt_profile</tt> URI+digest pair authenticated by the verified forum acceptance evidence. Both components MUST match exactly; a verifier MUST NOT use digest-only equality, URI-only equality, URI normalization, a local alias, or another profile identifier in place of that bound pair. The receipt time MUST fall within the verified filing window and the effect mode's transition interval. The base active-effect profile defines no grace exception; a procedure document alone and the closed base Effect Policy do not extend either interval. An authenticated successful receipt records acceptance of a filing under the bound forum key and profile. It does not prove standing, merits, fairness, or entitlement to a remedy.</t>
        <t><tt>executor_trust_profile</tt> binds the Executor Trust Profile identifier selected by the Effect Policy. The verifier MUST require that identifier to be accepted through trusted local policy and MUST resolve the named executor under that profile's trust inputs and authority rules. Carrying the identifier does not itself authorize the executor; a relying party can apply stricter local policy. <tt>state_machine_profile</tt> defines the states, transition preconditions, finality boundary, and interpretation of the state commitments carried in effect records. <tt>target_state_digest</tt> commits to the exact hold or fence transition.</t>
        <t>For Executor Effect Acceptance validity, the selected active-effect profiles MUST provide or deterministically derive authenticated temporal values in one common totally ordered comparison domain. Let <tt>E</tt> be the authenticated action execution-boundary time and <tt>W</tt> the verified filing-window closing time. For <tt>fence_after_execution</tt>, let <tt>F</tt> additionally be the authenticated finality-boundary time. If any source profile can yield multiple authenticated candidate values for <tt>E</tt>, <tt>W</tt>, or <tt>F</tt>, it MUST first apply an explicit deterministic selection or aggregation rule that reduces that source to exactly one value; a verifier MUST NOT invent an unstated earliest, latest, arrival-order, array-order, or other local reduction convention. If the values originate from different temporal bases, profiles, or evidence classes, the selected profile composition MUST additionally define a deterministic conversion or comparison rule that places them in one common totally ordered domain before any <tt>min</tt>, <tt>max</tt>, <tt>&lt;=</tt>, or <tt>&gt;=</tt> operation is evaluated.</t>
        <t>For <tt>hold_before_execution</tt>, the trigger interval is the verified filing window intersected with the interval before <tt>E</tt>, its upper bound is <tt>min(W, E)</tt>, and <tt>effect_acceptance_required_until = E</tt>. For <tt>fence_after_execution</tt>, the trigger interval is the verified filing window intersected with the interval after <tt>E</tt> and before <tt>F</tt>, its upper bound is <tt>min(W, F)</tt>, and <tt>effect_acceptance_required_until = max(E, min(W, F))</tt>. These formulas define validity coverage only; they do not make an otherwise-exclusive trigger boundary inclusive. A profile that defines only relative ordering such as before execution or before finality, but cannot expose or deterministically derive the required authenticated <tt>E</tt> or <tt>F</tt> value in the common comparison domain, cannot satisfy this validity-horizon rule and yields <tt>effect_acceptance: indeterminate</tt> unless another already-defined earlier failure classification applies. The same result applies when a required reduction or cross-profile comparison rule is undefined, or when authenticated evidence cannot produce exactly one comparable value for every boundary required by the selected mode. A signed wall-clock field, local receipt time, <tt>recorded_at</tt>, issuer time, or other clock MUST NOT silently substitute for a required authenticated boundary.</t>
        <t>For the base active-effect profile, <tt>application_deadline.basis</tt> MUST be the exact value <tt>authenticated_trigger_time</tt>. Let <tt>T</tt> be exactly one authenticated trigger-time value, let <tt>Delta</tt> be <tt>application_deadline.duration_seconds</tt>, let <tt>D</tt> be the application deadline derived from <tt>T</tt> and <tt>Delta</tt>, and let <tt>U</tt> be exactly one authenticated application-transition value. The selected trigger profile MUST derive exactly one authenticated <tt>T</tt>; if its evidence can produce multiple authenticated candidate times, it MUST define a deterministic selection or aggregation rule before deadline construction, and a verifier MUST NOT invent earliest, latest, arrival-order, array-order, or another local reduction convention. The selected active-effect profile composition MUST define the exact representation of <tt>T</tt>, the interpretation of <tt>Delta</tt> as seconds, and one deterministic checked construction of <tt>D</tt>, including the order of conversion versus duration addition, any unit or scale conversion, precision and rounding where applicable, overflow behavior, and non-representable-result behavior. A numeric, monotonic, sequence, transaction-position, ledger-height, or other ordered representation MUST NOT be treated as seconds-capable merely because it is comparable. The selected active-effect profile composition MUST additionally identify exactly one selected state-machine or serialization profile as the authenticated source/owner of <tt>U</tt>, or, if multiple selected profiles can supply authenticated candidate transition values, define a deterministic authenticated reconciliation or reduction rule that yields exactly one <tt>U</tt>; the verifier MUST NOT choose a source by local preference. Before evaluating the application timing predicate, the composition MUST place <tt>D</tt> and <tt>U</tt> in one common totally ordered comparison domain, or define an exact deterministic direct-comparison rule with equivalent ordering semantics, including every required cross-profile conversion. A verifier MUST NOT invent an epoch mapping, clock substitution, unit conversion, coercion, rounding, clamping, wrapping, arithmetic order, source-profile choice, or comparison convention. A signed <tt>recorded_at</tt>, issuer time, local receipt time, process clock, file modification time, or other clock MUST NOT silently replace <tt>U</tt>. For the base profile, <tt>U &lt;= D</tt> satisfies the timing predicate and <tt>U &gt; D</tt> yields <tt>effect_application: too_late</tt>; equality is on time and the base profile defines no grace interval. If exactly one authenticated <tt>T</tt>, a representable <tt>D</tt>, exactly one authenticated <tt>U</tt>, or any required reduction, duration, conversion, representation, or comparison rule cannot be established deterministically, <tt>effect_application</tt> is <tt>indeterminate</tt> unless another already-defined earlier classification applies. <tt>idempotency_profile</tt> defines how duplicate triggers are detected. <tt>serialization_profile</tt> defines the authenticated sequence number, compare-and-swap rule, transaction boundary, or equivalent mechanism that orders the trigger against execution and finality transitions. For an issuer-declared active effect, that profile MUST additionally define or unambiguously reference authenticated ordering evidence for the exact Executor Effect Acceptance Statement relative to the bound action execution boundary. Let <tt>A</tt> denote the authenticated ordering position or event value of that exact signed acceptance statement and <tt>E</tt> the authenticated execution-boundary position or event value. The profile MUST define a deterministic strict-before relation under which the verifier can evaluate <tt>A &lt; E</tt>. The relation MAY be temporal, monotonic-sequence, transaction-position, or another authenticated total or profile-defined strict order; it need not be wall-clock time. A local receipt time, process clock, file modification time, unsigned event, or the signed <tt>accepted_at</tt> value by itself MUST NOT supply this ordering evidence.</t>
        <t>The Effect Executor MAY differ from the executor that performs the authorized action only when the serialization profile authenticates the cross-system boundary and assigns each required transition to a named signer. For <tt>hold_before_execution</tt>, the Effect Executor MUST control or atomically gate the action's execution boundary. For <tt>fence_after_execution</tt>, it MUST control or atomically gate the bound finality transition. Merely receiving events from the system of record is insufficient.</t>
        <t><tt>hold_before_execution</tt> is satisfied only when the trigger is ordered before the execution boundary and the bound executor evidence records the hold state rather than an execution disposition for that boundary. It cannot retroactively characterize an already executed action as held. <tt>fence_after_execution</tt> is satisfied only when the trigger is ordered after execution and before the bound finality boundary and the bound executor evidence records the fence state. These are protocol-state results over authenticated evidence; a fence does not undo the action, restore prior state, or constitute a remedy.</t>
        <t>The policy is an issuer-signed declaration inside the CPO terms. It does not bind the executor merely because the issuer named an executor key. Active modes require the separate Executor Effect Acceptance Statement in Section 5.4. Acceptance is not application, and an Effect Application Record is still only a signed claim by the executor key about the protocol state it controls. No object defined here compels a court, human, physical process, or external system.</t>
      </section>
      <section anchor="selection-evidence">
        <name>Selection evidence</name>
        <t>The CPO MUST NOT contain a self-asserted boolean such as <tt>independent: true</tt>. A verifier derives selection provenance from authenticated signatures and its local trust profile.</t>
        <t>The authorization issuer's signature is necessary to bind the CPO to the authorization but is not evidence of independent selection. An issuer-only object is classified as <tt>unilateral</tt>.</t>
        <t>A profile that supports selection evidence MUST define the exact selection profile identified by <tt>terms.selection_policy.digest</tt> and MUST apply that profile when verifying selection evidence and deriving selection provenance. A verifier MAY reject an unsupported selection-profile identifier or apply stricter local acceptance policy, but it MUST NOT silently substitute a different selection profile while reporting provenance for the same CPO.</t>
        <t>CBAP-1 carries the selection-policy URI and digest as authenticated, digest-bound policy metadata, but it supports no selection statements and always derives <tt>selection_provenance: unilateral</tt> on the successful path. CBAP-1 therefore verifies policy-set integrity and presence for that reference but does not execute the referenced selection-policy bytes to upgrade provenance. Multiparty or external selection requires another named profile.</t>
      </section>
      <section anchor="affected-party-access">
        <name>Affected-party access</name>
        <t><tt>affected_party_access</tt> is an ordered list of declared methods for delivery or discovery of the CPO and its verification material by a party that may be absent from the authorization exchange. The declared methods are:</t>
        <ul spacing="normal">
          <li>
            <t><tt>effect_notice</tt>: delivered with the notice of the action's effect;</t>
          </li>
          <li>
            <t><tt>authenticated_lookup</tt>: retrievable from a bound discovery URI after authenticating an eligible party;</t>
          </li>
          <li>
            <t><tt>public_transparency</tt>: retrievable from a named transparency service without disclosing private filing evidence.</t>
          </li>
        </ul>
        <t>In this base protocol, <tt>public_transparency</tt> is a signed discovery declaration, not a network retrieval protocol. CBAP-1 does not define the dereferencing procedure, response contract, or success criterion needed to turn that declaration into <tt>retrievability: available</tt>; it therefore leaves <tt>retrievability: not_checked</tt>.</t>
        <t>The access objects MUST be covered by the CPO issuer signature. A profile claiming affected-party access to the contestation binding MUST define at least one mandatory delivery or discovery method, its retention period, and the behavior when the affected party cannot authenticate before the filing window closes.</t>
        <t>Where the action disables, suspends, revokes, or controls a credential, at least one access method MUST remain usable without relying solely on that credential. The authentication profile is digest-bound so a verifier can apply a local credential-survivability policy; the profile's presence does not by itself prove that access will succeed.</t>
      </section>
      <section anchor="contestability-notice">
        <name>Contestability Notice</name>
        <t>An affected-party profile using <tt>effect_notice</tt> carries or references a signed notice with the following minimum members:</t>
        <sourcecode type="json"><![CDATA[
{
  "type": "agent-contestability-notice-v1",
  "authorization_id": "urn:uuid:...",
  "action_digest": { "alg": "sha-256", "value": "base64url..." },
  "effect_digest": { "alg": "sha-256", "value": "base64url..." },
  "cpo_digest": { "alg": "sha-256", "value": "base64url..." },
  "issued_at": "2026-08-11T00:00:00Z",
  "access": {
    "mode": "by_reference",
    "uri": "https://pf.example/contest/urn:uuid:..."
  },
  "issuer": "https://issuer.example/keys/3",
  "signature": "base64url..."
}
]]></sourcecode>
        <t>For <tt>agent-contestability-notice-v1</tt>, the Contestability Notice <tt>access.mode</tt> MUST be <tt>by_reference</tt>; no other <tt>access.mode</tt> value is valid under this Notice profile. The Notice <tt>access.uri</tt> MUST equal the <tt>discovery_uri</tt> value of at least one <tt>authenticated_lookup</tt> declaration authenticated in the verified CPO's <tt>affected_party_access</tt> set. The selected affected-party access profile still MUST validate that declaration and its constraints. A valid Notice signature does not authorize an arbitrary URI.</t>
        <t>The Notice <tt>issuer</tt> MUST equal the authenticated signed-CPO issuer identifier exactly. The Notice signature MUST be verified under the same locally trusted issuer-role public key that authenticated the signed CPO issuer. The signed Notice MUST NOT make a different key trusted merely by naming it in <tt>issuer</tt>; Notice-v1 defines no implicit delegated Notice signer.</t>
        <t>The Notice-v1 signature input is the exact profile-defined canonical representation of every Notice member other than <tt>signature</tt>, including <tt>type</tt>, <tt>authorization_id</tt>, <tt>action_digest</tt>, <tt>effect_digest</tt>, <tt>cpo_digest</tt>, <tt>issued_at</tt>, <tt>access</tt>, and <tt>issuer</tt>. A verifier MUST verify the received Notice against that exact input.</t>
        <t>Before a Notice can yield <tt>notice_evidence: issued</tt>, the verifier MUST require:</t>
        <ul spacing="normal">
          <li>
            <t>Notice <tt>type</tt> to select <tt>agent-contestability-notice-v1</tt>;</t>
          </li>
          <li>
            <t>Notice <tt>authorization_id</tt> to equal the verified CPO terms authorization identifier;</t>
          </li>
          <li>
            <t>Notice <tt>action_digest</tt> to equal the verified CPO terms action digest;</t>
          </li>
          <li>
            <t>Notice <tt>effect_digest</tt> to equal the verified CPO <tt>effect_policy_digest</tt>;</t>
          </li>
          <li>
            <t>Notice <tt>cpo_digest</tt> to equal the digest of the verified complete signed CPO;</t>
          </li>
          <li>
            <t>Notice <tt>issuer</tt> and signature to satisfy the issuer-role rule above; and</t>
          </li>
          <li>
            <t>the Notice-qualified <tt>access.mode</tt> and <tt>access.uri</tt> constraints above.</t>
          </li>
        </ul>
        <t>A valid signature with any failed cross-object binding or Notice-v1 access constraint yields <tt>notice_evidence: invalid</tt>, not <tt>issued</tt>.</t>
        <t>The Notice <tt>issued_at</tt> value is the Notice signer's authenticated claimed issuance time. It does not by itself establish delivery, reading, external publication, or filing-clock time.</t>
        <t>A valid Notice yields <tt>notice_evidence: issued</tt>. It MUST NOT yield <tt>delivered</tt> unless a selected transport profile supplies authenticated delivery evidence bound to the same <tt>notice_digest</tt>. It MUST NOT yield <tt>read</tt> or <tt>understood</tt>.</t>
        <t>An <tt>effect_notice</tt> profile SHOULD deliver the notice no later than the effect notification. A filing-window profile claiming affected-party recourse MUST define how late notice affects the closing time. The base protocol does not infer receipt from issuance.</t>
      </section>
      <section anchor="contestation-terms-and-signature-inputs">
        <name>Contestation Terms and signature inputs</name>
        <t><tt>terms</tt> is the only per-authorization object over which the forum, selectors, issuer, and authorization binding need to converge. In the constructions below, <tt>acceptance_digest</tt>, <tt>forum_acceptance_digest</tt>, and the existing <tt>selection_input</tt> are defined only for <tt>forum_acceptance.mode</tt> equal to <tt>exact</tt> or <tt>class_manifest</tt>; <tt>selection_input_none</tt> is defined only for <tt>none</tt>. Let:</t>
        <sourcecode type="text"><![CDATA[
terms_digest = HASH("agent-contestation-terms-v1" ||
                    canonical(terms))
effect_policy_digest = HASH("agent-contestation-effect-policy-v1" ||
                            canonical(terms.effect_policy))
forum_terms = project(terms, authorization_id,
                      authorization_binding_profile,
                      authorization_trust_profile,
                      authorization_issuer, authorization_validity,
                      action_digest, forum,
                      standing_policy, procedure, filing_window)
forum_terms_digest = HASH("agent-contestation-forum-terms-v1" ||
                          canonical(forum_terms))
acceptance_digest = signed_artifact_digest(forum_acceptance_evidence)
forum_acceptance_digest = acceptance_digest
selection_input = HASH("agent-contestation-selection-v1" ||
                       terms_digest || acceptance_digest)
selection_input_none =
    HASH("agent-contestation-selection-no-acceptance-v1" ||
         terms_digest)
cpo_tbs = canonical(type, terms, forum_acceptance,
                    selection_evidence, issuer)
cpo_digest = signed_artifact_digest(signed_CPO)
notice_tbs = canonical(type, authorization_id, action_digest,
                       effect_digest, cpo_digest, issued_at,
                       access, issuer)
notice_digest = signed_artifact_digest(signed_Contestability_Notice)
authorization_digest =
    signed_artifact_digest(signed_Authorization_Artifact)
effect_acceptance_tbs = canonical(
    type, authorization_digest, authorization_id, action_digest,
    cpo_digest, effect_policy_digest, forum_acceptance_digest,
    decision, valid_until, accepted_at, nonce, executor, key_id)
effect_acceptance_digest =
    signed_artifact_digest(signed_Executor_Effect_Acceptance)
filing_receipt_digest =
    signed_artifact_digest(signed_Filing_Receipt)
application_record_tbs =
    canonical(application_record_without_signature)
application_record_digest =
    signed_artifact_digest(signed_Effect_Application_Record)
]]></sourcecode>
        <t>The domain-separation strings shown above are part of the corresponding structured hash inputs. <tt>signed_artifact_digest(x)</tt> denotes the application-profile-defined digest of the complete signed artifact <tt>x</tt>; it does not imply an additional domain-separation prefix. These equations describe the abstract signature topology. CBAP-1 instantiates structured hashes and signed-artifact digests with the exact deterministic encoding and SHA-256 derivations in Sections 4.13 through 4.16. Another application profile MUST define an equally complete and non-ambiguous instantiation.</t>
        <t><tt>authorization_digest</tt> is the <tt>signed_artifact_digest</tt> of the exact complete signed native Authorization Artifact accepted under the selected ABP. The <tt>acceptance_digest</tt> and <tt>forum_acceptance_digest</tt> equations above apply only when <tt>forum_acceptance.mode</tt> is <tt>exact</tt> or <tt>class_manifest</tt>; in those evidence-bearing modes <tt>forum_acceptance_digest</tt> is exactly the already-defined <tt>acceptance_digest</tt>, an active-effect context name for the same digest rather than a second digest construction. In <tt>none</tt> mode neither digest exists, and because the base protocol requires <tt>effect_policy.mode = none</tt>, <tt>effect_acceptance_tbs</tt> is not applicable and is not weakened or given a reduced field set. <tt>filing_receipt_digest</tt> is the <tt>signed_artifact_digest</tt> of the exact complete signed filing receipt that established the verified trigger. <tt>application_record_without_signature</tt> is the exact closed profile-defined Effect Application Record with only the <tt>signature</tt> member omitted. Every other member required by the selected state-machine, idempotency, or serialization profile is part of <tt>application_record_tbs</tt>. <tt>application_record_digest</tt> is instead the digest of the complete received signed Effect Application Record.</t>
        <t>An Exact Forum Acceptance Statement signs <tt>forum_terms_digest</tt> plus its validity, filing-receipt profile, and withdrawal policy. A Forum Acceptance Manifest is independently signed and reusable; the CPO references its digest. In <tt>exact</tt> and <tt>class_manifest</tt> modes each selector signs the existing <tt>selection_input</tt>, which covers the complete terms and the exact acceptance evidence digest. In <tt>none</tt> mode each selector instead signs <tt>selection_input_none</tt>, which covers the complete terms under its distinct no-acceptance domain. The two domain-separation strings are different protocol constants, so the structured hash inputs cannot alias syntactically across modes; equality of the resulting hash values for distinct cross-domain inputs would require a collision in the selected hash. The CPO issuer signs <tt>cpo_tbs</tt>. The completed <tt>cpo_digest</tt> is then covered by the Authorization Artifact or companion binding statement.</t>
        <t>For <tt>agent-contestability-notice-v1</tt>, Notice <tt>effect_digest</tt> MUST equal the already-defined <tt>effect_policy_digest</tt>; it is therefore the structured commitment to <tt>terms.effect_policy</tt>, not a digest of a separately signed artifact. The Notice signer signs <tt>notice_tbs</tt>. <tt>notice_digest</tt> is the <tt>signed_artifact_digest</tt> of the complete received signed Contestability Notice and is the digest bound by transport-specific delivery evidence.</t>
        <t>For <tt>agent-executor-effect-acceptance-v1</tt>, the executor signs <tt>effect_acceptance_tbs</tt>. <tt>effect_acceptance_digest</tt> is the <tt>signed_artifact_digest</tt> of the complete received signed Executor Effect Acceptance Statement and is the digest that later execution/refusal and Effect Application records bind where required.</t>
        <t>No signature input contains the signature being computed. <tt>effect_policy_digest</tt> is used only by records created after the signed CPO and Authorization Artifact exist; it does not enter <tt>forum_terms_digest</tt> and does not make the forum authenticate the issuer's effect declaration. A producer or signer MUST construct each signature input from the exact profile-defined input. A verifier MUST verify the received object against that exact profile-defined signature input.</t>
      </section>
      <section anchor="exact-forum-acceptance-statement">
        <name>Exact Forum Acceptance Statement</name>
        <t>Exact acceptance is represented diagnostically as:</t>
        <sourcecode type="json"><![CDATA[
{
  "type": "agent-forum-exact-acceptance-v1",
  "forum_terms_digest": {
    "alg": "sha-256",
    "value": "base64url..."
  },
  "valid_from": "2026-08-11T00:00:00Z",
  "valid_until": "2026-09-10T00:00:00Z",
  "submission_receipt_profile": {
    "uri": "https://forum.example/profiles/filing-receipt/1",
    "digest": { "alg": "sha-256", "value": "base64url..." }
  },
  "withdrawal_policy": {
    "uri": "https://forum.example/policies/withdrawal/1",
    "digest": { "alg": "sha-256", "value": "base64url..." }
  },
  "forum_key_id": "https://forum.example/keys/2026-1",
  "signed_at": "2026-08-11T00:00:00Z",
  "signature": "base64url..."
}
]]></sourcecode>
        <t>Exact acceptance gives the strongest instance binding but requires the forum to process instance metadata before authorization. It SHOULD be used only when the deployment requires instance-specific forum acceptance and has addressed metadata disclosure, traffic analysis, latency, and forum availability in the authorization path.</t>
      </section>
      <section anchor="forum-acceptance-manifest">
        <name>Forum Acceptance Manifest</name>
        <t>A Forum Acceptance Manifest (FAM) is a reusable, signed acceptance statement:</t>
        <sourcecode type="json"><![CDATA[
{
  "type": "agent-forum-acceptance-manifest-v1",
  "manifest_id": "https://forum.example/manifests/2026-08",
  "forum": {
    "id": "https://forum.example/",
    "submission_endpoint": "https://forum.example/cases",
    "verification_key_id": "https://forum.example/keys/2026-1"
  },
  "accepted_authorization_classes": [
    {
      "abp_digest": {
        "alg": "sha-256",
        "value": "base64url-abp-digest..."
      },
      "authorization_trust_profile_digest": {
        "alg": "sha-256",
        "value": "base64url-trust-profile-digest..."
      }
    }
  ],
  "standing_policy": {
    "uri": "https://example/policies/standing/7",
    "digest": { "alg": "sha-256", "value": "base64url..." }
  },
  "procedure": {
    "uri": "https://example/procedures/agent-actions/4",
    "digest": { "alg": "sha-256", "value": "base64url..." }
  },
  "filing_window_rule": {
    "permitted_bases": [
      "authenticated_delivery_time",
      "transparency_publication_time"
    ],
    "minimum_duration_seconds": 2592000
  },
  "submission_receipt_profile": {
    "uri": "https://forum.example/profiles/filing-receipt/1",
    "digest": { "alg": "sha-256", "value": "base64url..." }
  },
  "withdrawal_policy": {
    "uri": "https://forum.example/policies/withdrawal/1",
    "digest": { "alg": "sha-256", "value": "base64url..." }
  },
  "may_bind_from": "2026-08-01T00:00:00Z",
  "may_bind_until": "2027-08-01T00:00:00Z",
  "maximum_filing_horizon_seconds": 7776000,
  "issued_at": "2026-07-20T00:00:00Z",
  "key_id": "https://forum.example/keys/2026-1",
  "signature": "base64url..."
}
]]></sourcecode>
        <t>The authenticated <tt>type</tt> value <tt>agent-forum-acceptance-manifest-v1</tt> selects the FAM-v1 comparison and verification rules defined by this section. A verifier MUST NOT silently substitute different local comparison semantics for that same type. A future FAM profile with different comparison semantics requires a distinct authenticated type/version or another explicitly specified profile-selection mechanism.</t>
        <t>For FAM-v1, <tt>key_id</tt> MUST equal <tt>forum.verification_key_id</tt> exactly. The FAM signer MUST be verified under the verifier's local forum-role trust abstraction, and the signed FAM MUST NOT make its own signer trusted merely by naming that key. Where local forum-role trust scopes keys to forum identifiers, the resolved signer MUST be authorized for <tt>forum.id</tt>. FAM-v1 defines no implicit delegation to a different manifest-signing key.</t>
        <t>The base profile does not define a general predicate language for accepted actions. Class membership is established only by an accepted ABP and Authorization Trust Profile identifier pair followed by successful verification and projection of the Authorization Artifact under that pair. A profile label, URI, or locally substituted trust store MUST NOT establish membership.</t>
        <t>For FAM-v1, a successfully verified Authorization Artifact and CPO satisfy the manifest only when all of the following are true:</t>
        <ul spacing="normal">
          <li>
            <t>the successfully applied ABP and Authorization Trust Profile identifier pair appears exactly in <tt>accepted_authorization_classes</tt>;</t>
          </li>
          <li>
            <t>CPO <tt>forum.id</tt> equals FAM <tt>forum.id</tt>;</t>
          </li>
          <li>
            <t>CPO <tt>forum.submission_endpoint</tt> equals FAM <tt>forum.submission_endpoint</tt>;</t>
          </li>
          <li>
            <t>CPO <tt>forum.verification_key_id</tt> equals FAM <tt>forum.verification_key_id</tt>;</t>
          </li>
          <li>
            <t>the CPO Standing Policy equals the FAM <tt>standing_policy</tt> as an exact URI+digest pair;</t>
          </li>
          <li>
            <t>the CPO procedure equals the FAM <tt>procedure</tt> as an exact URI+digest pair;</t>
          </li>
          <li>
            <t>CPO <tt>filing_window.basis</tt> is a member of FAM <tt>filing_window_rule.permitted_bases</tt>;</t>
          </li>
          <li>
            <t>FAM <tt>filing_window_rule.minimum_duration_seconds &lt;= CPO filing_window.duration_seconds &lt;= FAM maximum_filing_horizon_seconds</tt>;</t>
          </li>
          <li>
            <t><tt>may_bind_from &lt;= authorization_validity.not_before</tt>; and</t>
          </li>
          <li>
            <t><tt>authorization_validity.not_after &lt;= may_bind_until</tt>.</t>
          </li>
        </ul>
        <t>A FAM-v1 object MUST require <tt>1 &lt;= filing_window_rule.minimum_duration_seconds &lt;= maximum_filing_horizon_seconds</tt>. A FAM whose signed bounds do not define a non-empty permitted duration interval is invalid acceptance evidence and MUST NOT establish <tt>valid_class</tt>.</t>
        <t>Membership of <tt>filing_window.basis</tt> in <tt>permitted_bases</tt> does not by itself define the filing clock. If the selected event class can yield multiple authenticated candidate times, the selected filing-window profile MUST still define the deterministic selection or aggregation rule required by Section 4.4.1 before a deadline can be computed.</t>
        <t>The FAM <tt>submission_receipt_profile</tt> and <tt>withdrawal_policy</tt> are authenticated forum-acceptance parameters. They are not CPO class-comparison operands in FAM-v1. The submission-receipt profile is consumed by later receipt/trigger verification where applicable; the withdrawal policy governs continuity or withdrawal semantics where this document invokes it.</t>
        <t>For class acceptance, <tt>may_bind_from</tt> and <tt>may_bind_until</tt> define only the inclusive interval within which the executable authorization-validity interval produced by successful ABP projection MUST be wholly contained. They do not establish when the Authorization Artifact or companion binding statement was created, signed, bound to the CPO, or first referenced the manifest. An authorization whose executable validity extends outside the FAM interval is outside the accepted class even if its contestability binding was created or attached during that interval. The FAM interval does not terminate a filing window already instantiated by a valid class binding.</t>
        <t><tt>maximum_filing_horizon_seconds</tt> is the inclusive upper bound on the CPO's declared filing-window duration, not an absolute timestamp or an offset from <tt>may_bind_until</tt> or the authorization-validity interval.</t>
        <t>The FAM <tt>issued_at</tt> value is the forum signer's authenticated claimed issuance time for the FAM statement. It does not by itself establish external publication time, first availability, freshness, non-backdating, authorization binding time, class eligibility, or the filing-window start. A profile that uses FAM issuance time for freshness or temporal eligibility MUST define the authenticated comparison event or evidence and the exact predicate.</t>
        <t>A mismatch between a valid FAM and the verified Authorization Artifact/CPO class constraints yields <tt>invalid_scope</tt>. Failure to authenticate the FAM itself, failure of the FAM signer/key relation, or invalid FAM-v1 self-constraints is invalid acceptance evidence rather than a successful class statement with a scope mismatch.</t>
        <t>A FAM removes the forum from the per-authorization critical path and does not require disclosure of each authorization instance to the forum. It does not prove capacity or continued availability. The full FAM can be distributed with the CPO; only a digest need be transparency-registered to support equivocation detection.</t>
      </section>
      <section anchor="authorization-binding-profile">
        <name>Authorization Binding Profile</name>
        <t>An ABP composes this document with a native authorization system without replacing that system. A conforming ABP MUST define:</t>
        <ul spacing="normal">
          <li>
            <t>the native Authorization Artifact type and mandatory encoding;</t>
          </li>
          <li>
            <t>the exact complete signed Authorization Artifact representation and the signed-artifact digest construction used to derive <tt>authorization_digest</tt>;</t>
          </li>
          <li>
            <t>the native signature, time, audience, replay, and critical-member verification rules, and the interface through which an identified Authorization Trust Profile supplies trust anchors and issuer-authority constraints;</t>
          </li>
          <li>
            <t>how to extract or derive <tt>authorization_id</tt>;</t>
          </li>
          <li>
            <t>how to canonicalize the authorized action and compute <tt>action_digest</tt>;</t>
          </li>
          <li>
            <t>how to identify the authorization issuer and validity interval;</t>
          </li>
          <li>
            <t>how the direct <tt>contestability_digest</tt> is covered, or how a companion binding statement is authorized;</t>
          </li>
          <li>
            <t>the exact closed output tuple and every refusal or indeterminate condition.</t>
          </li>
        </ul>
        <t>The minimum successful projection is:</t>
        <sourcecode type="json"><![CDATA[
{
  "abp_digest": { "alg": "sha-256", "value": "base64url..." },
  "authorization_trust_profile_digest": {
    "alg": "sha-256",
    "value": "base64url..."
  },
  "authorization_digest": {
    "alg": "sha-256",
    "value": "base64url..."
  },
  "authorization_id": "urn:uuid:...",
  "authorization_issuer": "https://issuer.example/keys/3",
  "authorization_validity": {
    "not_before": "2026-08-11T00:00:00Z",
    "not_after": "2026-08-12T00:00:00Z"
  },
  "action_digest": { "alg": "sha-256", "value": "base64url..." },
  "binding_mode": "direct"
}
]]></sourcecode>
        <t>The <tt>authorization_digest</tt> value is <tt>signed_artifact_digest(signed_Authorization_Artifact)</tt> for the exact complete signed native Authorization Artifact accepted by the ABP. The ABP MUST define the exact signed-artifact representation and digest instantiation so that two conforming implementations applying the same ABP to the same authenticated artifact derive the same <tt>authorization_digest</tt> or refuse.</t>
        <t>The <tt>abp_digest</tt> and <tt>authorization_trust_profile_digest</tt> values are bound profile identifiers. Carrying or matching an identifier does not by itself prove that corresponding profile bytes were obtained, content-hashed, or successfully applied. The profile that defines an identifier MUST define how the verifier obtains and applies the identified specification. If that identifier is intended to be a content digest, the profile MUST additionally define the canonical bytes, digest algorithm, and verification rule.</t>
        <t>For CBAP-1, the expected ABP identifier is fixed by this application profile as <tt>H("cbap1-authorization-binding-profile-v1", 1)</tt>; it is not derived from external ABP source bytes. The expected Authorization Trust Profile identifier is an opaque 32-byte value pinned by trusted local policy and compared with terms member <tt>3</tt>; CBAP-1 does not define external profile bytes from which that identifier is derived. CBAP-1 instantiates <tt>authorization_digest</tt> as <tt>SHA-256(authorization_cose_bytes)</tt>, the digest of the exact received Authorization COSE_Sign1 bytes.</t>
        <t>Two conforming implementations applying the same identified ABP and Authorization Trust Profile to the same authenticated inputs MUST either produce the same tuple or refuse. A lossy, ambiguous, unpinned, unsupported, or locally substituted mapping or trust input yields <tt>indeterminate</tt> and MUST NOT establish FAM membership.</t>
        <t>Successful ABP projection establishes only, under that profile, that the native artifact verified and mapped to the required tuple. It does not mean the forum accepts the profile; that is established separately by the FAM.</t>
      </section>
      <section anchor="selection-signatures-are-not-forum-signatures">
        <name>Selection signatures are not forum signatures</name>
        <t>The forum's signature acknowledges a scope. It MUST NOT be counted as evidence that the forum was selected non-unilaterally. Selection evidence signs the mode-specific input: <tt>selection_input</tt> for <tt>exact</tt> or <tt>class_manifest</tt>, which includes both the Contestation Terms and the exact acceptance evidence used, or <tt>selection_input_none</tt> for <tt>none</tt>, which covers the same complete Contestation Terms under a distinct no-acceptance domain. The evidence-bearing construction prevents a selector's signature for one forum acceptance from being replayed with another, and the distinct no-acceptance domain prevents syntactic reuse of a disclosure-only selector input as an acceptance-bearing input.</t>
        <t>A controlling trust domain is a relying-party local-policy equivalence class used to decide whether selector or role credentials represent independent controlling authorities for selection-provenance purposes. It MUST NOT be inferred solely from DNS names, URI hosts, <tt>kid</tt> spelling, certificate subject strings, or the number of signing keys. A selection profile that claims non-unilateral provenance MUST declare exactly one provenance class, either <tt>multiparty</tt> or <tt>external</tt>, and MUST define the required selector roles and how trusted credentials or authorities are mapped to controlling trust domains. A profile that declares both classes is invalid or unsupported for provenance derivation; a profile that declares neither class cannot establish either non-unilateral result. The verifier MUST NOT infer a second provenance class merely because evidence satisfying that other class is also present.</t>
        <t>An entity can perform multiple roles, but role co-location remains visible in the result. When the issuer, forum operator, and external selector resolve to the same controlling trust domain under local policy, the verifier MUST NOT upgrade selection provenance solely because three keys signed. Distinct keys mapped to one controlling trust domain MUST NOT be counted as independent parties merely because each key produced a valid signature.</t>
      </section>
      <section anchor="mandatory-encoding-cbap-1-core-deterministic-cbor">
        <name>Mandatory encoding: CBAP-1 Core Deterministic CBOR</name>
        <t>The Contestability Binding Application Profile 1 (CBAP-1) is the mandatory-to-implement encoding and executable base profile for this document. CBAP-1 uses the Core Deterministic Encoding Requirements in Section 4.2.1 of <xref target="RFC8949"/>. It does not use the length-first map key ordering in Section 4.2.3 of <xref target="RFC8949"/>, historically called canonical CBOR by <xref target="RFC7049"/>.</t>
        <t>A CBAP-1 encoder and verifier MUST enforce all of the following:</t>
        <ul spacing="normal">
          <li>
            <t>preferred and shortest serialization for every integer, length, and tag argument;</t>
          </li>
          <li>
            <t>definite-length byte strings, text strings, arrays, and maps only;</t>
          </li>
          <li>
            <t>bytewise-lexicographic ordering of the deterministic encodings of map keys;</t>
          </li>
          <li>
            <t>rejection of duplicate map keys before conversion to a host-language map;</t>
          </li>
          <li>
            <t>rejection of floating-point values and simple values other than <tt>false</tt>, <tt>true</tt>, and <tt>null</tt>; at the bundle outer-item boundary, rejection of every CBOR tag, including tag 18; for each signed COSE_Sign1 object carried inside a bundle <tt>bstr</tt>, requirement of the object's outer COSE_Sign1 tag 18 and rejection of any other tag;</t>
          </li>
          <li>
            <t>well-formed UTF-8 text strings, compared as encoded bytes without Unicode, URI, case, or percent-encoding normalization;</t>
          </li>
          <li>
            <t>unsigned-integer member labels exactly as specified by the closed CDDL below.</t>
          </li>
        </ul>
        <t>The closed CBAP-1 CDDL uses none of the simple values <tt>false</tt>, <tt>true</tt>, or <tt>null</tt>. Their allowance at the Core Deterministic CBOR layer does not make them valid where the closed CDDL requires another type; such a mismatch fails at the relevant closed-schema boundary.</t>
        <t>Before allocating, slicing, advancing an input cursor, or iterating a declared collection length, a decoder MUST verify with checked arithmetic that the length is representable by the host and does not exceed the remaining input. A declared length or count that cannot be consumed from the received bytes MUST be rejected at the enclosing encoding boundary. It MUST NOT wrap an offset, panic, abort the process, or attempt an allocation based only on the received length.</t>
        <t>CBAP-1 additionally fixes these resource ceilings:</t>
        <sourcecode type="text"><![CDATA[
MAX_BUNDLE_BYTES         = 8388608
MAX_BSTR_BYTES           = 1048576
MAX_TSTR_UTF8_BYTES      = 4096
MAX_COLLECTION_MEMBERS   = 64
MAX_NESTING_DEPTH        = 32
MAX_POLICY_PAIRS         = 5
MAX_KEY_ID_UTF8_BYTES    = 64
]]></sourcecode>
        <t>After verification-time validation and before parsing the outer CBOR item, a verifier MUST require the complete received bundle to be no more than <tt>MAX_BUNDLE_BYTES</tt> bytes. A larger bundle fails at <tt>outer_encoding_invalid</tt> without parsing the bundle.</t>
        <t>At each CBOR decoding boundary, before allocation or iteration, the decoder MUST require every definite-length byte string to be no more than <tt>MAX_BSTR_BYTES</tt>, every definite-length text string to contain no more than <tt>MAX_TSTR_UTF8_BYTES</tt> received UTF-8 bytes, every array or map to contain no more than <tt>MAX_COLLECTION_MEMBERS</tt> members, and nesting depth to be no more than <tt>MAX_NESTING_DEPTH</tt>. For the nesting-depth predicate at each independently decoded CBOR boundary, the root item has depth 0; descending from an item to the data item carried by a tag, to an array element, or to a map key or map value increments depth by one, and the decoder MUST reject before descending when the resulting child depth would exceed <tt>MAX_NESTING_DEPTH</tt>. A byte string is opaque for nesting-depth accounting at the boundary that decodes it; when bytes carried in a byte string are subsequently decoded as CBOR by this profile, that parse is a new independent CBOR boundary whose root again has depth 0. Thus depth 32 is permitted and an attempted descent to depth 33 is rejected. The text-string ceiling is measured on received UTF-8 bytes, not Unicode scalar values.</t>
        <t>A resource-ceiling predicate belongs to the boundary currently decoding the item. At the outer-item boundary it yields <tt>outer_encoding_invalid</tt>. At signed-object boundaries 5 through 9 it is part of that object's complete validation pipeline and yields that object's existing invalid reason. Resource predicates are evaluated before allocation, iteration, closed-schema predicates, and later cross-object or profile predicates that require the decoded value.</t>
        <t>For example, a 5000-byte payload signer <tt>key-id</tt> text string or CPO forum <tt>key-id</tt> text string exceeds <tt>MAX_TSTR_UTF8_BYTES</tt> while the signed payload is decoded and therefore fails at the enclosing signed-object boundary; a later 1-through-64-byte key rule or step 13 forum-key length predicate is not evaluated. A 5000-byte URI text string inside a signed payload likewise fails at that signed-object boundary before the step 13 HTTPS-URI predicate. A 5000-byte protected <tt>kid</tt> byte string does not exceed <tt>MAX_BSTR_BYTES</tt>, but it still fails the existing protected-<tt>kid</tt> 1-through-64-byte constraint at the same signed-object boundary.</t>
        <t>The existing 64-byte key-identifier rules remain stricter than the generic string ceilings wherever they apply and MUST NOT be weakened by these resource limits. Because CBAP-1 carries action bytes and by-value policy bytes as byte strings, each such byte string is limited to <tt>MAX_BSTR_BYTES</tt>.</t>
        <t>Every <tt>uri</tt> value in CBAP-1 MUST satisfy the generic URI syntax of <xref target="RFC3986"/> and the <tt>https</tt> URI scheme requirements in Section 4.2.2 of <xref target="RFC9110"/>, with these additional profile restrictions:</t>
        <ul spacing="normal">
          <li>
            <t>the scheme is the exact lowercase ASCII string <tt>https</tt>;</t>
          </li>
          <li>
            <t>an authority introduced by <tt>//</tt> is present and contains a non-empty host;</t>
          </li>
          <li>
            <t>user information is absent;</t>
          </li>
          <li>
            <t>if a port delimiter is present, the port contains only ASCII digits, begins with a digit in <tt>1..9</tt>, is the shortest decimal representation of its value, and has a numeric value in <tt>1..65535</tt>;</t>
          </li>
          <li>
            <t>every percent-encoded triplet is syntactically complete; and</t>
          </li>
          <li>
            <t>a fragment component is absent.</t>
          </li>
        </ul>
        <t>Conformance is determined by the complete component grammar, not by a prefix
test or a character allowlist. In particular:</t>
        <ul spacing="normal">
          <li>
            <t><tt>authority</tt>, <tt>host</tt>, <tt>IP-literal</tt>, <tt>IPv6address</tt>, <tt>IPvFuture</tt>,
<tt>path-abempty</tt>, <tt>segment</tt>, <tt>pchar</tt>, and <tt>query</tt> have the meanings and ABNF
defined by <xref target="RFC3986"/>;</t>
          </li>
          <li>
            <t>a bracketed host MUST contain exactly one syntactically valid <xref target="RFC3986"/>
              <tt>IPv6address</tt> or <tt>IPvFuture</tt> value;</t>
          </li>
          <li>
            <t><tt>[</tt> and <tt>]</tt> are permitted only as the delimiters of that <tt>IP-literal</tt> and
MUST be rejected in a registered name, path, or query;</t>
          </li>
          <li>
            <t>a registered name is validated as <tt>reg-name</tt>; accepting the characters of
a putative hostname without parsing its component boundaries is
insufficient; and</t>
          </li>
          <li>
            <t>IPv6 zone identifiers, including a percent-encoded zone suffix inside an
IP-literal, are not supported by CBAP-1 and MUST be rejected.</t>
          </li>
        </ul>
        <t><xref target="RFC9844"/> obsoletes <xref target="RFC6874"/> and does not define a replacement URI syntax for
zone identifiers. CBAP-1 deliberately excludes them because a locally scoped
zone identifier is not a stable signed identifier across verifiers.</t>
        <t>Path and query components are permitted only when their complete <xref target="RFC3986"/>
grammar matches. An explicit port MUST be validated in its received lexical
form before numeric conversion; a verifier MUST NOT strip leading zeros and
then validate the resulting number. CBAP-1 performs no URI normalization: the
exact ASCII bytes are the identifier and signature input. A different but
allegedly equivalent spelling is a different value. In particular,
<tt>https://forum.example/</tt> and <tt>https://forum.example:443/</tt> remain distinct
signed URI values even when a deployment routes both to the same HTTPS
service. A prefix test such as <tt>starts_with("https://")</tt>, a search for
forbidden delimiters, or a component-wide character allowlist is not URI
validation.</t>
        <t>The following examples are normative CBAP-1 URI conformance probes. Each
value is evaluated as written, without normalization or network resolution.</t>
        <table>
          <thead>
            <tr>
              <th align="left">URI</th>
              <th align="left">Required result</th>
              <th align="left">Boundary exercised</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">
                <tt>https://forum.example</tt></td>
              <td align="left">accept</td>
              <td align="left">empty path</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://forum.example:1/</tt></td>
              <td align="left">accept</td>
              <td align="left">minimum explicit port</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://forum.example:443/cases?open=1</tt></td>
              <td align="left">accept</td>
              <td align="left">shortest decimal port, path and query</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://forum.example:65535/</tt></td>
              <td align="left">accept</td>
              <td align="left">maximum explicit port</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://[2001:db8::1]/cases</tt></td>
              <td align="left">accept</td>
              <td align="left">IPv6 address literal</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://[v1.a]/cases</tt></td>
              <td align="left">accept</td>
              <td align="left">IPvFuture</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://forum.example/%2Fcase</tt></td>
              <td align="left">accept</td>
              <td align="left">complete percent triplet in path</td>
            </tr>
            <tr>
              <td align="left">
                <tt>HTTPS://forum.example/</tt></td>
              <td align="left">reject</td>
              <td align="left">scheme is not exact lowercase <tt>https</tt></td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://</tt></td>
              <td align="left">reject</td>
              <td align="left">empty host</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://user@forum.example/</tt></td>
              <td align="left">reject</td>
              <td align="left">user information</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://forum.example:/</tt></td>
              <td align="left">reject</td>
              <td align="left">empty explicit port</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://forum.example:0/</tt></td>
              <td align="left">reject</td>
              <td align="left">explicit port zero</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://forum.example:00/</tt></td>
              <td align="left">reject</td>
              <td align="left">explicit port zero and non-shortest form</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://forum.example:0443/</tt></td>
              <td align="left">reject</td>
              <td align="left">leading zero / non-shortest form</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://forum.example:00001/</tt></td>
              <td align="left">reject</td>
              <td align="left">leading zeros / non-shortest form</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://forum.example:65536/</tt></td>
              <td align="left">reject</td>
              <td align="left">port outside profile range</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://forum.example/%2/</tt></td>
              <td align="left">reject</td>
              <td align="left">incomplete percent triplet</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://forum.example/#part</tt></td>
              <td align="left">reject</td>
              <td align="left">fragment present</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://[:::]/</tt></td>
              <td align="left">reject</td>
              <td align="left">invalid IPv6 address literal</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://[v1.]/</tt></td>
              <td align="left">reject</td>
              <td align="left">invalid IPvFuture</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://[fe80::1%25eth0]/</tt></td>
              <td align="left">reject</td>
              <td align="left">zone identifier unsupported</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://forum.example/a[b]</tt></td>
              <td align="left">reject</td>
              <td align="left">brackets in path</td>
            </tr>
            <tr>
              <td align="left">
                <tt>https://forum.example/?a=[b]</tt></td>
              <td align="left">reject</td>
              <td align="left">brackets in query</td>
            </tr>
          </tbody>
        </table>
        <t>The following conformance probe distinguishes Section 4.2.1 ordering from length-first ordering. A conforming CBAP-1 encoder MUST encode the diagnostic map <tt>{100: -1, -1: 100}</tt> as hexadecimal <tt>a2186420201864</tt>. An encoder that places key <tt>-1</tt> before key <tt>100</tt> is not conformant even if a library describes its output as canonical.</t>
        <t>CBAP-1 fixes SHA-256 as specified by <xref target="RFC6234"/> as its only digest function. A digest is a 32-byte byte string; an algorithm identifier is not carried beside each digest. Algorithm substitution is therefore impossible inside the profile. Adding another hash function requires a new application-profile version.</t>
        <t>Let <tt>dCBOR(x)</tt> be the exact CBAP-1 deterministic encoding of data item <tt>x</tt>. Domain-separated hashes are computed as:</t>
        <sourcecode type="text"><![CDATA[
H(domain, value) = SHA-256(dCBOR([domain, value]))
]]></sourcecode>
        <t><tt>domain</tt> is the exact lowercase ASCII text string defined at each use. Digests of signed artifacts are SHA-256 over the complete tagged COSE_Sign1 byte sequence, including the tag, protected-header bytes, payload, and signature. Policy and action digests are SHA-256 over the exact supplied bytes. A verifier MUST NOT hash a decoded and reconstructed signed object in place of its received conforming bytes.</t>
      </section>
      <section anchor="mandatory-signature-envelope">
        <name>Mandatory signature envelope</name>
        <t>Every signed CBAP-1 object is an embedded-payload, tagged COSE_Sign1 object as defined by <xref target="RFC9052"/>:</t>
        <sourcecode type="text"><![CDATA[
18([protected, unprotected, payload, signature])
]]></sourcecode>
        <t>The protected header map MUST contain exactly:</t>
        <sourcecode type="text"><![CDATA[
{ 1: -19, 4: kid }
]]></sourcecode>
        <t>Header label <tt>1</tt> is <tt>alg</tt>; value <tt>-19</tt> is the fully specified Ed25519 algorithm registered by <xref target="RFC9864"/>. CBAP-1 MUST NOT use the deprecated polymorphic <tt>EdDSA</tt> value <tt>-8</tt>. Header label <tt>4</tt> is <tt>kid</tt>, encoded as a byte string of 1 through 64 bytes. The unprotected header map MUST be empty. The payload MUST be present as a byte string containing one closed CBAP-1 payload. Detached payloads, countersignatures, critical headers, and additional protected or unprotected headers are not supported by CBAP-1.</t>
        <t>The signature is computed over the <xref target="RFC9052"/> Sig_structure with context <tt>Signature1</tt>, the received protected-header bytes, an empty external AAD byte string, and the embedded payload bytes. Ed25519 is defined by <xref target="RFC8032"/>. CBAP-1 Ed25519 verification MUST apply Section 5.1.7 of <xref target="RFC8032"/> in full, including decoding <tt>R</tt> as a point and checking <tt>0 &lt;= S &lt; L</tt>, and MUST use the uncofactored equation <tt>[S]B = R + [k]A</tt>, where <tt>A</tt> is the decoded public-key point and the remaining notation is as in that section. The received <tt>signature</tt> byte string MUST be exactly 64 bytes; this length constraint belongs to the tagged COSE_Sign1 shape predicate and MUST be evaluated before trust resolution or signature verification. The public key is an Ed25519 COSE_Key as defined by <xref target="RFC9053"/>, with <tt>kty = 1</tt>, <tt>crv = 6</tt>, and a 32-byte <tt>x</tt> public-key value. In particular, as part of signature verification, that <tt>x</tt> value MUST decode successfully under Section 5.1.3 of <xref target="RFC8032"/>; a decoding failure is a signature-verification failure at the current signed-object boundary. CBAP-1 adds no separate small-order or weak-key rejection rule beyond RFC 8032 point decoding and the uncofactored verification equation above.</t>
        <t><tt>kid</tt> is a key-selection hint, not a trust assertion. The verifier's local trust set MUST resolve the exact protected <tt>kid</tt> bytes to exactly one authorized public key for the required role. Zero matching entries, multiple matching entries, or no entry authorized for the required role fails trust resolution at the current signed-object boundary as specified by the calling verification step. Within that same trust-resolution predicate, the verifier first matches entries by the exact protected <tt>kid</tt> and required role and requires exactly one matching entry; only then, on that uniquely resolved COSE_Key, if its <tt>alg</tt> member is present, it MUST be <tt>-19</tt>. The <tt>alg</tt> check MUST NOT filter entries before the exactly-one cardinality decision and MUST be completed before signature verification. Each payload also carries the signer's <tt>key-id</tt> as a text string. The protected <tt>kid</tt> MUST equal the UTF-8 encoding of that <tt>key-id</tt> byte-for-byte; no Unicode normalization or other transformation is applied. A protected <tt>kid</tt> that is not exactly such an encoding is invalid in CBAP-1.</t>
      </section>
      <section anchor="cbap-1-closed-data-model">
        <name>CBAP-1 closed data model</name>
        <t>CBAP-1 intentionally implements the smallest end-to-end path that exercises the load-bearing claims: direct authorization binding, exact forum acceptance, issuer-only selection provenance, by-value policy verification, executor-attested pre-execution evidence, an execution-time filing clock, and <tt>effect_policy = none</tt>. Class manifests, companion bindings, notices, active execution effects, multiparty selection, and external selection remain part of the abstract protocol but are unsupported by CBAP-1 and require another named profile.</t>
        <t>In CBAP-1, <tt>epoch</tt> is an unsigned integer counting seconds from <tt>1970-01-01T00:00Z</tt> UTC on the POSIX numeric timeline described for nonnegative epoch-based date/time values in Section 3.4.2 of <xref target="RFC8949"/>. CBAP-1 encodes this integer directly as the untagged CDDL <tt>uint</tt>; it does not use CBOR tag 1. Fractional and negative epoch values are therefore outside the profile. Leap seconds follow POSIX-time handling: CBAP-1 does not assign an inserted leap second an additional distinct integer value, and comparisons and deadline arithmetic use that same POSIX numeric timeline.</t>
        <t>The normative CDDL <xref target="RFC8610"/> is:</t>
        <sourcecode type="cddl"><![CDATA[
digest = bstr .size 32
id16 = bstr .size 16
epoch = uint
key-id = tstr
uri = tstr

policy-ref = [uri, digest]
validity = [not-before: epoch, not-after: epoch]
forum = [forum-id: uri, submission-endpoint: uri,
         forum-key-id: key-id]
filing-window = [basis: 1, duration-seconds: uint]
effect-policy = [mode: 0]
affected-party-access = [method: 3, discovery-uri: uri,
                         available-until: epoch]

cbap1-terms = {
  1: id16,                       ; authorization-id
  2: digest,                     ; abp-digest
  3: digest,                     ; authorization-trust-profile-digest
  4: key-id,                     ; authorization-issuer-key-id
  5: validity,                   ; authorization-validity
  6: digest,                     ; action-digest
  7: forum,
  8: policy-ref,                 ; standing-policy
  9: policy-ref,                 ; procedure
  10: filing-window,
  11: effect-policy,
  12: policy-ref,                ; selection-policy
  13: [1* affected-party-access],
  14: epoch,                     ; issued-at
  15: epoch,                     ; expires-at
  16: id16                       ; nonce
}

cbap1-cpo = {
  1: 1,                         ; profile version
  2: 1,                         ; object type: CPO
  3: cbap1-terms,
  4: [mode: 0, exact-acceptance-digest: digest],
  5: [],                        ; no selection statements: unilateral
  6: key-id                     ; issuer-key-id
}

cbap1-exact-acceptance = {
  1: 1,
  2: 2,                         ; exact forum acceptance
  3: digest,                    ; forum-terms-digest
  4: epoch,                     ; valid-from
  5: epoch,                     ; valid-until
  6: policy-ref,                ; submission-receipt-profile
  7: policy-ref,                ; withdrawal-policy
  8: epoch,                     ; signed-at
  9: key-id                     ; forum-key-id
}

cbap1-authorization = {
  1: 1,
  2: 3,                         ; CBAP-1 test Authorization Artifact
  3: id16,                      ; authorization-id
  4: key-id,                    ; issuer-key-id
  5: tstr,                      ; agent-id
  6: digest,                    ; action-digest
  7: epoch,                     ; not-before
  8: epoch,                     ; not-after
  9: digest,                    ; cpo-digest
  10: id16                      ; nonce
}

cbap1-executor-verification = {
  1: 1,
  2: 4,                         ; executor verification record
  3: digest,                    ; authorization-digest
  4: id16,                      ; authorization-id
  5: digest,                    ; action-digest
  6: digest,                    ; cpo-digest
  7: 1,                         ; decision: execute
  8: epoch,                     ; verified-at
  9: id16,                      ; nonce
  10: key-id                    ; executor-key-id
}

cbap1-execution-record = {
  1: 1,
  2: 5,                         ; execution record
  3: digest,                    ; authorization-digest
  4: digest,                    ; executor-verification-digest
  5: id16,                      ; authorization-id
  6: digest,                    ; action-digest
  7: 1,                         ; disposition: executed
  8: epoch,                     ; executed-at
  9: id16,                      ; nonce
  10: key-id                    ; executor-key-id
}

cbap1-bundle = {
  1: 1,
  2: bstr,                      ; cpo-cose
  3: bstr,                      ; exact-acceptance-cose
  4: bstr,                      ; authorization-cose
  5: bstr,                      ; executor-verification-cose
  6: bstr,                      ; execution-record-cose
  7: bstr,                      ; action-bytes
  8: [+ [digest, bstr]]         ; policy-digest, policy-bytes
}
]]></sourcecode>
        <t>The following member-label registry is normative. The names identify protocol semantics, not merely implementation variables. An implementation that assigns a listed semantic value to another label is not CBAP-1 conformant even when its producer and verifier agree with each other.</t>
        <sourcecode type="text"><![CDATA[
cbap1-terms
   1 authorization-id
   2 abp-digest
   3 authorization-trust-profile-digest
   4 authorization-issuer-key-id
   5 authorization-validity
   6 action-digest
   7 forum
   8 standing-policy
   9 procedure
  10 filing-window
  11 effect-policy
  12 selection-policy
  13 affected-party-access
  14 issued-at
  15 expires-at
  16 nonce

cbap1-cpo
   1 profile-version
   2 object-type
   3 terms
   4 exact-acceptance-reference
   5 selection-statements
   6 issuer-key-id

cbap1-exact-acceptance
   1 profile-version
   2 object-type
   3 forum-terms-digest
   4 valid-from
   5 valid-until
   6 submission-receipt-profile
   7 withdrawal-policy
   8 signed-at
   9 forum-key-id

cbap1-authorization
   1 profile-version
   2 object-type
   3 authorization-id
   4 issuer-key-id
   5 agent-id
   6 action-digest
   7 not-before
   8 not-after
   9 cpo-digest
  10 nonce

cbap1-executor-verification
   1 profile-version
   2 object-type
   3 authorization-digest
   4 authorization-id
   5 action-digest
   6 cpo-digest
   7 decision
   8 verified-at
   9 nonce
  10 executor-key-id

cbap1-execution-record
   1 profile-version
   2 object-type
   3 authorization-digest
   4 executor-verification-digest
   5 authorization-id
   6 action-digest
   7 disposition
   8 executed-at
   9 nonce
  10 executor-key-id

cbap1-bundle
   1 profile-version
   2 cpo-cose
   3 exact-acceptance-cose
   4 authorization-cose
   5 executor-verification-cose
   6 execution-record-cose
   7 action-bytes
   8 policy-pairs
]]></sourcecode>
        <t>Each <tt>nonce</tt> in CBAP-1 is an object-local opaque <tt>id16</tt> member authenticated by the signature of its enclosing signed object. CBAP-1 defines no equality or inequality relation among CPO terms label <tt>16</tt>, Authorization Artifact label <tt>10</tt>, Executor Verification label <tt>9</tt>, and Execution Record label <tt>9</tt>. A verifier MUST NOT reject a bundle merely because any two of those nonce values are equal or different, and MUST NOT infer freshness, uniqueness, single use, replay resistance, or protocol ordering from their presence or value. Cross-object binding in the base profile is established by the authorization identifier, action digest, CPO digest, Authorization Artifact digest, Executor Verification digest, and the required signer/key relations. A profile that claims replay resistance MUST separately define the nonce/challenge or sequence issuer, comparison rule, scope, retained state, acceptance window, and duplicate or reuse handling.</t>
        <t>In particular, executor-verification member <tt>5</tt> is always <tt>action-digest</tt> and member <tt>6</tt> is always <tt>cpo-digest</tt>. Execution-record member <tt>5</tt> is <tt>authorization-id</tt> and member <tt>6</tt> is <tt>action-digest</tt>. Reusing a semantic label number across different maps is not a CBAP-1 design rule; only the registry above assigns meaning.</t>
        <t>The integer values have the following fixed meanings in CBAP-1: filing-window basis <tt>1</tt> is <tt>execution_time</tt>; effect mode <tt>0</tt> is <tt>none</tt>; affected-party access method <tt>3</tt> is <tt>public_transparency</tt>; forum-acceptance mode <tt>0</tt> is <tt>exact</tt>; executor decision <tt>1</tt> is <tt>execute</tt>; and execution disposition <tt>1</tt> is <tt>executed</tt>. For every fixed CBAP-1 integer vocabulary, any value other than a listed fixed value is outside the CBAP-1 CDDL and fails at the containing object's closed-schema boundary; it is not an extension point. Such a pre-semantic closed-schema failure does not itself establish an <tt>unsupported</tt> structured-result value. In particular, a CPO effect-mode integer other than <tt>0</tt> fails the B5 closed-schema predicate before <tt>declared_effect</tt> is completed, so <tt>declared_effect</tt> remains <tt>indeterminate</tt> under the closed transition table.</t>
        <t>The filing-window <tt>duration-seconds</tt> value MUST be in the inclusive range <tt>1..18446744073709551615</tt>. A zero-duration contestation window is not valid in CBAP-1 and fails at <tt>profile_binding_mismatch</tt> rather than being interpreted as an instantaneous window.</t>
        <t>Policy pairs in bundle member <tt>8</tt> MUST be sorted in ascending bytewise order of <tt>policy-digest</tt> and MUST NOT repeat a digest. This makes the by-value bundle unique rather than treating arbitrary array order as a new encoding of the same evidence set. After the five signed payloads have been validated, the set of <tt>policy-digest</tt> values in bundle member <tt>8</tt> MUST equal exactly the set referenced by CPO terms labels <tt>8</tt>, <tt>9</tt>, and <tt>12</tt> and Exact Forum Acceptance labels <tt>6</tt> and <tt>7</tt>. Missing or additional policy digests fail at <tt>profile_binding_mismatch</tt>; malformed, unsorted, duplicate, or internally digest-inconsistent policy pairs continue to fail at <tt>policy_set_invalid</tt>.</t>
        <t><tt>cbap1-authorization</tt> is a deliberately small test Authorization Artifact and the mandatory ABP used only to make the base profile executable. It is not proposed as a universal agent-authorization format. Production authorization systems compose through their own ABPs.</t>
      </section>
      <section anchor="cbap-1-digest-and-construction-rules">
        <name>CBAP-1 digest and construction rules</name>
        <t>CBAP-1 uses these exact derivations:</t>
        <sourcecode type="text"><![CDATA[
action_digest = SHA-256(action_bytes)
policy_digest = SHA-256(policy_bytes)
terms_digest = H("agent-contestation-terms-v1", cbap1-terms)
forum_terms = [terms[1], terms[2], terms[3], terms[4], terms[5],
               terms[6], terms[7], terms[8], terms[9], terms[10]]
forum_terms_digest = H("agent-contestation-forum-terms-v1",
                       forum_terms)
acceptance_digest = SHA-256(exact_acceptance_cose_bytes)
cpo_digest = SHA-256(cpo_cose_bytes)
authorization_digest = SHA-256(authorization_cose_bytes)
verification_record_digest = SHA-256(
    executor_verification_cose_bytes)
]]></sourcecode>
        <t>CBAP-1 permits <tt>action_bytes</tt> to be a zero-length byte string. In that case, <tt>action_digest</tt> is SHA-256 of the zero-length byte string.</t>
        <t>The construction order is fixed:</t>
        <ol spacing="normal" type="1"><li>
            <t>Fix the action bytes, policy bytes, trust inputs, identifiers, validity, forum, filing window, access method, times, and nonces.</t>
          </li>
          <li>
            <t>Compute the action and policy digests and construct <tt>cbap1-terms</tt>.</t>
          </li>
          <li>
            <t>Project <tt>forum_terms</tt>, compute its digest, and obtain the forum-signed exact acceptance.</t>
          </li>
          <li>
            <t>Hash the complete signed acceptance and place that digest in the CPO payload.</t>
          </li>
          <li>
            <t>Sign the CPO and hash the complete tagged COSE_Sign1 bytes.</t>
          </li>
          <li>
            <t>Place the CPO digest in the CBAP-1 Authorization Artifact and sign it.</t>
          </li>
          <li>
            <t>Hash the signed Authorization Artifact and construct the executor verification record. Place <tt>authorization-digest</tt> at label <tt>3</tt>, <tt>authorization-id</tt> at label <tt>4</tt>, <tt>action-digest</tt> at label <tt>5</tt>, and <tt>cpo-digest</tt> at label <tt>6</tt>.</t>
          </li>
          <li>
            <t>Sign that record, hash it, and construct the execution record. Place <tt>authorization-digest</tt> at label <tt>3</tt>, <tt>executor-verification-digest</tt> at label <tt>4</tt>, <tt>authorization-id</tt> at label <tt>5</tt>, and <tt>action-digest</tt> at label <tt>6</tt>.</t>
          </li>
          <li>
            <t>Sign the execution record and assemble the unsigned by-value bundle.</t>
          </li>
        </ol>
        <t>No step signs or hashes a placeholder for an object that is completed later. Reversing steps 3 through 8 changes the required digest dependency and MUST fail verification. A verifier MUST hash each signed artifact from its exact received conforming bytes rather than substitute a decoded-and-reconstructed representation. A reconstruction that differs by one or more bytes changes the relevant digest and MUST fail verification; a byte-identical reconstruction has the same digest.</t>
      </section>
      <section anchor="cbap-1-trust-and-verification-inputs">
        <name>CBAP-1 trust and verification inputs</name>
        <t>The bundle is evidence, not a trust store. A CBAP-1 verifier receives separately:</t>
        <ul spacing="normal">
          <li>
            <t>the expected Authorization Trust Profile identifier supplied by trusted local policy;</t>
          </li>
          <li>
            <t>a local trust set containing zero or more role-authorized Ed25519 public-key entries, each associated with exact <tt>kid</tt> bytes; a forum-role entry can additionally carry the forum-identifier authorization consumed by the separate forum-terms check;</t>
          </li>
          <li>
            <t>a verification-time input presented at the verifier boundary as an integer and validated before conversion to the CBAP-1 unsigned range.</t>
          </li>
        </ul>
        <t>The expected CBAP-1 ABP identifier is fixed by this profile as <tt>H("cbap1-authorization-binding-profile-v1", 1)</tt> and MUST be derived by the verifier rather than replaced by a caller-supplied alternative. The expected Authorization Trust Profile identifier is supplied by local policy and MUST equal terms member <tt>3</tt>; untrusted bytes carried in the bundle cannot replace it. Policy bytes in the bundle establish discoverability and digest equality only. They do not become trusted merely because the issuer supplied them.</t>
        <t>The <strong>CBAP-1 signed-object role table</strong> is closed:</t>
        <table>
          <thead>
            <tr>
              <th align="left">Signed object</th>
              <th align="left">Required trust role</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">CPO</td>
              <td align="left">
                <tt>issuer-role</tt></td>
            </tr>
            <tr>
              <td align="left">Exact Forum Acceptance</td>
              <td align="left">
                <tt>forum-role</tt></td>
            </tr>
            <tr>
              <td align="left">Authorization Artifact</td>
              <td align="left">
                <tt>issuer-role</tt></td>
            </tr>
            <tr>
              <td align="left">Executor Verification</td>
              <td align="left">
                <tt>executor-role</tt></td>
            </tr>
            <tr>
              <td align="left">Execution Record</td>
              <td align="left">
                <tt>executor-role</tt></td>
            </tr>
          </tbody>
        </table>
        <t>For each signed CBAP-1 object, trust resolution matches the role assigned in the CBAP-1 signed-object role table and the exact protected <tt>kid</tt> bytes. Zero matching entries or more than one matching entry fails at that signed-object boundary; exactly one matching entry supplies the public key used for signature verification. Additional entries under the same role with different <tt>kid</tt> values are allowed. CBAP-1 resolves the Executor Verification and Execution Record independently and MUST NOT require their protected <tt>kid</tt> values or resolved trust entries to be equal; different <tt>kid</tt> values are conforming when each object independently resolves to exactly one <tt>executor-role</tt> trust entry and all remaining predicates pass. Independent role authorization plus the required Execution Record binding to the exact signed Executor Verification record does not by itself establish that the two signer keys belong to the same legal, organizational, physical, or logical executor identity. An entry carrying the same <tt>kid</tt> under a different role does not satisfy the assigned role. For the Exact Forum Acceptance signer, authorization for the CPO terms <tt>forum-id</tt> is evaluated separately at the forum-terms boundary and MUST NOT be folded into signed-object trust resolution. In CBAP-1, absence of explicit <tt>forum-id</tt> authorization on the resolved <tt>forum-role</tt> trust entry means authorization for no forum identifier; omission MUST NOT be interpreted as wildcard authorization.</t>
        <t>The valid verification-time range is <tt>0..18446744073709551615</tt>. A negative integer, an integer above that range, or an external representation that is not an integer fails with <tt>verification_time_invalid</tt> before any bundle byte is parsed. A public adapter MAY use a textual or wider host representation to expose this boundary, but parse and range failures MUST be converted to the closed reason. They MUST NOT cause an unhandled exception, panic, process abort, clamping, wrapping, or substitution. An internal API whose type cannot represent an invalid value does not by itself satisfy the externally observable conformance boundary.</t>
        <t>After the complete successful CBAP-1 procedure through boundary 21 passes, the final structured result contains <tt>selection_provenance: unilateral</tt>, <tt>forum_acknowledgement: valid_exact</tt>, <tt>pre_execution_evidence: executor_attested</tt>, and <tt>declared_effect: none</tt>. During evaluation, each field completes only where Section 6.5 assigns its positive transition; this descriptive successful-path sentence neither delays nor advances any field completion. The execution record's authenticated <tt>executed-at</tt> value starts the filing window. This is an executor-signed clock claim authorized through the executor-role entries of the local trust set and local policy, not an external wall-clock proof. The CBAP-1 local trust set is the CBAP-1 form of the generic local trust profile; CBAP-1 does not use the active-effect Executor Trust Profile for signed-object trust resolution or filing-clock authority.</t>
      </section>
    </section>
    <section anchor="binding-to-an-authorization">
      <name>Binding to an Authorization</name>
      <section anchor="direct-binding">
        <name>Direct binding</name>
        <t>An extensible Authorization Artifact carries:</t>
        <sourcecode type="text"><![CDATA[
contestability_digest = cpo_digest
]]></sourcecode>
        <t>The Authorization Artifact's signature MUST cover <tt>contestability_digest</tt>, <tt>authorization_id</tt>, and <tt>action_digest</tt>.</t>
        <t>The CPO terms carry the same <tt>authorization_id</tt>, <tt>action_digest</tt>, ABP identifier and Authorization Trust Profile identifier. They do not carry the final Authorization Artifact digest, avoiding a circular digest dependency.</t>
        <t>The construction order is: select or create valid forum acceptance evidence; construct and sign the CPO; place the completed CPO digest in the Authorization Artifact; sign the Authorization Artifact.</t>
      </section>
      <section anchor="companion-binding-statement">
        <name>Companion binding statement</name>
        <t>Where the Authorization Artifact cannot be extended, the issuer signs a Contestability Binding Statement containing:</t>
        <sourcecode type="json"><![CDATA[
{
  "type": "agent-contestability-binding-v1",
  "authorization_digest": { "alg": "sha-256", "value": "..." },
  "authorization_id": "urn:uuid:...",
  "authorization_binding_profile_digest": {
    "alg": "sha-256",
    "value": "..."
  },
  "authorization_trust_profile_digest": {
    "alg": "sha-256",
    "value": "..."
  },
  "action_digest": { "alg": "sha-256", "value": "..." },
  "cpo_digest": { "alg": "sha-256", "value": "..." },
  "issued_at": "...",
  "issuer": "...",
  "signature": "..."
}
]]></sourcecode>
        <t>For a deployment or profile claiming pre-execution presentation of a companion binding, the statement MUST exist before execution and MUST be presented with the authorization evidence. A post-execution statement cannot retroactively satisfy that pre-execution claim.</t>
      </section>
      <section anchor="pre-execution-evidence-profiles">
        <name>Pre-execution evidence profiles</name>
        <t>The base verifier recognizes evidence classes rather than returning a boolean proof of enforcement.</t>
        <t>An <tt>executor_attested</tt> profile uses an executor-signed verification record containing at least the Authorization Artifact digest, <tt>authorization_id</tt>, <tt>action_digest</tt>, CPO digest, executor decision, nonce, claimed verification time, executor key identifier, and signature. The corresponding execution or refusal record MUST bind the verification-record digest. When an active effect is also selected, the exact authenticated evidence-object identity of the corresponding execution or refusal record accepted for this <tt>executor_attested</tt> path MUST be reused as the action-boundary record identity for the effect-acceptance linkage in Section 5.4 and step 16; a different execution or refusal record identity MUST NOT satisfy that linkage. This establishes a digest-linked signed protocol sequence under keys each independently authorized for the executor role required by the selected profile; it does not by itself establish that the signer keys belong to the same legal, organizational, physical, or logical executor identity, and it does not prove the physical placement or honesty of the executor's checks. A selected pre-execution evidence profile that additionally claims same-executor continuity across the linked records MUST define and verify a complete authenticated relation between the signer keys. That relation MAY require the same exact <tt>kid</tt>, or MAY define authenticated key rotation, delegation, or a common executor identity or authority binding; in every case the profile MUST define the relation authority and evidence, validity and compromise semantics, temporal or ordering rules where applicable, and deterministic failure behavior for missing, ambiguous, conflicting, expired, revoked, unsupported, or otherwise unevaluable relation evidence. The base verifier MUST NOT invent such a relation.</t>
        <t>A <tt>transparency_prior</tt> profile uses registration evidence verified under the selected temporal profile for the CPO digest and an authenticated execution-time event. The selected temporal profile MUST establish that registration preceded the execution event under its stated clock and consistency assumptions. A timestamp copied into either object is insufficient.</t>
        <t>If no pre-execution evidence profile is selected, the verification path makes no pre-execution presentation or enforcement claim and the verifier MUST derive <tt>pre_execution_evidence: not_claimed</tt>; it MUST NOT require or consume a pre-execution evidence object for that classification. If a pre-execution evidence profile is selected, the path makes the corresponding pre-execution claim: absence of evidence required by that selected profile yields <tt>pre_execution_evidence: absent</tt>; supplied or applicable evidence that deterministically fails a required closed-schema, authentication, trust, digest-binding, identifier-binding, ordering, or other profile predicate yields <tt>pre_execution_evidence: invalid</tt>; and a selected profile whose required assumptions, evidence, temporal or trust semantics, or authenticated comparisons cannot be evaluated deterministically yields <tt>pre_execution_evidence: indeterminate</tt> unless invalidity has already been established. A fully verified <tt>executor_attested</tt> or <tt>transparency_prior</tt> path yields the correspondingly named positive result. The CPO binding can remain valid in every one of these cases. Profile selection is the unique signal that this verification path makes a pre-execution claim; a profile or deployment MUST NOT introduce a second boolean claim flag or equivalent duplicate claim owner.</t>
      </section>
      <section anchor="executor-effect-acceptance-statement">
        <name>Executor Effect Acceptance Statement</name>
        <t>An active effect policy becomes executor-accepted only through a separate statement created after the Authorization Artifact and CPO are complete but before the action executes:</t>
        <sourcecode type="json"><![CDATA[
{
  "type": "agent-executor-effect-acceptance-v1",
  "authorization_digest": {
    "alg": "sha-256",
    "value": "base64url..."
  },
  "authorization_id": "urn:uuid:...",
  "action_digest": { "alg": "sha-256", "value": "base64url..." },
  "cpo_digest": { "alg": "sha-256", "value": "base64url..." },
  "effect_policy_digest": {
    "alg": "sha-256",
    "value": "base64url..."
  },
  "forum_acceptance_digest": {
    "alg": "sha-256",
    "value": "base64url..."
  },
  "decision": "accepted",
  "valid_until": "2026-08-12T00:00:00Z",
  "accepted_at": "2026-08-11T00:00:01Z",
  "nonce": "base64url...",
  "executor": "https://executor.example/",
  "key_id": "https://executor.example/keys/8",
  "signature": "base64url..."
}
]]></sourcecode>
        <t>For <tt>agent-executor-effect-acceptance-v1</tt>, the signature MUST verify over the exact <tt>effect_acceptance_tbs</tt> defined in Section 4.9; the <tt>signature</tt> member is excluded from that projection. The verifier MUST require <tt>executor</tt> to equal the Effect Policy executor identifier and <tt>key_id</tt> to equal the Effect Policy executor verification-key identifier. The signature MUST verify under that executor key after it has been resolved under the locally accepted Executor Trust Profile selected by the Effect Policy. The digests MUST resolve to the same verified Authorization Artifact, action, CPO, effect policy, and forum acceptance evidence.</t>
        <t>The verifier MUST derive <tt>effect_acceptance_required_until</tt> from authenticated profile evidence using the active-effect temporal rules above, and MUST require both <tt>accepted_at &lt;= valid_until</tt> and <tt>valid_until &gt;= effect_acceptance_required_until</tt>. These two validity-coverage comparisons are inclusive. Their inclusivity does not alter the separate ordering predicates that require a hold trigger before execution or a fence trigger after execution and before finality. If either validity-coverage comparison is false, <tt>effect_acceptance</tt> is <tt>invalid</tt>. If a required authenticated execution, filing-window, or finality boundary cannot be established, cannot be deterministically reduced to one value, or cannot be placed into the required common totally ordered comparison domain, <tt>effect_acceptance</tt> is <tt>indeterminate</tt> unless another already-defined earlier failure classification applies. A verifier MUST NOT supply a missing reduction, conversion, comparison, or clock convention locally.</t>
        <t>The complete received signed acceptance statement has <tt>effect_acceptance_digest</tt> as defined in Section 4.9. The corresponding execution or refusal record MUST bind that exact digest. When the selected pre-execution evidence profile has established <tt>pre_execution_evidence: executor_attested</tt>, this corresponding record MUST be the same exact authenticated evidence-object identity accepted for that <tt>executor_attested</tt> path, and the shared object MUST bind both the exact verification-record digest required by Section 5.3 and this exact <tt>effect_acceptance_digest</tt>. This same-record identity requirement does not require equality of signer <tt>kid</tt> values and does not establish that the signers represent one legal, organizational, physical, or logical executor identity. This prevents an issuer from attaching an acceptance created for a different action, policy, CPO, or forum. It also places the statement outside the CPO signature graph: the executor can accept a completed authorization without its signature being recursively included in the object it signs. <tt>accepted_at</tt> alone is not ordering evidence. The record linkage establishes an executor-signed protocol sequence; without independently authenticated ordering, it does not prove when the physical checks or action occurred.</t>
        <t>After all earlier acceptance signature, trust, digest, identifier, and validity-horizon checks pass, the verifier MUST apply the bound serialization profile to the exact signed acceptance statement and execution boundary and require the authenticated strict-before predicate <tt>A &lt; E</tt>. If authenticated evidence establishes <tt>A &lt; E</tt>, the acceptance-ordering predicate passes. If authenticated evidence establishes that <tt>A &lt; E</tt> is false, <tt>effect_acceptance</tt> is <tt>invalid</tt>. If the required acceptance or execution ordering evidence is absent, ambiguous, unsupported, non-reducible, or not deterministically comparable under the selected serialization profile, <tt>effect_acceptance</tt> is <tt>indeterminate</tt> unless another already-defined earlier failure classification applies. An implementation MUST NOT upgrade that <tt>indeterminate</tt> result because <tt>accepted_at</tt> happens to be numerically earlier than an execution timestamp.</t>
        <t>A statement that satisfies all required acceptance checks, including the authenticated <tt>A &lt; E</tt> predicate, yields <tt>effect_acceptance: executor_accepted</tt>. Absence, invalid validity coverage, invalid or indeterminate pre-execution acceptance ordering, unavailable or non-comparable required temporal evidence, key mismatch, digest mismatch, or signature failure MUST NOT invalidate the underlying Contestability Binding. It changes only the effect-acceptance result. Executor acceptance is an authenticated commitment under the accepted executor key to implement the bound state transition under the selected profile; it is not evidence that any trigger occurred or transition was applied.</t>
      </section>
      <section anchor="filing-triggers-and-effect-application">
        <name>Filing triggers and effect application</name>
        <t>An <tt>accepted_filing_receipt</tt> trigger profile MUST authenticate at least the following closed projection from the forum's receipt:</t>
        <sourcecode type="json"><![CDATA[
{
  "type": "agent-contestation-filing-receipt-v1",
  "filing_id": "urn:uuid:...",
  "authorization_digest": {
    "alg": "sha-256",
    "value": "base64url..."
  },
  "authorization_id": "urn:uuid:...",
  "action_digest": { "alg": "sha-256", "value": "base64url..." },
  "cpo_digest": { "alg": "sha-256", "value": "base64url..." },
  "submission_digest": { "alg": "sha-256", "value": "base64url..." },
  "disposition": "accepted",
  "received_at": "2026-08-11T00:10:00Z",
  "nonce": "base64url...",
  "forum_key_id": "https://forum.example/keys/2026-1",
  "signature": "base64url..."
}
]]></sourcecode>
        <t>The receipt signature, time, replay, and key-continuity rules are those of the selected trigger profile. The verified forum acceptance evidence MUST authenticate the same exact URI+digest submission-receipt profile pair selected by <tt>trigger_profile</tt> and the same forum key. For every receipt carrying <tt>submission_digest</tt>, the selected trigger profile MUST define the exact filing or submission representation committed by that digest; whether the digest input is the exact received submission bytes or a completely defined profile-canonical representation; every canonicalization rule when canonicalization is used; the digest algorithm and the meaning of the receipt <tt>alg</tt> member; the exact digest comparison rule; and any filing or submission material that the verifier must receive to recompute or otherwise validate the digest. Open descriptions such as "canonical JSON", "normalized request", or "semantic contents" are insufficient unless the selected profile completely defines the resulting digest input. The base protocol does not otherwise define a universal filing-submission representation or add the filing contents as a universal verifier input. For an accepted receipt that successfully authenticates the trigger, the verifier MUST compute <tt>filing_receipt_digest = signed_artifact_digest(signed_Filing_Receipt)</tt> over the exact complete received signed receipt. The selected trigger profile MUST define the exact signed receipt representation and signed-artifact digest instantiation. <tt>authorization_digest</tt> binds the receipt to the completed signed Authorization Artifact and prevents a receipt created before issuance from triggering a later artifact that reuses the same identifier, action, and CPO. A receipt with <tt>disposition: refused</tt> is evidence of refusal, not an effect trigger. An accepted receipt yields <tt>effect_trigger: valid</tt> only for the exact Authorization Artifact, action, CPO, filing, profile, and effect policy to which it is applied.</t>
        <t>After verifying a valid trigger, the executor can issue an Effect Application Record:</t>
        <sourcecode type="json"><![CDATA[
{
  "type": "agent-effect-application-record-v1",
  "authorization_digest": {
    "alg": "sha-256",
    "value": "base64url..."
  },
  "authorization_id": "urn:uuid:...",
  "action_digest": { "alg": "sha-256", "value": "base64url..." },
  "cpo_digest": { "alg": "sha-256", "value": "base64url..." },
  "effect_policy_digest": {
    "alg": "sha-256",
    "value": "base64url..."
  },
  "effect_acceptance_digest": {
    "alg": "sha-256",
    "value": "base64url..."
  },
  "filing_receipt_digest": {
    "alg": "sha-256",
    "value": "base64url..."
  },
  "idempotency_key": "base64url...",
  "previous_state_commitment": {
    "alg": "sha-256",
    "value": "base64url..."
  },
  "new_state_commitment": {
    "alg": "sha-256",
    "value": "base64url..."
  },
  "sequence": 418,
  "disposition": "applied",
  "reason": "bound-fence-entered",
  "recorded_at": "2026-08-11T00:10:01Z",
  "executor": "https://executor.example/",
  "key_id": "https://executor.example/keys/8",
  "signature": "base64url..."
}
]]></sourcecode>
        <t>Before treating an Effect Application Record signature as valid over a conforming record, the verifier MUST require the received member set to satisfy the selected closed state-machine, idempotency, and serialization-profile rules. The signature MUST verify over the exact <tt>application_record_tbs</tt> defined in Section 4.9; the <tt>signature</tt> member is excluded from that projection and every other profile-required member is included.</t>
        <t>The disposition is one of <tt>applied</tt>, <tt>refused</tt>, <tt>too_late</tt>, <tt>already_applied</tt>, or <tt>failed</tt>. <tt>reason</tt> is a closed code defined by the state-machine profile, not free text. <tt>applied</tt> MUST carry the previous and new state commitments and the authenticated sequence at which the transition committed. <tt>already_applied</tt> MUST carry a <tt>prior_application_digest</tt> that equals the <tt>application_record_digest</tt> of the first valid Effect Application Record for the same idempotency key. Other dispositions MUST follow the profile's closed rules for whether a current-state commitment is present and MUST NOT manufacture a new-state commitment.</t>
        <t>Effect Application Record verification uses staged classification. First, the verifier MUST establish record admissibility: the closed record/profile shape, signature, accepted executor key, Authorization Artifact/action/CPO/policy/acceptance/receipt bindings, idempotency identity, and the state-machine and serialization-profile predicates required to identify the exact authenticated application transition. A failure at this stage yields <tt>effect_application: invalid</tt>; a verifier MUST NOT derive <tt>too_late</tt> from an unauthenticated or misbound transition. Second, for an admissible record, the verifier compares the exact authenticated application-transition time with the derived application deadline. Under the base active-effect profile, <tt>authenticated_application_time &gt; application_deadline</tt> yields <tt>effect_application: too_late</tt>, regardless of the signed record's claimed disposition; the base profile defines no deterministic grace exception. A signed <tt>applied</tt> claim in that case is non-conforming executor evidence and MAY be retained as an operator diagnostic or equivocation/conformance signal, but it does not change the derived <tt>too_late</tt> result. If the required authenticated application-transition time cannot be derived deterministically after record admissibility has been established, <tt>effect_application</tt> is <tt>indeterminate</tt> unless another already-defined earlier classification applies. Third, only for an admissible on-time transition does the verifier evaluate the remaining closed disposition/state semantics. If those semantics validate, <tt>disposition: applied</tt> yields <tt>effect_application: executor_claimed_applied</tt>, <tt>disposition: refused</tt> yields <tt>effect_application: executor_claimed_refused</tt>, <tt>disposition: already_applied</tt> yields <tt>effect_application: already_applied</tt>, and <tt>disposition: failed</tt> yields <tt>effect_application: failed</tt>. An admissible on-time record with <tt>disposition: too_late</tt> contradicts the authenticated timing predicate and yields <tt>effect_application: invalid</tt>; the signed claim MAY be retained as an operator diagnostic or equivocation/conformance signal. Any other deterministic mismatch in the remaining disposition/state semantics yields <tt>effect_application: invalid</tt> unless another already-defined earlier classification applies.</t>
        <t>After successful record verification, the verifier MUST compute <tt>application_record_digest</tt> from the complete received signed Effect Application Record. For the same idempotency key, at most one application record can contribute a successful transition result under the bound profile; a later valid record MUST resolve to <tt>already_applied</tt> or to an equivocation condition rather than a second successful application. Conflicting validly signed records are equivocation evidence and yield <tt>effect_application: indeterminate</tt> unless the selected profile deterministically resolves them.</t>
        <t>For <tt>hold_before_execution</tt>, the application record and its sequence MUST precede the execution boundary, and the subsequent executor record MUST carry the bound hold or refusal disposition and MUST bind <tt>application_record_digest</tt>. For <tt>fence_after_execution</tt>, the application sequence MUST follow action execution and precede the bound finality boundary. A wall-clock comparison alone is insufficient where concurrent transitions are possible. Without verified serialization evidence, a verifier MUST NOT report the transition as ordered even if all timestamps and signatures validate.</t>
        <t>An Effect Application Record proves that the accepted executor key made the signed claim. It does not prove physical state, performance by another system, or legal effect. <tt>applied</tt> means only that the record and its state transition verify under the bound state-machine and serialization profiles. It MUST NOT be translated into <tt>reversed</tt>, <tt>remedied</tt>, or <tt>restored</tt>.</t>
      </section>
    </section>
    <section anchor="verification">
      <name>Verification</name>
      <t>The generic verifier consumes the protocol objects, evidence, and local inputs
required by the selected verification path. Its inputs are:</t>
      <ul spacing="normal">
        <li>
          <t>the Authorization Artifact, action, CPO, and any companion binding statement;</t>
        </li>
        <li>
          <t>the Forum Acceptance Evidence referenced by the CPO when <tt>forum_acceptance.mode</tt> is <tt>exact</tt> or <tt>class_manifest</tt>; no Forum Acceptance Evidence input is required or consumed for <tt>none</tt>;</t>
        </li>
        <li>
          <t>the referenced policy and profile semantics, and any profile-defined material
required to apply them, including the exact selection profile and any
selected pre-execution, Notice, affected-party-access, Executor Trust,
trigger, state-machine, idempotency, serialization, temporal, or freshness
profile;</t>
        </li>
        <li>
          <t>trusted local policy, the local trust profile, verification time, and any
profile-defined retained state required for replay, idempotency, or ordering;</t>
        </li>
        <li>
          <t>when selected by local policy, the policy-freshness profile identifier and
its required evidence and, separately when selected by trusted local verifier policy, the Forum Operational Status Profile identifier and its required observation evidence; and</t>
        </li>
        <li>
          <t>the path-dependent evidence objects required by steps 8 and 16 through 22
under the selected profiles, including, when applicable, pre-execution
evidence, an Executor Effect Acceptance Statement, linked execution or
refusal evidence, a Contestability Notice, delivery or retrievability
evidence, filing-window event evidence, a filing receipt, an Effect
Application Record, and profile-required prior-application or
ordering/finality evidence.</t>
        </li>
      </ul>
      <t>A selected profile identifier is not by itself content-integrity or trust
evidence. Where a profile is content-addressed, the verifier uses only the
exact bytes and digest construction defined by that profile. Values derived by
verification, including <tt>authorization_digest</tt>, <tt>effect_acceptance_digest</tt>,
<tt>effect_acceptance_required_until</tt>, the derived pre-execution
<tt>acceptance_before_execution</tt> result, <tt>filing_receipt_digest</tt>,
<tt>application_record_digest</tt>, <tt>notice_digest</tt>, <tt>trigger_time</tt>, filing-window
closing time, and <tt>application_deadline</tt>, are not independent caller inputs.</t>
      <t>Given those inputs, the verifier MUST:</t>
      <ol spacing="normal" type="1"><li>
          <t>Parse every object under its declared closed-object rules.</t>
        </li>
        <li>
          <t>Recompute the canonical action digest and require equality with the Authorization Artifact and CPO.</t>
        </li>
        <li>
          <t>Verify and project the Authorization Artifact under the claimed ABP and Authorization Trust Profile, require the applied ABP identifier, the applied Authorization Trust Profile identifier, and the projected tuple to match the corresponding CPO terms, identify the authorization issuer, and derive <tt>authorization_digest</tt> from the exact complete signed Authorization Artifact under that ABP.</t>
        </li>
        <li>
          <t>Verify the direct binding or companion binding statement.</t>
        </li>
        <li>
          <t>Recompute the CPO digest and require equality with the bound digest.</t>
        </li>
        <li>
          <t>Use the <tt>authorization_id</tt> from the successful ABP projection as the reference authorization identifier and the recomputed canonical action digest as the reference action digest. For each member independently, define the equality domain as every supplied object whose selected closed profile defines that member. An object whose selected closed profile does not define <tt>authorization_id</tt> is outside the authorization-identifier equality domain, and an object whose selected closed profile does not define <tt>action_digest</tt> is outside the action-digest equality domain. This is not an optional-ignore rule: omission of a member required by the selected closed profile fails that object's closed-object or schema rules. For every supplied path-dependent evidence object <tt>o</tt>, identify the exact authenticated evidence object, or use the selected profile's deterministic object-identity rule when that profile defines one, and derive one internal object-scoped equality state for that identity. If the selected closed profile defines neither equality-domain member, that state is <tt>not_applicable</tt>. Otherwise, at the earliest boundary that has accepted the closed profile/schema, resolved every trust/key/issuer authority required to make the relevant member authoritative, and successfully authenticated the object where the profile requires authentication, compare every profile-defined <tt>authorization_id</tt> and <tt>action_digest</tt> exactly once to the corresponding step-6 reference value and set that object's equality state to <tt>valid</tt> or <tt>invalid</tt>. This equality state is verifier-internal derived state, not a protocol field. For each semantic use <tt>u</tt> of <tt>o</tt>, <tt>RolePredicates(o, u)</tt> means every additional predicate required to make <tt>o</tt> valid evidence for that exact use, wherever that predicate is defined by this document or by a selected profile to which this document explicitly delegates that predicate class. A selected profile MUST NOT supply an otherwise unspecified predicate class merely because doing so would make a use executable. Before any generic semantic step consumes <tt>o</tt>, consumes any value derived from <tt>o</tt>, or derives any positive semantic classification that depends on <tt>o</tt> for use <tt>u</tt>, the verifier MUST establish all of the following: the closed profile/schema, trust/key/issuer-authority, and authentication/signature requirements applicable to <tt>o</tt> have passed (<tt>Authority(o)</tt>); the object-scoped equality state is <tt>valid</tt> or <tt>not_applicable</tt> (<tt>N7(o)</tt>); and every <tt>RolePredicates(o, u)</tt> predicate required for that exact use has passed. Authentication or predicate evaluation performed solely to establish this admissibility is not itself such semantic consumption. Successful derivation of a value from <tt>o</tt> does not by itself establish that <tt>o</tt> was admissible evidence for the use of that value. A predicate already established for the same evidence object and still applicable to a later use MAY be reused and MUST NOT be re-evaluated solely because another numbered step consumes the same object or a value derived from it. If the first semantic consumer occurs before a later numbered step that would otherwise verify the same evidence, the first consumer MUST establish this complete role admissibility before using the object or any derived value, and the later step MUST reuse every still-applicable established predicate and the already-established equality state. An <tt>invalid</tt> equality state belongs to the selected evidence object's semantic result and blocks every positive classification that depends on that object; it MUST NOT be promoted to <tt>binding</tt> except for the core Authorization Artifact, CPO, and direct or companion binding predicates already owned by steps 2 through 5 and 7. Step 6 therefore establishes the reference values, equality domains, object-identity rule, unique equality owner, and the single generic role-admissibility-before-use invariant; role-specific predicates remain defined where their semantics live and are aggregated here rather than duplicated. It MUST NOT eagerly compare an unauthenticated object's member, and no consumer step may acquire a second equality owner merely by mentioning the same evidence.</t>
        </li>
        <li>
          <t>Verify the CPO issuer signature and require the issuer to be the authorization issuer or an authority explicitly accepted by local policy.</t>
        </li>
        <li>
          <t>If no pre-execution evidence profile is selected, derive <tt>pre_execution_evidence: not_claimed</tt> and consume no pre-execution evidence object. Otherwise, verify the selected pre-execution evidence profile for the same CPO digest subject to the object-scoped equality precondition in step 6 and classify exactly as defined in the Pre-execution evidence profiles section: required evidence absent yields <tt>absent</tt>; supplied or applicable evidence that deterministically fails a required profile, authentication, binding, or ordering predicate yields <tt>invalid</tt>; an applicable selected profile that cannot be evaluated deterministically yields <tt>indeterminate</tt> unless invalidity has already been established; and a fully verified supported profile yields <tt>executor_attested</tt> or <tt>transparency_prior</tt> as applicable. The verifier MUST NOT treat an executor claim as physical proof of execution order. An invalid equality state for that evidence belongs to <tt>pre_execution_evidence</tt>, not <tt>binding</tt>.</t>
        </li>
        <li>
          <t>Verify time validity and replay constraints.</t>
        </li>
        <li>
          <t>Verify the digests of the Standing Policy, procedure, and selection policy. If the optional policy-freshness input is present, require its profile identifier to be accepted by local policy, apply that profile to the required evidence, and derive <tt>policy_freshness</tt>; if that selected profile is content-addressed, additionally verify the exact bytes and digest construction defined by that profile. If that input is absent or cannot be evaluated, return <tt>indeterminate</tt> for that field. Independently, if a Forum Operational Status Profile is selected by trusted local policy, require that exact profile identifier to be accepted by local policy and, where content-addressed, verify its exact bytes and digest construction; then apply that profile to its required operational observation evidence subject to the object-scoped equality and role-admissibility rules in step 6, require the evidence to evaluate the exact authenticated CPO <tt>forum.submission_endpoint</tt>, and derive <tt>forum_operational_status: reachable</tt> only from admissible evidence proving the profile-defined success predicate or <tt>unreachable</tt> only from admissible evidence proving the profile-defined failure predicate. If no Forum Operational Status Profile is selected, derive <tt>forum_operational_status: not_checked</tt>; if one is selected but its required evidence or semantics are absent, invalid, stale, ambiguous, unsupported, non-reducible, or otherwise not deterministically evaluable, derive <tt>forum_operational_status: indeterminate</tt>. Missing evidence alone MUST NOT yield <tt>unreachable</tt>, and this step MUST NOT perform implicit network I/O.</t>
        </li>
        <li>
          <t>Recompute <tt>terms_digest</tt> and <tt>forum_terms_digest</tt>, then branch exhaustively on the authenticated closed <tt>forum_acceptance.mode</tt>. For <tt>none</tt>, require the exact closed <tt>{ "mode": "none" }</tt> shape, require and consume no Forum Acceptance Evidence, derive no <tt>acceptance_digest</tt> or <tt>forum_acceptance_digest</tt>, and set <tt>forum_acknowledgement: absent</tt>. For <tt>exact</tt>, authenticate the Exact Forum Acceptance Statement before classifying any of its members, subject to the object-scoped equality precondition in step 6; its profile defines neither <tt>authorization_id</tt> nor <tt>action_digest</tt>, so its object-scoped equality state is <tt>not_applicable</tt>. Only after its signature and digest have successfully authenticated the received <tt>signed_at</tt> and <tt>valid_from</tt> values, require <tt>signed_at &lt;= authorization_validity_lower_bound</tt> and <tt>valid_from &lt;= authorization_validity_lower_bound</tt>, where <tt>authorization_validity_lower_bound</tt> is the authenticated executable lower bound produced by the successful ABP projection. A false comparison yields <tt>forum_acknowledgement: invalid_scope</tt>; if the required authenticated lower bound cannot be obtained or compared deterministically, yield <tt>forum_acknowledgement: indeterminate</tt> unless an earlier already-defined failure classification applies. For <tt>class_manifest</tt>, authenticate the FAM signature and digest subject to step 6; FAM-v1 likewise defines neither equality-domain member and therefore has object-scoped equality state <tt>not_applicable</tt>; require the authenticated type to select Section 4.11, require <tt>key_id</tt> to equal <tt>forum.verification_key_id</tt>, verify the signer under the local forum-role trust abstraction including forum-identifier authorization when defined, and require <tt>1 &lt;= minimum_duration_seconds &lt;= maximum_filing_horizon_seconds</tt>. Missing, invalid, unsupported, or otherwise unevaluable evidence required by <tt>exact</tt> or <tt>class_manifest</tt> follows the existing failure semantics and MUST NOT yield <tt>absent</tt>.</t>
        </li>
        <li>
          <t>Branch on the same three modes. For <tt>none</tt>, evaluate no forum-acceptance scope predicate and preserve <tt>forum_acknowledgement: absent</tt>. For <tt>exact</tt>, require the accepted <tt>forum_terms_digest</tt> to match. For <tt>class_manifest</tt>, require the successfully applied ABP and Authorization Trust Profile identifier pair to appear in <tt>accepted_authorization_classes</tt>; require exact CPO-to-FAM equality for forum identifier, submission endpoint, forum verification-key identifier, Standing Policy URI+digest, and procedure URI+digest; require the CPO filing basis to be permitted; require <tt>minimum_duration_seconds &lt;= duration_seconds &lt;= maximum_filing_horizon_seconds</tt>; and require the executable authorization-validity interval to be wholly contained in <tt>may_bind_from..may_bind_until</tt>, inclusive. The FAM submission-receipt profile and withdrawal policy remain authenticated forum parameters rather than CPO class-comparison operands. If the selected filing basis can yield multiple authenticated candidate times, the filing-window profile still MUST define the deterministic reduction required by Section 4.4.1.</t>
        </li>
        <li>
          <t>Branch on the same three modes before verifying selection evidence. For <tt>none</tt>, recompute <tt>selection_input_none = HASH("agent-contestation-selection-no-acceptance-v1" || terms_digest)</tt> and verify every selection-evidence item against exactly that input. For <tt>exact</tt> or <tt>class_manifest</tt>, recompute the existing <tt>selection_input</tt> from <tt>terms_digest</tt> and the verified <tt>acceptance_digest</tt> and verify every item against exactly that input. In every mode use the exact selection profile identified by <tt>terms.selection_policy.digest</tt> and the local trust profile; a verifier MUST NOT substitute a different selection profile while reporting provenance for the same CPO. If that selected profile claims non-unilateral provenance, require it to declare exactly one of <tt>multiparty</tt> or <tt>external</tt>; both declared classes make the profile invalid or unsupported for provenance derivation, and neither declared class means the profile cannot establish a non-unilateral provenance result.</t>
        </li>
        <li>
          <t>Derive selection provenance as specified in Section 6.1, accounting for role co-location under the local trust profile and evaluating only the single non-unilateral class declared by the selected profile. Evidence for the other non-unilateral class MUST NOT silently reclassify the result.</t>
        </li>
        <li>
          <t>Parse the effect policy as a closed object, then branch exhaustively on <tt>forum_acceptance.mode</tt> before any active-effect processing. For this algorithm, the active-effect path is the effect-specific processing in steps 16, 20, 21, and 22. For <tt>none</tt>, if <tt>effect_policy.mode</tt> is not <tt>none</tt>, derive <tt>declared_effect: invalid</tt>, derive <tt>effect_acceptance: indeterminate</tt>, <tt>effect_trigger: indeterminate</tt>, <tt>effect_ordering: indeterminate</tt>, and <tt>effect_application: indeterminate</tt>, consume no active-effect evidence, and do not enter the active-effect path. Otherwise, for <tt>none</tt>, require <tt>effect_policy.mode = none</tt> and do not enter the active-effect path. For <tt>exact</tt> or <tt>class_manifest</tt>, if <tt>effect_policy.mode = none</tt>, do not enter the active-effect path; For an active mode, apply the profile-reference rule in Section 3 to every referenced profile; require the bound Executor Trust Profile identifier to be accepted by local policy; for <tt>accepted_filing_receipt</tt>, require <tt>trigger_profile.event</tt> to select that event class and require <tt>trigger_profile.uri</tt> and <tt>trigger_profile.digest</tt> to equal, component by component as one exact URI+digest pair, the <tt>submission_receipt_profile</tt> URI and digest authenticated by the forum acceptance evidence, without URI normalization, local aliasing, or identifier substitution; verify the named executor under the accepted Executor Trust Profile; require the base <tt>application_deadline.basis</tt> to be <tt>authenticated_trigger_time</tt>; and reject any base-profile grace semantics not defined by this document.</t>
        </li>
        <li>
          <t>For any Executor Effect Acceptance Statement, first apply its selected closed statement/profile rules and require the executor and key identifiers needed to select the expected authority to match the Effect Policy; resolve and authorize the executor key under the locally accepted Executor Trust Profile; then verify the signature over the exact <tt>effect_acceptance_tbs</tt> under that resolved key. Establish or reuse the statement's object-scoped equality state under step 6 before evaluating its remaining cross-object bindings; an invalid equality state changes only <tt>effect_acceptance</tt>, not <tt>binding</tt>. Then require all remaining Authorization Artifact, CPO, effect-policy, and forum-acceptance bindings. Before deriving <tt>effect_acceptance_required_until</tt>, establish or reuse under step 6 the object-scoped equality state of every execution, filing-window, or, for fence mode, finality evidence object on which the required boundaries <tt>E</tt>, <tt>W</tt>, or <tt>F</tt> depend; this requirement also applies when the boundary is consumed only indirectly as a value derived from that evidence. If an applicable supporting object's equality state is invalid, that object MUST NOT support a positive <tt>effect_acceptance</tt> result. Derive <tt>effect_acceptance_required_until</tt> only from supporting evidence whose equality state is <tt>valid</tt> or <tt>not_applicable</tt>, using the required deterministic reduction and common comparison domain; if a supporting object or boundary was already verified or derived for an earlier consumer, reuse that established state or value rather than assigning a new equality owner. Require <tt>accepted_at &lt;= valid_until</tt> and <tt>valid_until &gt;= effect_acceptance_required_until</tt>; classify a false validity comparison as <tt>effect_acceptance: invalid</tt> and unavailable, non-reducible, or non-comparable required boundary evidence as <tt>effect_acceptance: indeterminate</tt> unless an earlier defined failure classification applies. Under the bound serialization profile, before deriving authenticated ordering evidence for the exact signed acceptance event and the action execution boundary, establish or reuse under step 6 every supporting evidence object's equality state and require the strict-before predicate <tt>A &lt; E</tt>; classify authenticated evidence proving that predicate false as <tt>effect_acceptance: invalid</tt> and absent, ambiguous, unsupported, non-reducible, or non-comparable required ordering evidence as <tt>effect_acceptance: indeterminate</tt> unless an earlier defined failure classification applies. Compute <tt>effect_acceptance_digest</tt> from the complete received signed acceptance statement; and require any linked execution or refusal record to bind that exact digest. If step 8 established <tt>pre_execution_evidence: executor_attested</tt>, require the execution or refusal evidence-object identity used for this effect-acceptance linkage to be the same exact authenticated evidence-object identity accepted by that <tt>executor_attested</tt> path and require that shared object to bind both the exact verification-record digest and the exact <tt>effect_acceptance_digest</tt>. A deterministically different record identity or a deterministic missing or mismatched required linkage yields <tt>effect_acceptance: invalid</tt>; inability to establish the required shared record identity or linkage deterministically yields <tt>effect_acceptance: indeterminate</tt> unless an earlier already-defined failure classification applies. This same-record check MUST NOT compare signer <tt>kid</tt> values or infer a common executor identity. Do not infer application or physical ordering from acceptance or from <tt>accepted_at</tt>.</t>
        </li>
        <li>
          <t>For generic Notice verification, authenticate any supplied Contestability Notice under its selected Notice profile subject to the object-scoped equality precondition in step 6. For <tt>agent-contestability-notice-v1</tt>, verify the exact Notice signature input under the same locally trusted issuer-role key that authenticated the signed CPO issuer, establish or reuse the Notice's object-scoped equality state, and require that state to be <tt>valid</tt>; an invalid state yields <tt>notice_evidence: invalid</tt> and MUST NOT change <tt>binding</tt>. Then require the remaining effect/CPO digest bindings, Contestability Notice <tt>access.mode = by_reference</tt>, and a Notice <tt>access.uri</tt> equal to the <tt>discovery_uri</tt> of at least one <tt>authenticated_lookup</tt> declaration authenticated in the verified CPO, and classify the Notice as issued, invalid, or absent. Evaluate delivery evidence separately and only when a selected transport profile defines it; before using any exact delivery-evidence object or value derived from it, establish or reuse that object's equality state under step 6. Such evidence MUST bind the same <tt>notice_digest</tt>. Later use of the same evidence object, including as filing-window event evidence, MUST reuse the established equality state and MUST NOT re-evaluate its N7 members.</t>
        </li>
        <li>
          <t>Evaluate each declared affected-party access method under the selected profile subject to the object-scoped equality precondition in step 6. Before using any supplied access-evidence object or value derived from it to produce a positive access result, establish or reuse that object's equality state. Derive <tt>access_binding</tt> from the integrity and profile constraints of those declarations. Evaluate <tt>retrievability</tt> separately; do not infer current availability from a signed URI.</t>
        </li>
        <li>
          <t>Verify or reuse the event evidence named by <tt>filing_window.basis</tt> subject to the object-scoped equality precondition in step 6. Before using that evidence or any value derived from it to produce a positive filing-window result, establish or reuse its object-scoped equality state; an invalid state is a failure of that filing-window evidence and MUST NOT change <tt>binding</tt>. Under the selected filing-window profile, deterministically derive or reuse the filing-clock/start value and closing value <tt>W</tt>, and apply that profile's complete arithmetic, comparison-domain, opening-boundary, closing-boundary, and state-partition rules to the supplied verification time to derive exactly one of <tt>filing_window_status: not_open</tt>, <tt>open</tt>, or <tt>closed</tt>. If the same exact evidence object was already authenticated or its equality state, filing-clock/start value, or <tt>W</tt> was established for an earlier consumer, reuse that state or derived value and MUST NOT re-evaluate its N7 members for first-reason or semantic-classification purposes. If a required authenticated clock input, deterministic reduction, arithmetic rule, representable closing value, comparison-domain rule, boundary rule, or comparable value cannot be established, return <tt>filing_window_status: indeterminate</tt> and, for exact acceptance, <tt>forum_acknowledgement: indeterminate</tt> unless an earlier already-defined failure classification applies. For exact acceptance, only after <tt>W</tt> has been derived require the already-authenticated Exact Forum Acceptance value <tt>valid_until &gt;= W</tt>; a false comparison yields <tt>forum_acknowledgement: invalid_scope</tt>.</t>
        </li>
        <li>
          <t>For any filing receipt, authenticate or reuse the exact receipt under the exact trigger profile and forum key subject to the object-scoped equality precondition in step 6. Establish or reuse its object-scoped equality state before evaluating the remaining Authorization Artifact digest, CPO digest, time, replay, and profile bindings. An invalid equality state is a trigger-path failure and MUST NOT change <tt>binding</tt>. Apply the selected trigger profile's complete <tt>submission_digest</tt> construction and comparison rules before using an accepted receipt as evidence of the exact filing. If the profile requires verifier recomputation and the authenticated receipt digest deterministically mismatches the digest derived from the required filing or submission material, classify <tt>effect_trigger: invalid</tt>. If a required <tt>submission_digest</tt> construction, algorithm, canonicalization, comparison rule, or required filing/submission material is unavailable, unsupported, incomplete, or not deterministically evaluable, classify <tt>effect_trigger: indeterminate</tt> unless another already-defined earlier failure classification applies. Distinguish an accepted filing from a refused or invalid submission and, for the exact complete signed receipt that establishes a valid trigger, derive <tt>filing_receipt_digest</tt>.</t>
        </li>
        <li>
          <t>After a valid trigger, apply the base active-effect application's complete <tt>T</tt>/<tt>Delta</tt>/<tt>D</tt>/<tt>U</tt> contract from Section 4.9: require the trigger profile to derive exactly one authenticated <tt>T</tt>; apply the selected active-effect profile composition's exact seconds interpretation, checked arithmetic, conversion order, precision/rounding, overflow, and non-representable-result rules to derive <tt>D</tt>; identify or deterministically reconcile the authenticated source of exactly one application-transition value <tt>U</tt>; and place <tt>D</tt> and <tt>U</tt> into the required common totally ordered comparison domain before deriving any timing-dependent application result. If a required authenticated value, reduction, duration rule, representation rule, source-owner/reconciliation rule, conversion rule, representable deadline, or comparison rule cannot be established deterministically, return <tt>effect_application: indeterminate</tt> unless another already-defined earlier classification applies. For any Effect Application Record, first require its selected closed record-profile rules and authenticate or reuse its signature verification over the exact <tt>application_record_tbs</tt> subject to the object-scoped equality precondition in step 6. Establish or reuse the record's object-scoped equality state; an invalid state yields <tt>effect_application: invalid</tt> and MUST NOT change <tt>binding</tt>. Then complete record admissibility by requiring its <tt>effect_acceptance_digest</tt> and <tt>filing_receipt_digest</tt> to equal the digests of the exact verified complete signed acceptance and receipt, and verifying the exact policy, executor key, remaining CPO bindings, idempotency identity, and the state-machine and serialization predicates required to identify the authenticated application transition; failure of record admissibility yields <tt>effect_application: invalid</tt>. Only after record admissibility and a deterministic <tt>D</tt>/<tt>U</tt> comparison are established, apply the base no-grace rule: <tt>U &gt; D</tt> yields <tt>effect_application: too_late</tt> regardless of the signed disposition, while <tt>U &lt;= D</tt> is on time. Only for an admissible deterministically on-time transition evaluate the remaining closed disposition/state semantics. If they validate, map <tt>disposition: applied</tt> to <tt>effect_application: executor_claimed_applied</tt>, <tt>disposition: refused</tt> to <tt>effect_application: executor_claimed_refused</tt>, <tt>disposition: already_applied</tt> to <tt>effect_application: already_applied</tt>, and <tt>disposition: failed</tt> to <tt>effect_application: failed</tt>. An admissible deterministically on-time <tt>disposition: too_late</tt> contradicts the authenticated timing predicate and yields <tt>effect_application: invalid</tt>; if the <tt>D</tt>/<tt>U</tt> comparison is indeterminate, the verifier MUST NOT derive that contradiction merely from the signed <tt>too_late</tt> disposition. Any other deterministic mismatch in the remaining disposition/state semantics likewise yields <tt>effect_application: invalid</tt> unless another already-defined earlier classification applies. Compute <tt>application_record_digest</tt> from the complete received signed record after successful record verification.</t>
        </li>
        <li>
          <t>For any supplied ordering or finality evidence required by the bound serialization profile, authenticate, verify, or reuse that exact evidence subject to the object-scoped equality precondition in step 6. Before using it or any value derived from it to derive a positive ordering result, establish or reuse its object-scoped equality state. If the same exact evidence object was already authenticated or its equality state was established for an earlier consumer, including step 16, reuse that state and MUST NOT re-evaluate its N7 members. Separately evaluate whether the trigger, application, execution, and finality transitions are ordered under the bound serialization profile. An invalid equality state belongs to <tt>effect_ordering</tt> and MUST NOT change <tt>binding</tt>. Do not substitute <tt>recorded_at</tt> or another signed wall-clock field for the required authenticated transition or ordering evidence.</t>
        </li>
        <li>
          <t>Return the structured result in Section 6.2.</t>
        </li>
      </ol>
      <t>An Authorization Artifact verification or projection failure, CPO issuer-signature failure, direct or companion binding failure, CPO-digest binding failure, or authorization-identifier/action-digest mismatch owned by those core authorization/CPO predicates makes <tt>binding</tt> invalid. An invalid object-scoped equality state in path-dependent evidence belongs to that evidence object's result and MUST NOT be promoted to a cryptographic binding failure. Every dependent positive classification MUST be blocked before completion rather than repaired by retroactive state rewriting. A forum-acceptance failure changes <tt>forum_acknowledgement</tt>; a selection-signature failure changes <tt>selection_provenance</tt>; a notice failure changes <tt>notice_evidence</tt>; missing filing-clock evidence changes <tt>filing_window_status</tt>; and an effect acceptance, trigger, application, or ordering failure changes only its corresponding effect result. Those failures MUST NOT be collapsed into or misreported as a cryptographic binding failure. Failure to retrieve an otherwise valid digest-bound procedure makes discoverability <tt>incomplete</tt>; it does not rewrite a valid cryptographic binding as invalid.</t>
      <section anchor="selection-provenance">
        <name>Selection provenance</name>
        <t>The verifier derives exactly one value:</t>
        <ul spacing="normal">
          <li>
            <t><tt>unilateral</tt>: only the authorization issuer selected or authenticated the forum and no accepted selection profile establishes a non-unilateral class;</t>
          </li>
          <li>
            <t><tt>multiparty</tt>: the selected profile declares <tt>multiparty</tt> as its single non-unilateral provenance class and every selector role required by that profile signed the same applicable mode-specific selection input (<tt>selection_input</tt> for <tt>exact</tt> or <tt>class_manifest</tt>, <tt>selection_input_none</tt> for <tt>none</tt>);</t>
          </li>
          <li>
            <t><tt>external</tt>: the selected profile declares <tt>external</tt> as its single non-unilateral provenance class and a locally trusted external Selection Authority selected or authenticated the forum under the referenced policy;</t>
          </li>
          <li>
            <t><tt>indeterminate</tt>: evidence is missing, invalid, ambiguous, unsupported, does not satisfy the single non-unilateral class declared by the selected profile, or the selected profile declares both non-unilateral classes.</t>
          </li>
        </ul>
        <t>The verifier MUST evaluate only the non-unilateral provenance class declared by the selected profile. For a <tt>multiparty</tt> profile, participation by an external Selection Authority as one selector role does not reclassify the result as <tt>external</tt>. For an <tt>external</tt> profile, additional selector signatures do not reclassify the result as <tt>multiparty</tt>. Evidence that fails the declared class MUST NOT fall through to the other non-unilateral class. A profile declaring neither <tt>multiparty</tt> nor <tt>external</tt> cannot establish either result.</t>
        <t><tt>multiparty</tt> and <tt>external</tt> describe authenticated selection provenance. Neither means <tt>independent</tt>.</t>
      </section>
      <section anchor="structured-result">
        <name>Structured result</name>
        <t>The following JSON example uses the line-wrapping convention from <xref target="RFC8792"/>.</t>
        <sourcecode type="json"><![CDATA[
{
  "binding": "valid | invalid | indeterminate",
  "pre_execution_evidence": "executor_attested | \
    transparency_prior | absent | invalid | not_claimed | \
    indeterminate",
  "discoverability": "complete | incomplete | indeterminate",
  "forum_acknowledgement": "valid_exact | valid_class | \
    invalid_scope | invalid | absent | indeterminate",
  "forum_operational_status": "reachable | unreachable | \
    not_checked | indeterminate",
  "selection_provenance": "unilateral | multiparty | external | \
    indeterminate",
  "access_binding": "valid | invalid | not_claimed | indeterminate",
  "notice_evidence": "issued | delivered | invalid | absent | \
    not_claimed | indeterminate",
  "retrievability": "available | unavailable | not_checked | \
    indeterminate",
  "filing_window_status": "not_open | open | closed | indeterminate",
  "policy_freshness": "current | stale | indeterminate",
  "declared_effect": "none | hold_before_execution | \
    fence_after_execution | invalid | unsupported | indeterminate",
  "effect_acceptance": "executor_accepted | absent | invalid | \
    not_required | indeterminate",
  "effect_trigger": "valid | refused | invalid | not_observed | \
    not_applicable | indeterminate",
  "effect_ordering": "verified | invalid | not_evidenced | \
    not_applicable | indeterminate",
  "effect_application": "executor_claimed_applied | \
    executor_claimed_refused | too_late | already_applied | \
    failed | invalid | not_observed | not_applicable | \
    indeterminate",
  "reasons": ["closed reason codes"]
}
]]></sourcecode>
        <t>For <tt>binding</tt>, <tt>discoverability</tt>, and <tt>declared_effect</tt>, <tt>indeterminate</tt> means that the verifier has not established enough validated input to select one of the other values in that field's closed vocabulary. It MUST NOT replace a known <tt>invalid</tt>, <tt>incomplete</tt>, or <tt>unsupported</tt> result.</t>
        <t>Before evaluating CBAP-1 failure-precedence boundary 1, a verifier MUST initialize the Section 6.2 result exactly as follows:</t>
        <sourcecode type="json"><![CDATA[
{
  "binding": "indeterminate",
  "pre_execution_evidence": "indeterminate",
  "discoverability": "indeterminate",
  "forum_acknowledgement": "indeterminate",
  "forum_operational_status": "not_checked",
  "selection_provenance": "indeterminate",
  "access_binding": "indeterminate",
  "notice_evidence": "indeterminate",
  "retrievability": "not_checked",
  "filing_window_status": "indeterminate",
  "policy_freshness": "indeterminate",
  "declared_effect": "indeterminate",
  "effect_acceptance": "indeterminate",
  "effect_trigger": "indeterminate",
  "effect_ordering": "indeterminate",
  "effect_application": "indeterminate",
  "reasons": []
}
]]></sourcecode>
        <t>The two <tt>not_checked</tt> initial values mean that CBAP-1 has not performed an operational reachability or retrievability check. Every other semantic field begins as <tt>indeterminate</tt> because no validated protocol input has yet established a more specific value. The <tt>reasons</tt> array begins empty.</t>
        <t>CBAP-1 evolves this result monotonically under the closed boundaries in Sections 6.4 and 6.5:</t>
        <ul spacing="normal">
          <li>
            <t>For boundaries 1 through 4, a positive semantic-field completion occurs only where Section 6.5 lists it explicitly after the whole boundary passes. No other semantic field completes in those boundaries.</t>
          </li>
          <li>
            <t>For signed-object boundaries 5 through 9, no positive semantic-field completion assigned to a boundary occurs unless the complete signed-object validation pipeline passes. On failure, only the negative transition explicitly assigned to the first failed predicate may occur.</t>
          </li>
          <li>
            <t>For cross-object boundaries 10 through 21, a predicate that passes earlier in the current boundary may complete a semantic field before a later predicate in that boundary fails only where Section 6.5 explicitly lists that completion. There is no open-ended post-failure derivation.</t>
          </li>
          <li>
            <t>A semantic field MUST transition from its initial value at most once. Once completed, it MUST retain that value for the remainder of CBAP-1 verification.</t>
          </li>
          <li>
            <t>On a negative path, <tt>reasons</tt> MUST transition exactly once from <tt>[]</tt> to an array containing the first failure-precedence reason code. On the positive path, <tt>reasons</tt> remains <tt>[]</tt> and transitions zero times.</t>
          </li>
        </ul>
        <t><tt>access_binding</tt> reports the integrity and selected-profile status of the declared affected-party access methods. It is <tt>valid</tt> when the required access declarations are present, their CPO authentication succeeds, and they satisfy the selected access-profile constraints. It is <tt>invalid</tt> when, after the containing CPO has reached the predicate that establishes the relevant authenticated declaration set, a required access declaration is absent under the selected access profile or an authenticated declaration fails an access-profile constraint; it is also <tt>invalid</tt> when the CPO signature predicate fails, when an authenticated CPO signer <tt>key-id</tt> conflicts with the authorization-issuer <tt>key-id</tt> declared in the CPO terms, or when an existing later access-specific predicate has the closed transition to <tt>invalid</tt>. A CPO closed-schema failure that occurs before an authenticated access declaration set has been established does not by itself prove an access declaration invalid and leaves <tt>access_binding</tt> at its prior value unless the closed transition table says otherwise. It is <tt>not_claimed</tt> when the selected profile makes no affected-party access claim. It is <tt>indeterminate</tt> when the access declarations have not been established as invalid but their authenticated applicability cannot be established, including an upstream Authorization Artifact-to-CPO binding failure, a pre-authentication CPO closed-schema failure, or inability to reach the CPO signature predicate after an earlier signed-object failure. It does not report delivery or current retrievability.</t>
        <t><tt>policy_freshness</tt> is <tt>current</tt> only when a selected policy-freshness profile supplies authenticated freshness, version, or expiry rules and all required policy material satisfies them; <tt>stale</tt> only when such a profile is evaluable and its bound rule classifies required material as stale; and <tt>indeterminate</tt> when no selected freshness profile exists or its required evidence cannot be evaluated. CBAP-1 defines no policy-freshness profile and therefore returns <tt>indeterminate</tt> on its positive path.</t>
        <t>Every named profile that instantiates the Section 6.2 structured result MUST define a closed vocabulary for <tt>reasons</tt> and a deterministic rule for populating and ordering that array on negative results. CBAP-1 defines its closed reason vocabulary and first-failure precedence in the CBAP-1 failure-precedence section below, and requires <tt>reasons: []</tt> on its positive path.</t>
        <t>A conforming implementation MUST NOT collapse this result into <tt>contestable: true</tt> or <tt>independent: true</tt> without applying an explicitly identified local policy. In particular, <tt>forum_acknowledgement: valid_exact</tt> does not imply <tt>forum_operational_status: reachable</tt>; <tt>notice_evidence: issued</tt> does not imply human receipt; <tt>effect_acceptance: executor_accepted</tt> does not imply that a filing occurred; <tt>effect_trigger: valid</tt> does not imply application; and <tt>effect_application: executor_claimed_applied</tt> does not prove physical state or remedy. An effect failure does not invalidate the contestation path unless a separate local policy expressly requires the effect as a condition of reliance.</t>
      </section>
      <section anchor="effect-result-derivation">
        <name>Effect-result derivation</name>
        <t>The effect fields are derived independently. At minimum, a verifier applies the following rules:</t>
        <t>For this table, <tt>Valid acceptance</tt> means an Executor Effect Acceptance Statement that has passed all required acceptance checks, including the authenticated strict-before acceptance-ordering predicate <tt>A &lt; E</tt>. Evidence about later trigger or application ordering does not substitute for that acceptance predicate. A deterministic step-15 coupling failure in which <tt>forum_acceptance.mode = none</tt> is paired with an active effect mode yields <tt>declared_effect: invalid</tt>; the dependent effect fields remain <tt>indeterminate</tt> because the invalid declaration blocks active-effect evaluation.</t>
        <table>
          <thead>
            <tr>
              <th align="left">Evidence state</th>
              <th align="left">Derived result</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">
                <tt>forum_acceptance.mode = none</tt> with an active declared effect</td>
              <td align="left">Acceptance: <tt>indeterminate</tt>; Trigger: <tt>indeterminate</tt>; Ordering: <tt>indeterminate</tt>; Application: <tt>indeterminate</tt>.</td>
            </tr>
            <tr>
              <td align="left">Declared mode is <tt>none</tt></td>
              <td align="left">Acceptance: <tt>not_required</tt>; Trigger: <tt>not_applicable</tt>; Ordering: <tt>not_applicable</tt>; Application: <tt>not_applicable</tt>.</td>
            </tr>
            <tr>
              <td align="left">Active mode, no acceptance statement</td>
              <td align="left">Acceptance: <tt>absent</tt>; Trigger: evaluated if supplied; Ordering: <tt>not_applicable</tt> until a valid trigger exists; Application: <tt>invalid</tt> if a record claims application; otherwise <tt>not_observed</tt>.</td>
            </tr>
            <tr>
              <td align="left">Valid acceptance, no filing receipt observed</td>
              <td align="left">Acceptance: <tt>executor_accepted</tt>; Trigger: <tt>not_observed</tt>; Ordering: <tt>not_applicable</tt>; Application: <tt>not_observed</tt>.</td>
            </tr>
            <tr>
              <td align="left">Valid acceptance, refused filing receipt</td>
              <td align="left">Acceptance: <tt>executor_accepted</tt>; Trigger: <tt>refused</tt>; Ordering: <tt>not_applicable</tt>; Application: <tt>not_observed</tt>.</td>
            </tr>
            <tr>
              <td align="left">Valid acceptance and trigger, no application record</td>
              <td align="left">Acceptance: <tt>executor_accepted</tt>; Trigger: <tt>valid</tt>; Ordering: <tt>not_evidenced</tt> unless independently established; Application: <tt>not_observed</tt>.</td>
            </tr>
            <tr>
              <td align="left">Admissible on-time record with <tt>disposition: applied</tt>, verified ordering</td>
              <td align="left">Acceptance: <tt>executor_accepted</tt>; Trigger: <tt>valid</tt>; Ordering: <tt>verified</tt>; Application: <tt>executor_claimed_applied</tt>.</td>
            </tr>
            <tr>
              <td align="left">Admissible on-time record with <tt>disposition: applied</tt>, required ordering evidence not supplied or not observed</td>
              <td align="left">Acceptance: <tt>executor_accepted</tt>; Trigger: <tt>valid</tt>; Ordering: <tt>not_evidenced</tt>; Application: <tt>executor_claimed_applied</tt>.</td>
            </tr>
            <tr>
              <td align="left">Admissible on-time record with <tt>disposition: applied</tt>, ordering evidence present or selected for evaluation but not deterministically resolvable</td>
              <td align="left">Acceptance: <tt>executor_accepted</tt>; Trigger: <tt>valid</tt>; Ordering: <tt>indeterminate</tt>; Application: <tt>executor_claimed_applied</tt>.</td>
            </tr>
            <tr>
              <td align="left">Admissible on-time record with <tt>disposition: refused</tt>, remaining refusal semantics valid</td>
              <td align="left">Acceptance: <tt>executor_accepted</tt>; Trigger: <tt>valid</tt>; Ordering: independently evaluated; Application: <tt>executor_claimed_refused</tt>.</td>
            </tr>
            <tr>
              <td align="left">Admissible on-time record with <tt>disposition: too_late</tt></td>
              <td align="left">Acceptance: <tt>executor_accepted</tt>; Trigger: <tt>valid</tt>; Ordering: independently evaluated; Application: <tt>invalid</tt>; the signed temporal claim contradicts the authenticated on-time transition.</td>
            </tr>
            <tr>
              <td align="left">Admissible record with authenticated application transition after the deadline</td>
              <td align="left">Acceptance: preserve prior result; Trigger: <tt>valid</tt>; Ordering: independently evaluated; Application: <tt>too_late</tt>, regardless of the signed record disposition.</td>
            </tr>
            <tr>
              <td align="left">Inadmissible, unauthenticated, or mismatched application record</td>
              <td align="left">Acceptance: preserve prior result; Trigger: preserve prior result; Ordering: independently evaluated; Application: <tt>invalid</tt>.</td>
            </tr>
            <tr>
              <td align="left">Conflicting valid executor records with no deterministic resolution</td>
              <td align="left">Acceptance: preserve prior result; Trigger: preserve prior result; Ordering: <tt>indeterminate</tt> if affected; Application: <tt>indeterminate</tt>.</td>
            </tr>
          </tbody>
        </table>
        <t><tt>not_evidenced</tt> and <tt>indeterminate</tt> are disjoint ordering results. <tt>not_evidenced</tt> means the required authenticated ordering evidence was not supplied or not observed. <tt>indeterminate</tt> means ordering evidence was supplied or otherwise selected for evaluation but the verifier cannot derive one supported result because the evidence is ambiguous, conflicting, unsupported, non-reducible, non-comparable, or the selected profile lacks a deterministic evaluation rule. A verifier MUST NOT choose between those values by local policy, user-interface preference, or implementation convention. The late-application row reports the derived temporal fact after record admissibility has been established; a signed <tt>disposition: applied</tt> does not override <tt>too_late</tt>. Conversely, an admissible on-time record with signed <tt>disposition: too_late</tt> contradicts the authenticated timing predicate and yields <tt>effect_application: invalid</tt>; the signed claim MAY be retained as an operator diagnostic or equivocation/conformance signal. A user interface MUST NOT present an application claim with unverified, invalid, or indeterminate ordering as an effective hold or fence. Evidence supplied for an active transition when the declared mode is <tt>none</tt> is ignored for effect semantics. An implementation SHOULD retain an <tt>unexpected_effect_evidence</tt> operator diagnostic outside the <tt>reasons</tt> array; it does not alter the bound declaration.</t>
      </section>
      <section anchor="cbap-1-verification-procedure">
        <name>CBAP-1 verification procedure</name>
        <t>In addition to the generic algorithm, a CBAP-1 verifier performs the following closed procedure in order. Steps 1 through 9 establish the local-input, outer-item, policy-set, and signed-object boundaries in the same order as Section 6.5. Resource ceilings from Section 4.14 are predicates of the boundary currently decoding the item and are evaluated before allocation, iteration, closed-schema checks, or later predicates that require the decoded value. For each signed object in steps 5 through 9, the verifier completes that object's entire validation pipeline before examining the next signed object: CBAP-1 resource ceilings and Core Deterministic CBOR conformance under Section 4.14 of the complete tagged COSE_Sign1 item; tagged COSE_Sign1 shape, unprotected-header constraints, and the 64-byte received-signature length constraint; resource ceilings and Core Deterministic CBOR conformance of the CBOR encoded in the protected-header byte string and the protected-header constraints; resource ceilings and Core Deterministic CBOR conformance of the CBOR encoded in the payload byte string; closed payload schema, profile version, and object type; protected <tt>kid</tt> equality to the UTF-8 encoding of the payload signer <tt>key-id</tt>; unique role-authorized trust resolution, evaluating exact protected-<tt>kid</tt> and required-role matching and exactly-one cardinality before requiring the uniquely resolved COSE_Key <tt>alg</tt>, when present, to equal <tt>-19</tt>; and signature verification over the received protected and payload bytes with empty external AAD. For failure-precedence purposes, the closed payload schema includes every constraint expressed directly by the CBAP-1 CDDL, including fixed integer values, CDDL cardinality constraints, and fixed empty arrays; a fixed CDDL constraint that fails at steps 5 through 9 MUST NOT be re-evaluated at steps 13, 17, or 18. Within a closed map, member constraints are evaluated in ascending numeric-label order; within a list, items are evaluated from index zero upward. For steps 10 through 21, predicates are evaluated in the order stated in the corresponding step.</t>
        <ol spacing="normal" type="1"><li>
            <t>Validate the verification-time input as an integer in <tt>0..18446744073709551615</tt>. Return <tt>verification_time_invalid</tt> on a parse, type, sign, or range failure without parsing the bundle.</t>
          </li>
          <li>
            <t>Before parsing the bundle, require the complete received bundle to be no more than <tt>MAX_BUNDLE_BYTES</tt>. Then parse exactly one outer CBOR item and require complete input consumption, the CBAP-1 resource ceilings applicable at the outer-item boundary, and the Core Deterministic CBOR constraints that can be evaluated without applying the closed <tt>cbap1-bundle</tt> schema. At this outer-item boundary, reject every CBOR tag, including tag 18; the required tag 18 applies only to each signed COSE_Sign1 object carried inside a bundle <tt>bstr</tt>. Also reject duplicate map keys, indefinite-length items, non-shortest arguments, disallowed simple values, floats, invalid UTF-8, any declared length that cannot be consumed with checked cursor arithmetic, or any outer-boundary resource ceiling exceeded by a declared item. Re-encode that outer item under Section 4.14 and require byte-for-byte equality. Do not reject an otherwise deterministic outer item merely because its bundle version, members, or member types do not match <tt>cbap1-bundle</tt>; those checks belong to step 3.</t>
          </li>
          <li>
            <t>Require the outer item to be the closed <tt>cbap1-bundle</tt> with the supported profile version, all required members, no unknown members, and the required outer member types. For bundle member <tt>8</tt>, apply the complete CDDL grammar <tt>8: [+ [digest, bstr]]</tt> together with <tt>digest = bstr .size 32</tt> at this step: require a non-empty policy-set array; require each item to be exactly a two-element <tt>[digest, bstr]</tt> pair; require the digest to be a 32-byte byte string; and require the policy bytes to be a byte string. These CDDL-expressed member-8 constraints belong to this boundary and MUST NOT be re-evaluated at step 4. The <tt>MAX_POLICY_PAIRS</tt> upper bound, profile-defined ordering, uniqueness, and digest integrity are evaluated only at step 4.</t>
          </li>
          <li>
            <t>Validate the already CDDL-valid policy set. Require the array to contain no more than <tt>MAX_POLICY_PAIRS</tt> pairs, require the array to be in the profile-defined order, reject duplicate policy digests, recompute SHA-256 over each policy byte string, and require equality. At this step only the <tt>MAX_POLICY_PAIRS</tt> upper bound, order, uniqueness, and internal digest integrity are evaluated. Member-8 non-empty cardinality, exact pair shape, 32-byte digest type/size, and policy-byte <tt>bstr</tt> type were already established at step 3 and MUST NOT be re-evaluated here. Referenced-policy presence is evaluated at step 13 after all five signed payloads have passed their object-validation pipelines. The upper-bound predicate remains inside B4 <tt>policy_set_invalid</tt>; it creates no semantic-field transition, so B4 remains P <tt>--</tt> / N <tt>--</tt> as specified in Section 6.5.</t>
          </li>
          <li>
            <t>Apply the complete signed-object validation pipeline above to the CPO using its <tt>issuer-role</tt> assignment in the CBAP-1 signed-object role table, and no later signed object.</t>
          </li>
          <li>
            <t>Apply the complete signed-object validation pipeline above to the Exact Forum Acceptance using its <tt>forum-role</tt> assignment in the CBAP-1 signed-object role table, and no later signed object.</t>
          </li>
          <li>
            <t>Apply the complete signed-object validation pipeline above to the Authorization Artifact using its <tt>issuer-role</tt> assignment in the CBAP-1 signed-object role table, and no later signed object.</t>
          </li>
          <li>
            <t>Apply the complete signed-object validation pipeline above to the Executor Verification record using its <tt>executor-role</tt> assignment in the CBAP-1 signed-object role table, and no later signed object.</t>
          </li>
          <li>
            <t>Apply the complete signed-object validation pipeline above to the Execution Record using its <tt>executor-role</tt> assignment in the CBAP-1 signed-object role table.</t>
          </li>
          <li>
            <t>Hash the complete signed CPO and require equality with the Authorization Artifact's CPO digest.</t>
          </li>
          <li>
            <t>Hash the complete signed Exact Forum Acceptance and require equality with the CPO acceptance reference.</t>
          </li>
          <li>
            <t>Recompute <tt>action_digest</tt> from the bundle's action bytes. Then, in this order, require equality with CPO terms label <tt>6</tt>, Authorization Artifact label <tt>6</tt>, Executor Verification label <tt>5</tt>, and Execution Record label <tt>6</tt>.</t>
          </li>
          <li>
            <t>Evaluate these predicates in order. Require the CPO terms to use the expected CBAP-1 ABP identifier, then the expected Authorization Trust Profile identifier. Require the CPO signer <tt>key-id</tt> to equal the CPO terms authorization-issuer <tt>key-id</tt>. Require <tt>not-before &lt;= not-after</tt>. Require the filing-window duration to be in <tt>1..18446744073709551615</tt>. Require conforming HTTPS URIs, first evaluating the URI-bearing <tt>cbap1-terms</tt> members in ascending numeric-label order and nested list entries in ascending index order: forum-id <tt>7[0]</tt>, submission-endpoint <tt>7[1]</tt>, Standing Policy URI <tt>8[0]</tt>, procedure URI <tt>9[0]</tt>, selection-policy URI <tt>12[0]</tt>, and each affected-party <tt>discovery-uri</tt> at <tt>13[i][1]</tt> for increasing <tt>i</tt>; then evaluate Exact Forum Acceptance submission-receipt-profile URI <tt>6[0]</tt> and withdrawal-policy URI <tt>7[0]</tt>, in that order. Require the CPO terms forum <tt>key-id</tt> to encode as 1 through 64 UTF-8 bytes. Let <tt>referenced_policy_digests</tt> be the set of policy digests carried at CPO terms labels <tt>8</tt>, <tt>9</tt>, and <tt>12</tt> and Exact Forum Acceptance labels <tt>6</tt> and <tt>7</tt>. Require every digest in <tt>referenced_policy_digests</tt> to be present in bundle member <tt>8</tt>. Then require bundle member <tt>8</tt> to contain no policy digest outside <tt>referenced_policy_digests</tt>. Do not compare the Authorization Artifact projection or any other signed-artifact digest at this step.</t>
          </li>
          <li>
            <t>Require the Authorization Artifact's authorization identifier, issuer <tt>key-id</tt>, and validity projection to equal the corresponding CPO terms. Do not compare its action digest or CPO digest at this step.</t>
          </li>
          <li>
            <t>Project <tt>forum_terms</tt> exactly as Section 4.17 specifies. Require its digest in the already-validated and CPO-bound Exact Forum Acceptance to equal that projection. Require the Exact Forum Acceptance signer <tt>key-id</tt> to equal the CPO terms forum <tt>key-id</tt> exactly. Require the trust entry resolved for that signer at step 6 to carry explicit authorization for the exact CPO terms <tt>forum-id</tt>; an entry with no <tt>forum-id</tt> authorization fails this predicate.</t>
          </li>
          <li>
            <t>Hash the complete signed Authorization Artifact and require equality at Executor Verification label <tt>3</tt> and Execution Record label <tt>3</tt>.</t>
          </li>
          <li>
            <t>Require the already-validated Executor Verification record to carry the bound authorization identifier at label <tt>4</tt> and CPO digest at label <tt>6</tt>.</t>
          </li>
          <li>
            <t>Hash the complete signed Executor Verification record. Require the already-validated Execution Record to carry that digest at label <tt>4</tt> and the bound authorization identifier at label <tt>5</tt>.</t>
          </li>
          <li>
            <t>Require <tt>not-before &lt;= verified-at &lt;= executed-at &lt;= not-after</tt>.</t>
          </li>
          <li>
            <t>Compute <tt>filing_deadline = executed-at + duration-seconds</tt> with checked unsigned arithmetic.</t>
          </li>
          <li>
            <t>Require the Exact Forum Acceptance <tt>signed-at &lt;= not-before</tt>, <tt>valid-from &lt;= not-before</tt>, and <tt>valid-until &gt;= filing_deadline</tt>; require CPO <tt>issued-at &lt;= verified-at</tt> and <tt>expires-at &gt;= filing_deadline</tt>; and require at least one declared access method with <tt>available-until &gt;= filing_deadline</tt>. Treat the filing window as the half-open interval <tt>[executed-at, filing_deadline)</tt>. Derive <tt>filing_window_status</tt> as <tt>not_open</tt> when <tt>verification_time &lt; executed-at</tt>, <tt>open</tt> when <tt>executed-at &lt;= verification_time &lt; filing_deadline</tt>, and <tt>closed</tt> when <tt>verification_time &gt;= filing_deadline</tt>.</t>
          </li>
          <li>
            <t>Return every Section 6.2 field independently. The positive CBAP-1 path yields <tt>binding: valid</tt>, <tt>pre_execution_evidence: executor_attested</tt>, <tt>discoverability: complete</tt>, <tt>forum_acknowledgement: valid_exact</tt>, <tt>forum_operational_status: not_checked</tt>, <tt>selection_provenance: unilateral</tt>, <tt>access_binding: valid</tt>, <tt>notice_evidence: not_claimed</tt>, <tt>retrievability: not_checked</tt>, <tt>policy_freshness: indeterminate</tt>, <tt>declared_effect: none</tt>, <tt>effect_acceptance: not_required</tt>, <tt>effect_trigger: not_applicable</tt>, <tt>effect_ordering: not_applicable</tt>, <tt>effect_application: not_applicable</tt>, and <tt>reasons: []</tt>; <tt>filing_window_status</tt> is derived as <tt>not_open</tt>, <tt>open</tt>, or <tt>closed</tt> from the supplied verification time. It does not yield forum reachability, delivery, independence, policy fairness, or physical execution order.</t>
          </li>
        </ol>
        <t>A failure at steps 1 through 21 MUST produce the corresponding first reason code at the same precedence number in Section 6.5. The verifier MUST NOT evaluate a later failure boundary for purposes of <tt>reasons</tt> before the current boundary has passed. When a boundary fails, the verifier MUST stop at the first failed predicate, MUST NOT evaluate any later predicate of that boundary or any later boundary, and MUST complete the Section 6.2 result only through the closed transition rules in Section 6.5 while preserving every field already completed by an earlier boundary.</t>
      </section>
      <section anchor="cbap-1-failure-precedence-and-reason-codes">
        <name>CBAP-1 failure precedence and reason codes</name>
        <t>CBAP-1 closes the externally observable failure boundary. On the positive path, <tt>reasons</tt> MUST be the empty array. On a negative path, <tt>reasons</tt> MUST contain exactly one of the codes in the table below: the first failing boundary under the stated precedence. An implementation MAY retain more detailed diagnostics for operators, but it MUST NOT place implementation-specific strings in <tt>reasons</tt> or substitute a later, more specific failure for the first one.</t>
        <table>
          <thead>
            <tr>
              <th align="right">Precedence</th>
              <th align="left">Reason code</th>
              <th align="left">Boundary</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="right">1</td>
              <td align="left">
                <tt>verification_time_invalid</tt></td>
              <td align="left">The supplied verification time is not an unsigned integer representable in CBAP-1.</td>
            </tr>
            <tr>
              <td align="right">2</td>
              <td align="left">
                <tt>outer_encoding_invalid</tt></td>
              <td align="left">The outer item is truncated, has trailing bytes, violates Core Deterministic CBOR, or uses a forbidden CBOR construct.</td>
            </tr>
            <tr>
              <td align="right">3</td>
              <td align="left">
                <tt>bundle_schema_invalid</tt></td>
              <td align="left">The outer item is not the closed <tt>cbap1-bundle</tt>, has an unsupported profile version, contains a member of the wrong CDDL type, or violates member <tt>8</tt> CDDL non-empty cardinality, exact pair shape, 32-byte digest, or policy-byte <tt>bstr</tt> constraints.</td>
            </tr>
            <tr>
              <td align="right">4</td>
              <td align="left">
                <tt>policy_set_invalid</tt></td>
              <td align="left">The CDDL-valid policy array exceeds <tt>MAX_POLICY_PAIRS</tt>, is unsorted, contains a duplicate policy digest, or is internally digest-inconsistent.</td>
            </tr>
            <tr>
              <td align="right">5</td>
              <td align="left">
                <tt>cpo_invalid</tt></td>
              <td align="left">The CPO COSE envelope, payload schema including fixed CDDL constraints, object type, <tt>kid</tt>, role resolution, or signature is invalid.</td>
            </tr>
            <tr>
              <td align="right">6</td>
              <td align="left">
                <tt>forum_acceptance_invalid</tt></td>
              <td align="left">The Exact Forum Acceptance COSE envelope, payload schema including fixed CDDL constraints, object type, <tt>kid</tt>, role resolution, or signature is invalid.</td>
            </tr>
            <tr>
              <td align="right">7</td>
              <td align="left">
                <tt>authorization_invalid</tt></td>
              <td align="left">The Authorization Artifact COSE envelope, payload schema including fixed CDDL constraints, object type, <tt>kid</tt>, role resolution, or signature is invalid.</td>
            </tr>
            <tr>
              <td align="right">8</td>
              <td align="left">
                <tt>executor_verification_invalid</tt></td>
              <td align="left">The executor-verification COSE envelope, payload schema including fixed CDDL constraints, object type, <tt>kid</tt>, role resolution, or signature is invalid.</td>
            </tr>
            <tr>
              <td align="right">9</td>
              <td align="left">
                <tt>execution_record_invalid</tt></td>
              <td align="left">The execution-record COSE envelope, payload schema including fixed CDDL constraints, object type, <tt>kid</tt>, role resolution, or signature is invalid.</td>
            </tr>
            <tr>
              <td align="right">10</td>
              <td align="left">
                <tt>cpo_binding_mismatch</tt></td>
              <td align="left">The complete signed CPO digest is not the digest bound into the Authorization Artifact.</td>
            </tr>
            <tr>
              <td align="right">11</td>
              <td align="left">
                <tt>acceptance_binding_mismatch</tt></td>
              <td align="left">The complete signed acceptance digest is not the digest bound into the CPO.</td>
            </tr>
            <tr>
              <td align="right">12</td>
              <td align="left">
                <tt>action_digest_mismatch</tt></td>
              <td align="left">The action bytes do not hash to the one action digest required across the four signed payloads that carry it: CPO terms label <tt>6</tt>, Authorization Artifact label <tt>6</tt>, Executor Verification label <tt>5</tt>, and Execution Record label <tt>6</tt>.</td>
            </tr>
            <tr>
              <td align="right">13</td>
              <td align="left">
                <tt>profile_binding_mismatch</tt></td>
              <td align="left">The ABP, Authorization Trust Profile, CPO signer-to-terms issuer <tt>key-id</tt> equality, authorization-validity form, non-zero filing duration, HTTPS URI syntax for the required CPO and Exact Forum Acceptance policy-reference URIs, CPO terms forum <tt>key-id</tt> length, presence of every referenced policy digest, or absence of unreferenced policy digests does not match the supplied trust inputs and closed profile.</td>
            </tr>
            <tr>
              <td align="right">14</td>
              <td align="left">
                <tt>authorization_projection_mismatch</tt></td>
              <td align="left">The Authorization Artifact projection does not equal the authorization identifier, issuer, or validity required by the CPO terms. The action digest is evaluated only at precedence 12 and the signed CPO digest only at precedence 10.</td>
            </tr>
            <tr>
              <td align="right">15</td>
              <td align="left">
                <tt>forum_terms_mismatch</tt></td>
              <td align="left">The accepted forum-terms digest is not the exact projection defined in Section 4.17, the Exact Forum Acceptance signer <tt>key-id</tt> does not exactly equal the CPO terms forum <tt>key-id</tt>, or the resolved forum key is not authorized for the CPO terms <tt>forum-id</tt>.</td>
            </tr>
            <tr>
              <td align="right">16</td>
              <td align="left">
                <tt>authorization_digest_mismatch</tt></td>
              <td align="left">The complete signed Authorization Artifact digest is not the digest bound into both executor records.</td>
            </tr>
            <tr>
              <td align="right">17</td>
              <td align="left">
                <tt>executor_verification_mismatch</tt></td>
              <td align="left">Executor Verification label <tt>4</tt> does not carry the bound authorization identifier or label <tt>6</tt> does not carry the bound CPO digest.</td>
            </tr>
            <tr>
              <td align="right">18</td>
              <td align="left">
                <tt>execution_record_mismatch</tt></td>
              <td align="left">Execution Record label <tt>4</tt> does not bind the exact signed Executor Verification record or label <tt>5</tt> does not carry the bound authorization identifier.</td>
            </tr>
            <tr>
              <td align="right">19</td>
              <td align="left">
                <tt>executor_ordering_invalid</tt></td>
              <td align="left">The authenticated executor times do not satisfy <tt>not-before &lt;= verified-at &lt;= executed-at &lt;= not-after</tt>.</td>
            </tr>
            <tr>
              <td align="right">20</td>
              <td align="left">
                <tt>filing_deadline_overflow</tt></td>
              <td align="left">Adding the filing duration to <tt>executed-at</tt> exceeds the CBAP-1 unsigned-integer range.</td>
            </tr>
            <tr>
              <td align="right">21</td>
              <td align="left">
                <tt>filing_horizon_invalid</tt></td>
              <td align="left">Exact Forum Acceptance <tt>signed-at</tt> is after <tt>not-before</tt>, <tt>valid-from</tt> is after <tt>not-before</tt>, or <tt>valid-until</tt> is before the filing deadline; CPO <tt>issued-at</tt> is after executor <tt>verified-at</tt> or <tt>expires-at</tt> is before the filing deadline; or no affected-party access declaration remains valid through the filing deadline.</td>
            </tr>
          </tbody>
        </table>
        <t>The verifier evaluates local input 1 first, then the outer item, the policy set, and the five signed objects in table order. For precedences 5 through 9, the verifier applies the complete signed-object validation pipeline in Section 6.4 in its stated order. Cross-object checks then follow precedences 10 through 21, with predicates inside each step evaluated in the order stated in Section 6.4. Evaluation stops at the first failed boundary and, within that boundary, at the first failed predicate. Later predicates of that boundary and all later boundaries are not evaluated.</t>
        <t>The first-reason rule is a reproducibility rule, not permission to collapse the Section 6.2 result. On failure, the verifier applies only the structured-result transition assigned below to the first failed predicate, changes <tt>reasons</tt> from <tt>[]</tt> to the corresponding one-element array, preserves every previously completed field, and returns the result. A field without a listed transition preserves its current value. On the positive path, the listed positive completions occur at their stated boundaries. Positive completions at boundaries 5 through 9 occur only after the complete signed-object boundary passes; at boundaries 10 through 21, an earlier passed predicate may complete a field before a later predicate fails only where explicitly stated below.</t>
        <section anchor="cbap-1-structured-result-transitions">
          <name>CBAP-1 structured-result transitions</name>
          <t>The following transition rules are closed. <tt>P</tt> identifies positive completion when the boundary passes. <tt>N</tt> identifies the transition caused by the first failed predicate. <tt>--</tt> means no semantic-field transition.</t>
          <ul spacing="normal">
            <li>
              <t><strong>B1 <tt>verification_time_invalid</tt>:</strong> P <tt>--</tt>; N <tt>--</tt>.</t>
            </li>
            <li>
              <t><strong>B2 <tt>outer_encoding_invalid</tt>:</strong> P <tt>--</tt>; N <tt>--</tt>.</t>
            </li>
            <li>
              <t><strong>B3 <tt>bundle_schema_invalid</tt>:</strong> P <tt>notice_evidence = not_claimed</tt>; N <tt>--</tt>. This is the profile-determined completion for a valid closed <tt>cbap1-bundle</tt>, which carries no notice member.</t>
            </li>
            <li>
              <t><strong>B4 <tt>policy_set_invalid</tt>:</strong> P <tt>--</tt>; N <tt>--</tt>.</t>
            </li>
            <li>
              <t><strong>B5 <tt>cpo_invalid</tt>:</strong> P <tt>declared_effect = none</tt>, <tt>effect_acceptance = not_required</tt>, <tt>effect_trigger = not_applicable</tt>, <tt>effect_ordering = not_applicable</tt>, and <tt>effect_application = not_applicable</tt>. For N, signed-object predicates 1 through 7 have no semantic-field transition; signature failure sets <tt>binding = invalid</tt> and <tt>access_binding = invalid</tt>.</t>
            </li>
            <li>
              <t><strong>B6 <tt>forum_acceptance_invalid</tt>:</strong> P <tt>--</tt>; any first failed signed-object predicate sets <tt>forum_acknowledgement = invalid</tt>.</t>
            </li>
            <li>
              <t><strong>B7 <tt>authorization_invalid</tt>:</strong> P <tt>--</tt>; any first failed signed-object predicate sets <tt>binding = invalid</tt>.</t>
            </li>
            <li>
              <t><strong>B8 <tt>executor_verification_invalid</tt>:</strong> P <tt>--</tt>; any first failed signed-object predicate sets <tt>pre_execution_evidence = invalid</tt>.</t>
            </li>
            <li>
              <t><strong>B9 <tt>execution_record_invalid</tt>:</strong> P <tt>--</tt>; any first failed signed-object predicate sets <tt>pre_execution_evidence = invalid</tt>.</t>
            </li>
            <li>
              <t><strong>B10 <tt>cpo_binding_mismatch</tt>:</strong> P <tt>--</tt>; N sets <tt>binding = invalid</tt>.</t>
            </li>
            <li>
              <t><strong>B11 <tt>acceptance_binding_mismatch</tt>:</strong> P <tt>--</tt>; N sets <tt>forum_acknowledgement = invalid</tt>.</t>
            </li>
            <li>
              <t><strong>B12 <tt>action_digest_mismatch</tt>:</strong> P <tt>--</tt>. A mismatch at CPO terms label <tt>6</tt> or Authorization Artifact label <tt>6</tt> sets <tt>binding = invalid</tt>. A mismatch at Executor Verification label <tt>5</tt> or Execution Record label <tt>6</tt> sets <tt>pre_execution_evidence = invalid</tt>.</t>
            </li>
            <li>
              <t><strong>B13 <tt>profile_binding_mismatch</tt>:</strong> P <tt>discoverability = complete</tt>. Expected-ABP or expected-Authorization-Trust-Profile mismatch has no semantic-field transition. CPO signer <tt>key-id</tt> mismatch against the terms authorization-issuer <tt>key-id</tt> sets <tt>binding = invalid</tt> and <tt>access_binding = invalid</tt>. Failure of <tt>not-before &lt;= not-after</tt>, filing duration, any HTTPS URI other than an affected-party <tt>discovery-uri</tt>, or forum <tt>key-id</tt> length has no semantic-field transition. Failure of an affected-party <tt>discovery-uri</tt> sets <tt>access_binding = invalid</tt>. A missing referenced policy digest sets <tt>discoverability = incomplete</tt>. An unreferenced policy digest sets <tt>discoverability = complete</tt>.</t>
            </li>
            <li>
              <t><strong>B14 <tt>authorization_projection_mismatch</tt>:</strong> P <tt>selection_provenance = unilateral</tt>, <tt>binding = valid</tt>; N sets <tt>binding = invalid</tt>.</t>
            </li>
            <li>
              <t><strong>B15 <tt>forum_terms_mismatch</tt>:</strong> P <tt>--</tt>. Accepted-digest mismatch sets <tt>forum_acknowledgement = invalid_scope</tt>. Acceptance-signer <tt>key-id</tt> mismatch or resolved-signer authorization failure sets <tt>forum_acknowledgement = invalid</tt>.</t>
            </li>
            <li>
              <t><strong>B16 <tt>authorization_digest_mismatch</tt>:</strong> P <tt>--</tt>; N sets <tt>pre_execution_evidence = invalid</tt>.</t>
            </li>
            <li>
              <t><strong>B17 <tt>executor_verification_mismatch</tt>:</strong> P <tt>--</tt>; failure of either label <tt>4</tt> authorization-identifier binding or label <tt>6</tt> CPO-digest binding sets <tt>pre_execution_evidence = invalid</tt>.</t>
            </li>
            <li>
              <t><strong>B18 <tt>execution_record_mismatch</tt>:</strong> P <tt>--</tt>; failure of either label <tt>4</tt> exact Executor Verification binding or label <tt>5</tt> authorization-identifier binding sets <tt>pre_execution_evidence = invalid</tt>.</t>
            </li>
            <li>
              <t><strong>B19 <tt>executor_ordering_invalid</tt>:</strong> P <tt>pre_execution_evidence = executor_attested</tt>; N sets <tt>pre_execution_evidence = invalid</tt>.</t>
            </li>
            <li>
              <t><strong>B20 <tt>filing_deadline_overflow</tt>:</strong> P <tt>--</tt>; N <tt>--</tt>.</t>
            </li>
            <li>
              <t><strong>B21 <tt>filing_horizon_invalid</tt>:</strong> P <tt>forum_acknowledgement = valid_exact</tt>, <tt>access_binding = valid</tt>, and <tt>filing_window_status</tt> derived as specified in Section 6.4. Failure of Exact Forum Acceptance <tt>signed-at</tt>, <tt>valid-from</tt>, or <tt>valid-until</tt> sets <tt>forum_acknowledgement = invalid_scope</tt>. Failure of CPO <tt>issued-at</tt> or <tt>expires-at</tt> has no semantic-field transition. Failure of the affected-party access horizon sets <tt>access_binding = invalid</tt>.</t>
            </li>
          </ul>
          <t><tt>forum_operational_status</tt> remains <tt>not_checked</tt>, <tt>retrievability</tt> remains <tt>not_checked</tt>, and <tt>policy_freshness</tt> remains <tt>indeterminate</tt> on every CBAP-1 path.</t>
          <t>The following list is the complete set of CBAP-1 field-ownership exceptions to the generic failure classifications in Section 6:</t>
          <ul spacing="normal">
            <li>
              <t>B5 signed-object predicates 1 through 7 do not transition <tt>binding</tt>; only CPO signature failure does.</t>
            </li>
            <li>
              <t>B12 Executor Verification and Execution Record action-digest failures transition <tt>pre_execution_evidence</tt>, not <tt>binding</tt>.</t>
            </li>
            <li>
              <t>B13 expected-ABP and expected-Authorization-Trust-Profile mismatches leave <tt>binding</tt> unchanged.</t>
            </li>
            <li>
              <t>B16 transitions <tt>pre_execution_evidence</tt>, not <tt>binding</tt>.</t>
            </li>
            <li>
              <t>B17 and B18 identifier or digest mismatches transition <tt>pre_execution_evidence</tt>, not <tt>binding</tt>.</t>
            </li>
          </ul>
          <t>Outside those listed exceptions, the generic failure classification applies as instantiated by the closed transitions above. In particular, <tt>policy_set_invalid</tt> does not by itself prove <tt>binding: invalid</tt>, and reachability failure is outside this closed CBAP-1 byte-verification procedure.</t>
        </section>
      </section>
    </section>
    <section anchor="lifecycle">
      <name>Lifecycle</name>
      <t>The common pre-execution sequence is: forum manifest or exact acceptance; Contestation Terms; selection signatures; signed CPO; signed authorization binding; executor verification; and, for an active effect, an Executor Effect Acceptance Statement. Execution, refusal, hold, fence, and application records are mode-specific and do not occur in this common prefix.</t>
      <t>The remaining order depends on the effect mode:</t>
      <table>
        <thead>
          <tr>
            <th align="left">Mode</th>
            <th align="left">Required protocol order</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">
              <tt>none</tt></td>
            <td align="left">execution or refusal record binding the executor-verification evidence; notice, delivery, or publication; optional filing</td>
          </tr>
          <tr>
            <td align="left">
              <tt>hold_before_execution</tt></td>
            <td align="left">accepted filing receipt; verified trigger ordering before the execution boundary; Effect Application Record binding the exact effect-acceptance and filing-receipt digests; executor hold or refusal record binding that application record and any verification/acceptance linkage required by the selected record profile</td>
          </tr>
          <tr>
            <td align="left">
              <tt>fence_after_execution</tt></td>
            <td align="left">execution record binding the executor-verification and effect-acceptance linkage; notice, delivery, or publication; accepted filing receipt; verified trigger ordering before finality; Effect Application Record binding the exact effect-acceptance and filing-receipt digests</td>
          </tr>
        </tbody>
      </table>
      <t>When an active row is evaluated together with <tt>pre_execution_evidence: executor_attested</tt>, the execution or refusal record serving that row's action boundary (including the hold/refusal record selected for that boundary in <tt>hold_before_execution</tt>) is the same exact authenticated evidence-object identity accepted by the <tt>executor_attested</tt> path and binds both the exact verification-record digest and the exact <tt>effect_acceptance_digest</tt>. This same-record rule concerns record identity, not signer identity.</t>
      <t>An external dispute procedure, if any, is outside this document and may continue after any of those rows. This document ends after authenticating the filing-trigger and the executor's claimed state transition. It neither defines adjudication nor converts a hold or fence into a remedy.</t>
      <t>Changing the forum, procedure, Standing Policy, filing window, or effect policy requires a new CPO and a new authorization binding. An active effect additionally requires a new Executor Effect Acceptance Statement.</t>
      <t>A deployment replacing a CPO after execution SHOULD NOT narrow an already-open filing window instantiated by the prior binding unless the previously bound procedure authorized that transition. The base protocol and CBAP-1 do not carry authenticated predecessor linkage or prior-binding evidence, so a verifier cannot evaluate that continuity property.</t>
      <t>A profile that claims verifier-enforced non-narrowing MUST define authenticated predecessor/successor linkage, the predecessor evidence supplied to the verifier, the exact window-comparison predicate and boundary operators, the procedure-authorized exception rule, and the failure classification for missing, invalid, ambiguous, or conflicting predecessor evidence.</t>
    </section>
    <section anchor="implementation-status">
      <name>Implementation Status</name>
      <t>This section follows the guidance in <xref target="RFC7942"/> and is intended to be
removed before publication as an RFC.</t>
      <t>The implementation evidence snapshot described below is current through
4 September 2026.</t>
      <section anchor="maturity-and-coverage">
        <name>Maturity and coverage</name>
        <t>The implementation evidence recorded for <tt>-00</tt> remains based on a Python
reference implementation, an oracle-blind Rust reconstruction produced with
AI-based coding assistance in a context-isolated session, and a JavaScript
cross-check. The external fixtures and implementation artifacts described in
this section are non-normative. They do not define or override CBAP-1
requirements, and no fixture supplies authority for a rule that is absent or
ambiguous in this document.</t>
        <t>The cross-check re-encoded the external positive bundle fixture byte-for-byte
and verified all five Ed25519 signatures. The external positive bundle fixture
has SHA-256:</t>
        <t><tt>8a47e89abb2c77a9de27ffb59a5bc89a7226509236e35b0f11cf6819fd1b6646</tt></t>
        <t>The reconstruction received the specification and its declared public inputs
without evaluator answers. The evidence record distinguishes mechanical byte
access for integrity hashing from semantic evaluator access: before the
relevant implementation freeze, no evaluator case was decoded, semantically
inspected, or executed, and expected outcomes and reasons remained withheld.</t>
        <t>The first frozen reconstruction assigned two digest labels differently from
the retained evaluator and failed bidirectional verification at that boundary.
The supplied challenge text had typed both members without assigning their
labels in normative prose. That divergence was recorded before repair, and the
original submission remains frozen at SHA-256:</t>
        <t><tt>956b88d2832e4265913cb73f93e69b960ef6f1d860f8acbc5b50ea453cbab2f0</tt></t>
        <t>After the assignment and other attributable ambiguities were repaired in the
specification, the frozen A3 source-and-artifact package underlying the
reconstruction evidence was recorded at SHA-256:</t>
        <t><tt>f2b9b0745ca8b751322f416ed62e73769b2396934b8beb811d5f71b4fc88b129</tt></t>
        <t>That reconstruction passed 56 local tests. It matched the retained evaluator
outcomes for the external positive bundle fixture, the closed
failure-precedence corpus, and all 28 URI cases. The URI result comprised
eight valid acceptances and 20 <tt>profile_binding_mismatch</tt> rejections, with each
case invoked once. Separately, the submitted IPv6 algorithm was independently transcribed and
compared with a standard IPv6 parser over 255,022 generated candidates; no
acceptance or rejection divergence was found.</t>
        <t>For <tt>-01</tt>, before any source edit, the frozen A3 package was re-executed in
the refresh environment and its original 56-test baseline passed 56/56. A
derived refresh of the same A3 Rust lineage then implemented exact policy-set
equality and the half-open filing interval
<tt>[executed-at, filing_deadline)</tt>. It also added regression coverage showing
that otherwise-valid bundles are accepted with either equal or different
object-local nonce values; no cross-object nonce comparison was added. The
refresh changed three source/test files, passed 61 local tests with no compiler
warnings, and <tt>cargo build --release --locked</tt> completed successfully. The
unified refresh patch has SHA-256:</t>
        <t><tt>f74d4bad4db1e3ad22234d78056b6064bc7db3a20709502e61b59dae814a2a24</tt></t>
        <t>Subsequent alignment and hardening remained on the same A3 Rust lineage.
The M25 public-key-decoding alignment extended the locked suite to 63/63. The
P2 trust/profile-input alignment extended it to 66/66. The P6 resource-limit
and URI-port hardening extended it to 73/73. Each recorded state passed its
complete locked suite with zero failures; later counts supersede earlier counts
as the current executable evidence snapshot but do not erase the historical
intermediate states.</t>
        <t>The A3 executable profile remains limited to Exact Forum Acceptance. It does
not implement FAM class acceptance, <tt>valid_class</tt>,
<tt>agent-contestability-notice-v1</tt>, or the FAM
authorization-validity-containment semantics added during <tt>-01</tt>. The 73-test
result therefore MUST NOT be read as implementation evidence for those
surfaces. No signed CBAP wire format was expanded by the A3 alignment and
hardening work.</t>
      </section>
      <section anchor="provenance-and-limits">
        <name>Provenance and limits</name>
        <t>Automated tools could propose source, test, and analysis candidates, but did
not assign evaluator outcomes. Recorded outcomes were determined under pinned
rules and inputs after the corresponding implementation state had been frozen.
The document author controlled the specification, evaluator design, retained
inputs, and adjudication. The experiment therefore tests specification
reconstructibility, ambiguity detection, and bounded behavioural agreement; it
does not establish independence of authorship or evaluation.</t>
        <t>The <tt>-01</tt> refresh was performed in a derived tree from the hash-verified frozen
A3 input. Its review evidence records the source identities, unified patch,
toolchain, test inventory, test transcripts, and release-build result.
Dependency versions were selected under <tt>Cargo.lock</tt>, but required crate
sources were retrieved online; offline reproduction was not established. The
compiler self-report matched the historical A3 record, but historical
distribution-package identity was unavailable, so build identity is not
asserted.</t>
        <t>The results do not constitute an independent human implementation, external
review, interoperability certification, production deployment evidence,
exhaustive parser safety, or a security audit.</t>
      </section>
      <section anchor="availability-license-and-contact">
        <name>Availability, license, and contact</name>
        <t>A stable public location and an explicit software license for the
implementation and evidence packages are to be designated as part of the
verifiable release publication that follows this submission. Until then, this
section records development evidence but does not claim public implementation
or evidence-package availability.</t>
        <t>Implementation and test-package contact: Tiago Pinto
<eref target="mailto:tiago@donttrustverify.pt">tiago@donttrustverify.pt</eref>.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="issuer-controlled-forum">
        <name>Issuer-controlled forum</name>
        <t>A discoverable forum can still be captured. An issuer-only signature therefore yields <tt>unilateral</tt>, never <tt>external</tt> or <tt>multiparty</tt>.</t>
      </section>
      <section anchor="forum-substitution">
        <name>Forum substitution</name>
        <t>The forum identifier, endpoint, verification key, procedure, and selection policy are digest- or signature-bound. A verifier MUST refuse substitution after authorization.</t>
      </section>
      <section anchor="policy-equivocation">
        <name>Policy equivocation</name>
        <t>Serving different CPOs or policy documents to different audiences can move the fork from the authorization to the contestation layer. Deployments claiming cross-audience consistency SHOULD register CPOs or their digests in a transparency service and MUST define how readers detect split views.</t>
      </section>
      <section anchor="dead-or-selective-endpoint">
        <name>Dead or selective endpoint</name>
        <t>Cryptographic binding and forum acknowledgement do not prove availability. A forum can refuse connections, selectively deny classes of filers, or disappear after signing. Availability evidence and service-level enforcement are deployment concerns. Discoverability MUST become <tt>incomplete</tt> when required material cannot be obtained within local policy. A failed reachability check MUST NOT retroactively invalidate a historically valid acknowledgement; the results remain separate.</t>
        <t>CBAP-1 verification does not require dereferencing a signed URI. A deployment that chooses to dereference one SHOULD treat the target, every redirect, and every resolved address as untrusted network input. It SHOULD bound redirects, time, response size, and other resource use, and SHOULD reject loopback, private, link-local, metadata-service, or otherwise privileged destinations unless such access is explicitly intended and separately authorized. Signature validity and HTTPS syntax do not make a retrieval target safe.</t>
      </section>
      <section anchor="deadline-capture">
        <name>Deadline capture</name>
        <t>An issuer can declare a filing window too short to use. Verification authenticates the declared filing-window inputs and computes the window; it does not establish fairness. Relying parties SHOULD apply minimum-window policy and MUST NOT infer legitimacy from syntactic validity.</t>
        <t>For CBAP-1, the authenticated <tt>executed-at</tt> value is an executor-signed clock claim, not proof of external wall-clock accuracy. The ordering predicate constrains that claim relative to <tt>verified-at</tt> and the authorization interval; it does not prevent executor clock bias. A malicious or compromised executor can choose an inaccurate <tt>executed-at</tt> within the accepted signed bounds, and an earlier value can make the computed closing time earlier than a window measured from real execution.</t>
        <t>A relying party that requires protection against executor-controlled clock bias SHOULD constrain clock authority and acceptable skew through the executor-role entries of its local trust set and local policy, or require independent authenticated time evidence under a profile designed for that claim. The computed CBAP-1 filing window MUST NOT be interpreted as proof that the Affected Party received a fair real-world opportunity to file.</t>
      </section>
      <section anchor="standing-capture">
        <name>Standing capture</name>
        <t>A Standing Policy can exclude the person most affected by an action. This document makes the policy identity stable and, when the policy bytes are available, inspectable; it does not make the policy legitimate. Profiles claiming affected-party recourse MUST specify how affected parties are represented without requiring them to have participated in the original authorization.</t>
      </section>
      <section anchor="privacy">
        <name>Privacy</name>
        <t>Enumerating affected persons in a public CPO can create a privacy and safety risk. Standing SHOULD be expressed by role or policy where possible. Personally identifying evidence SHOULD be disclosed only to the forum under an appropriate confidentiality mechanism.</t>
      </section>
      <section anchor="contestation-as-denial-of-service">
        <name>Contestation as denial of service</name>
        <t>Attackers can submit repetitive or fabricated filings. Anti-replay, rate limiting, authentication, and abuse controls MUST NOT silently alter the bound standing policy or filing window.</t>
      </section>
      <section anchor="credential-self-revocation-trap">
        <name>Credential self-revocation trap</name>
        <t>An action can disable the only credential accepted by the contestation lookup or forum. An account-suspension action followed by an account-login-only contestation path is the canonical case. Profiles claiming affected-party access MUST define a surviving method, such as a separately delivered capability, an alternate verified identity, or a privacy-preserving public lookup. Merely declaring an authentication profile does not prove survivability.</t>
      </section>
      <section anchor="acknowledgement-replay-and-class-confusion">
        <name>Acknowledgement replay and class confusion</name>
        <t>An issuer can replay genuine forum acceptance evidence issued for a different ABP, Authorization Trust Profile, policy version, <tt>may_bind</tt> bounds, or submission endpoint. Exact acknowledgements MUST match the <tt>forum_terms_digest</tt>. A FAM MUST bind accepted ABP and Authorization Trust Profile identifier pairs, and the Authorization Artifact MUST be successfully verified and projected under a listed pair. Matching labels or URIs are insufficient. Failure to establish membership yields <tt>invalid_scope</tt>, not <tt>valid_class</tt>.</t>
      </section>
      <section anchor="notice-issuance-versus-delivery">
        <name>Notice issuance versus delivery</name>
        <t>A signer can generate a valid Contestability Notice and never transmit it. The base result is therefore <tt>issued</tt>, not <tt>delivered</tt>. Under Notice-v1, validity requires the same locally trusted issuer-role key that authenticated the signed CPO issuer. A <tt>delivered</tt> result requires an authenticated transport-specific receipt that identifies the same <tt>notice_digest</tt> and intended delivery context. No protocol receipt proves that a human read or understood the notice.</t>
      </section>
      <section anchor="notice-phishing-and-correlation">
        <name>Notice phishing and correlation</name>
        <t>A malicious notice can direct an Affected Party to an attacker-controlled endpoint or can use predictable authorization identifiers to expose sensitive actions. Notice-v1 MUST bind the CPO digest and MUST require its <tt>access.uri</tt> to equal the <tt>discovery_uri</tt> of an <tt>authenticated_lookup</tt> declaration authenticated in the verified CPO; the selected affected-party access profile must then validate that declaration. Deployments SHOULD use unguessable lookup capabilities or privacy-preserving authenticated retrieval when public correlation would reveal sensitive information.</t>
      </section>
      <section anchor="backdating-and-enforcement-illusion">
        <name>Backdating and enforcement illusion</name>
        <t>An issuer can construct a valid CPO after execution and backdate <tt>issued_at</tt>. Signatures establish integrity and signer attribution, not when an executor possessed an object. A selected profile claiming pre-execution enforcement MUST carry authenticated ordering evidence from the enforcement path. If such a profile is selected but its required authenticated ordering evidence is absent, the binding can remain cryptographically valid while <tt>pre_execution_evidence</tt> is <tt>absent</tt>; if no pre-execution evidence profile is selected, the result is instead <tt>not_claimed</tt>. Even <tt>executor_attested</tt> proves only the signed claims made under the accepted executor-role keys and their required digest bindings, not the physical order of events inside an executor. When different keys sign the linked verification and execution/refusal records, the base result does not establish that those keys belong to the same executor identity unless the selected pre-execution evidence profile defines and verifies such an authenticated relation.</t>
      </section>
      <section anchor="exact-acceptance-disclosure">
        <name>Exact-acceptance disclosure</name>
        <t>Exact acceptance exposes at least a stable terms digest and interaction timing to the forum before authorization. CBAP-1 fixes <tt>action_digest = SHA-256(action_bytes)</tt> and carries <tt>action_bytes</tt> by value in the complete bundle. Before those bytes are disclosed, a low-entropy action digest can permit offline dictionary guessing; a recipient of the complete CBAP-1 bundle receives the action bytes and therefore obtains no action confidentiality from the digest. Deployments using CBAP-1 SHOULD restrict access to the bundle and action bytes when confidentiality is required.</t>
        <t>Deployments SHOULD prefer a class manifest when instance-specific acceptance is unnecessary and SHOULD register only a CPO or manifest digest in public transparency infrastructure. A salted or hiding commitment MAY be appropriate in another named profile that defines the salt or blinding material, exact commitment construction, disclosure or proof mechanism, and cross-artifact verification rules. A deployment MUST NOT replace CBAP-1's <tt>SHA-256(action_bytes)</tt> construction with a salted commitment and still claim CBAP-1 conformance.</t>
      </section>
      <section anchor="manifest-equivocation-and-downgrade">
        <name>Manifest equivocation and downgrade</name>
        <t>A forum can issue different FAMs to different audiences or replace a restrictive manifest with a broader one. The CPO and selection signatures bind one exact manifest digest, so substitution fails locally. Cross-audience detection requires transparency or gossip under a selected profile. A verifier MUST NOT select a newer, broader, or more available manifest in place of the digest bound by the CPO.</t>
      </section>
      <section anchor="forum-key-rotation-and-compromise">
        <name>Forum-key rotation and compromise</name>
        <t>Key rotation MUST NOT permit a new forum key to rewrite old acceptance evidence. Historical verification requires the key that signed the exact statement or manifest, its validity evidence at signing time, and the selected compromise policy. A successor key can sign a new manifest or a continuity statement only under the previously bound withdrawal policy. A current key-discovery response alone is insufficient to validate a historical signature.</t>
      </section>
      <section anchor="signature-multiplicity-and-common-control">
        <name>Signature multiplicity and common control</name>
        <t>Multiple signatures do not necessarily represent multiple independent parties. An issuer can operate separate issuer, forum, and selector keys. Selection provenance therefore depends on role authorization and controlling trust domains supplied by local policy, not signature count. Three keys under one controlling party MUST NOT be reported as <tt>multiparty</tt> merely because all three signatures verify.</t>
      </section>
      <section anchor="false-automatic-effect-advertising">
        <name>False automatic-effect advertising</name>
        <t>An issuer can publish an active effect policy while naming an executor that never agreed to implement it. The CPO signature authenticates that advertisement but not executor acceptance. Without a valid Executor Effect Acceptance Statement, <tt>effect_acceptance</tt> is <tt>absent</tt> or <tt>invalid</tt>; an implementation MUST NOT display the action as automatically held, fenced, stayed, or reversible. If the executor accepted and later ignores a valid trigger, the acceptance remains valid while application is <tt>not_observed</tt>, <tt>failed</tt>, or <tt>indeterminate</tt> as the evidence permits. Nonperformance MUST NOT be rewritten as a binding failure.</t>
      </section>
      <section anchor="trigger-replay-and-profile-substitution">
        <name>Trigger replay and profile substitution</name>
        <t>A valid filing receipt can be replayed against another authorization, CPO, policy, executor, or state transition. All identifiers and digests in Sections 5.4 and 5.5 MUST match, and the bound idempotency profile MUST make repeated processing deterministic. A receipt created under a different forum key or submission-receipt profile is not a trigger even if the bytes describe the same filing. Reusing a valid trigger to create multiple transitions yields <tt>already_applied</tt> or an equivocation condition, not multiple applications.</t>
      </section>
      <section anchor="race-with-execution-or-finality">
        <name>Race with execution or finality</name>
        <t>An attacker or merely concurrent system can cause the filing trigger and the execution or finality transition to cross between verification and application. Signed timestamps do not solve this time-of-check/time-of-use race. An active effect profile MUST bind a serialization mechanism enforced by the system of record, such as an authenticated monotonic sequence, compare-and-swap precondition, or atomic transaction. If the required authenticated ordering evidence is not supplied or not observed, <tt>effect_ordering</tt> is <tt>not_evidenced</tt>. If ordering evidence is supplied or selected for evaluation but cannot be resolved deterministically because it is ambiguous, conflicting, unsupported, non-reducible, non-comparable, or governed by an incomplete selected profile, <tt>effect_ordering</tt> is <tt>indeterminate</tt>. Neither result becomes <tt>verified</tt> merely because the executor signed <tt>disposition: applied</tt>.</t>
      </section>
      <section anchor="filing-trigger-denial-of-service">
        <name>Filing-trigger denial of service</name>
        <t>An automatic hold can let inexpensive filings block expensive or urgent actions. The trigger profile can authenticate submissions, rate limits, deposits, or eligibility gates, but those controls MUST be bound before execution and MUST NOT silently change the Standing Policy or filing window. A forum receipt authenticates a record that the filing was accepted under the forum profile; it does not prove that the filer deserved to stop the action. Deployments SHOULD prefer <tt>fence_after_execution</tt> or <tt>none</tt> where pre-execution holds create unacceptable safety or availability risk.</t>
      </section>
      <section anchor="ambiguous-state-commitments">
        <name>Ambiguous state commitments</name>
        <t>An executor can claim <tt>applied</tt> while committing to a state encoding whose meaning is mutable, partial, or compatible with both fenced and unfenced outcomes. The state-machine profile and target-state digest MUST define the committed state and transition unambiguously. Unsupported, lossy, or non-deterministic state projection yields <tt>effect_application: indeterminate</tt> or <tt>invalid</tt>; signature validity alone is insufficient.</t>
      </section>
      <section anchor="effect-is-not-remedy">
        <name>Effect is not remedy</name>
        <t>A hold result is satisfied only when the bound evidence records the profile-defined hold state and the required ordering places that record before the execution boundary. A fence result is satisfied only when the bound evidence records the profile-defined fence state and the required ordering places that record after execution and before the finality boundary. Neither result proves reversal of earlier observations, compensates an Affected Party, determines liability, or authorizes a new action. Implementations MUST NOT label an Effect Application Record as an award, reversal, restoration, refund, or remedy unless a separate protocol and authorization establish that result.</t>
      </section>
      <section anchor="executor-equivocation-and-common-control">
        <name>Executor equivocation and common control</name>
        <t>An executor can sign conflicting application records or share control with the issuer and forum. Conflicting records for the same idempotency key and sequence are equivocation evidence. Common control does not invalidate the signatures, but it weakens the governance inference a relying party may draw from them. This protocol reports authenticated role statements and never upgrades them to independent enforcement.</t>
      </section>
      <section anchor="split-control-illusion">
        <name>Split-control illusion</name>
        <t>An Effect Executor can accept a hold or fence while lacking authority over the action executor or finality state. A message bus subscription or advisory callback is not control of the transition. When the parties differ, the serialization profile MUST bind the cross-system state machine, signer roles, and atomic or fail-closed handoff. Without that evidence, <tt>effect_acceptance</tt> can remain <tt>executor_accepted</tt>, but <tt>effect_ordering</tt> is <tt>not_evidenced</tt> or <tt>invalid</tt> and no effective hold or fence can be reported.</t>
      </section>
    </section>
    <section anchor="relationship-to-existing-work">
      <name>Relationship to Existing Work</name>
      <section anchor="emilia-protocol-artifacts">
        <name>EMILIA Protocol artifacts</name>
        <t>EP authorization receipts <xref target="I-D.schrock-ep-authorization-receipts"/> bind human evidence to an action and record authorization lifecycle facts. Other EP artifacts describe outcome, revocation, remedy, and reliance evidence.</t>
        <t>This document specifies a transport-independent, pre-execution binding from an authorization to the contestation path, with a derived statement of forum-selection provenance. It neither replaces nor requires EP.</t>
      </section>
      <section anchor="agentic-dispute-protocol-and-adrp">
        <name>Agentic Dispute Protocol and ADRP</name>
        <t>The Agentic Dispute Protocol <xref target="I-D.kotecha-agentic-dispute-protocol"/> defines filing, evidence, adjudication, awards, and arbitrator discovery. ADRP <xref target="I-D.stone-adrp"/> defines an Arbitration Mandate, dispute state machine, arbitrator pool, rulings, appeals, and remedy directives.</t>
        <t>This document does none of those things. A CPO can identify an ADP or ADRP endpoint and procedure. Its contribution is the binding and verification layer that exists before either dispute protocol begins, including the distinction between issuer-declared and non-unilateral forum selection.</t>
      </section>
      <section anchor="oauth-and-agent-authorization-frameworks">
        <name>OAuth and agent authorization frameworks</name>
        <t>OAuth Rich Authorization Requests <xref target="RFC9396"/>, WIMSE-based guidance, and agent authorization frameworks such as <xref target="I-D.liu-ai-agent-authorization-integration"/> address request scope, identity, delegation, policy, consent, and lifecycle. A future profile can carry a CPO digest in an OAuth authorization detail or token. This document does not extend OAuth in its base version.</t>
      </section>
      <section anchor="scitt">
        <name>SCITT</name>
        <t>A CBAP signed object is not itself a SCITT Signed Statement <xref target="RFC9943"/>. CBAP-1 requires the protected header of each signed object to contain exactly <tt>alg</tt> and <tt>kid</tt>, while a SCITT Signed Statement requires its own protected CWT Claims <xref target="RFC9597"/>, including <tt>iss</tt> and <tt>sub</tt>; the same COSE_Sign1 therefore cannot satisfy both profiles. A composition with SCITT uses a distinct SCITT Signed Statement outside the completed CBAP object. An application profile can, for example, carry the exact completed CPO or Contestability Binding Statement bytes as the SCITT Statement payload, or define a Statement that identifies those bytes by their CBAP digest. The inner CBAP object remains byte-for-byte unchanged and is verified under this document. For a CPO, <tt>cpo_digest</tt> remains <tt>SHA-256(cpo_cose_bytes)</tt>; any digest used to identify the distinct SCITT Signed Statement identifies the outer SCITT object and does not replace <tt>cpo_digest</tt>. The reference direction is from the SCITT layer to the already-completed CBAP object; the base CBAP object does not bind a later SCITT Signed Statement or receipt. SCITT registration can improve discoverability and equivocation detection but does not prove forum independence, policy fairness, or legal validity.</t>
      </section>
      <section anchor="rats-and-cose">
        <name>RATS and COSE</name>
        <t>The reusable FAM has a role analogous to an endorsement in the RATS architecture <xref target="RFC9334"/>: a role-specific signer vouches for defined capabilities or scope, while the relying party applies its own policy. It is not attestation evidence and does not appraise a runtime. CBAP-1 selects tagged COSE_Sign1 with embedded payloads and fully specified Ed25519 signatures. It does not use COSE_Sign multi-signatures: each role emits a separate signed statement so that signature topology and failure attribution remain explicit.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>The initial individual draft requests no IANA action. A later protocol revision may request media types, a well-known URI, or a registry of structured reason codes after the encoding and deployment model stabilize.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC3986">
          <front>
            <title>Uniform Resource Identifier (URI): Generic Syntax</title>
            <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
            <author fullname="R. Fielding" initials="R." surname="Fielding"/>
            <author fullname="L. Masinter" initials="L." surname="Masinter"/>
            <date month="January" year="2005"/>
            <abstract>
              <t>A Uniform Resource Identifier (URI) is a compact sequence of characters that identifies an abstract or physical resource. This specification defines the generic URI syntax and a process for resolving URI references that might be in relative form, along with guidelines and security considerations for the use of URIs on the Internet. The URI syntax defines a grammar that is a superset of all valid URIs, allowing an implementation to parse the common components of a URI reference without knowing the scheme-specific requirements of every possible identifier. This specification does not define a generative grammar for URIs; that task is performed by the individual specifications of each URI scheme. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="66"/>
          <seriesInfo name="RFC" value="3986"/>
          <seriesInfo name="DOI" value="10.17487/RFC3986"/>
        </reference>
        <reference anchor="RFC6234">
          <front>
            <title>US Secure Hash Algorithms (SHA and SHA-based HMAC and HKDF)</title>
            <author fullname="D. Eastlake 3rd" initials="D." surname="Eastlake 3rd"/>
            <author fullname="T. Hansen" initials="T." surname="Hansen"/>
            <date month="May" year="2011"/>
            <abstract>
              <t>Federal Information Processing Standard, FIPS</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6234"/>
          <seriesInfo name="DOI" value="10.17487/RFC6234"/>
        </reference>
        <reference anchor="RFC8032">
          <front>
            <title>Edwards-Curve Digital Signature Algorithm (EdDSA)</title>
            <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
            <author fullname="I. Liusvaara" initials="I." surname="Liusvaara"/>
            <date month="January" year="2017"/>
            <abstract>
              <t>This document describes elliptic curve signature scheme Edwards-curve Digital Signature Algorithm (EdDSA). The algorithm is instantiated with recommended parameters for the edwards25519 and edwards448 curves. An example implementation and test vectors are provided.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8032"/>
          <seriesInfo name="DOI" value="10.17487/RFC8032"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC8610">
          <front>
            <title>Concise Data Definition Language (CDDL): A Notational Convention to Express Concise Binary Object Representation (CBOR) and JSON Data Structures</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="C. Vigano" initials="C." surname="Vigano"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="June" year="2019"/>
            <abstract>
              <t>This document proposes a notational convention to express Concise Binary Object Representation (CBOR) data structures (RFC 7049). Its main goal is to provide an easy and unambiguous way to express structures for protocol messages and data formats that use CBOR or JSON.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8610"/>
          <seriesInfo name="DOI" value="10.17487/RFC8610"/>
        </reference>
        <reference anchor="RFC8949">
          <front>
            <title>Concise Binary Object Representation (CBOR)</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="December" year="2020"/>
            <abstract>
              <t>The Concise Binary Object Representation (CBOR) is a data format whose design goals include the possibility of extremely small code size, fairly small message size, and extensibility without the need for version negotiation. These design goals make it different from earlier binary serializations such as ASN.1 and MessagePack.</t>
              <t>This document obsoletes RFC 7049, providing editorial improvements, new details, and errata fixes while keeping full compatibility with the interchange format of RFC 7049. It does not create a new version of the format.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="94"/>
          <seriesInfo name="RFC" value="8949"/>
          <seriesInfo name="DOI" value="10.17487/RFC8949"/>
        </reference>
        <reference anchor="RFC9052">
          <front>
            <title>CBOR Object Signing and Encryption (COSE): Structures and Process</title>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <date month="August" year="2022"/>
            <abstract>
              <t>Concise Binary Object Representation (CBOR) is a data format designed for small code size and small message size. There is a need to be able to define basic security services for this data format. This document defines the CBOR Object Signing and Encryption (COSE) protocol. This specification describes how to create and process signatures, message authentication codes, and encryption using CBOR for serialization. This specification additionally describes how to represent cryptographic keys using CBOR.</t>
              <t>This document, along with RFC 9053, obsoletes RFC 8152.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="96"/>
          <seriesInfo name="RFC" value="9052"/>
          <seriesInfo name="DOI" value="10.17487/RFC9052"/>
        </reference>
        <reference anchor="RFC9053">
          <front>
            <title>CBOR Object Signing and Encryption (COSE): Initial Algorithms</title>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <date month="August" year="2022"/>
            <abstract>
              <t>Concise Binary Object Representation (CBOR) is a data format designed for small code size and small message size. There is a need to be able to define basic security services for this data format. This document defines a set of algorithms that can be used with the CBOR Object Signing and Encryption (COSE) protocol (RFC 9052).</t>
              <t>This document, along with RFC 9052, obsoletes RFC 8152.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9053"/>
          <seriesInfo name="DOI" value="10.17487/RFC9053"/>
        </reference>
        <reference anchor="RFC9110">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
              <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </reference>
        <reference anchor="RFC9864">
          <front>
            <title>Fully-Specified Algorithms for JSON Object Signing and Encryption (JOSE) and CBOR Object Signing and Encryption (COSE)</title>
            <author fullname="M.B. Jones" initials="M.B." surname="Jones"/>
            <author fullname="O. Steele" initials="O." surname="Steele"/>
            <date month="October" year="2025"/>
            <abstract>
              <t>This specification refers to cryptographic algorithm identifiers that fully specify the cryptographic operations to be performed, including any curve, key derivation function (KDF), and hash functions, as being "fully specified". It refers to cryptographic algorithm identifiers that require additional information beyond the algorithm identifier to determine the cryptographic operations to be performed as being "polymorphic". This specification creates fully-specified algorithm identifiers for registered JSON Object Signing and Encryption (JOSE) and CBOR Object Signing and Encryption (COSE) polymorphic algorithm identifiers, enabling applications to use only fully-specified algorithm identifiers. It deprecates those polymorphic algorithm identifiers.</t>
              <t>This specification updates RFCs 7518, 8037, and 9053. It deprecates polymorphic algorithms defined by RFCs 8037 and 9053 and provides fully-specified replacements for them. It adds to the instructions to designated experts in RFCs 7518 and 9053.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9864"/>
          <seriesInfo name="DOI" value="10.17487/RFC9864"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC6874">
          <front>
            <title>Representing IPv6 Zone Identifiers in Address Literals and Uniform Resource Identifiers</title>
            <author fullname="B. Carpenter" initials="B." surname="Carpenter"/>
            <author fullname="S. Cheshire" initials="S." surname="Cheshire"/>
            <author fullname="R. Hinden" initials="R." surname="Hinden"/>
            <date month="February" year="2013"/>
            <abstract>
              <t>This document describes how the zone identifier of an IPv6 scoped address, defined as in the IPv6 Scoped Address Architecture (RFC 4007), can be represented in a literal IPv6 address and in a Uniform Resource Identifier that includes such a literal address. It updates the URI Generic Syntax specification (RFC 3986) accordingly.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6874"/>
          <seriesInfo name="DOI" value="10.17487/RFC6874"/>
        </reference>
        <reference anchor="RFC7049">
          <front>
            <title>Concise Binary Object Representation (CBOR)</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="October" year="2013"/>
            <abstract>
              <t>The Concise Binary Object Representation (CBOR) is a data format whose design goals include the possibility of extremely small code size, fairly small message size, and extensibility without the need for version negotiation. These design goals make it different from earlier binary serializations such as ASN.1 and MessagePack.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7049"/>
          <seriesInfo name="DOI" value="10.17487/RFC7049"/>
        </reference>
        <reference anchor="RFC7942">
          <front>
            <title>Improving Awareness of Running Code: The Implementation Status Section</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <date month="July" year="2016"/>
            <abstract>
              <t>This document describes a simple process that allows authors of Internet-Drafts to record the status of known implementations by including an Implementation Status section. This will allow reviewers and working groups to assign due consideration to documents that have the benefit of running code, which may serve as evidence of valuable experimentation and feedback that have made the implemented protocols more mature.</t>
              <t>This process is not mandatory. Authors of Internet-Drafts are encouraged to consider using the process for their documents, and working groups are invited to think about applying the process to all of their protocol specifications. This document obsoletes RFC 6982, advancing it to a Best Current Practice.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="205"/>
          <seriesInfo name="RFC" value="7942"/>
          <seriesInfo name="DOI" value="10.17487/RFC7942"/>
        </reference>
        <reference anchor="RFC8792">
          <front>
            <title>Handling Long Lines in Content of Internet-Drafts and RFCs</title>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <author fullname="E. Auerswald" initials="E." surname="Auerswald"/>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <author fullname="Q. Wu" initials="Q." surname="Wu"/>
            <date month="June" year="2020"/>
            <abstract>
              <t>This document defines two strategies for handling long lines in width-bounded text content. One strategy, called the "single backslash" strategy, is based on the historical use of a single backslash ('\') character to indicate where line-folding has occurred, with the continuation occurring with the first character that is not a space character (' ') on the next line. The second strategy, called the "double backslash" strategy, extends the first strategy by adding a second backslash character to identify where the continuation begins and is thereby able to handle cases not supported by the first strategy. Both strategies use a self-describing header enabling automated reconstitution of the original content.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8792"/>
          <seriesInfo name="DOI" value="10.17487/RFC8792"/>
        </reference>
        <reference anchor="RFC9334">
          <front>
            <title>Remote ATtestation procedureS (RATS) Architecture</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="D. Thaler" initials="D." surname="Thaler"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <author fullname="N. Smith" initials="N." surname="Smith"/>
            <author fullname="W. Pan" initials="W." surname="Pan"/>
            <date month="January" year="2023"/>
            <abstract>
              <t>In network protocol exchanges, it is often useful for one end of a communication to know whether the other end is in an intended operating state. This document provides an architectural overview of the entities involved that make such tests possible through the process of generating, conveying, and evaluating evidentiary Claims. It provides a model that is neutral toward processor architectures, the content of Claims, and protocols.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9334"/>
          <seriesInfo name="DOI" value="10.17487/RFC9334"/>
        </reference>
        <reference anchor="RFC9396">
          <front>
            <title>OAuth 2.0 Rich Authorization Requests</title>
            <author fullname="T. Lodderstedt" initials="T." surname="Lodderstedt"/>
            <author fullname="J. Richer" initials="J." surname="Richer"/>
            <author fullname="B. Campbell" initials="B." surname="Campbell"/>
            <date month="May" year="2023"/>
            <abstract>
              <t>This document specifies a new parameter authorization_details that is used to carry fine-grained authorization data in OAuth messages.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9396"/>
          <seriesInfo name="DOI" value="10.17487/RFC9396"/>
        </reference>
        <reference anchor="RFC9597">
          <front>
            <title>CBOR Web Token (CWT) Claims in COSE Headers</title>
            <author fullname="T. Looker" initials="T." surname="Looker"/>
            <author fullname="M.B. Jones" initials="M.B." surname="Jones"/>
            <date month="June" year="2024"/>
            <abstract>
              <t>This document describes how to include CBOR Web Token (CWT) claims in the header parameters of any CBOR Object Signing and Encryption (COSE) structure. This functionality helps to facilitate applications that wish to make use of CWT claims in encrypted COSE structures and/or COSE structures featuring detached signatures, while having some of those claims be available before decryption and/or without inspecting the detached payload. Another use case is using CWT claims with payloads that are not CWT Claims Sets, including payloads that are not CBOR at all.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9597"/>
          <seriesInfo name="DOI" value="10.17487/RFC9597"/>
        </reference>
        <reference anchor="RFC9844">
          <front>
            <title>Entering IPv6 Zone Identifiers in User Interfaces</title>
            <author fullname="B. Carpenter" initials="B." surname="Carpenter"/>
            <author fullname="R. Hinden" initials="R." surname="Hinden"/>
            <date month="August" year="2025"/>
            <abstract>
              <t>This document describes how the zone identifier of an IPv6 scoped address, defined in the IPv6 Scoped Address Architecture specification (RFC 4007), should be entered into a user interface. This document obsoletes RFC 6874 and updates RFCs 4007, 7622, and 8089.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9844"/>
          <seriesInfo name="DOI" value="10.17487/RFC9844"/>
        </reference>
        <reference anchor="RFC9943">
          <front>
            <title>An Architecture for Trustworthy and Transparent Digital Supply Chains</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="A. Delignat-Lavaud" initials="A." surname="Delignat-Lavaud"/>
            <author fullname="C. Fournet" initials="C." surname="Fournet"/>
            <author fullname="Y. Deshpande" initials="Y." surname="Deshpande"/>
            <author fullname="S. Lasker" initials="S." surname="Lasker"/>
            <date month="June" year="2026"/>
            <abstract>
              <t>Traceability in supply chains is a growing security concern. While Verifiable Data Structures (VDSs) have addressed specific issues, such as equivocation over digital certificates, they lack a universal architecture for all supply chains. This document defines such an architecture for single-issuer signed statement transparency. It ensures extensibility and interoperability between different transparency services as well as compliance with various auditing procedures and regulatory requirements.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9943"/>
          <seriesInfo name="DOI" value="10.17487/RFC9943"/>
        </reference>
        <reference anchor="I-D.kotecha-agentic-dispute-protocol">
          <front>
            <title>Agentic Dispute Protocol</title>
            <author fullname="Vivek Kotecha" initials="V." surname="Kotecha">
              <organization>Consulate, Inc.</organization>
            </author>
            <date day="13" month="October" year="2025"/>
            <abstract>
              <t>   This document specifies the Agentic Dispute Protocol (ADP), a
   standardized framework for autonomous agents and AI systems to file,
   process, and resolve disputes through structured, automated
   processes.  The protocol defines message formats, transport
   mechanisms, evidence submission standards, and cryptographic proof
   requirements for internet-native dispute resolution.

   ADP is designed to handle disputes arising from AI agent
   interactions, service level agreement breaches, and automated
   contract enforcement, providing deterministic, auditable, and legally
   enforceable outcomes.

   ADP includes chain of custody tracking, dual-format award
   specifications (JSON and PDF), arbitrator discovery mechanisms, and
   support for multiple resolution frameworks including expert
   determination, binding arbitration, mediation, and hybrid approaches.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-kotecha-agentic-dispute-protocol-00"/>
        </reference>
        <reference anchor="I-D.liu-ai-agent-authorization-integration">
          <front>
            <title>AI Agent Authorization Integration Framework</title>
            <author fullname="Dapeng Liu" initials="D." surname="Liu">
              <organization>Alibaba Group</organization>
            </author>
            <author fullname="Judy Zhu" initials="J." surname="Zhu">
              <organization>Alibaba Group</organization>
            </author>
            <author fullname="Suresh Krishnan" initials="S." surname="Krishnan">
              <organization>Cisco</organization>
            </author>
            <author fullname="Aaron Parecki" initials="A." surname="Parecki">
              <organization>Okta</organization>
            </author>
            <author fullname="Hui Xue" initials="H." surname="Xue">
              <organization>Alibaba Group</organization>
            </author>
            <date day="6" month="July" year="2026"/>
            <abstract>
              <t>   This document describes how to integrate multiple OAuth 2.0
   extensions to enable secure authorization for AI agents acting on
   behalf of users.  It combines cross-domain identity, policy-based
   authorization, user consent evidence, and multi-hop delegation into a
   cohesive framework for autonomous agent authorization.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-liu-ai-agent-authorization-integration-00"/>
        </reference>
        <reference anchor="I-D.schrock-ep-authorization-receipts">
          <front>
            <title>Authorization Receipts for High-Risk Agent Actions</title>
            <author fullname="Iman Schrock" initials="I." surname="Schrock">
              <organization>EMILIA Protocol, Inc.</organization>
            </author>
            <date day="16" month="August" year="2026"/>
            <abstract>
              <t>   This document defines the EMILIA Protocol (EP) authorization receipt,
   an evidence artifact binding an enrolled approver key to one
   canonical action before execution.  An approver-held key signs an
   Authorization Context containing the action hash, policy reference,
   shared authorization instance, per-signoff nonce, audience, and
   validity window.  A Trust Receipt carries the signed contexts,
   terminal consumption record, and Merkle inclusion material so a
   relying party can verify the recorded event offline under
   independently selected log, directory, policy, and approver trust
   inputs.

   The receipt establishes only the guarantees of the selected
   verification profile.  The mapping from an enrolled approver
   identifier to a natural person is asserted by the directory
   authority.  Offline verification does not establish current
   revocation status, global non-replay, comprehension, legality,
   safety, or execution.  Replay prevention requires an online atomic
   consumption store at the executor.  The state-machine invariants are
   machine-checked under the assumptions stated in this document.

   This revision defines the closed EP-AUTHORIZATION-BUNDLE-v1 pre-
   execution profile and its verification algorithm.  The bundle carries
   the Action Object, signed Authorization Contexts, signoffs, key
   proofs, and presentation evidence; it deliberately carries no
   terminal consumption or execution claim.  An optional, profile-
   identified authorization binding can commit the human evidence to an
   independently verified native authorization artifact without
   replacing that artifact or making this receipt format depend on its
   transport or trust model.

   A receipt is evidence, not authorization.  This document does not
   treat a local user interaction as an authorization decision.  It
   defines one evidence artifact that an authorization architecture can
   use in a human-confirmation flow: the signed Authorization Context is
   action-bound confirmation evidence an authorization server MAY
   validate and bind to the grant it issues.  The resulting Trust
   Receipt records terminal consumption and remains evidence; neither
   object makes the authorization decision.  That decision remains with
   the authorization server.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-schrock-ep-authorization-receipts-12"/>
        </reference>
        <reference anchor="I-D.stone-adrp">
          <front>
            <title>ADRP: Agent Dispute Resolution Protocol</title>
            <author fullname="Ben Stone" initials="B. E. N. S. S. T. O. N." surname="Stone">
              <organization>SwarmSync.AI</organization>
            </author>
            <date day="4" month="September" year="2026"/>
            <abstract>
              <t>   This document defines the Agent Dispute Resolution Protocol (ADRP), a
   wire protocol and state machine for resolving disputes that arise
   from cryptographically-attested agent-to-agent (A2A) transactions.
   ADRP is the companion specification to ATXN (draft-stone-atxn-01),
   which defines what an A2A transaction is.  ADRP defines what happens
   when a party contests one.

   ADRP severs an equivalence that every prior agentic commerce design
   has implicitly assumed: that a valid cryptographic proof bundle
   equals contractual satisfaction.  It does not.  Conduit-style
   cryptographic verifiers prove that an agent took specified actions;
   they do not prove that those actions satisfied the principal's Intent
   Mandate.  ADRP bifurcates disputes into a *cryptographic class*
   (resolvable by code from the proof bundle and mandate chain) and a
   *semantic class* (resolvable only against pre-committed machine-
   readable acceptance criteria, with arbitration escalation when those
   criteria are absent or under-specified).

   ADRP introduces the *Arbitration Mandate* as an ADRP extension that
   can be cryptographically linked to AP2 Intent/Cart/Payment Mandates
   or to an ATXN Standing Token.  It is not an AP2 core mandate.  The
   Arbitration Mandate records the principal's pre-committed dispute
   policy and is designed to support a written arbitration agreement
   where applicable; enforceability remains jurisdiction- and fact-
   specific.

   ADRP defines a *counter-attestation override pattern* in which a
   signed RulingBundle supersedes a Conduit ProofBundle by a signing-
   time precedence rule rather than by mutation.  Both the original
   attestation and the override are preserved forever in the hash chain;
   "override" is a verification-time computation, not a write.

   Companion specifications:

   *  *ATXN* (draft-stone-atxn-01): defines the A2A transaction
      primitive that ADRP resolves disputes over
   *  *AIVS* (draft-stone-aivs-01): cryptographic audit-trail substrate
      for proof bundles

   *  *VCAP* (draft-stone-vcap-01): verified-commerce escrow rails
      consumed by ADRP EscrowDirectives

   *  *ATEP* (draft-stone-atep-01): trust passports referenced by
      Standing Tokens in ADRP

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-stone-adrp-01"/>
        </reference>
      </references>
    </references>
    <?line 1947?>

<section numbered="false" anchor="changes-from-00">
      <name>Changes from -00</name>
      <t>No signed CBAP-1 wire-object shape, numeric member label, CDDL grammar
production, or CBAP-1 COSE signature-input construction changed between
<tt>-00</tt> and <tt>-01</tt>. The Exact Forum Acceptance
label 6 semantic registry name was corrected from <tt>submission-receipt-policy</tt>
to <tt>submission-receipt-profile</tt> to match the CDDL, and two CDDL productions
were re-wrapped without semantic change.</t>
      <t>This revision:</t>
      <ul spacing="normal">
        <li>
          <t>makes the verification algorithm and first-failure contract deterministic:
signed-object validation has one normative pipeline, fixed CDDL constraints
are owned by the corresponding signed-object boundaries, cross-object
predicates have one closed precedence order, and the outer-CBOR versus
bundle-schema split is explicit;</t>
        </li>
        <li>
          <t>defines the complete negative-path structured-result state machine. All 17
result entries have defined initial values, fields that can be unevaluated
admit the required indeterminate/not-checked states, processing stops at the
first failed boundary and predicate, and later semantic fields cannot
overwrite earlier resolved states;</t>
        </li>
        <li>
          <t>makes deterministic encoding and signature verification boundaries explicit
at all encoded levels, selects the uncofactored Ed25519 verification
equation, and aligns external Ed25519 trust-key decoding with RFC 8032
without adding a separate weak-key or <tt>verify_strict</tt> policy;</t>
        </li>
        <li>
          <t>reconciles digest semantics around exact signed artifacts. Signed-artifact
digests are over the complete received signed representation, the CPO and
contestability digest terminology is made consistent, reconstructed bytes
matter only when they differ from the received artifact, the Effect
Application Record has a defined signed-artifact digest used by
<tt>prior_application_digest</tt>, and a selected trigger profile that consumes
<tt>submission_digest</tt> MUST define its exact authenticated construction rather
than relying on an undefined generic filing byte string;</t>
        </li>
        <li>
          <t>defines ABP and Authorization Trust Profile values as bound profile
identifiers, fixes CBAP-1 trust-input cardinality, assigns each signed-object
boundary through a closed issuer/forum/executor trust-role table while
preserving separate fail-closed <tt>forum-id</tt> authorization, and makes generic
object admissibility depend on authenticated authority, closed-schema, and
role predicates before path-dependent members can be consumed. Signature
length and trust-key algorithm checks remain owned by those signed-object
boundaries; unused controlling-trust-domain input is removed from mandatory
CBAP-1 verification; selection evidence MUST use the exact bound selection
profile; and profile-identifier bindings are compared as exact URI-and-digest
pairs rather than by an implicit identifier relation;</t>
        </li>
        <li>
          <t>makes forum and authorization binding predicates exact, including issuer-key
identity, forum signer/key and <tt>forum-id</tt> authorization, Exact Forum
Acceptance trust ownership, and explicit object-local nonce semantics with
no implied cross-object equality, freshness, uniqueness, replay, or ordering
rule. Dependent classification cannot consume CPO, acceptance, profile, or
path-dependent object members before the owning authentication, digest
binding, and admissibility predicates have succeeded;</t>
        </li>
        <li>
          <t>completes FAM class semantics: class type/profile identity, signer/key
relation, accepted ABP/Authorization Trust Profile identifier pairs,
authorization-validity containment within <tt>may_bind_from</tt> /
<tt>may_bind_until</tt>, filing-horizon and <tt>issued_at</tt> semantics, and deterministic
failure ownership. The <tt>may_bind</tt> fields no longer imply binding-time
measurement;</t>
        </li>
        <li>
          <t>completes filing-time semantics by fixing the relevant timestamp model,
deterministic reduction when a filing profile can yield multiple
authenticated candidate clocks, and the half-open CBAP-1 execution-time
filing interval. Generic filing-window profiles additionally define the exact
<tt>duration_seconds</tt> arithmetic, non-representable behavior, one common
comparison domain for start/verification/closing values, and mutually
exclusive and exhaustive <tt>not_open</tt> / <tt>open</tt> / <tt>closed</tt> boundary semantics,
with <tt>indeterminate</tt> rather than implementation-local conversion or boundary
conventions when the comparison cannot be completed deterministically;</t>
        </li>
        <li>
          <t>makes previously exposed generic result states constructible without changing
the closed structured-result vocabulary. An optional Forum Operational
Status Profile selected by trusted local verifier policy defines evidence and
predicates for <tt>reachable</tt> / <tt>unreachable</tt>; with no operational-status
profile selected, the result remains <tt>not_checked</tt>. A CPO can use
<tt>forum_acceptance.mode = none</tt> to produce
<tt>forum_acknowledgement: absent</tt>, with that disclosure-only mode coupled to
<tt>effect_policy.mode = none</tt>. With no pre-execution evidence profile selected,
the result is <tt>pre_execution_evidence: not_claimed</tt>, while a selected claim whose
required evidence is missing produces <tt>absent</tt>;</t>
        </li>
        <li>
          <t>defines Notice and affected-party access semantics, including Notice signer
authority, signed-Notice digest construction, binding of by-reference Notice
access to an authenticated CPO discovery declaration, separation of access
integrity from retrievability, and the fact that <tt>public_transparency</tt> is not
itself a CBAP-1 network retrieval protocol;</t>
        </li>
        <li>
          <t>separates effect acceptance from effect application and closes active-effect
digest, signature-input, validity-horizon, and application-time boundaries:
Authorization Artifact, forum acceptance, and filing-receipt digests have
exact signed-artifact constructions; acceptance and application-record
signature inputs exclude only the signature being computed; Executor Effect
Acceptance has authenticated mode-specific validity horizons, deterministic
temporal reduction and cross-profile comparison rules, explicit operators,
and invalid/indeterminate classification; the generic verifier compares
authorization identifiers and action digests only across objects whose
selected closed profiles define those members; executor acceptance requires
authenticated strict-before ordering of the exact acceptance event against
execution under the bound serialization profile, without treating
<tt>accepted_at</tt> as ordering evidence; application records bind the exact
acceptance and receipt digests; ordering-evidence absence is distinguished
deterministically from unevaluable evidence; and idempotent prior application
is referenced deterministically. For application timing, the selected
active-effect profile composition now owns exactly one authenticated trigger
value, seconds-capable deadline construction, exactly one authenticated
application-transition value, and a deterministic common comparison domain;
an unevaluable comparison yields <tt>indeterminate</tt>. Late transitions derive
<tt>too_late</tt> before signed disposition semantics, while deterministically
on-time <tt>applied</tt> / <tt>refused</tt> dispositions map to
<tt>executor_claimed_applied</tt> / <tt>executor_claimed_refused</tt>, and an on-time
signed <tt>too_late</tt> claim is <tt>invalid</tt>;</t>
        </li>
        <li>
          <t>removes verifier requirements that cannot be evaluated from mandatory
inputs. Supersession continuity becomes deployment guidance unless a future
profile supplies authenticated predecessor evidence; replacement-forum
continuity likewise remains an operational objective rather than an
unevaluable exception to Exact Forum Acceptance validity; generic exact-
acceptance temporal predicates execute only after the compared acceptance
members are authenticated and, for <tt>valid_until</tt>, after the filing-window
closing time is deterministically derived; authenticated filing transport is
explicitly owned by the deployment rather than by the CBAP-1 verifier; and a
later withdrawal cannot erase a historically valid forum acknowledgement.
Verifier-evaluated withdrawal or continuity requires the exact bound policy
and a profile that completely defines authenticated event, authority,
binding, ordering, linkage, and failure semantics rather than an unbound
local convention;</t>
        </li>
        <li>
          <t>narrows <tt>executor_attested</tt> to the signer continuity that the evidence
actually proves. The verification and execution/refusal records form a
digest-linked signed sequence whose signer keys are independently authorized
for the required executor role; CBAP-1 does not require those <tt>kid</tt> values to
be equal and the base result does not establish a common executor identity
when they differ. A stronger same-executor claim requires a selected
pre-execution evidence profile to define and authenticate the key-rotation,
delegation, exact-key, or common-identity relation it relies on;</t>
        </li>
        <li>
          <t>aligns structured-result prose with the closed CBAP-1 transition model:
out-of-vocabulary fixed integers fail the containing closed schema rather
than producing a post-schema <tt>unsupported</tt> field result, and pre-
authentication CPO schema failure does not by itself prove
<tt>access_binding: invalid</tt>;</t>
        </li>
        <li>
          <t>makes non-unilateral selection provenance deterministic by requiring the
selected selection profile to declare exactly one of <tt>multiparty</tt> or
<tt>external</tt>, with no verifier-side precedence or fall-through between them;</t>
        </li>
        <li>
          <t>hardens security and resource handling without changing the reason-code
vocabulary: CBAP-1 has explicit resource ceilings, a normative
<tt>MAX_NESTING_DEPTH</tt> convention with the top-level decoded item at depth zero,
opaque byte strings and a reset for separately decoded CBOR, explicit-port
lexical rules, clearer unsalted action-digest semantics, and deployment
guidance for safe dereferencing of signed URIs;</t>
        </li>
        <li>
          <t>rebuilds the generic verification-input description from the complete
verification procedure so that protocol/profile inputs, local trust/policy
inputs, retained replay/idempotency/ordering state, and path-dependent
evidence are distinguished from derived values; and</t>
        </li>
        <li>
          <t>refreshes the implementation evidence from the original 56-test A3 corpus
through the <tt>-01</tt> 61-, 63-, 66-, and 73-test states while preserving the
implementation boundary: the current A3 lineage remains an Exact Forum
Acceptance implementation and does not implement FAM class acceptance,
<tt>valid_class</tt>, or <tt>agent-contestability-notice-v1</tt>.</t>
        </li>
      </ul>
      <t>These changes incorporate the review and implementation findings recorded
during preparation of <tt>-01</tt>.</t>
    </section>
    <section numbered="false" anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>AI-based tools were used during the development and evaluation of this work.
The author made the design decisions, reviewed and approved the submitted
text, and remains solely responsible for its content and technical claims.</t>
      <t>The author thanks Emek Can Doğru and Iman Schrock for detailed review of the
<tt>-00</tt> revision and for identifying issues addressed in this revision.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
RTJEO1/OYd6TtGE1/xunRmy48WT7G4lUOrZCjcc+tdjdTS3ZJF3OXavDOQko
GnPjzBfz6Sr2KRCGiXIZPrRgb4uVLjqhknvMFl+G9AUq5cxw0DMAUzI2Q47C
AdOUS9fnr+lGTnO17SUZ8M7OlH9EPvid/BkWwtk3+NXvp2VmZjASJ+8pcT17
SYf8EeUSK8qVKoxyAK6SJy4EbTLt0+pTjj612T3T8jwLSjzMK+TxF5eSEmIR
v5SiMizaYdVg5gAyc/mZU75ICF353yCQu3TGlaadhbiFX4oiyaxfCYcl51on
q8icSw1Xet2TZC4wMvaqOqevcDXku1IeN4UZ7ZhRmsxeSR0cxsr9x2B5Sh4/
7cnd9YKwqpvYClcDH0h6YTnhumSXIIs6cXyMZqyAArdtpYL7oeS8OAn+OyVB
//9z83+F3PxQHPdTU/59EvATn5luV/JqGT5Ixmm/7UqyYtFs2zN29M7cYfzE
l6/md7/2IzWamb7x9PBFr2mPi6iWPVUy8+PIk51wam9CtSjrYPxTqGDY+Fc8
w98TtPCZwHaMtXaHrAgxiaTSJWzyYQ6b0qgslLWtq5FjXNO0piAUqLCUCAlC
hbXpTnGXecMnNxzkn3M8Vw+gFIDEAJ0SEcFb2YUeKBEXQdYpweRfA3IhAG6G
tkXY4sTCRv4gjflLEjBSiBO1N5BxUzmfVHmjijD956ZpzkjrckEOoo5n/k2C
rFB8icNlUxxqIa6VVee+7Tp3rYKIO+GqjLTrJTVAokrYAx+Q2GNW86lSQZpD
30kYyK9ya+5BEf7Wqo60klCRsAEtzmOe00F3snEUNSUVFxQsDJutVhJymJT/
glHSdyL0u+K2XC7WrbJjD18fNRfUytHjC+fzaz4FYW8FSCJ9rzdeHmCM7OKK
03PVM0z7RgGwpLrLRR0jd9Zq8sHCicn/2JKlwvea9qPz03TuhmeVYSrZkks/
v+Jrm0Ogv6BF6pMLnj7U6qYZOxmIYiKZZgQS9IVHermTiKe2DyF60Rt+HOp9
8Qg2xKNkmT2CGn/kqveRWoLeuz7uWV56070VwxIpQEg8RNx4CzSXRfnpD8cw
nHnG7UqEWGGuvAGdYLn/PEM892AXFDhkskMyrBSfLbN6FLVGMDeO6T2DYSvl
oNQNXc771QP8+Xm7z9wnkSefyiis9FPp5eJCacP2g/F3Flpm/zcHMXk6J3tv
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
XpIPVjAPsp/8eJ5I5AKmt5DvcMkb0Vc9ORg98XaVdp8wIu/01n/wDQjroZ6u
KRRRCTb+JFO2K9TG2d/0znryhUcS5wmZL6siH0xfTCPZo0kW1ohX6/rmpqYv
vRr/+Z/Gf1YSdroJ/8lQ9yuQbWnYnGmT/sCfjw9aqpp7cjSFqKEeZmnJnFoZ
ZCbQx+7AqQer3+K7GpbTyu2ojGkyh089nuZDmzJAIe+ILYOTRuhpXDh0mYFa
9o0U1AzMIv1l+AUL7xaLNXFDBkubLNIoJ/3k8FrYVStZmvrMiXRzULhE6uPd
1396+/o/zt6dvv3m/TRp89u5VBOZJW2cfhoMqcS4BPoytDsPNQCZpkcnBXv5
6GmhyZUajicO2SRrlbYwvxBA7aVpC7i+RyHmM6Kta3MVa884nwfHpzvVqiuX
ZVhCQFuNlQF/Pn7/x9PJ0bNjGMd8zMJ2ywbnzdJcQJ2GE+2VRA9tj4yx3AuO
hpGRvXtTDsZf6rnyixMs3kp9lLR+6snqKdfDn6TAI7qW0jkBt46/Ae3G3xjf
zde+xRnsWk7Ek92nlgCpdAiUo0YabIvrchFAufGMHz5RnHOSeZdcJAYVLa6E
4MEFrgXIt3Co9YQgWtwYXn8jm9J4qFbQiIr/7OlYEdDp+J55NHSRVGpahQ1Q
uEXNmkcIidCbHqKPfZdcssl0/Gj8Ff6D0gOoSIDBHANOo2exucRH1LTV54Qi
FAeYgOPKKkn4X+8sOJUCNhaTObo1fwd7rwKuE1YqxJiyiM3B6PjXGO9An5Uw
BdC//VVm8PzXmMEAv+HfaBNe/DqbIFnEf4+xAslChIlotvGvM5WXv95UFkYn
/2sO/2B0+Phg/MdagtAlWTmXqvUoCTfv+o/Kb9vQ1ya943DHOwauy+7X8sD8
y5ZSS+86OuB1UkJfVPR3SHxhKP621d7dbAbBX62wdovW9W7fMKxma4ygxfQ4
GZsDNyd8o/9gyheeCbdFZ8vtAWmCT0Lfvw2baCGo4QmHaKf4WNOZ8jZLSMno
GTn97J3j5tfsbK/yL+az+5ZDiu+0FsV+2X11WS+X0ef72HbWzPlTKT2ucOR/
JpzqZsK6dZq/OG+aZ50rzNCaHu6Iw2gowooZ/vjtt+/eU2fEVrs5FA2f0kdp
UGAAE1+IZzW1BmwPBbwgSUBjRREvykFoYsd/iGAX/+CV8IgmA3X6/M+P/zMd
Hm9oQ8XKtwwwSJ8d0mfv013hR7yDxZJGnJwf/M4zVvzXl/I0oxq9DT85PMKn
HAQm07IojfPGsxNuPEutvA+f/HnxnzQMTiIuVmR5sBSbLpCYDVz2AwIhTE3Q
m1byycM6plHxoOh6ztb1Xb3Mxi1LpBXUO68JOAmzA4sgQB1zeMdPJTov0uNP
ycWbOn3hmdhdYp9PrTd6+lpzWVjvFpohZopctLRwZKcvlfnm8GgqYqJ3pfRH
x4I+eR6ONIJMZozvHC6uiiavqctM6V0XfY87nxeuUTZjS/LuGIJFS7QN+A7r
JLAta9xn48zRkzpvvJb57UmoPs1PwqBaK8hQg7gs5JV09CDlDtZ0G10m/fLY
sm18Z+Kk7UVV6fKtg44tp5MM73d4owL8RRgFRp8QuXpuNnzr60Cv9IMSPGN1
SSTBQnzUcEIGzmOYcB33KV/yoWu/n+4oLqxMM38DcmAkVUMeygpM5EXqsR3z
2U138t7qyorNz5uF+VCmKpXRaBzvUxCbf1g+TbgpqQDF6ltGh8c7LKeBi9Br
OaVp7bQ8nkx3Gh5PpOl9FvzonIadRrctp6M1hi4TNyrHi59O9YyFkx6toRc7
Tcvh8ew3l7ASYfz1pjsYGehHTe7ZFH2WBywbhQRN0i/SP2Hr2z+D3cN9Nq2H
hdBFGZQ1/+U/mSk0kS5s0zyOvl1ppyKLpKNh3R6XdarC1kaI2ZD24qWdsAFe
fsZaCp9bA9JiFlMPeNJZgAOqLwoLZWSpt1QASJ/3PiveEdqPZI2A4c25QLLe
5YgBG7nj8DCTRqSgSrBAx2KBCkfDdb28nDCfI4fGPlCO+89hg6rykb+fegfx
XrJ1JpayJsdIpHdTiON/jsfAeiHL14uz1ffrcqaybdJGefC1fWvEzU8k2QmD
JBZhIwJV1FV+ex1IY8Rh4aJQhf4Jc4EWuKb59XPPxWJaIY3t4Rh8NQ5MfPsU
CVe7yoIjH1nVT87/ahzI16uS+yLMqlNVHIksqrIRfOfdJRlC2Qyv6qlqZCBg
1VuYnJXYVd1q46I6qur0CNnxlQzF2fkWH75Yk34ydD0WrYFks5vS2w48dDsa
7ECec1Hcax+SJAojVVxl9BRVOMyE+hUzOGn8NQLlRA6gFdNOpQoHhYrqrY+v
ATACpgGhau1337UptfegkTBpdpyBggHqklzSc0AUMtDgt9d9XaPMW1MaLh2j
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
E6rTQG8R+XcWzeTA6ESrMmy26HK4Q9n1Fmr4Yl2RwwWbe49ijV8su8ZfiPAj
wMhQnUfVDc3StfLwLIDfXINL/7OzPIGd4N646x5rFkb74ItkTXbMnQ9nKwSz
vUFbeUb3nITOsYxgGI77Dj7CHyAH9uk+sV05uX2QtvTMHNPmc9Ya1Icl0rOB
SGomNCScOpEZ2qndS0Khtbo9hlsbDN4DEIZyEFS/1IVxu/LeVzgePxQO7ZO8
e0ue5w/GNuPjL/1Mzxd8kQLCOb/0HsfUDczimVQYoHFY+fwjR/5iV5Rz30Ej
utkv67vjfrbHLD9yFi93RTtlFoMP66JVP/4EHD3eEd8c9mAOBwOT8puh410A
YzsiT8GsrAz6QZsBsTlQXv40E78Px0nziGhP7PPjpEV4dxkVLaOeH6VHOOnV
GwGVTXhQj4xGg1Dk0F+zwAXnsOHB7/GOdRuq2be7zbmU1cgQ2wdlsIBrHRdl
4BM1copdpBWbNHdJ3rbXi1sOst8iFlOwdqog0NZnuOc5vJL7FCcndC/XTTIN
IchgrelPEETJG9vFtkZ0kcjy7Zc9vflx2MgqNuVhbfb6/ls/RdDRBod3Pwlm
YjIbwdv3EXYjxcmpG6M/N+l0BA1neMNx1qH1owb3nMdDUj7PiBVq/BdOf/S1
kcgSx5GEAf3kVHucG4u9ck9GaxxnEaYOmLdF6X63z1gfNm6wRaYXM+h3NXIa
OpFbZ6M20OUurDec3Bxmoepnv6X43vhPiyRq7i+Wc9zKdP9uEGqdOBC9nROl
C1ObSMnxOEmy9ENUIUK/ut94QnTQ3rrrWzLcTryW2O9KexIS6/bfuT0lK3Hi
GaY4mROkCHJ2Y4Rvqn2bZR34Jay0s0PFjMoV+JSx9l3+fEQ1iS7ZgbxMPwSJ
gVCwUgn4wl4ufhQR6A0lkDNBjQCFZpGV9Y5TrwjM+yWAu99Y+0jtE49f97R2
0q5IsabAmldIRlcVyGYQ1qZX7ERCf7GwgTH+56F50C30jXpoPAxayzM4cn5z
aVyOg8i68px4lxhvGSYxu5A+9FlplPjE9jls1jd986QTi/WdFI14hDZAGwQJ
WCacP+XaHlzHetPXbIHPUPJS49I+Cu9Ob/2hvpp3ICxGWy/PUYAwenfRvpyx
V5yvrK/N3tvMuqGzJDKsffb+l+/mpQCS/3r7R3ng77WfM8QEEelnEKCC8O1j
ysfy49g9HFrEAR7r5i7wjmiC43d5Dz46ZY86TwkNF/JsJhUO9F+z36tpxeU+
IqtzaIVMTQ0hKGOxO2+Dtpt2p44aPFp32p8WIBvfoowU1dqYoHI2w550Q/xK
2SLpDBq9PgG9bakzPaUR5Y86atgB4pvrH6mKauWEv9R4gGoqTBVW3ORjdV91
tOmsudgi2bmaSZ4tPXG19b7F97DaycZIO9vKeO13LNHlu6GLcgYnmejF8EXB
Qv9WOkxTnJgb+kWn4e1mvBJnV3vD1rP/2s704qyaNdpJUKuIOu8RAEgUZa+5
Ledo9JpsOhsV6fgqLk/BHWIROHht6HWMqyvBJmvBSbU9dwaMxL96VTzHrfJm
i0rNL92jsifupdqpeC5p1WVzf4Pe0FSGwwTWGFHArtBIpHEB1eus6jUJCBIX
UhrONbt5SW+fSYiuMiqtQn/ykBZXyjblXIk83XSt4y6ToXBet3NX91wPLz2B
m4C/ym81uTNzchEptCG6hbEoC6IkleHp1WeSt9CuVLhWrVQOiGGcfGGzSL4l
7lXeXlk6CuqTJnNi0KEgJMFqsaj04qyt8tC4H7Xbi3wGla6kTW3eaXUhDqGO
oApSBtsmzWEWLeyx0EbEq/68kEuSqNipyKhunoRAPgwV1O9JXKIdU8vEi9bi
I/S3wW21Zkh9k2SL/W3RbIMdezIoSUqKiQ3nGufuaruY1dL++S9/+R/ffPH6
+cunRz//DHpGFMysZli48/koSYSGeZ6FINo1vFBZpweI/VqUyflWrOrb9po7
/rQX68W5gVEWDtsQB3v0NLnlScdwtdLR46NjlCx+Sf4BqyCCHnOc+mq++6VQ
A6Icp5PHjz0qQddnBubsd/dp/1YjR2Dnj2OnoVnXyR+apHmnl38D2nyrAxMP
imptgVYZnb6d4AVC0E+73m50xWv0Mf5xM0nnbYmGuvPWWwHU43+rP9Tv0zLd
bkaM259wtOVASjVEYyWngT0mbFq+BMps04b1XqxGm3ggAGpKN5DaG5CI5eff
qwCRm0gljNreBxJmJFJX2JyF605Go3fOkkHA0JNa2Vq79RZwdPIUR3bazS1S
NSknKiwAs25K34VNXArDiwjbkA4m41seMfmO2p1Guvn57OjZs8OXwQUt1nng
4SMK4QmnavLFpi/qp8/nL17W5+dHF8+f1y9n86Pnl5fnz17Wz84v0t+fHx0d
P3v88ujJ8fzJs/PHl4eHF5fHLw5fXs4Oz4+Pnx5P1QHMzpVxrLO5Ji6lG+fM
x6P0FLiXgtAfKWxKBDa7w+3dfK3Tyy8J2T8kY7ZEfEq1ghTQ4eJzLB3CjSDq
UrZWKj3hGiCCh2kkM76Pf/Qq+Gfp6CzT56tNeV4v1/P5f6NxrP/+glQc9RqT
zi6VvYSU/yhdY0StYGoI4LbKAlpkuCXRLpdEAG0iBOSyXs+XGZyPpvPf81W5
EYah29w1aq8KqdZsccmig8BStBYjoNikgVRc/5nBGRdo/gDHOPe5Nrkdf8BD
M1WW9mVJuUjKuf5I5T8zLrKawcxWXjnDzPGoxYZbrEcyYqbekltPoqvlu88U
NmksV9bkzQSoNfCgulDTa6N0v6/ITwtEbCZhZRnTQ8Mlefns+PzFi9nRiydH
86fpPrw8fHJx/vzJ5csn8+OX5y+PH88vjy8PZy+OH1++qC/OL56dP3s8r58+
S9+qz48uH6dLcmoYusBsyR1U2OxNbkgSd1sAbiFc0u2lLh9zm4ABU0fZjYJi
l3GfPhmDEn6Snu1MYbf1BZtNXC5uTP+j4rBknfJsEfOluDw6f3n++PnTZxf1
i/Pnzw6fHB1dPj08ns+Oj+bPnzxPy3H05OXxyydPz1+cz89fHB7Onl0+Pzx/
ennx4sX54dFLlhd1VxEBCPjsWMDM5JS17Bho18f+0zmym+IcVrsFYGx/Mupp
k5JmfbsVBUHS9ugFJ+LpVosMon8KcJDsr2R+pSfNF1fXAmsOAURcYEpaDReG
gQsbcVz0dKkvrkcsRZJx1fzACp/K+ZN5QbBxbk2HEqd0ejckLt6++3DsXb54
+/IWlmyGi0JNIxoJF5t2FiWXjG6tPIm7XECBjpOWqR4fHSG6zEr/gvwnYpZq
KZQyCkELjhZYhU9+Jy9JLiSB9QVsmsNpZbDO5HdKG4NkwW7K46xHF2dyogIT
dgHzpVLyhoo+F+vGrxWpGLvnz44n3M2BrBuGmttxe/SMiJJHmqPTp2nXUgo0
pDGw6UQ/pIEw3NwUwXymxU3GjT9yqjIxpJ0pSbwuJUwaPUyY9JZaw5FPM5vx
AK/WMLrMmBwnA5U8kRG4IDfSgkGK1HH4EeC1KAiOGRxuFE1xrkL0wUjounET
V3T4pNUFbbhYNhJhwafBDaFt4qHyXRnpgkqihYzl+Vy2+xHvCd2KttIdOT6M
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
A6zxYPT/Ajn0iNImggMA

-->

</rfc>
