<?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-gilda-audit-agent-audit-record-03" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.35.0 -->
  <front>
    <title abbrev="Agent Audit Record">An Audit Record Format for AI Agent Authorization Decisions</title>
    <seriesInfo name="Internet-Draft" value="draft-gilda-audit-agent-audit-record-03"/>
    <author fullname="Sankalp Gilda">
      <address>
        <email>sankalp.gilda@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="October" day="29"/>
    <area>Security</area>
    <keyword>audit</keyword>
    <keyword>agent</keyword>
    <keyword>attestation</keyword>
    <keyword>tamper-evident</keyword>
    <abstract>

<t>This document defines a record format for AI agent authorization decisions and the effects that followed them. The format is one in-toto predicate type, signed inside a DSSE envelope. A record carries the decision and the observed effect with a derived agreement between them, whether the decision point could evaluate the request and how fresh each input it relied on was, and a canonicalization contract under which a party that trusts neither the agent nor its operator recomputes the record's consistency from its bytes. The document also defines what a party that retains a record keeps beside it, so that the record can later be dated from anchors that party does not control. The format carries the seven minimum audit fields of the WIMSE AI Identity Management System framework, and it is offered as a data model for the audit records the proposed AUDIT working group would specify. It defines no policy.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-gilda-audit-agent-audit-record/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        AUDIT Birds of a Feather mailing list (<eref target="mailto:audit@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/audit/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/audit/"/>.
      </t>
    </note>
  </front>
  <middle>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document defines one record format for an agent's authorization decisions and their effects, and it defines nothing else. It specifies no policy model, no compliance criteria and no retention period, and it does not extend or amend <xref target="AIMS"/>.</t>
      <t>Two bodies of text ask for such a format. Section 11 of <xref target="AIMS"/> requires audit records for agent authorization decisions and leaves their form open. The proposed charter of the AUDIT working group <xref target="AUDIT-CHARTER"/> asks for data models that represent "interaction records, references to the identities of participating entities, delegation context, authorization state over time, or action provenance", and states that "audit information must be verifiable by a party that trusts neither the agent nor its operator". <xref target="audit-map"/> maps each problem the AUDIT BoF request <xref target="AUDIT-BOFREQ"/> and that charter name to the section of this document that addresses it, and names the ones this document leaves to other work.</t>
      <t>This document replaces draft-gilda-wimse-agent-audit-record-02. Sections 1 to 8 and Appendices A and B keep the numbers they had there, so a reference to one of those sections of that revision resolves to the same section here.</t>
      <t>The goals are:</t>
      <ul spacing="normal">
        <li>
          <t>to make an audit record from one deployment comparable with one from another;</t>
        </li>
        <li>
          <t>to make "tamper-evident" a property a verifier can test on the bytes it holds;</t>
        </li>
        <li>
          <t>to carry the authorization decision and the observed effect in one signed record, so a disagreement between them is detectable;</t>
        </li>
        <li>
          <t>to give the seven minimum fields of Section 11 of <xref target="AIMS"/> one member each.</t>
        </li>
      </ul>
      <t>Policy belongs to a deployment, and a record format belongs to everyone who has to read the record. Two implementations that each satisfy Section 11 in their own format produce audit trails that cannot be compared, correlated across a service boundary, or checked by a party that trusts neither producer. Section 11 asks for all three.</t>
      <t>Comparable has a narrow meaning here. Two records are comparable when a third party holding both can decide, from the bytes alone, whether they describe the same request, whether their decisions agree, and whether either was enforced.</t>
      <t>The consequence is concrete: two deployments that each hash a request differently cannot join their records on a request digest, so a delegation that crossed between them is reconstructable in neither log.</t>
      <t>Section 11 of <xref target="AIMS"/> is normative about the existence of agent audit records and silent about their form. It requires that "deployments <bcp14>MUST</bcp14> produce durable audit logs covering authorization decisions and subsequent remediations", that "Audit records <bcp14>MUST</bcp14> be tamper-evident and retained according to the security policy of the deployment", and that audit events record seven minimum fields.</t>
      <t>Section 12 then places the policy model and document format out of scope, stating that they are "not recommended as a target for standardization within this specification". Section 13 places compliance criteria out of scope, and Section 16 records no IANA actions. <xref target="rationale"/> sets out the canonicalization contract and the reason the decision and the observed effect belong in one record.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>

</section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>The following terms are used throughout this document. Two of them, <em>observer</em> and <em>decision point</em>, are defined here; the rest are taken from the documents named beside them.</t>
      <dl>
        <dt>Agent, Tool, Service, Resource, LLM:</dt>
        <dd>
          <t>as <xref target="AIMS"/> uses them.</t>
        </dd>
        <dt>Agent identifier:</dt>
        <dd>
          <t>a WIMSE identifier as defined in <xref target="WIMSE-ID"/>.</t>
        </dd>
        <dt>Statement, subject, predicate:</dt>
        <dd>
          <t>as <xref target="IN-TOTO"/> uses them.</t>
        </dd>
        <dt>Observer:</dt>
        <dd>
          <t>the party that produces a record under this document. An observer watches from a layer the agent cannot address. A host-side view of a guest filesystem, a hypervisor-level read of guest state, and kernel-level supervision below the observed process are such layers. An in-process library, a wrapper the agent links, and an importer holding another party's log are not.</t>
        </dd>
        <dt>Decision point:</dt>
        <dd>
          <t>the party that evaluated the authorization request, whatever its architecture.</t>
        </dd>
        <dt>Interval:</dt>
        <dd>
          <t>the period between the before-state and the after-state that one record covers.</t>
        </dd>
        <dt>Retaining party:</dt>
        <dd>
          <t>a party that keeps a record as evidence, whether it produced the record or received it from another party.</t>
        </dd>
        <dt>Anchor:</dt>
        <dd>
          <t>evidence, obtained from a source the retaining party does not control, that a given digest existed no later than a given time: an <xref target="RFC3161"/> time-stamp token, an inclusion proof in an append-only log <xref target="RFC9162"/>, or an OpenTimestamps proof.</t>
        </dd>
        <dt>Skew tolerance:</dt>
        <dd>
          <t>300 seconds. Every comparison in this document between times written by two different parties allows it, except a comparison with the time of an <tt>opentimestamps</tt> anchor, which allows the larger tolerance <xref target="anchor-rules"/> gives for that kind. A relying party <bcp14>MAY</bcp14> apply a smaller tolerance and <bcp14>MUST NOT</bcp14> apply a larger one.</t>
        </dd>
        <dt>Tier:</dt>
        <dd>
          <t>the degree to which a record's own members corroborate what it claims about how it was observed. A verifier derives the tier under the rule in <xref target="observation"/> and never reads it from the record.</t>
        </dd>
      </dl>
      <t>Every digest in this document is written as lowercase hexadecimal in the algorithm the record declares in its <tt>hashAlgorithm</tt> member.</t>
    </section>
    <section anchor="spec">
      <name>Audit Record Specification</name>
      <t>A record is an in-toto Statement <xref target="IN-TOTO"/> carried in a DSSE envelope <xref target="DSSE"/>. Its <tt>predicateType</tt> is</t>
      <artwork><![CDATA[
=========== NOTE: "\" line wrapping per RFC 8792 ============

https://probityai.github.io/agent-evidence-vectors/predicate/v1/\
agent-audit-record
]]></artwork>
      <t>Seventeen required predicate members and two optional members are defined in <xref target="members"/>. Each of the seventeen <bcp14>MUST</bcp14> be present unless a rule in that section makes it conditional, no member has a default, and a verifier <bcp14>MUST NOT</bcp14> supply one for an absent member (vectors <tt>F1</tt> and <tt>EV3</tt>). Two members are conditional on a sibling value, <tt>resource.argumentsDigest</tt> and <tt>correlation.externalAnchor</tt>, and each is specified where it is defined. The optional members are <tt>oversight</tt> (<xref target="oversight"/>), whose absence says nothing about whether a person acted, and <tt>sequence</tt> (<xref target="sequence"/>), whose absence says nothing about how many records the producer issued.</t>
      <t>A verifier <bcp14>MUST</bcp14> reject a value outside any closed vocabulary this document defines, and <bcp14>MUST NOT</bcp14> ignore the member (vector <tt>V1</tt>). The closed vocabularies reuse terms registered in <xref target="VOCABULARY"/>. This document cites a registered term by its term URI, <tt>https://w3id.org/agent-evidence/vocab/v1/</tt> followed by the term key, and a registered value by its value URI, the term URI with the value key as its fragment. The registry is release 0.8.0. Its registryDigest, the SHA-256 of its exact bytes, is
76233ba8924cebdf053f0449ce023186805156aedca4121b9b156bd747a411b4, and the bytes are published under <tt>https://w3id.org/agent-evidence/vocab/v1/registry/</tt> with the file name <tt>sha256-</tt>, then the digest, then <tt>.yaml</tt>. Registration gives a value its identity; which values a member accepts is set by this document alone.</t>
      <t>A closed vocabulary is extended only by a revision of this document. Once a revision has frozen the predicate type URI (<xref target="iana"/>), a revision that adds a value to any closed vocabulary publishes the extended set under a new predicate type URI and leaves the set under the earlier URI unchanged, so a verifier never meets, under a URI it accepts, a value it is required to refuse. A verifier <bcp14>MUST NOT</bcp14> accept a value outside the set because it is well formed, prefixed, registered elsewhere or accompanied by a description. No closed vocabulary in this document carries a catch-all value such as <tt>other</tt>, because a catch-all satisfies the vocabulary while saying nothing two records can be compared on.</t>
      <section anchor="canonical">
        <name>Canonical form</name>
        <t>Two implementations derive the same bytes from the same Statement only if they agree on the serialization and on what makes a Statement malformed. Both are fixed below.</t>
        <section anchor="json-profile">
          <name>JSON profile</name>
          <t>Producers and verifiers <bcp14>MUST</bcp14> canonicalize the Statement with <xref target="RFC8785"/>, and the signature covers those bytes and no other serialization (vector <tt>T2</tt>). Producers and verifiers <bcp14>MUST</bcp14> enforce the <xref target="RFC7493"/> I-JSON safe-integer profile: an integer of magnitude at or above 2^53 makes the Statement malformed (vector <tt>T5</tt>).</t>
        </section>
        <section anchor="duplicate-members-and-nesting-depth">
          <name>Duplicate members and nesting depth</name>
          <t>A member name repeated at any depth makes the Statement malformed. A verifier <bcp14>MUST</bcp14> reject such a Statement and <bcp14>MUST NOT</bcp14> retain any one occurrence (vector <tt>T3</tt>). A Statement nested deeper than 128 levels <bcp14>MUST</bcp14> be rejected (vector <tt>T4</tt>).</t>
        </section>
      </section>
      <section anchor="subject">
        <name>Subject convention</name>
        <t>A record carries two subject entries. The first is the request, by digest: its <tt>name</tt> is the correlation identifier and its <tt>sha256</tt> digest is the request digest defined in <xref target="members"/>. The second is the after-state root of the interval the predicate carries, and its <tt>name</tt> is the first entry's <tt>name</tt> with the suffix <tt>/after</tt>.</t>
        <sourcecode type="json"><![CDATA[
"subject": [
  { "name": "urn:example:corr:7f3a",
    "digest": { "sha256": "9f86d081884c7d659a2feaa0c55ad015..." } },
  { "name": "urn:example:corr:7f3a/after",
    "digest": { "sha256": "60303ae22b998861bce3b28f33eec1be..." } }
]
]]></sourcecode>
        <t>A verifier <bcp14>MUST</bcp14> bind on the <tt>digest</tt> map and <bcp14>MUST NOT</bcp14> bind on either <tt>name</tt>. A name is a correlation identifier a producer chooses; a digest is a value a verifier recomputes from the bytes it holds. The names exist so that a reader can tell the two entries apart.</t>
        <t>The second entry <bcp14>MUST</bcp14> be present if and only if the predicate carries an interval (vectors <tt>S1</tt> and <tt>I1r</tt>), and its digest <bcp14>MUST</bcp14> equal the interval's after-state root (vector <tt>S2</tt>).</t>
        <t>A decision that was denied, and a permit under which nothing was written, still carry an observed interval. The condition on the interval is what was observed in it, not what was decided: an interval with no writes has equal before-state and after-state roots (vectors <tt>A2</tt> and <tt>E6</tt>), and a write the observer saw in the interval is retained whatever the decision. A write attributed to a denied request yields <tt>agreement</tt> of <tt>disagree</tt> under <xref target="decision-effect"/> (vector <tt>A3</tt>), and a write attributed to another request moves the roots and leaves this record's agreement as it is (vector <tt>A7</tt>). A consumer therefore reads an absence of effect from the members of a record it holds, and never from a record it does not have.</t>
      </section>
      <section anchor="timestamps">
        <name>Timestamps and correlation</name>
        <t>Every time value in a record <bcp14>MUST</bcp14> be an <xref target="RFC3339"/> date-time. A producer <bcp14>SHOULD</bcp14> express it in UTC with the "Z" offset, so that two records from different deployments sort together without a conversion step. The correlation identifier is the first subject entry's <tt>name</tt>, so one identifier binds the request digest, the interval and the record.</t>
      </section>
      <section anchor="tamper">
        <name>Tamper-evidence</name>
        <t>A record satisfies the tamper-evidence requirement of Section 11 of <xref target="AIMS"/> when all three of the following hold.</t>
        <t>The DSSE pre-authentication encoding covers the <xref target="RFC8785"/> canonical bytes of the whole Statement, and every one of the seven minimum fields is inside that pre-image.</t>
        <artwork><![CDATA[
DSSE PAE = "DSSEv1" SP len("application/vnd.in-toto+json") SP
           "application/vnd.in-toto+json" SP
           len(JCS(statement)) SP JCS(statement)
]]></artwork>
        <t>The request digest, the ordered write chain of the effect, and both <tt>agreement</tt> values are recomputable from other members of the same record. A verifier therefore still refuses a record that the key holder altered inconsistently and signed again (vector <tt>T1</tt>).</t>
        <t>These recomputations detect internally inconsistent alterations even when the altered record is signed again by the key holder. They do not detect a coherent replacement in which the dependent members are changed consistently and signed again. A key holder that keeps <tt>authorityDigest</tt>, <tt>beforeRoot</tt>, <tt>recordId</tt> and <tt>witnessNonce</tt>, so that the commitment digest still recomputes, and replaces the writes, <tt>afterRoot</tt>, the second subject entry and every value derived from them, produces a record that every recompute accepts. A coherent replacement is found only by comparison with something the key holder does not control, such as a copy of the original envelope or an anchor over its digest that another party obtained (<xref target="retained"/>).</t>
        <t>The canonical form is fixed as in <xref target="canonical"/>, so two verifiers derive identical bytes from identical documents. Any one of the three failing is a refusal.</t>
        <t>The retention half of the Section 11 requirement is a property of a deployment, and a record cannot assert it about itself. A record under this document <bcp14>SHOULD</bcp14> state that in its <tt>doesNotAssert</tt> member, so that a reader need not infer coverage. <xref target="retained"/> defines what a retaining party keeps beside a record so that the record can still be dated and validated after its keys and algorithms age; how long a deployment keeps it remains the deployment's policy.</t>
      </section>
      <section anchor="mapping">
        <name>Mapping to the seven minimum fields</name>
        <table>
          <name>The seven minimum fields of Section 11 and the members that carry them</name>
          <thead>
            <tr>
              <th align="left">Section 11 field</th>
              <th align="left">Members</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">authenticated agent identifier</td>
              <td align="left">
                <tt>agent.id</tt>, <tt>agent.credentialDigest</tt>, <tt>agent.authentication</tt>, <tt>agent.signers</tt></td>
            </tr>
            <tr>
              <td align="left">delegated subject, when present</td>
              <td align="left">
                <tt>delegation.subject</tt>, <tt>delegation.subjectKind</tt>, <tt>delegation.authorityDigest</tt>, and <tt>delegation.rootDigest</tt> when present</td>
            </tr>
            <tr>
              <td align="left">resource or tool being accessed</td>
              <td align="left">
                <tt>resource.kind</tt>, <tt>resource.id</tt>, <tt>resource.binding</tt>, <tt>resource.argumentsDigest</tt></td>
            </tr>
            <tr>
              <td align="left">action requested and authorization decision</td>
              <td align="left">
                <tt>decision</tt>, <tt>evaluation</tt> and <tt>effect</tt>, with the derived <tt>agreement</tt>, and <tt>oversight</tt> when present</td>
            </tr>
            <tr>
              <td align="left">timestamp and correlation identifier</td>
              <td align="left">
                <tt>correlation</tt> and the interval timestamps, and <tt>sequence</tt> when present</td>
            </tr>
            <tr>
              <td align="left">posture assessment or risk state</td>
              <td align="left">
                <tt>posture</tt>, carrying both vantages and <tt>assessedAt</tt></td>
            </tr>
            <tr>
              <td align="left">remediation or revocation events and cause</td>
              <td align="left">
                <tt>remediation</tt></td>
            </tr>
          </tbody>
        </table>
        <t>Each field also carries an evidence partition in <tt>fieldEvidence</tt>, stating whether the observing substrate covered the value or the producer asserted it. All seven fields can be recorded by an agent about itself. A record that says which ones were is checkable; a record that does not say is not.</t>
        <t>The fourth field pairs an action with a decision, and this format carries <tt>decision</tt>, <tt>effect</tt> and the derived <tt>agreement</tt> together. A record whose decision and effect disagree is well formed, and the disagreement is visible in signed bytes:</t>
        <sourcecode type="json"><![CDATA[
"decision": { "action": "write", "reported": "deny" },
"effect":   {
  "observed": "occurred",
  "writes": [ { "path": "/srv/ledger/settlements.jsonl" } ]
},
"agreement": "disagree"
]]></sourcecode>
        <t>A log that carries the decision alone records that case as a clean denial, because it has no other value to disagree with.</t>
      </section>
      <section anchor="verifying">
        <name>Verifying a record</name>
        <t>A verifier holds a DSSE envelope and reaches a verdict from the bytes inside it. The checks below are the ones this document has already stated, in the order a verifier can apply them without reading a member twice.</t>
        <t>The JSON profile comes first, applied while the payload is parsed: the safe-integer bound of <xref target="RFC7493"/>, no member name repeated at any depth, and no nesting past 128 levels. Each of the three makes a Statement malformed, so a verifier that finds one of them has nothing further to check. It has to come first because the signature covers <xref target="RFC8785"/> bytes, and a verifier derives those bytes from the parsed Statement: a parser that keeps one occurrence of a repeated name has already done what <xref target="canonical"/> forbids before any signature is checked (vector <tt>T3</tt>).</t>
        <t>The envelope's signature comes second, over the <xref target="RFC8785"/> canonical bytes of the Statement that parse produced. A statement whose signature does not verify over those bytes is malformed, and nothing further is read from it. That includes a statement signed over the bytes it carries, which is what a DSSE verifier that does not derive the canonical form checks (vector <tt>T2</tt>).</t>
        <t>Membership comes third. Every one of the seventeen required members is present unless a rule in <xref target="members"/> makes it conditional on a sibling value, and every value sits inside the closed vocabulary its member declares.</t>
        <t>The recomputes come next, and a signature cannot supply them. The three that <xref target="tamper"/> requires come first: a verifier derives the request digest from the four members <xref target="members"/> names and compares it with the first subject entry, it replays the write chain from the before-state root and compares the result with the second subject entry, and it derives both agreement values from the members they are functions of.</t>
        <t>A fourth recompute binds the prior commitment rather than the record's content. A verifier recomputes the commitment digest, checks that the commitment precedes the interval, and checks that the commitment key is absent from <tt>agent.signers</tt>. A fifth derives, from <tt>evaluation.inputs</tt>, the set of inputs that were stale or never established at <tt>decision.reportedAt</tt>, and compares it with <tt>evaluation.status</tt> and <tt>unavailableInput</tt> (<xref target="evaluation"/>).</t>
        <t>The tier follows from those results. A verifier reads the five clauses of <xref target="observation"/> against the members it has just checked and assigns <tt>authoritative</tt> or <tt>voluntary</tt> itself.</t>
        <t>A verifier that holds a retained record (<xref target="retained"/>) applies one more check, the dating check, after all of the above. It validates each anchor over the envelope digest under the offline rule for its kind, takes the time of the earliest anchor that validates as the time the record is established to have existed, and, for a record received from another party, checks the stated receipt time against the bracket <xref target="retained"/> defines. The dating check produces its own result beside the record's verdict: an envelope that is well formed stays well formed when none of its anchors validates, and it is then simply not dated.</t>
        <t>For a record that carries <tt>delegation.rootDigest</tt>, the same verifier also establishes the delegation root. It decodes the <tt>delegation-root</tt> element, checks that its digest under <tt>hashAlgorithm</tt> equals <tt>delegation.rootDigest</tt>, and derives from the material the algorithm the chain's root rested on (vector <tt>R13</tt>). An element whose digest differs makes the entry malformed (vector <tt>R15</tt>). Where the verifier holds no such element, or the record carries no <tt>delegation.rootDigest</tt>, it reports the root as not established, and <bcp14>MUST NOT</bcp14> report that as a pass (vector <tt>R14</tt>). This result too sits beside the record's verdict and does not change it.</t>
        <t>This document requires no particular order beyond the first two checks, and no particular reporting shape. A verifier that stops at the first failure and a verifier that reports every failure are both conformant.</t>
      </section>
      <section anchor="retained">
        <name>Retained records</name>
        <t>A record's signature says who signed it and nothing about when. A party that keeps a record as evidence therefore keeps a retention entry beside the envelope: a JSON object under the profile of <xref target="canonical"/>, which the producer did not sign and which this section defines. A retaining party <bcp14>MAY</bcp14> keep the entry in any container. The entry carries no predicate member and changes none, so a record's verdict under <xref target="verifying"/> never depends on it.</t>
        <sourcecode type="json"><![CDATA[
{
  "envelopeDigest": "...",
  "received": true,
  "receivedAt": "2026-09-19T11:04:20Z",
  "anchorWithin": 300,
  "anchors": [
    { "kind": "rfc3161", "origin": "retainer", "proof": "..." },
    { "kind": "transparency-log", "origin": "received",
      "proof": "..." }
  ],
  "validationData": [
    { "for": "envelope", "mediaType": "application/pkix-cert",
      "value": "..." },
    { "for": 0, "mediaType": "application/pkix-cert",
      "value": "..." },
    { "for": "delegation-root",
      "mediaType": "application/jwk-set+json",
      "value": "..." }
  ]
}
]]></sourcecode>
        <t><tt>envelopeDigest</tt> is the digest, under the record's <tt>hashAlgorithm</tt>, of the <xref target="RFC8785"/> canonical bytes of the DSSE envelope object, so it covers the payload and every signature. Every anchor in the entry is over this value.</t>
        <t><tt>anchors</tt> is an array in the order the retaining party obtained its members. A retaining party appends to it and never removes from it or rewrites an element in place. Upgrading a proof, such as completing a pending OpenTimestamps proof once its commitment is in a block, appends the upgraded proof as a new element and keeps the pending one where it was. The pending element never validates and dates nothing (vector <tt>R8</tt>), and the upgraded element dates the record (vector <tt>R12</tt>). Rewriting in place would change the order the array records and the index by which <tt>validationData</tt> names an anchor. Each anchor carries <tt>kind</tt>, one of the three values of <tt>correlation.externalAnchor.kind</tt> (<xref target="correlation"/>); <tt>origin</tt>, one of <tt>retainer</tt> and <tt>received</tt>; and <tt>proof</tt>, the base64 of the time-stamp token, inclusion proof or OpenTimestamps proof. An anchor of origin <tt>retainer</tt> is one the retaining party obtained itself, and one of origin <tt>received</tt> arrived with the record from the party that sent it. The entry carries no time and no algorithm family for an anchor: a verifier derives both from the proof when it validates it (<xref target="anchor-rules"/>), and <bcp14>MUST NOT</bcp14> read either from anywhere else.</t>
        <t><tt>validationData</tt> carries what a verifier needs to validate the envelope's signature and each anchor offline, after the sources it came from may be gone: the certification path or key set of the record's signing key, status information as the retaining party obtained it, and each time-stamping authority's own path and status. It also carries, for a record that names <tt>delegation.rootDigest</tt>, the certification path or key set of the delegation chain's root key as the chain verifier held it at decision time. Each element names what it is for, one of <tt>envelope</tt>, the zero-based index of an anchor, and <tt>delegation-root</tt>, gives a media type, and carries the value in base64. An entry carries at most one <tt>delegation-root</tt> element, and only for a record that carries <tt>delegation.rootDigest</tt>; an entry that breaks either rule is malformed. Where status information was already unobtainable when the retaining party first anchored the record, the entry carries no status element for it, and that absence is the record of the fact.</t>
        <t>The member <tt>received</tt> is <tt>true</tt> for a record the retaining party received from another party and <tt>false</tt> for one it produced. The member <tt>receivedAt</tt> is the time the retaining party states it received the record. It is present if and only if <tt>received</tt> is <tt>true</tt>, and an entry that carries it beside <tt>received</tt> of <tt>false</tt>, or omits it beside <tt>received</tt> of <tt>true</tt>, is malformed (vector <tt>R9</tt>). The member <tt>anchorWithin</tt> is the maximum interval, in seconds, that the retaining party commits to between issuance, or receipt for a received record, and its own first anchor. Only an anchor that validates meets it. An OpenTimestamps proof stays pending at a calendar until its commitment is in a block, and a pending proof does not validate offline, so for a retaining party whose anchors of origin <tt>retainer</tt> are all <tt>opentimestamps</tt>, <tt>anchorWithin</tt> covers that confirmation latency and is an interval of hours, not the 300 seconds of the skew tolerance.</t>
        <section anchor="dating">
          <name>The dating check</name>
          <t>A verifier validates each anchor under <xref target="anchor-rules"/>. The established time of the record is the time of the earliest anchor, of either origin, that validates over <tt>envelopeDigest</tt>. An anchor that does not validate dates nothing and makes nothing malformed (vector <tt>R8</tt>). No issuance time a record states establishes when it existed.</t>
          <t>A retaining party that sets <tt>received</tt> to <tt>true</tt> <bcp14>MUST</bcp14> obtain an anchor of origin <tt>retainer</tt> on receipt, within the <tt>anchorWithin</tt> it declares, and an entry with <tt>received</tt> of <tt>true</tt> and no such anchor is malformed (vector <tt>R4</tt>). The retention time is the time of the earliest anchor of origin <tt>retainer</tt> that validates. A verifier <bcp14>MUST</bcp14> reject the entry as malformed when any of these holds:</t>
          <ul spacing="normal">
            <li>
              <t><tt>receivedAt</tt> is earlier than the record's <tt>issuedAt</tt> by more than the skew tolerance (vector <tt>R6</tt>);</t>
            </li>
            <li>
              <t><tt>receivedAt</tt> is later than the retention time by more than the skew tolerance (vector <tt>R3</tt>);</t>
            </li>
            <li>
              <t>the retention time is later than <tt>receivedAt</tt>, or than <tt>issuedAt</tt> for a record the retaining party produced, by more than <tt>anchorWithin</tt> plus the skew tolerance (vector <tt>R7</tt>).</t>
            </li>
          </ul>
          <t>A malformed entry does not change the envelope's verdict. A relying party <bcp14>MUST NOT</bcp14> apply an allowance it grants to received records, such as dating a record from its receipt, on a malformed entry or on an entry in which no anchor of origin <tt>retainer</tt> validates.</t>
          <t>This check is a consistency check, not proof of receipt. Its lower edge, <tt>issuedAt</tt>, is a value the sender signed, and the signature binds the value without saying anything about the sender's clock. Its upper edge is an anchor over a digest, which shows only that the retaining party held the digest by that time, and a retaining party can hold the digest before the envelope arrives. A digest anchored before delivery therefore does not establish when the retaining party received the record. A verifier <bcp14>MUST</bcp14> report a <tt>receivedAt</tt> that passes the check as asserted and consistent with the anchors, and <bcp14>MUST NOT</bcp14> report it as established (vector <tt>R5</tt>). The check rests on two assumptions, stated so that a relying party can decide whether it holds them: that the sender's clock was correct when it signed, and that the retaining party anchored on delivery and not before.</t>
          <t>A retaining party also chooses when it anchors. One that anchors late can state a correspondingly late receipt, and nothing in the entry contradicts it, because the bracket's upper edge is an anchor whose time the retaining party chose. The check removes the cheaper case, a receipt time stated with no anchor at all, and what remains is an assumption that the retaining party anchored promptly after the true receipt, within the <tt>anchorWithin</tt> it declared. That assumption is narrower than trusting the retaining party's statement of receipt, and no function of the entry tests it. An <tt>opentimestamps</tt> anchor widens the room it leaves: its time can lie up to 7200 seconds after the moment its block existed, so a retaining party whose upper edge is such an anchor can state a receipt up to that much later than a prompt anchor of another kind would allow.</t>
        </section>
        <section anchor="anchor-rules">
          <name>Anchor validation rules</name>
          <t>Each kind of anchor rests on one of two bases. A hash commitment is validated by recomputation to a value the verifier holds independently, and a signed token is validated by a signature under a path the verifier trusts.</t>
          <t>A kind names the proof format and not only its basis. A verifier validates an anchor offline from the proof alone, and both the recomputation or signature check and the source of the anchor's time differ by format; a value that named only the basis would tell a verifier neither. The verifier derives the basis from the kind, as stated for each kind below. A Merkle root that commits to <tt>envelopeDigest</tt> and is published in a Bitcoin transaction is a hash commitment of kind <tt>opentimestamps</tt> when its proof is carried in the OpenTimestamps serialization, which expresses the path from <tt>envelopeDigest</tt> through the tree and the transaction to the block header as a sequence of commitment operations (vector <tt>R16</tt>). A hash commitment published in another public ledger has no kind in this revision, because the bound on its time depends on that ledger's own rules for its timestamps. A revision that adds a kind for such a ledger states that bound, as the <tt>opentimestamps</tt> rule below states it for Bitcoin.</t>
          <dl>
            <dt><tt>rfc3161</tt>:</dt>
            <dd>
              <t>a signed token. It validates when its message imprint equals <tt>envelopeDigest</tt> and its signature verifies under the time-stamping authority's certificate, by a certification path in <tt>validationData</tt> from that certificate to a trust anchor the verifier holds. Its time is the token's genTime.</t>
            </dd>
            <dt><tt>transparency-log</tt>:</dt>
            <dd>
              <t>an inclusion proof that recomputes from <tt>envelopeDigest</tt> to a tree head. It is a hash commitment when the verifier holds that tree head by a means other than its signature, such as a checkpoint the verifier already witnessed, and a signed token otherwise: it then validates when the tree head's signature verifies under the log's key, by a key or path in <tt>validationData</tt> that the verifier trusts. Its time is the tree head's timestamp.</t>
            </dd>
            <dt><tt>opentimestamps</tt>:</dt>
            <dd>
              <t>a hash commitment. It validates when the proof recomputes from <tt>envelopeDigest</tt> to the Merkle root in the header of a Bitcoin block that the verifier holds independently, as a block of the chain with the most work. Its time is the timestamp in that block header. A miner sets that value and consensus bounds it only loosely: it must exceed the median timestamp of the eleven blocks before it, and it must be no more than 7200 seconds ahead of the clock of a node that validates it. A header time can therefore lie tens of minutes before or after the moment the block existed. Every comparison in <xref target="dating"/> that uses the time of an <tt>opentimestamps</tt> anchor allows 7200 seconds in place of the skew tolerance (vectors <tt>R10</tt> and <tt>R11</tt>). The 7200 seconds is a consensus bound on one side only. On the later side a header time can be at most 7200 seconds ahead of the clock of a node that validates it. On the earlier side consensus bounds the time only by the median time past of the eleven preceding blocks, so a header time can lie further before the moment the block existed, and 7200 seconds there is an allowance this document chooses and not a bound the Bitcoin consensus rules supply. Where both times compared are times of <tt>opentimestamps</tt> anchors, as when a verifier finds the earliest anchor, it compares the heights of their blocks and not their timestamps.</t>
            </dd>
          </dl>
          <t>An anchor rests only on post-quantum assumptions when its validity rests on no quantum-vulnerable algorithm: a hash commitment under a hash with an output of at least 256 bits, or a signed token whose signature and whole path use post-quantum signature algorithms. A verifier derives this from the proof and the path. A retaining party <bcp14>SHOULD</bcp14> hold at least one anchor that rests only on post-quantum assumptions, and <bcp14>SHOULD</bcp14> append a new anchor on a schedule its policy sets, before the algorithms protecting its existing anchors weaken, using the renewal procedures of <xref target="RFC4998"/> or an equivalent. Where a relying party requires post-quantum anchoring from a transition date, as <xref target="PQ-AGENT-ID"/> proposes, this section supplies the anchors, their order and the material to validate each one, and the date is the relying party's.</t>
        </section>
      </section>
    </section>
    <section anchor="members">
      <name>Predicate members</name>
      <sourcecode type="json"><![CDATA[
{
  "recordId": "...",
  "tier": "authoritative",
  "hashAlgorithm": "sha256",
  "agent": {
    "id": "spiffe://prod.example.org/ns/payments/sa/reconciler",
    "credentialDigest": "...",
    "authentication": "wimse-wpt",
    "signers": ["..."]
  },
  "delegation": {
    "subject": "user:alice@example.org",
    "subjectKind": "user",
    "authorityDigest": "...",
    "rootDigest": "..."
  },
  "resource": {
    "kind": "tool",
    "id": "mcp://files/write",
    "binding": "digest-bound",
    "argumentsDigest": "..."
  },
  "decision": {
    "action": "write",
    "requestDigest": "...",
    "reported": "deny",
    "decisionPointId": "pdp://prod.example.org/authz-1",
    "policyDigest": "...",
    "reportedAt": "2026-09-19T11:04:02Z"
  },
  "evaluation": {
    "status": "evaluated",
    "inputs": [
      { "input": "policy-source",
        "lastResult": "2026-09-19T10:00:00Z", "maxAge": 86400 },
      { "input": "standing-source",
        "lastResult": "2026-09-19T11:00:00Z", "maxAge": 3600 }
    ]
  },
  "effect": {
    "observed": "occurred",
    "interval": {
      "beforeRoot": "...",
      "afterRoot": "...",
      "baseResolution": "supplied",
      "openedAt": "2026-09-19T11:04:01Z",
      "sealedAt": "2026-09-19T11:04:06Z"
    },
    "pathScope": ["/srv/ledger/"],
    "writes": [
      {
        "path": "/srv/ledger/settlements.jsonl",
        "preStateDigest": "...",
        "postStateDigest": "...",
        "requestDigest": "...",
        "inScope": true
      }
    ]
  },
  "agreement": "disagree",
  "correlation": {
    "id": "req:7f3a91c4",
    "scope": "cross-party",
    "timeBasis": "beacon-anchored",
    "externalAnchor": { "kind": "rfc3161", "digest": "..." }
  },
  "posture": {
    "reported": "sinkhole",
    "reportedDigest": "...",
    "observed": "allowlist",
    "observedDigest": "...",
    "assessedAt": "2026-09-19T06:00:00Z",
    "agreement": "disagree"
  },
  "remediation": [
    {
      "cause": "session-revoked",
      "signalReceivedAt": "2026-09-19T11:04:07Z",
      "enforcedAt": "2026-09-19T11:04:09Z",
      "enforcement": "session-terminated",
      "postEnforcementEffect": "none",
      "postEnforcementRoot": "..."
    }
  ],
  "observation": {
    "vantage": "below-observed",
    "coverage": { "scopeComplete": true, "gaps": [] },
    "priorCommitment": {
      "committedAt": "2026-09-19T11:03:58Z",
      "witnessNonce": "...",
      "commitmentDigest": "...",
      "keyid": "...",
      "sig": "..."
    }
  },
  "fieldEvidence": {
    "agent": "producer-asserted",
    "correlation": "producer-asserted",
    "decision": "producer-asserted",
    "delegation": "producer-asserted",
    "posture": "substrate-covered",
    "remediation": "substrate-covered",
    "resource": "substrate-covered"
  },
  "doesNotAssert": ["..."],
  "issuedAt": "2026-09-19T11:04:11Z"
}
]]></sourcecode>
      <section anchor="hashalg">
        <name>Record identity and hash algorithm</name>
        <t><tt>recordId</tt> is the producer's identifier for this record. It is opaque to a verifier except where the commitment digest is recomputed, which reads it as one of its four inputs.</t>
        <t><tt>hashAlgorithm</tt> names the algorithm every digest in the record is taken under. One value governs the whole record: the subject digests, the credential, authority, policy and posture digests, the interval roots, the write pre-state and post-state digests, and the commitment digest are all taken under it.</t>
        <t>A record carrying digests in two algorithms is therefore not representable, and that is the point. A verifier comparing two roots has to know they were taken under the same algorithm, and a per-member choice would let a producer choose which comparison a reader could make.</t>
        <t><tt>issuedAt</tt> is the time the producer sealed the record, and it <bcp14>MUST</bcp14> be at or after the interval's <tt>sealedAt</tt> because the record cannot be issued before the interval it describes has closed. A verifier <bcp14>MUST</bcp14> reject a record whose <tt>issuedAt</tt> is earlier than <tt>effect.interval.sealedAt</tt>, however far earlier, including a record whose <tt>issuedAt</tt> falls on a day before the interval opened (vectors <tt>IS1</tt> and <tt>IS2</tt>). The signature binds the value and does not make it true, so the check is on the two stated times and not on any clock.</t>
        <t>A verifier that does not implement the declared algorithm cannot recompute anything the record binds. It has no verdict to reach on such a record, and reporting that it could not read one is the honest outcome rather than a refusal on the record's content.</t>
      </section>
      <section anchor="identity-delegation-and-resource">
        <name>Identity, delegation and resource</name>
        <t><tt>agent.id</tt> carries the WIMSE identifier verbatim, and <tt>agent.credentialDigest</tt> the digest of the credential the identifier was read from. <tt>agent.authentication</tt> is the mechanism, over the closed set <tt>wimse-wpt</tt>, <tt>http-message-signature</tt>, <tt>mtls</tt>, <tt>oauth-access-token</tt>, <tt>api-key</tt>, <tt>none</tt>. All but <tt>api-key</tt> are drawn from Section 9 of <xref target="AIMS"/>. <tt>api-key</tt> is a bearer secret presented with the request that is not an OAuth access token, such as a key an API issued for the agent or its operator (vector <tt>A21</tt>). <tt>none</tt> means the request carried no authentication, and a record <bcp14>MUST NOT</bcp14> carry it for a request that presented any credential. For the two bearer mechanisms, <tt>oauth-access-token</tt> and <tt>api-key</tt>, <tt>agent.credentialDigest</tt> is a digest of a bearer secret, against which anyone holding the record can test a guess of that secret; a deployment <bcp14>SHOULD NOT</bcp14> record a bearer secret with less than 128 bits of entropy under this format. <tt>agent.signers</tt> is the set of key identifiers the agent signs its own records with, as the observer knows them, and it <bcp14>MAY</bcp14> be empty.</t>
        <t><tt>delegation.subjectKind</tt> is one of <tt>user</tt>, <tt>system</tt>, <tt>none</tt>. Field 2 of Section 11 is the only conditional one, so an absent delegated subject is conformant and is spelled <tt>subjectKind</tt> of <tt>none</tt> beside a <tt>subject</tt> of the literal <tt>none</tt>.</t>
        <t>A <tt>subjectKind</tt> of <tt>none</tt> beside any other subject value is malformed and a verifier <bcp14>MUST NOT</bcp14> prefer either member (vector <tt>F2</tt>). <tt>delegation.authorityDigest</tt> <bcp14>MUST</bcp14> be present in every record, and a decision taken under no authority carries the digest of the explicit deny-all document.</t>
        <t><tt>delegation.rootDigest</tt> is optional. When the decision rested on a delegation chain, it is the digest of the certification path or key set of the root key that the chain verifier trusted for that chain at decision time, as the verifier held it, and a record <bcp14>SHOULD</bcp14> carry it. Verification of a chain as Section 6 of <xref target="DELEGATION-CHAIN"/> describes it reaches every token in the chain and stops at the root key, so without this member a later reader cannot reconstruct what the chain rested on. The member records what the verifier held and says nothing about how the verifier came to hold it, so it requires no trust-anchor distribution and no anchor topology, online or offline. The material itself is kept by a retaining party in <tt>validationData</tt> (<xref target="retained"/>), from which a later reader derives the algorithm the chain's root rested on, as it derives the algorithm of the record's own signing key. The digest is taken over the material's bytes as that element carries them.</t>
        <t><tt>resource.kind</tt> is one of <tt>path</tt>, <tt>uri</tt>, <tt>tool</tt>, the three shapes the single category of external endpoints in Section 4 of <xref target="AIMS"/> takes. <tt>resource.binding</tt> of <tt>digest-bound</tt> <bcp14>MUST</bcp14> carry <tt>argumentsDigest</tt>, and <tt>not-bindable</tt> <bcp14>MUST NOT</bcp14> carry it in any spelling, including <tt>null</tt> and the empty string (vectors <tt>F3</tt>, <tt>F3b</tt> and <tt>F3c</tt>).</t>
        <t>Where a decision point can canonicalize the arguments of a call, it <bcp14>SHOULD</bcp14> bind them by digest. A tool call whose arguments it cannot canonicalize has nothing to bind, so that call is representable and it cannot reach the strongest tier.</t>
      </section>
      <section anchor="decision-effect">
        <name>Decision, effect and agreement</name>
        <t><tt>decision.reported</tt> is one of <tt>permit</tt>, <tt>deny</tt>, <tt>permit-with-conditions</tt>. <tt>decision.requestDigest</tt> <bcp14>MUST</bcp14> equal the first subject entry's sha256 digest and <bcp14>MUST</bcp14> equal the <xref target="RFC8785"/> digest over the members <tt>action</tt>, <tt>argumentsDigest</tt>, <tt>resourceId</tt> and <tt>resourceKind</tt> (vector <tt>F4</tt>). The hashed object holds <tt>argumentsDigest</tt> exactly when <tt>resource.binding</tt> is <tt>digest-bound</tt>. Under <tt>not-bindable</tt> it holds the other three members and no <tt>argumentsDigest</tt> member at all, so every conforming implementation derives one digest for a given request (vector <tt>A6</tt>). Altering the action, the resource or the arguments after signing, without replacing the request digest and the first subject entry to match, therefore breaks a recompute even where the signature was applied again. A key holder that replaces all of them consistently has made the coherent replacement of <xref target="tamper"/>, which no recompute detects.</t>
        <t>Each write carries <tt>requestDigest</tt>: the request digest of the request the observer attributes the write to, or the literal <tt>unattributed</tt> where the observer cannot attribute it. An attribution is an observation, and an observer that cannot tie a write to a request says so rather than guessing.</t>
        <t><tt>effect.observed</tt> describes this record's request, not the whole interval, and it is one of <tt>occurred</tt>, <tt>none</tt>, <tt>unknown</tt>. It <bcp14>MUST</bcp14> be derivable from the write set: <tt>occurred</tt> when at least one write is attributed to <tt>decision.requestDigest</tt>; <tt>none</tt> when no write is attributed to it and no <tt>unattributed</tt> write lies inside <tt>pathScope</tt>; and <tt>unknown</tt> otherwise. A write attributed to a different request belongs to that request's record and does not enter this one's value (vectors <tt>A7</tt> and <tt>T1</tt>). A value of <tt>none</tt> beside a write attributed to this record's request is malformed (vector <tt>E1</tt>).</t>
        <t>The ordered write chain <bcp14>MUST</bcp14> reproduce the after-state root from the before-state root. A verifier replays it with a running root that starts at <tt>beforeRoot</tt>. Each write in <tt>effect.writes</tt>, in array order and whatever its <tt>requestDigest</tt> or <tt>inScope</tt>, <bcp14>MUST</bcp14> carry a <tt>preStateDigest</tt> equal to the running root, and its <tt>postStateDigest</tt> then becomes the running root. The running root after the last write <bcp14>MUST</bcp14> equal <tt>afterRoot</tt>, so a record with no write carries equal roots. Vector <tt>E4</tt> breaks only the start, <tt>E2</tt> a link between two writes, <tt>E5</tt> only the end, and <tt>E6</tt> is the case with no write. A <tt>baseResolution</tt> of <tt>empty-tree</tt> <bcp14>MUST</bcp14> carry the empty-tree constant for the declared hash algorithm (vector <tt>E3</tt>); for <tt>sha256</tt> the constant is the digest of the empty byte string, <tt>e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855</tt>.</t>
        <t>A member of <tt>pathScope</tt> <bcp14>MUST NOT</bcp14> contain a glob metacharacter, and a universal scope is the single literal <tt>/</tt> (vector <tt>V2</tt>). A write outside <tt>pathScope</tt> <bcp14>MUST</bcp14> carry <tt>inScope</tt> of <tt>false</tt>, which is derived from the path and never a producer opinion (vector <tt>V3</tt>).</t>
        <t><tt>agreement</tt> is one of <tt>agree</tt>, <tt>disagree</tt>, <tt>not-exercised</tt>, <tt>indeterminate</tt>, <tt>one-sided</tt>, and it <bcp14>MUST</bcp14> be derivable from <tt>decision.reported</tt> and <tt>effect.observed</tt> by the table below (vectors <tt>D1</tt>, <tt>D2</tt> and <tt>D3</tt>). <tt>posture.agreement</tt> <bcp14>MUST</bcp14> be derivable from the two carried postures on the same terms: <tt>agree</tt> when they are equal byte for byte, <tt>disagree</tt> when both are present and unequal (vector <tt>F6</tt>).</t>
        <table>
          <name>Deriving agreement from the reported decision and the observed effect</name>
          <thead>
            <tr>
              <th align="left">decision.reported</th>
              <th align="left">effect.observed</th>
              <th align="left">agreement</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">
                <tt>permit</tt> or <tt>permit-with-conditions</tt></td>
              <td align="left">
                <tt>occurred</tt></td>
              <td align="left">
                <tt>agree</tt></td>
            </tr>
            <tr>
              <td align="left">
                <tt>deny</tt></td>
              <td align="left">
                <tt>none</tt></td>
              <td align="left">
                <tt>agree</tt></td>
            </tr>
            <tr>
              <td align="left">
                <tt>deny</tt></td>
              <td align="left">
                <tt>occurred</tt></td>
              <td align="left">
                <tt>disagree</tt></td>
            </tr>
            <tr>
              <td align="left">
                <tt>permit</tt> or <tt>permit-with-conditions</tt></td>
              <td align="left">
                <tt>none</tt></td>
              <td align="left">
                <tt>not-exercised</tt></td>
            </tr>
            <tr>
              <td align="left">any</td>
              <td align="left">
                <tt>unknown</tt></td>
              <td align="left">
                <tt>indeterminate</tt></td>
            </tr>
          </tbody>
        </table>
        <t>A permit allows an action and does not require it, so a permitted call that failed or was never made is <tt>not-exercised</tt>, and a deny that leaked is <tt>disagree</tt>. The two are different facts and an incident review needs to tell them apart (vector <tt>A9</tt>). An unattributed write inside <tt>pathScope</tt> leaves the observer unable to rule the request's effect in or out, so the record says <tt>indeterminate</tt> rather than choosing (vector <tt>A8</tt>).</t>
        <t>The table never produces <tt>one-sided</tt>. <tt>one-sided</tt> is in the closed set and this version never produces it, because <tt>decision</tt> and <tt>effect</tt> are both required and neither side can be absent. It is reserved so that a version admitting a record with one side missing does not have to change a closed vocabulary, and a record carrying it under this version is malformed (vector <tt>D2</tt>).</t>
        <t>A verifier <bcp14>MUST NOT</bcp14> reject a record because either agreement value is <tt>disagree</tt>, <tt>not-exercised</tt> or <tt>indeterminate</tt> (vectors <tt>A3</tt>, <tt>A8</tt> and <tt>A9</tt>). A disagreement is the record working, and what it means for admission is a consumer policy decision.</t>
      </section>
      <section anchor="evaluation">
        <name>Evaluation</name>
        <t><tt>evaluation</tt> says whether the decision point evaluated the request, and how fresh each input it relied on was. <tt>evaluation.status</tt> is one of <tt>evaluated</tt>, <tt>not-evaluated</tt> (vector <tt>EV11</tt>). A decision point records <tt>evaluated</tt> when its reported decision does not depend on any input it could not obtain, and <tt>not-evaluated</tt> otherwise. Where delegation paths are judged independently (Section 4.2 of <xref target="EVALUATION"/>), a permit on a fully valid path is <tt>evaluated</tt> even when an input for another path was unavailable, because no value of that input could change the decision. A deny is <tt>not-evaluated</tt> whenever a path the decision point could not judge might have been valid.</t>
        <t><tt>decision.reported</tt> always records what the decision point enforced. Under <tt>evaluated</tt> it is the outcome of evaluating the policy. Under <tt>not-evaluated</tt> it is the outcome the decision point fell back to, and it is the member that says whether the decision point failed closed (<tt>deny</tt>) or failed open (<tt>permit</tt> or <tt>permit-with-conditions</tt>). A record from a decision point that lost an input and denied therefore carries <tt>deny</tt>, and beside an effect of <tt>none</tt> derives <tt>agree</tt>. Without <tt>evaluation</tt> that record is byte for byte the record of a correctly enforced denial (vectors <tt>A2</tt> and <tt>A10</tt>), and an incident review cannot tell the two apart. <tt>decision.policyDigest</tt> names the policy the decision point enforced. Where the policy was the unavailable input, the decision point cannot name that policy's digest, so <tt>decision.policyDigest</tt> is the digest of the fallback it applied, as <tt>delegation.authorityDigest</tt> names the deny-all document for a decision taken under no authority (vectors <tt>A18</tt> and <tt>A20</tt>). A decision point that holds the profile a request names and finds that it grants no comparison has evaluated the request, and records <tt>evaluated</tt> with <tt>deny</tt> (vector <tt>A2</tt>); one that does not hold the profile records <tt>not-evaluated</tt> with <tt>policy-source</tt> (vector <tt>A20</tt>).</t>
        <t><tt>evaluation</tt> <bcp14>MUST</bcp14> carry <tt>inputs</tt> under both statuses (vector <tt>EV13</tt>). It is an array with one entry for each input the reported decision depended on, each input named at most once (vector <tt>FR10</tt>). An entry <bcp14>MUST</bcp14> carry each of these three members (vectors <tt>FR5</tt> and <tt>FR6</tt>) and <bcp14>MUST NOT</bcp14> carry any other except the <tt>consumption</tt> member that <xref target="consumption"/> defines (vector <tt>FR11</tt>):</t>
        <ul spacing="normal">
          <li>
            <t><tt>input</tt>, a value from the closed set in the table below (vector <tt>FR12</tt>);</t>
          </li>
          <li>
            <t><tt>lastResult</tt>, the time at which the source produced the last value of that input the decision point held, or the literal <tt>none</tt> if it never held one;</t>
          </li>
          <li>
            <t><tt>maxAge</tt>, the maximum age in seconds, a non-negative integer, that the decision point applies to that input (vector <tt>FR13</tt>).</t>
          </li>
        </ul>
        <t>The reference time for every entry is <tt>decision.reportedAt</tt>, the time the decision point reported its decision. An input's age is <tt>decision.reportedAt</tt> minus <tt>lastResult</tt>. An input is fresh when its age is at most <tt>maxAge</tt>, so an age equal to <tt>maxAge</tt> is fresh (vector <tt>FR2</tt>); it is stale when its age is greater (vector <tt>FR3</tt>); and it was never established when <tt>lastResult</tt> is <tt>none</tt> (vectors <tt>A10</tt> and <tt>FR4</tt>). A <tt>lastResult</tt> later than <tt>decision.reportedAt</tt> by more than the skew tolerance of 300 seconds is malformed, because a decision cannot rest on a value produced after it was reported (vector <tt>FR9</tt>). Where the decision depended on more than one value of one input, as when several delegation paths are judged, the entry's <tt>lastResult</tt> and <tt>maxAge</tt> <bcp14>MUST</bcp14> be taken from the same value. If any of those values was never held, <tt>lastResult</tt> is <tt>none</tt> and <tt>maxAge</tt> is the smallest bound among the values never held. Otherwise the entry carries the pair whose <tt>lastResult</tt> plus <tt>maxAge</tt> is earliest, and of two such pairs the one with the earlier <tt>lastResult</tt> (vector <tt>FR14</tt>). At one reference time every held value is fresh exactly when that time is at most the smallest <tt>lastResult</tt> plus <tt>maxAge</tt> among them, so the entry is fresh exactly when every value is, and an age equal to <tt>maxAge</tt> stays fresh as vector <tt>FR2</tt> requires. Taking the oldest <tt>lastResult</tt> from one value and the smallest <tt>maxAge</tt> from another can report two fresh values as one stale input (vector <tt>FR15</tt>). The entry summarizes the freshness of the values and does not enumerate them. A permit on a fully valid path depends only on the values that path used, so its entries carry those values and not the values of the other paths. <tt>issuedAt</tt> is the time the record was sealed, and it is not a reference time for any input.</t>
        <t>A held value older than the maximum age the decision point applies to its input is one it could not obtain, as Section 3.5 of <xref target="EVALUATION"/> treats standing that cannot be established within the pinned maximum age. The entries are therefore enough to derive the unavailable inputs, and a verifier derives them: the set of entries that are stale or were never established. Under <tt>evaluated</tt> that set <bcp14>MUST</bcp14> be empty (vector <tt>FR8</tt>). Under <tt>not-evaluated</tt> the member <bcp14>MUST</bcp14> carry <tt>unavailableInput</tt>, a non-empty array naming each input of that set exactly once and no other (vectors <tt>EV1</tt>, <tt>EV5</tt>, <tt>EV6</tt>, <tt>EV7</tt> and <tt>FR7</tt>), from the closed set in the table below (vector <tt>EV4</tt>). Under <tt>evaluated</tt> it <bcp14>MUST NOT</bcp14> carry <tt>unavailableInput</tt> in any spelling, including <tt>null</tt>, the empty array and the empty string (vectors <tt>EV2</tt>, <tt>EV8</tt>, <tt>EV9</tt> and <tt>EV10</tt>). No member other than <tt>status</tt>, <tt>inputs</tt> and <tt>unavailableInput</tt> is defined, and a verifier <bcp14>MUST</bcp14> reject an <tt>evaluation</tt> member carrying one (vector <tt>EV12</tt>). A free-text reason beside the closed set would name an input no other record can be compared with.</t>
        <t>A decision point that receives an input's value from another hop, rather than from its source, copies the source's <tt>lastResult</tt> into its entry unchanged, so the input's age runs from the source and not from the hop (vectors <tt>FR1</tt>, <tt>FR3</tt> and <tt>FR4</tt>). It applies its own <tt>maxAge</tt> in its own record. A hop that later obtains an input an earlier record named as unavailable writes a new record with its own evaluation, and never amends the earlier record, which its producer's signature has sealed. An entry carries what REQ-4 of <xref target="EVALUATION-STATE"/> asks a decision point to record for each input, its as-of time and whether it was accepted, stale or never established, and a forwarded entry carries what REQ-6 asks a hop to preserve: the input name, its evaluation state and its freshness bound.</t>
        <table>
          <name>The inputs an evaluation entry or unavailableInput names</name>
          <thead>
            <tr>
              <th align="left">input</th>
              <th align="left">what it names</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">
                <tt>standing-source</tt></td>
              <td align="left">the source issuer standing is established from (Section 3.5 of <xref target="EVALUATION"/>)</td>
            </tr>
            <tr>
              <td align="left">
                <tt>key-source</tt></td>
              <td align="left">the source of the issuer or evaluator keys a decision verifies under (Section 3.4 of <xref target="EVALUATION"/>)</td>
            </tr>
            <tr>
              <td align="left">
                <tt>consumption-state</tt></td>
              <td align="left">the record of which approvals have been consumed (Section 4.3 of <xref target="EVALUATION"/>)</td>
            </tr>
            <tr>
              <td align="left">
                <tt>policy-source</tt></td>
              <td align="left">the policy the decision point evaluates the request against, including a profile the request names that the decision point does not hold</td>
            </tr>
            <tr>
              <td align="left">
                <tt>principal-standing-source</tt></td>
              <td align="left">the source the standing of the principal the agent acts for is established from (Section 3.6 of <xref target="EVALUATION"/>), kept apart from <tt>standing-source</tt>, which names the source issuer standing is established from (Section 3.5); valid only under the predicate type URI of <xref target="iana"/> that ends in <tt>v2</tt></td>
            </tr>
          </tbody>
        </table>
        <t>The first three are the inputs Section 5 of <xref target="EVALUATION"/> names as making a refusal transient. Whether a refusal for lack of principal standing is transient is for Section 5 of <xref target="EVALUATION"/> to say, and this document follows its classification when it states one. A refusal that document classifies as transient is recorded as <tt>not-evaluated</tt>, naming the inputs that were unavailable. A refusal it classifies as permanent (an unsupported entry type, a signature that does not verify, an expired grant, an issuer whose standing is withdrawn) is recorded as <tt>evaluated</tt> with <tt>deny</tt>. The record then carries what Section 5 requires a verifier's own record of a refusal to carry, and what the caller is told is unaffected.</t>
        <sourcecode type="json"><![CDATA[
"decision":   { "action": "write", "reported": "deny",
                "reportedAt": "2026-09-19T11:04:02Z" },
"evaluation": {
  "status": "not-evaluated",
  "inputs": [
    { "input": "policy-source",
      "lastResult": "2026-09-19T10:00:00Z", "maxAge": 86400 },
    { "input": "standing-source",
      "lastResult": "2026-09-19T09:30:00Z", "maxAge": 3600 }
  ],
  "unavailableInput": ["standing-source"]
},
"effect":     { "observed": "none", "writes": [] },
"agreement":  "agree"
]]></sourcecode>
        <t>The record above is a decision point whose last standing value was 5642 seconds old against a maximum of 3600, and which failed closed. Its <tt>agreement</tt> is <tt>agree</tt>, because the deny held, and its <tt>evaluation</tt> says the deny was not a policy outcome and which input was stale.</t>
        <t><tt>evaluation</tt> is not an input to <tt>agreement</tt>. "Could not evaluate" is not a decision, so it is not a fourth value of <tt>decision.reported</tt>, and the agreement table is unchanged: a deny enforced during an outage that leaked anyway is still <tt>disagree</tt> (vector <tt>A19</tt>). A verifier <bcp14>MUST NOT</bcp14> reject a record because <tt>evaluation.status</tt> is <tt>not-evaluated</tt>, whatever <tt>decision.reported</tt> and <tt>agreement</tt> are (vectors <tt>A10</tt>, <tt>A12</tt> to <tt>A14</tt>, and <tt>A18</tt> to <tt>A20</tt>). A permit recorded as <tt>not-evaluated</tt> is a decision point failing open, and the format represents it so that it can be found (vector <tt>A18</tt>). The evidence class of <tt>evaluation</tt> is the one <tt>fieldEvidence</tt> declares for <tt>decision</tt>.</t>
      </section>
      <section anchor="oversight">
        <name>Oversight</name>
        <t><tt>oversight</tt> is optional. When present it records the kind of act a person took on this request before or at the decision, so that a permit bound to a user confirmation (Section 10.7 of <xref target="AIMS"/>) says whether that person observed the request, checked a stated property of it, chose, or released an action already within authority they held. The four kinds are those of <xref target="OVERSIGHT-ACTS"/>, Sections 2.3 to 2.9.</t>
        <t>An <tt>oversight</tt> member <bcp14>MUST</bcp14> carry <tt>oversight.act</tt>, which is one of <tt>observation</tt>, <tt>check</tt>, <tt>decision</tt>, <tt>release</tt> (vector <tt>OV1</tt>). <tt>oversight.recordDigest</tt> is optional and, when present, is the digest of the overseer's own signed record, bound as <tt>delegation.authorityDigest</tt> binds the authority document. No other member is defined, and a verifier <bcp14>MUST</bcp14> reject an <tt>oversight</tt> member carrying one (vector <tt>OV2</tt>). The act is producer-asserted: its evidence class is the one <tt>fieldEvidence</tt> declares for <tt>decision</tt>, and a verifier does not resolve <tt>recordDigest</tt>.</t>
      </section>
      <section anchor="correlation">
        <name>Correlation, posture and remediation</name>
        <t><tt>correlation.scope</tt> is one of <tt>producer</tt>, <tt>cross-party</tt>. It <bcp14>MUST</bcp14> be present, because Section 11 asks systems to "correlate events across Agents, Tools, Services, Resources and LLMs", which a producer-scoped identifier cannot do. A record a producer distributes beyond its own deployment <bcp14>SHOULD</bcp14> carry a scope of <tt>cross-party</tt>.</t>
        <t><tt>correlation.timeBasis</tt> of <tt>beacon-anchored</tt> <bcp14>MUST</bcp14> carry <tt>externalAnchor</tt>, and <tt>asserted</tt> <bcp14>MUST NOT</bcp14> carry it (vector <tt>F5</tt>). <tt>externalAnchor.kind</tt> is one of <tt>rfc3161</tt>, <tt>transparency-log</tt>, <tt>opentimestamps</tt>, of which <xref target="RFC3161"/> and <xref target="RFC9162"/> define the first two. <tt>externalAnchor.digest</tt> is the digest of the anchor's proof and not the proof, so a verifier that holds only the record cannot validate the anchor. Such a verifier reads <tt>beacon-anchored</tt> as a statement the producer made, accepts the record, and does not date it from the anchor (vector <tt>N1</tt>). A record is dated from the anchors of a retention entry (<xref target="retained"/>), which are over the envelope digest and are validated under the rules in <xref target="anchor-rules"/>. The record's verdict and its dating are two results, and a verifier reports them separately, so vector <tt>N1</tt> has one conforming verdict where draft-gilda-wimse-agent-audit-record-02 admitted two.</t>
        <t><tt>posture.reported</tt> and <tt>posture.observed</tt> are over the closed set <tt>no_network</tt>, <tt>allowlist</tt>, <tt>sinkhole</tt>, <tt>unsafe_bypass_egress</tt>, carried on the wire exactly as registered: they are the values <tt>#no_network</tt>, <tt>#allowlist</tt>, <tt>#sinkhole</tt> and <tt>#unsafe_bypass_egress</tt> of the term <tt>https://w3id.org/agent-evidence/vocab/v1/containment_posture</tt>. Each comes with a digest pinning the posture document. <tt>posture.assessedAt</tt> carries the time the assessment was made, which <xref target="rationale"/> gives the reason for. A consumer weighing either posture <bcp14>SHOULD</bcp14> read <tt>assessedAt</tt> beside it.</t>
        <t><tt>remediation</tt> carries one member per event. Its <tt>cause</tt> is one of <tt>session-revoked</tt>, <tt>risk-elevated</tt>, <tt>subject-disabled</tt>, <tt>token-replay-suspected</tt>, <tt>policy-changed</tt>, <tt>operator-action</tt>. Its <tt>enforcement</tt> is one of <tt>access-attenuated</tt>, <tt>session-terminated</tt>, <tt>tokens-discarded</tt>, <tt>privileges-reduced</tt>, <tt>reevaluated</tt>, <tt>not-enforced</tt>. In each member <tt>enforcedAt</tt> <bcp14>MUST</bcp14> be at or after <tt>signalReceivedAt</tt> (vector <tt>F7</tt>).</t>
        <t>A verifier <bcp14>MUST NOT</bcp14> reject a record because <tt>enforcement</tt> is <tt>not-enforced</tt> (vector <tt>A4</tt>). A record carries that value when a remediation signal arrived and enforcement did not follow it.</t>
        <t><tt>postEnforcementEffect</tt> and <tt>postEnforcementRoot</tt> make the Section 11 delay requirement checkable by a third party. A revocation that arrived, was recorded, and was followed by an observed effect is a recorded enforcement failure. This document defines no bound on the delay, because Section 11 carries no unit for "undue", and vector <tt>N2</tt> records that case as indeterminate.</t>
      </section>
      <section anchor="observation">
        <name>Observation and tier</name>
        <t><tt>observation.vantage</tt> is one of <tt>below-observed</tt>, <tt>peer</tt>, <tt>self</tt>.</t>
        <t><tt>coverage.scopeComplete</tt> is true when the observer read every path inside <tt>pathScope</tt> throughout the interval, and false otherwise. <tt>coverage.gaps</tt> is an array of the paths the observer could not read. A gap is inside <tt>pathScope</tt> when it lies under a member of <tt>pathScope</tt>, as <tt>inScope</tt> is derived for a write. A gap inside <tt>pathScope</tt> contradicts a <tt>scopeComplete</tt> of true, and a record carrying both is malformed whatever tier it declares (vectors <tt>V4</tt> and <tt>V5</tt>). An observer that could not read part of <tt>pathScope</tt> <bcp14>SHOULD</bcp14> name that path in <tt>coverage.gaps</tt>, because a reader learns which ground the record does not cover from the gap list and not from the observer's confidence. The coverage check is a check of the record's own declaration; it does not establish that the observer in fact read every path it did not list. <tt>observation.priorCommitment</tt> is the observer's commitment, made before the interval opened, to the before-state and to a nonce the observer chose.</t>
        <t>Its <tt>committedAt</tt> <bcp14>MUST</bcp14> be strictly before the interval's <tt>openedAt</tt> (vector <tt>C2</tt>). Its <tt>commitmentDigest</tt> <bcp14>MUST</bcp14> recompute as the <xref target="RFC8785"/> digest over <tt>authorityDigest</tt>, <tt>beforeRoot</tt>, <tt>recordId</tt> and <tt>witnessNonce</tt> (vector <tt>C3</tt>). Its <tt>keyid</tt> <bcp14>MUST NOT</bcp14> appear in <tt>agent.signers</tt> (vector <tt>C1</tt>), and that disjointness is the one byte-pure discriminator between an observer and a self-observing party.</t>
        <t><tt>doesNotAssert</tt> is the negative-scope member the sections above refer to: an array of explicit statements about what this record does not claim. A record under this version <bcp14>SHOULD</bcp14> carry two entries. The first entry records that it makes no claim about retention. The second records that it makes no claim that the reported decision is the decision the policy engine evaluated.</t>
        <t><tt>fieldEvidence</tt> carries exactly the seven keys named in the mapping table, each one of <tt>substrate-covered</tt> or <tt>producer-asserted</tt>. Each token denotes one registered value of the term <tt>https://w3id.org/agent-evidence/vocab/v1/field_evidence_partition</tt>, by the table below. The registry spells its value keys with an underscore and this document's tokens carry a hyphen; the table, not a spelling rule, is the mapping, and a token outside it is malformed.</t>
        <table>
          <thead>
            <tr>
              <th align="left">Wire token</th>
              <th align="left">Registered value URI</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">
                <tt>substrate-covered</tt></td>
              <td align="left">
                <tt>https://w3id.org/agent-evidence/vocab/v1/field_evidence_partition#substrate_covered</tt></td>
            </tr>
            <tr>
              <td align="left">
                <tt>producer-asserted</tt></td>
              <td align="left">
                <tt>https://w3id.org/agent-evidence/vocab/v1/field_evidence_partition#producer_asserted</tt></td>
            </tr>
          </tbody>
        </table>
        <t>A missing key is malformed (vector <tt>FE1</tt>), and no key may declare <tt>substrate-covered</tt> while <tt>vantage</tt> is <tt>self</tt> (vector <tt>FE2</tt>).</t>
        <t><tt>tier</tt> is one of <tt>voluntary</tt>, <tt>authoritative</tt>. A verifier <bcp14>MUST</bcp14> recompute it and <bcp14>MUST NOT</bcp14> take the declared value as the tier. Vectors <tt>TI1</tt> through <tt>TI5</tt> each declare <tt>authoritative</tt> while failing one clause, so a verifier that reads the declared value passes all five.</t>
        <t>A record is <tt>authoritative</tt> if and only if all five of these hold, and <tt>voluntary</tt> otherwise: <tt>vantage</tt> is <tt>below-observed</tt> (vector <tt>TI1</tt>); <tt>priorCommitment</tt> is present and complete (vector <tt>TI2</tt>); <tt>pathScope</tt> is non-empty (vector <tt>TI3</tt>); <tt>coverage.scopeComplete</tt> is true, which by the rule above leaves no gap inside <tt>pathScope</tt> (vectors <tt>TI4</tt> and <tt>TI6</tt>); and <tt>resource.binding</tt> is <tt>digest-bound</tt> (vector <tt>TI5</tt>).</t>
        <t>A record declaring <tt>authoritative</tt> that fails a clause is malformed, and a verifier <bcp14>MUST NOT</bcp14> downgrade it to <tt>voluntary</tt> (vector <tt>TI1</tt>). Downgrading would let a producer emit an authoritative-shaped record and rely on the verifier to relabel it.</t>
        <t>The opposite mismatch is well formed. A record declaring <tt>voluntary</tt> while meeting all five clauses is not malformed, and a verifier reads it at the tier the recompute gives. Treating the two directions differently is deliberate: a producer that over-claims is relying on somebody else to correct it, and a producer that under-claims is not.</t>
        <t>A verifier <bcp14>MUST NOT</bcp14> read a <tt>voluntary</tt> record as evidence that its content corresponds to any independently observed fact (vector <tt>A5</tt>).</t>
      </section>
      <section anchor="worked">
        <name>A worked reading of the example</name>
        <t>The record at the head of <xref target="members"/> reports a write that was denied and happened anyway. Each rule above lands on one of its members.</t>
        <t><tt>decision.reported</tt> is <tt>deny</tt>, and the single write is attributed to the record's own request, so <tt>effect.observed</tt> derives as <tt>occurred</tt>. The third row of the agreement table maps that pair to <tt>disagree</tt>, which is the value the record carries, so the derivation holds and vector <tt>D1</tt> does not apply.</t>
        <t><tt>posture.reported</tt> is <tt>sinkhole</tt> and <tt>posture.observed</tt> is <tt>allowlist</tt>. Both are present and they are unequal, so <tt>posture.agreement</tt> derives as <tt>disagree</tt>, which is again the carried value.</t>
        <t>The tier recompute passes all five clauses. <tt>vantage</tt> is <tt>below-observed</tt>; <tt>priorCommitment</tt> carries all five of its own members; <tt>pathScope</tt> holds one entry; <tt>coverage.scopeComplete</tt> is true with no gaps; and <tt>resource.binding</tt> is <tt>digest-bound</tt>. The declared <tt>authoritative</tt> is therefore the tier a verifier derives.</t>
        <t><tt>evaluation.status</tt> is <tt>evaluated</tt> and the member names no unavailable input, so vector <tt>EV2</tt> does not apply. Each of its two inputs is fresh at <tt>decision.reportedAt</tt>, 11:04:02Z: the policy was produced 3842 seconds earlier under a <tt>maxAge</tt> of 86400, and the standing 242 seconds earlier under a <tt>maxAge</tt> of 3600, so the recompute gives an empty set of unavailable inputs and vector <tt>FR8</tt> does not apply. The record carries no <tt>oversight</tt> member and claims nothing about a human act.</t>
        <t>The ordering checks hold on the timestamps as written. Vector <tt>C2</tt> tests the first: <tt>committedAt</tt> at 11:03:58Z falls strictly before <tt>openedAt</tt> at 11:04:01Z. Vector <tt>F7</tt> tests the second: <tt>enforcedAt</tt> at 11:04:09Z falls two seconds after <tt>signalReceivedAt</tt> at 11:04:07Z.</t>
        <t>The single write lies under <tt>/srv/ledger/</tt>, the one member of <tt>pathScope</tt>, so its <tt>inScope</tt> of true is derived from the path and vector <tt>V3</tt> does not apply. <tt>fieldEvidence</tt> carries all seven keys, so vector <tt>FE1</tt> does not apply, and <tt>vantage</tt> is not <tt>self</tt>, so vector <tt>FE2</tt> does not either.</t>
        <t>What the record says, read whole, is that a write was denied and happened anyway, that the posture the decision point read was not the posture an observer saw, and that a revocation signal was enforced two seconds after it arrived. All three are well formed, and a verifier accepts the record.</t>
      </section>
      <section anchor="consumption">
        <name>Consumption under a cumulative limit</name>
        <t>A decision under a cumulative limit, such as a delegated spending limit, depends on the value of <tt>consumption-state</tt> and not only on its freshness. A permit is correct only when the amount already committed under the limit, plus the amount held for earlier permits that have not settled, plus this request's amount, is within the limit. An as-of time and a maximum age cannot show that, so an entry whose <tt>input</tt> is <tt>consumption-state</tt> and whose decision applied a cumulative limit <bcp14>MUST</bcp14> carry a fourth member, <tt>consumption</tt>, and an entry for any other input <bcp14>MUST NOT</bcp14> carry it (vector <tt>CS6</tt>).</t>
        <t><tt>consumption</tt> <bcp14>MUST</bcp14> carry each of these members and no other (vector <tt>CS9</tt>):</t>
        <ul spacing="normal">
          <li>
            <t><tt>limitDigest</tt>, the digest of the document that sets the limit: the delegated authority <tt>delegation.authorityDigest</tt> names, or a document that authority names;</t>
          </li>
          <li>
            <t><tt>unit</tt>, the unit amounts are counted in; for money, an ISO 4217 alphabetic code;</t>
          </li>
          <li>
            <t><tt>limit</tt>, <tt>consumed</tt>, <tt>reserved</tt> and <tt>requested</tt>, each a non-negative integer in the smallest subunit of <tt>unit</tt> (vector <tt>CS5</tt>): the limit, the amount committed by earlier settled calls under it, the amount held for earlier permits under it that have not settled, and this request's amount;</t>
          </li>
          <li>
            <t><tt>held</tt>, an array with one entry for each unsettled earlier permit, each carrying that permit's <tt>operationKey</tt>, <tt>requestDigest</tt> and <tt>amount</tt>, whose amounts sum to <tt>reserved</tt> (vector <tt>CS3</tt>), and no two of which carry the same <tt>operationKey</tt> (vector <tt>CS13</tt>);</t>
          </li>
          <li>
            <t><tt>stateRevision</tt>, a non-negative integer naming the revision of the consumption state the decision point read. The entry's <tt>lastResult</tt> is the time that revision was produced.</t>
          </li>
        </ul>
        <t>A retry is identified by <tt>decision.operationKey</tt>, a string the agent assigns to one intended operation and carries in its signed request, so that every attempt at that operation carries the same key. A record whose <tt>evaluation.inputs</tt> carries <tt>consumption</tt> <bcp14>MUST</bcp14> carry <tt>decision.operationKey</tt> (vector <tt>CS14</tt>); a record without <tt>consumption</tt> need not. The key is scoped by <tt>limitDigest</tt>. A request whose <tt>decision.operationKey</tt> appears in <tt>held</tt> is the same operation as the permit held for it, as when a caller retries after a lost response: its <tt>decision.requestDigest</tt> and <tt>requested</tt> <bcp14>MUST</bcp14> equal the held entry's (vectors <tt>CS4</tt> and <tt>CS10</tt>), and it is not counted a second time. A request whose key is not held is a new operation and is counted, even when its <tt>decision.requestDigest</tt> equals a held entry's (vectors <tt>CS11</tt> and <tt>CS12</tt>). The request digest cannot identify a retry: it is a content digest over the action, arguments and resource, so two intended payments with the same content share it, and only the key tells them apart. A verifier derives <tt>withinLimit</tt>: true when <tt>consumed</tt> plus <tt>reserved</tt>, plus <tt>requested</tt> unless the request is held, is at most <tt>limit</tt>. A verifier <bcp14>MUST NOT</bcp14> reject a record because a <tt>permit</tt> or <tt>permit-with-conditions</tt> has <tt>withinLimit</tt> false (vector <tt>CS2</tt>). A permit beyond the limit is a decision point exceeding its authority, and the format represents it so that it can be found, as it represents a fail-open in <xref target="evaluation"/>.</t>
        <t>A permit stays in <tt>held</tt> until a record of the same operation settles it. It moves to <tt>consumed</tt> when that operation's record has <tt>effect.observed</tt> of <tt>occurred</tt>, and it is released only when that operation's record has <tt>effect.observed</tt> of <tt>none</tt>. A permit whose response was lost has no such record, so it stays held: a missing reply is not evidence that the call did not execute (vector <tt>CS8</tt>).</t>
        <t>Two checks need more than one record, and a retaining party that holds the records under one <tt>limitDigest</tt> runs them. Ordered by <tt>stateRevision</tt>, every permit <bcp14>MUST</bcp14> appear in the <tt>held</tt> or the <tt>consumed</tt> of each later record under that limit until it settles. A permit whose decision read a <tt>stateRevision</tt> older than a record that already held an unsettled permit, and which omits that permit from its own <tt>held</tt>, read a state that had not counted it, which is the window in which one limit is spent twice (vector <tt>CS7</tt>). A release from <tt>held</tt> with no record of that operation showing <tt>none</tt> or <tt>occurred</tt> is the second (vector <tt>CS8</tt>). Both checks follow permits by <tt>operationKey</tt> and not by request digest, so a second intended payment identical to a held one is still found (vector <tt>CS17</tt>). The reading of <tt>CS7</tt> and <tt>CS17</tt> puts no condition on when the held permit was issued, because the record that originated that permit is not in the set; the check follows the permit through <tt>held</tt> and <tt>consumed</tt> and tests nothing about its issuance. <tt>limitDigest</tt> names the document that states the limit, which is the delegated authority itself or a document it names (vectors <tt>CS15</tt> and <tt>CS16</tt>).</t>
        <t>A paid tool call under a delegated limit of 50000 pence, where the effect commits, the response is lost and the caller retries, reads as follows. The first call reads revision 41 with <tt>consumed</tt> of 30000 and nothing held, requests 12000, and is permitted. Its response is lost, so no record settles it. The retry carries the same operation key and request digest, reads revision 42 with <tt>consumed</tt> of 30000 and that call held for 12000, and is within the limit because the held call is not counted again. A different call for 12000 that reads revision 42 is beyond the limit (30000 plus 12000 plus 12000 is 54000) and is denied. A decision point that permitted that second call after reading revision 41 is found by the check across records (vector <tt>CS7</tt>).</t>
        <sourcecode type="json"><![CDATA[
"decision":   { "action": "pay", "reported": "permit",
                "operationKey": "op-7f3c",
                "requestDigest": "sha256:r1...",
                "reportedAt": "2026-10-19T09:00:05Z" },
"evaluation": {
  "status": "evaluated",
  "inputs": [
    { "input": "consumption-state",
      "lastResult": "2026-10-19T09:00:04Z", "maxAge": 5,
      "consumption": {
        "limitDigest": "sha256:...", "unit": "GBP",
        "limit": 50000, "consumed": 30000, "reserved": 12000,
        "requested": 12000, "stateRevision": 42,
        "held": [ { "operationKey": "op-7f3c",
                    "requestDigest": "sha256:r1...",
                    "amount": 12000 } ] } }
  ]
}
]]></sourcecode>
        <t>The record above is the retry. Its operation key is held, so <tt>withinLimit</tt> is true at 42000 of 50000.</t>
      </section>
      <section anchor="sequence">
        <name>Sequence</name>
        <t><tt>sequence</tt> is optional. When present it places the record in a numbered series its producer issues, so that a party holding several records of the series can name one missing from them. It carries exactly two members, and a verifier <bcp14>MUST</bcp14> reject a <tt>sequence</tt> member carrying any other (vector <tt>SQ2</tt>): <tt>boundary</tt>, a string the producer chooses to name one series, and <tt>seq</tt>, a positive integer (vector <tt>SQ3</tt>). Two records are in one series when they carry the same <tt>boundary</tt> and their envelopes verify under the same key, and a producer that changes its signing key starts a new series. A producer <bcp14>MUST</bcp14> give the first record of a series a <tt>seq</tt> of 1 and each later record of that series a <tt>seq</tt> one greater than the record before it, and <bcp14>MUST NOT</bcp14> give two records of one series the same <tt>seq</tt> (vector <tt>SQ1</tt>).</t>
        <t>Within a series, <tt>seq</tt> is also the running count of records issued, so the format carries no separate count member: a count beside a contiguous number that starts at 1 would repeat it and add no check.</t>
        <t>Two checks need more than one record, and a party holding records of one series runs them. A number below the highest it holds, which it does not hold, names a record that was issued and that it has not received: one withheld, or not yet delivered (vector <tt>SQ4</tt>). A record's identity for this check is the SHA-256 of its decoded DSSE payload bytes, the serialized in-toto Statement the signature covers. Two records of one series with the same <tt>seq</tt> and different identities are the producer issuing two different records at one place in the series, and the set fails the check (vector <tt>SQ5</tt>); the same record delivered twice has one identity and is not a conflict. Neither check reaches a record above the highest number held: a series whose last records were withheld reads the same as one whose producer stopped issuing, until a later record of it arrives. A consumer that needs that tail bounded <bcp14>SHOULD</bcp14> require a record of the series within an interval its policy sets.</t>
        <t><tt>sequence</tt> is producer-asserted, and its evidence class is the one <tt>fieldEvidence</tt> declares for <tt>correlation</tt>.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>A record is checkable for internal coherence and says nothing about the world outside its own bytes. Where a consumer needs a fact about that world, it has to establish that fact somewhere else.</t>
      <section anchor="the-vantage-claim-is-not-self-proving">
        <name>The vantage claim is not self-proving</name>
        <t>The vantage claim in a record is an assertion about the world, and the record makes it coherent with its own members without making it self-proving. A consumer that requires the vantage to be true <bcp14>MUST</bcp14> anchor the observer's key out of band, exactly as it would anchor any signer. Such a consumer <bcp14>MUST</bcp14> read <tt>authoritative</tt> as coherence with a claimed <tt>observation.vantage</tt>, and never as proof of one (vector <tt>A5</tt>).</t>
      </section>
      <section anchor="a-producer-that-observes-only-itself">
        <name>A producer that observes only itself</name>
        <t>A producer that observes only itself can satisfy every field of this format, and the <tt>observation.priorCommitment</tt> member raises the cost of doing so. It binds the before-state, the authority and the record identifier under the observer's signature before the interval opens. A forgery therefore has to be decided on before the forger knows what it will be lying about.</t>
        <t>It does not reduce the cost to zero, and a producer holding two keys satisfies every clause. That residual is detectable by a key inventory outside the record and by no function of the bytes inside it. A consumer that depends on the vantage <bcp14>SHOULD</bcp14> keep such an inventory.</t>
      </section>
      <section anchor="withheld-rows">
        <name>Withheld rows</name>
        <t>A record can omit a remediation event, or a claimed access that the observer saw, and no function of a Statement detects a row that was never written. No quantity of extra carried material changes that, because extra material is material a withholding producer also declines to carry.</t>
        <t>A withheld record and a record never produced are different failures. Where records carry <tt>sequence</tt> (<xref target="sequence"/>), a record withheld from a party that holds a later record of the same series is detectable from the records alone, because its number is missing from them. A record never produced leaves no number missing, and neither does a withheld record numbered above the highest one held; no function of the records detects either.</t>
        <t>The <tt>coverage</tt>, <tt>fieldEvidence</tt> and <tt>doesNotAssert</tt> members exist so that a blind spot travels where the observer is honest about it. An observer that knows of a blind spot <bcp14>SHOULD</bcp14> record it in the <tt>doesNotAssert</tt> member. None of these members is a defence against a producer that conceals one.</t>
      </section>
      <section anchor="well-formed-disagreement">
        <name>Well-formed disagreement</name>
        <t>A disagreement between the reported decision and the observed effect is well formed, as is a disagreement between the two postures, and as is a remediation event recording that enforcement did not occur. A verifier <bcp14>MUST</bcp14> accept all three (vectors <tt>A3</tt> and <tt>A4</tt>). A format that refused to represent a failed enforcement would mean that no record ever reports one. This clause prevents that.</t>
      </section>
      <section anchor="a-decision-that-was-not-evaluated">
        <name>A decision that was not evaluated</name>
        <t>A record whose <tt>evaluation.status</tt> is <tt>not-evaluated</tt> is well formed beside any reported decision and any agreement, and a verifier <bcp14>MUST</bcp14> accept it (vectors <tt>A10</tt>, <tt>A12</tt> to <tt>A14</tt>, and <tt>A18</tt> to <tt>A20</tt>). A deny that was not evaluated is a decision point failing closed, and a permit that was not evaluated is one failing open. Both are facts an audit trail exists to carry. A consumer <bcp14>SHOULD</bcp14> treat a <tt>not-evaluated</tt> permit as an enforcement failure for policy purposes, and this document leaves that to the consumer.</t>
        <t>The reason is the one <xref target="well-formed-disagreement"/> gives for a disagreement. A format with no way to say that a decision point could not evaluate records every outage as policy: each lost standing source reads as a correctly enforced denial, and each fail-open reads as a permit somebody decided. An incident review that reads such a trail finds no outage, because none was ever written down.</t>
        <t>Every source a decision point reads is also a way to stop it (Section 5 of <xref target="EVALUATION"/>). An attacker who can make a source unavailable turns fail-closed evaluation into a denial of service, and the <tt>not-evaluated</tt> records are the evidence of it. A consumer <bcp14>SHOULD</bcp14> read a rate of <tt>not-evaluated</tt> records naming one input as an availability event, not as a series of policy decisions.</t>
        <t><tt>evaluation</tt> is producer-asserted. A decision point that records <tt>evaluated</tt> for a decision that depended on an input it did not obtain is withholding, as in <xref target="withheld-rows"/>, and no function of the record's bytes detects it. The same holds for <tt>evaluation.inputs</tt>: the recompute catches an entry whose own times contradict the status, and it cannot catch a <tt>lastResult</tt> written later than the source produced the value, or a hop that wrote the time it received a forwarded value in place of the source's. A consumer that relies on freshness <bcp14>SHOULD</bcp14> read each entry's evidence class as the one <tt>fieldEvidence</tt> declares for <tt>decision</tt>.</t>
      </section>
      <section anchor="revocation-without-a-bound">
        <name>Revocation without a bound</name>
        <t>Section 11 of <xref target="AIMS"/> requires that revoked or downgraded authorization be enforced "without undue delay" and specifies no bound. This document carries <tt>signalReceivedAt</tt> and <tt>enforcedAt</tt>, and defines no bound of its own. A record with an arbitrarily large gap between them is well formed. A consumer <bcp14>SHOULD</bcp14> set a bound on that gap as policy and read a record that exceeds it accordingly.</t>
      </section>
      <section anchor="relationship-to-other-tamper-evidence-mechanisms">
        <name>Relationship to other tamper-evidence mechanisms</name>
        <t>A signature over canonical bytes detects an editor who cannot sign. A trusted timestamp <xref target="RFC3161"/> adds an assertion about when the bytes existed, and an append-only log <xref target="RFC6962"/> <xref target="RFC9162"/> adds an assertion that they were published. This document requires neither, and a deployment <bcp14>MAY</bcp14> carry a record under this format in such a log.</t>
        <t>None of the three detects a producer that signed a false record. The recomputes in <xref target="tamper"/> refuse a record whose members contradict one another, whoever signed it. These recomputations check consistency among the represented fields and do not establish the truth of external events.</t>
      </section>
      <section anchor="two-implementations-that-both-differ-from-the-canonical-form">
        <name>Two implementations that both differ from the canonical form</name>
        <t><xref target="rationale"/> gives the mechanism by which two implementations can share a serialization that is not <xref target="RFC8785"/>. Neither party can see the failure from inside it. Every signature each of them produces verifies for the other, and the records fail only for a third party that canonicalizes correctly.</t>
        <t>A consumer therefore derives the canonical bytes itself and does not accept a producer's report of them. <xref target="canonical"/> is normative for that reason, and vector <tt>T2</tt> is the member that tests it.</t>
      </section>
      <section anchor="receipt-time-and-late-anchoring">
        <name>Receipt time and late anchoring</name>
        <t>A retention entry's <tt>receivedAt</tt> is asserted by the retaining party, and <xref target="dating"/> makes it checkable for consistency, not true. A retaining party that anchors a digest before the envelope arrives, or anchors late and states a correspondingly late receipt, produces an entry that passes the check. A relying party that grants a received record an allowance, such as dating it from its receipt rather than from its issuance, is relying on the two assumptions <xref target="dating"/> states, and <bcp14>SHOULD</bcp14> limit the allowance to retaining parties it trusts to anchor on delivery.</t>
        <t>From the bytes of a retention entry, a source outage, anchoring that never happened in time and anchoring that happened late read the same. <tt>anchorWithin</tt> is a statement the retaining party made, and no member of the entry can prove that its anchoring source was down, so the format does not signal an outage (vector <tt>R17</tt>). A relying party that needs the commitment to bind requires a second anchor, taken after the outage, over the entry that carries <tt>anchorWithin</tt>. The commitment is fixed before the first anchor exists only if the entry that carries it is itself anchored. The time of an <tt>opentimestamps</tt> anchor is its block header time with the 7200-second allowance of <xref target="anchor-rules"/>, and two such times are ordered by block height.</t>
        <t>An anchor of origin <tt>received</tt> was obtained by the party that sent the record. It can date the record's existence, and it says nothing about when the retaining party received it, so it never forms the upper edge of the receipt bracket.</t>
      </section>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>A record under this document carries an agent identifier, a delegated subject, a resource identifier and a set of paths. The delegated subject in particular may identify a natural person. Deployments <bcp14>SHOULD</bcp14> consider which of these a given consumer needs before distributing a record. The <tt>doesNotAssert</tt> member is the place to record what a distributed record deliberately omits.</t>
      <t>The format binds five documents by digest and carries none of them: the credential, the authority document, the policy, and both posture documents. A record that carries <tt>delegation.rootDigest</tt> binds a sixth, the delegation root's path or key set, which a retaining party keeps beside the record. A consumer that needs their content <bcp14>SHOULD</bcp14> resolve them out of band.</t>
      <t>That separation is deliberate and is the privacy-preserving default, because it lets a record travel to a party entitled to verify the decision without carrying the material the decision was made from. A consumer entitled to the decision receives the digest and resolves the document only if it needs the content.</t>
      <t>A retention entry's anchors are over the envelope digest alone, so an anchoring service, a transparency log or a time-stamping authority learns that a record existed and nothing in it. A retaining party that discloses an entry discloses its receipt time and the parties whose validation data it holds, and <bcp14>SHOULD</bcp14> treat the entry with the same care as the record.</t>
    </section>
    <section anchor="iana">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions. The predicate type is a URI under a namespace the author controls and requires no registration to be used, consistent with the in-toto Attestation Framework's treatment of predicate type identifiers <xref target="IN-TOTO"/>.</t>
      <t>A registered identifier would be the alternative. It is not proposed here, because a record carries its predicate type inside the bytes its producer signed. A later revision <bcp14>SHOULD NOT</bcp14> move the URI once records carrying it exist, since moving it invalidates every signature over them.</t>
      <t>This revision freezes the predicate type URI, and its Document History says so. Before it, a revision could change what a record under the URI must carry, as draft-gilda-wimse-agent-audit-record-02 did (vector <tt>EV3</tt>) and as draft-gilda-audit-agent-audit-record-00 did (vector <tt>EV13</tt>). From this revision on, a change to what a record must carry, including a value added to a closed vocabulary, is published under a new URI, as <xref target="members"/> requires, and a record valid under the URI stays valid under every later revision that keeps it. The members of release 0.28.0 of <xref target="VECTORS"/> are the records this revision freezes the URI against.</t>
      <t>This revision adds one value to the closed set of <xref target="evaluation"/>, <tt>principal-standing-source</tt>, and so publishes the extended set under a second predicate type URI, <tt>https://probityai.github.io/agent-evidence-vectors/predicate/v2/agent-audit-record</tt>, which is the URI of <xref target="spec"/> with <tt>v1</tt> read as <tt>v2</tt>. A record under the <tt>v2</tt> URI follows this document with the extended set, and a record under the <tt>v1</tt> URI follows this document with the set of the previous revision, so a verifier never meets under the <tt>v1</tt> URI a value it is required to refuse (vectors <tt>PS1</tt> and <tt>PS2</tt>). Every other rule is the same under both.</t>
    </section>
    <section anchor="conformance">
      <name>Conformance</name>
      <t>This section states what another document may rely on when it references this one.</t>
      <t>A conforming producer emits records that meet every <bcp14>MUST</bcp14> of <xref target="spec"/> and <xref target="members"/> that applies to the members it emits. A conforming verifier applies the order of <xref target="verifying"/>, refuses what <xref target="members"/> makes malformed, and, for a retained record, applies <xref target="retained"/>.</t>
      <t>A verifier is not described as conforming to this revision unless it reaches the verdict its manifest declares on every member of the <tt>vectors-agent-audit-record</tt> family of release 0.28.0 of <xref target="VECTORS"/>, which carries every row of <xref target="vectors"/> not marked <tt>next</tt>. Passing the corpus is necessary and not sufficient: the three rules <xref target="vectors"/> names as having no member are checked by reading them.</t>
      <t>A document that references this one normatively <bcp14>SHOULD</bcp14> name the revision it relies on, and <bcp14>MAY</bcp14> name a release of <xref target="VECTORS"/> as its conformance test. The following identifiers are stable across revisions of this document and may be referenced by name:</t>
      <ul spacing="normal">
        <li>
          <t>the predicate type URI of <xref target="spec"/>;</t>
        </li>
        <li>
          <t>the section anchors <tt>canonical</tt>, <tt>subject</tt>, <tt>timestamps</tt>, <tt>tamper</tt>, <tt>mapping</tt>, <tt>verifying</tt>, <tt>retained</tt>, <tt>dating</tt>, <tt>anchor-rules</tt>, <tt>members</tt>, <tt>evaluation</tt>, <tt>oversight</tt>, <tt>consumption</tt>, <tt>sequence</tt> and <tt>vectors</tt>;</t>
        </li>
        <li>
          <t>the member identifiers of <xref target="vectors"/>, which keep their row across revisions and are never reused for another row;</t>
        </li>
        <li>
          <t>the terms this document takes from <xref target="VOCABULARY"/> (the four values of <tt>https://w3id.org/agent-evidence/vocab/v1/containment_posture</tt> and the two values of <tt>https://w3id.org/agent-evidence/vocab/v1/field_evidence_partition</tt> mapped in <xref target="observation"/>), which are cited by URI at release 0.8.0 with its registry digest. A term URI does not change; a later release changes the digest a revision cites, never the URI.</t>
        </li>
      </ul>
      <t>The predicate type URI is frozen by this revision (<xref target="iana"/>), so a record valid under it stays valid under every later revision that keeps the URI, and a referencing document may rely on the URI as well as on a revision.</t>
    </section>
    <section anchor="impl">
      <name>Implementation Status</name>
      <t>Note to the RFC Editor: please remove this section before publication.</t>
      <t>This section records the status of known implementations at the time of writing, following <xref target="RFC7942"/>. Listing an implementation here does not imply endorsement by the IETF.</t>
      <t><xref target="VECTORS"/> is an open conformance corpus for this format, licensed under Apache-2.0. Its <tt>vectors-agent-audit-record</tt> family publishes each member of <xref target="vectors"/> as a signed DSSE envelope with the verdict a conforming verifier must reach. It ships two verifiers written from the text, one in Python that uses only the standard library and one in Go. Release v0.28.0 carries 141 members, and anyone can rerun every one of them with a single command:</t>
      <artwork><![CDATA[
uvx agent-evidence-vectors==0.28.0 \
    --corpus vectors-agent-audit-record
]]></artwork>
      <t>On release v0.28.0 the run reports 59 members to accept, 81 to reject and 1 indeterminate, each behaving as its manifest declares. Two parties outside the corpus's authorship ran an earlier revision's members themselves and posted their results on the issue tracker of <xref target="AIMS"/>: 47 of 47 members behaved as specified at release 0.14.1, and 47 of 47 at release 0.16.0.</t>
      <t>Release v0.27.0 added <tt>CS1</tt> to <tt>CS17</tt>, and release v0.28.0 added <tt>A21</tt>, <tt>SQ1</tt> to <tt>SQ5</tt> and <tt>R10</tt> to <tt>R16</tt>, so the only rows of <xref target="vectors"/> waiting for a release are the five marked <tt>next</tt> in the <tt>first in</tt> column: <tt>R17</tt>, <tt>IS1</tt>, <tt>IS2</tt>, <tt>PS1</tt> and <tt>PS2</tt>.</t>
    </section>
  </middle>
  <back>
<references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="AIMS">
          <front>
            <title>AI Identity Management System</title>
            <author fullname="Pieter Kasselman" initials="P." surname="Kasselman">
              <organization>Defakto Security</organization>
            </author>
            <author fullname="Jeff Lombardo" initials="J." surname="Lombardo">
              <organization>AWS</organization>
            </author>
            <author fullname="Yaroslav Rosomakho" initials="Y." surname="Rosomakho">
              <organization>Zscaler</organization>
            </author>
            <author fullname="Brian Campbell" initials="B." surname="Campbell">
              <organization>Ping Identity</organization>
            </author>
            <author fullname="Nick Steele" initials="N." surname="Steele">
              <organization>OpenAI</organization>
            </author>
            <author fullname="Aaron Parecki" initials="A." surname="Parecki">
              <organization>Okta</organization>
            </author>
            <date day="15" month="September" year="2026"/>
            <abstract>
              <t>   This document proposes best practices for authentication and
   authorization of AI agent interactions.  It leverages existing
   standards such as the Workload Identity in Multi-System Environments
   (WIMSE) architecture and OAuth 2.0 family of specifications.  Rather
   than defining new protocols, this document describes how existing and
   widely deployed standards can be applied or extended to establish
   agent authentication and authorization.  By doing so, it aims to
   provide a framework within which to use existing standards, identify
   gaps and guide future standardization efforts for agent
   authentication and authorization.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-wimse-aims-00"/>
        </reference>
        <reference anchor="WIMSE-ID">
          <front>
            <title>Workload Identifier</title>
            <author fullname="Yaroslav Rosomakho" initials="Y." surname="Rosomakho">
              <organization>Zscaler</organization>
            </author>
            <author fullname="Joseph A. Salowey" initials="J. A." surname="Salowey">
              <organization>Palo Alto Networks</organization>
            </author>
            <date day="6" month="July" year="2026"/>
            <abstract>
              <t>   This document defines a canonical identifier for workloads, referred
   to as the Workload Identifier.  A Workload Identifier is a URI that
   uniquely identifies a workload within the context of a specific trust
   domain.  This identifier can be embedded in Workload Identity
   Credentials, including X.509 certificates and JWT-based tokens, to
   support authentication, authorization, and policy enforcement across
   diverse systems.  The Workload Identifier format ensures
   interoperability, facilitates secure identity federation, and enables
   consistent identity semantics.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-wimse-identifier-03"/>
        </reference>
        <reference anchor="RFC3339">
          <front>
            <title>Date and Time on the Internet: Timestamps</title>
            <author fullname="G. Klyne" initials="G." surname="Klyne"/>
            <author fullname="C. Newman" initials="C." surname="Newman"/>
            <date month="July" year="2002"/>
            <abstract>
              <t>This document defines a date and time format for use in Internet protocols that is a profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3339"/>
          <seriesInfo name="DOI" value="10.17487/RFC3339"/>
        </reference>
        <reference anchor="RFC7493">
          <front>
            <title>The I-JSON Message Format</title>
            <author fullname="T. Bray" initials="T." role="editor" surname="Bray"/>
            <date month="March" year="2015"/>
            <abstract>
              <t>I-JSON (short for "Internet JSON") is a restricted profile of JSON designed to maximize interoperability and increase confidence that software can process it successfully with predictable results.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7493"/>
          <seriesInfo name="DOI" value="10.17487/RFC7493"/>
        </reference>
        <reference anchor="RFC8785">
          <front>
            <title>JSON Canonicalization Scheme (JCS)</title>
            <author fullname="A. Rundgren" initials="A." surname="Rundgren"/>
            <author fullname="B. Jordan" initials="B." surname="Jordan"/>
            <author fullname="S. Erdtman" initials="S." surname="Erdtman"/>
            <date month="June" year="2020"/>
            <abstract>
              <t>Cryptographic operations like hashing and signing need the data to be expressed in an invariant format so that the operations are reliably repeatable. One way to address this is to create a canonical representation of the data. Canonicalization also permits data to be exchanged in its original form on the "wire" while cryptographic operations performed on the canonicalized counterpart of the data in the producer and consumer endpoints generate consistent results.</t>
              <t>This document describes the JSON Canonicalization Scheme (JCS). This specification defines how to create a canonical representation of JSON data by building on the strict serialization methods for JSON primitives defined by ECMAScript, constraining JSON data to the Internet JSON (I-JSON) subset, and by using deterministic property sorting.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8785"/>
          <seriesInfo name="DOI" value="10.17487/RFC8785"/>
        </reference>
        <reference anchor="IN-TOTO" target="https://github.com/in-toto/attestation/blob/main/spec/README.md">
          <front>
            <title>in-toto Attestation Framework Specification</title>
            <author>
              <organization>in-toto</organization>
            </author>
            <date year="2026"/>
          </front>
        </reference>
        <reference anchor="DSSE" target="https://github.com/secure-systems-lab/dsse">
          <front>
            <title>Dead Simple Signing Envelope</title>
            <author>
              <organization>Secure Systems Lab</organization>
            </author>
            <date year="2026"/>
          </front>
        </reference>
        <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="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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="EVALUATION">
          <front>
            <title>Verifier-Side Evaluation Semantics for Delegated Authority Chains</title>
            <author fullname="Wes Jackson" initials="W." surname="Jackson">
         </author>
            <date day="10" month="October" year="2026"/>
            <abstract>
              <t>   Delegation chain specifications describe the shape of conveyed
   authority.  They leave the verifier's half of the exchange
   underdetermined.  Two verifiers can check the same chain, both report
   success, and enforce different policy.  This document states what a
   verifier must do: the explicit inputs evaluation depends on, how
   those inputs behave when their sources are stale or unavailable, and
   four rules that keep evaluation fail-closed.  The rules are drawn
   from the Grant &amp; Autonomy Lifecycle (GAL) and Provenance &amp; Trust
   Context (PTC) specifications and from a public reference
   implementation.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-jackson-wimse-evaluation-04"/>
        </reference>
        <reference anchor="DELEGATION-CHAIN">
          <front>
            <title>Verifiable Attenuated Delegation for AI Agent Chains</title>
            <author fullname="Rafael Asor" initials="R." surname="Asor">
              <organization>Attenu</organization>
            </author>
            <date day="15" month="October" year="2026"/>
            <abstract>
              <t>   AI agents increasingly delegate tasks to other agents.  Each
   delegation should convey only a subset of the delegating party's
   authority, that subset should be bounded in scope, magnitude, and
   time, and any enforcement point should be able to verify -- offline,
   with no call to an authorization server -- that a token presented at
   hop N carries authority no greater than the token at hop N-1, back to
   a trusted root, and that every hop acts under the same accountable
   principal.  OAuth 2.0 Token Exchange (RFC 8693) models two-party
   delegation and records prior actors in a nested "act" claim, but that
   claim is informational only and cannot enforce attenuation across a
   chain of depth two or more.  This document defines the Agent
   Delegation Chain: a profile of OAuth 2.0 JWT access tokens (RFC 9068)
   that carries authority as Rich Authorization Requests (RFC 9396),
   binds the chain to one principal and names the agent acting at each
   hop, links each delegation to its parent by a cryptographic byte-
   commitment, and specifies a deterministic offline verification
   algorithm that enforces monotonic attenuation, bounded depth,
   monotonic expiry, and principal invariance.  It reuses existing JOSE,
   proof-of-possession (RFC 9449), and status-list machinery (the OAuth
   Status List draft) and introduces no new cryptography.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-asor-wimse-agent-delegation-chain-02"/>
        </reference>
        <reference anchor="EVALUATION-STATE">
          <front>
            <title>Preserving Evaluation State in Agent Protocol Decisions</title>
            <author fullname="Girish Konda" initials="G." surname="Konda">
         </author>
            <date day="10" month="October" year="2026"/>
            <abstract>
              <t>   Agent protocols often require a participant to establish a decision-
   time input before it acts: issuer standing, key availability,
   delegated authority, policy profile availability, consumption state,
   revocation status, or the outcome of a downstream operation.  A
   participant that establishes an input and receives a negative answer
   has learned a different fact from a participant that cannot establish
   the input at all.  Collapsing those facts into one denial or failure
   value changes retry behavior, alert routing, audit interpretation,
   incident ownership, and post-incident reconstruction.

   This document specifies requirements for preserving evaluation state
   across agent protocol boundaries: the value of an input, whether that
   value was established at decision time, the freshness of the source
   used to establish it, and whether the resulting policy decision was
   actually evaluated.  The requirements are stated independently of
   encoding, so that policy, authorization, revocation, routing, and
   audit documents can satisfy them in their own formats.  A subsequent
   revision will specify concrete representations.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-konda-agentproto-evaluation-state-01"/>
        </reference>
        <reference anchor="OVERSIGHT-ACTS">
          <front>
            <title>Terminology for Human Oversight Acts in Automated and Agentic Systems</title>
            <author fullname="Andreas Ehstand" initials="A." surname="Ehstand">
              <organization>Independent Researcher</organization>
            </author>
            <date day="26" month="September" year="2026"/>
            <abstract>
              <t>   Records produced by automated and agentic systems often represent
   human oversight as a single, undifferentiated event, such as an
   approval flag or a confirmation.  Such a record does not say whether
   the person was shown an output, determined whether a named property
   of it holds, chose a course of action, or permitted an action, and
   consumers of the record may treat a confirmation click as if it were
   a check.

   This document defines terms for four kinds of human oversight act
   (observation, check, decision, and release) and for related concepts:
   the oversight act and the overseer, the named property, standing
   authority, the oversight record, the undifferentiated approval, the
   check step, error detectability, the fail-open check step, and the
   check test.  It states what a record of each kind of act is, and is
   not, evidence of, and relates the terms to existing vocabularies.
   The document defines terminology only.  It specifies no protocol,
   data format, procedure, or measurement method.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ehstand-oversight-acts-00"/>
        </reference>
        <reference anchor="PQ-AGENT-ID">
          <front>
            <title>Post-Quantum Requirements for Software and AI Agent Identity</title>
            <author fullname="Venkata Karunakar Uppalapati" initials="V. K." surname="Uppalapati">
              <organization>Independent Researcher</organization>
            </author>
            <date day="28" month="September" year="2026"/>
            <abstract>
              <t>   A delegation record retained as evidence must remain verifiable long
   after the key that signed it is retired.  A signature of any
   algorithm establishes who signed, not when, so such a record needs
   anchoring in trusted time, renewed before the algorithms protecting
   it weaken.  That is long-settled practice for archived signatures.
   It is rarely required for agent delegation, and where it is, the
   anchor is not itself required to be post-quantum.  An anchor is only
   as good as the protection behind it, and an RFC 3161 timestamp is
   itself a signature: an adversary holding a cryptanalytically relevant
   quantum computer can mint one bearing any date it chooses.  Because
   such a machine may be built without announcement, anchoring must
   become post-quantum anchoring by a stated transition date, and be
   applied early, so that the only assumption left about when such a
   machine appeared is that none existed before a record was first
   anchored that way.  The earlier that date, the weaker the assumption,
   which makes choosing it a security decision and not only a scheduling
   one.

   This document states requirements that software and AI agent identity
   mechanisms should satisfy in order to remain sound across the
   transition, and identifies four that no such mechanism yet imposes on
   delegation credentials in general.  The algorithms binding each hop
   of a delegation chain to its trust anchor must be visible to a
   verifier and retained with any record kept as evidence; where a
   signing key is fetched from a key set over TLS, as OAuth deployments
   commonly do, that binding is rarely recorded and no mechanism for
   agent delegation requires it to be, so in practice it is absent.
   Trust anchors must migrate before the credentials issued under them.
   Every retained record must be anchored, that anchoring must become
   post-quantum anchoring from a stated transition date and be
   maintained by renewal, and credentials of any type kept as evidence
   must be signed post-quantum from that same date.  Delegation chains
   also propagate the weakest algorithm in the chain, and routinely
   cross organizational boundaries where no common trust anchor policy
   can be assumed.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-uppalapati-wimse-pq-agent-identity-00"/>
        </reference>
        <reference anchor="RFC3161">
          <front>
            <title>Internet X.509 Public Key Infrastructure Time-Stamp Protocol (TSP)</title>
            <author fullname="C. Adams" initials="C." surname="Adams"/>
            <author fullname="P. Cain" initials="P." surname="Cain"/>
            <author fullname="D. Pinkas" initials="D." surname="Pinkas"/>
            <author fullname="R. Zuccherato" initials="R." surname="Zuccherato"/>
            <date month="August" year="2001"/>
            <abstract>
              <t>This document describes the format of a request sent to a Time Stamping Authority (TSA) and of the response that is returned. It also establishes several security-relevant requirements for TSA operation, with regards to processing requests to generate responses. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3161"/>
          <seriesInfo name="DOI" value="10.17487/RFC3161"/>
        </reference>
        <reference anchor="RFC4998">
          <front>
            <title>Evidence Record Syntax (ERS)</title>
            <author fullname="T. Gondrom" initials="T." surname="Gondrom"/>
            <author fullname="R. Brandner" initials="R." surname="Brandner"/>
            <author fullname="U. Pordesch" initials="U." surname="Pordesch"/>
            <date month="August" year="2007"/>
            <abstract>
              <t>In many scenarios, users must be able prove the existence and integrity of data, including digitally signed data, in a common and reproducible way over a long and possibly undetermined period of time. This document specifies the syntax and processing of an Evidence Record, a structure designed to support long-term non-repudiation of existence of data. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4998"/>
          <seriesInfo name="DOI" value="10.17487/RFC4998"/>
        </reference>
        <reference anchor="RFC6962">
          <front>
            <title>Certificate Transparency</title>
            <author fullname="B. Laurie" initials="B." surname="Laurie"/>
            <author fullname="A. Langley" initials="A." surname="Langley"/>
            <author fullname="E. Kasper" initials="E." surname="Kasper"/>
            <date month="June" year="2013"/>
            <abstract>
              <t>This document describes an experimental protocol for publicly logging the existence of Transport Layer Security (TLS) certificates as they are issued or observed, in a manner that allows anyone to audit certificate authority (CA) activity and notice the issuance of suspect certificates as well as to audit the certificate logs themselves. The intent is that eventually clients would refuse to honor certificates that do not appear in a log, effectively forcing CAs to add all issued certificates to the logs.</t>
              <t>Logs are network services that implement the protocol operations for submissions and queries that are defined in this document.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6962"/>
          <seriesInfo name="DOI" value="10.17487/RFC6962"/>
        </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="RFC9162">
          <front>
            <title>Certificate Transparency Version 2.0</title>
            <author fullname="B. Laurie" initials="B." surname="Laurie"/>
            <author fullname="E. Messeri" initials="E." surname="Messeri"/>
            <author fullname="R. Stradling" initials="R." surname="Stradling"/>
            <date month="December" year="2021"/>
            <abstract>
              <t>This document describes version 2.0 of the Certificate Transparency (CT) protocol for publicly logging the existence of Transport Layer Security (TLS) server certificates as they are issued or observed, in a manner that allows anyone to audit certification authority (CA) activity and notice the issuance of suspect certificates as well as to audit the certificate logs themselves. The intent is that eventually clients would refuse to honor certificates that do not appear in a log, effectively forcing CAs to add all issued certificates to the logs.</t>
              <t>This document obsoletes RFC 6962. It also specifies a new TLS extension that is used to send various CT log artifacts.</t>
              <t>Logs are network services that implement the protocol operations for submissions and queries that are defined in this document.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9162"/>
          <seriesInfo name="DOI" value="10.17487/RFC9162"/>
        </reference>
        <reference anchor="AUDIT-BOFREQ" target="https://datatracker.ietf.org/doc/bofreq-kuhlewind-audit-agent-use-of-delegation-and-interaction-traceability/">
          <front>
            <title>AUDIT - Agent Use of Delegation and Interaction Traceability</title>
            <author initials="M." surname="Kuehlewind" fullname="Mirja Kuehlewind">
            </author>
            <date year="2026" month="October" day="08"/>
          </front>
        </reference>
        <reference anchor="AUDIT-CHARTER" target="https://github.com/mirjak/audit-bof-preparation/blob/main/audit-charter.md">
          <front>
            <title>Agent Use of Delegation and Interaction Traceability (AUDIT) Working Group Charter (proposed)</title>
            <author>
              <organization>AUDIT BoF proponents</organization>
            </author>
            <date year="2026"/>
          </front>
        </reference>
        <reference anchor="VECTORS" target="https://github.com/probityai/agent-evidence-vectors/tree/v0.28.0/vectors-agent-audit-record">
          <front>
            <title>Agent evidence conformance vectors, release 0.28.0</title>
            <author>
              <organization>agent-evidence-vectors contributors</organization>
            </author>
            <date year="2026" month="October" day="27"/>
          </front>
        </reference>
        <reference anchor="VOCABULARY" target="https://w3id.org/agent-evidence/vocab/v1/">
          <front>
            <title>Agent evidence vocabulary, release 0.8.0</title>
            <author>
              <organization>agent-evidence-vocabulary contributors</organization>
            </author>
            <date year="2026" month="October" day="26"/>
          </front>
          <refcontent>tag agent-evidence-vocabulary-v0.8.0, commit fe01f9108b577cbbd409f7b13635f94e91046ed4</refcontent>
        </reference>
      </references>

<section anchor="rationale">
      <name>Design rationale</name>
      <t>Two requirements of this document are not derivable from Section 11 of <xref target="AIMS"/> on its own: the canonicalization contract, and carrying the observed effect beside the reported decision. Neither is restated normatively here.</t>
      <section anchor="the-canonicalization-contract">
        <name>The canonicalization contract</name>
        <t>The word "tamper-evident" appears once in <xref target="AIMS"/> and is not defined there. Read narrowly it means a record whose alteration is detectable, which a signature provides. Two gaps remain.</t>
        <t>A signature over a serialization is only as good as the agreement on which bytes were signed, and that agreement is a property of a written contract between two implementations; neither one's code establishes it. Two implementations can agree with each other on a canonical form and both differ from <xref target="RFC8785"/>, and no amount of signing or hash-chaining detects that.</t>
        <t>Each verifies its own records and rejects the other's, or worse, accepts a record whose meaning it has silently changed. A canonicalization contract is therefore part of the tamper-evidence requirement; it is not an implementation detail, and <xref target="canonical"/> makes it normative.</t>
        <t>A signature also says nothing about the producer. The party that holds the signing key can alter a record and sign it again, and every signature check still passes.</t>
        <t>Detecting that requires fields whose values are recomputable from other fields in the same record, so that an internally inconsistent record is refusable regardless of who signed it. A hash chain catches an alteration by a party with no signing key; only a recompute catches the key holder, and <xref target="tamper"/> specifies three of them. A recompute catches the key holder only when the alteration leaves the record inconsistent with itself. A coherent replacement, signed again, passes every recompute, and <xref target="tamper"/> says what finds it.</t>
      </section>
      <section anchor="the-decision-and-the-observed-effect">
        <name>The decision and the observed effect</name>
        <t>The fourth of the seven minimum fields pairs "action requested and authorization decision". A record carrying only the decision is a self-report: it states what an enforcement point concluded, and a deployment that mis-enforces its own conclusion produces a clean audit trail of the decision it failed to apply. Section 11 asks for enough to "reconstruct agent behavior and authorization context after execution", and behaviour is not reconstructable from a decision.</t>
        <t>This document therefore requires both sides in one record: the decision as reported by the enforcement point, and the effect as observed. It also requires an <tt>agreement</tt> between them, which a verifier derives from the two values by the table in <xref target="decision-effect"/>; it is not a claim the record makes. A decision reported as denied beside an effect observed as having occurred is then a well-formed disagreement in signed bytes, which a verifier accepts and a consumer can find (<xref target="well-formed-disagreement"/>). In a log that carries the decision alone it is undetectable.</t>
        <t>The same construction applies to the sixth field. Section 8 of <xref target="AIMS"/> defines posture assessment as an evaluation performed at credential provisioning, while the sixth field asks for the posture "influencing the decision".</t>
        <t>A conformant record may therefore carry a posture that was accurate at issuance and inaccurate at decision time, with nothing in the record to say which. Carrying <tt>posture</tt> as the decision point read it, beside the posture as it was observed and its <tt>assessedAt</tt>, makes that difference visible without constraining either value.</t>
      </section>
      <section anchor="why-the-tier-carries-five-clauses">
        <name>Why the tier carries five clauses</name>
        <t>Each clause of the tier recompute closes one route by which a record could claim an observer's vantage while carrying nothing that distinguishes it from a self-report.</t>
        <t><tt>vantage</tt> of <tt>below-observed</tt> is the claim itself, and the four clauses under it make the claim cost something. The prior commitment binds the before-state before the interval opens, so a producer cannot decide after the fact what it saw. A non-empty <tt>pathScope</tt> means the record names the ground it covers. A complete coverage claim, which no listed gap inside that ground may contradict, means the record does not quietly exclude the interesting part. A gap outside that ground does not count against it, because the record claims nothing there. And a digest-bound resource means the arguments of the call are pinned.</t>
        <t>Dropping any one of them admits a record that carries the authority of the rest while resting on nothing. That is why the corpus in <xref target="vectors"/> carries one reject member per clause.</t>
      </section>
    </section>
    <section anchor="vectors">
      <name>Conformance vectors</name>
      <t>The table below is the conformance corpus for this format. Each row gives a member identifier, the accept member it derives from, its input, and the verdict a conforming verifier reaches. A reject differs from the accept member in its <tt>from</tt> column by one mutation, so refusing every input scores nothing on this corpus.</t>
      <t>An accept member has no parent and its <tt>from</tt> column reads <tt>root</tt>. An indeterminate member has more than one conforming verdict and its row gives each. A member whose input is a retained record (<tt>R1</tt> to <tt>R16</tt>) is an envelope with its retention entry, and its row gives the envelope's verdict and the result of the dating check separately.</t>
      <t>The <tt>first in</tt> column names the release of the agent-evidence-vectors corpus that first published a member under that identifier. Because <tt>evaluation.inputs</tt> is required here, every member published under draft-gilda-wimse-agent-audit-record-02 is malformed under this revision (vector <tt>EV13</tt>), and release v0.26.0 regenerated the whole family under draft-gilda-audit-agent-audit-record-00. Each member kept its identifier and its row, with the entries it needs in <tt>evaluation.inputs</tt>; vector <tt>A10</tt> carries <tt>standing-source</tt> with a <tt>lastResult</tt> of <tt>none</tt>, and vector <tt>N1</tt> changes verdict as <xref target="correlation"/> states. Release v0.28.0 also carries seven members with no row here, <tt>FR13b</tt>, <tt>FR16</tt>, <tt>FR17a</tt> to <tt>FR17c</tt>, <tt>FR18</tt> and <tt>EV14</tt>, each testing a rule of <xref target="evaluation"/>.</t>
      <t>Every row names the rule it tests. Three rules this document adds have no member in the table: the binding on the digest map in <xref target="subject"/>, the <xref target="RFC3339"/> requirement in <xref target="timestamps"/>, and the single hash algorithm of <xref target="hashalg"/>. An implementation <bcp14>SHOULD</bcp14> be run against every member of the corpus before it is described as conforming to this document, and the three rules above are checked by reading them.</t>
      <t>The corpus travels with the predicate schema: this revision freezes the predicate type URI (<xref target="iana"/>), and release 0.28.0 of <xref target="VECTORS"/> publishes every member of the table in that repository's manifest layout.</t>
      <table>
        <name>The conformance corpus, one member for every normative rule this document adds</name>
        <thead>
          <tr>
            <th align="left">id</th>
            <th align="left">from</th>
            <th align="left">what it is</th>
            <th align="left">expected</th>
            <th align="left">first in</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">root</td>
            <td align="left">every member present, <tt>permit</tt> beside <tt>occurred</tt>, all five tier clauses met</td>
            <td align="left">valid</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A2</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>deny</tt> beside <tt>none</tt>, equal roots, empty write set</td>
            <td align="left">valid</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A3</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A1</tt> with <tt>deny</tt> beside <tt>occurred</tt> and <tt>agreement</tt> of <tt>disagree</tt></td>
            <td align="left">valid</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A4</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A1</tt> plus a remediation event with <tt>enforcement</tt> of <tt>not-enforced</tt></td>
            <td align="left">valid</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A5</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A1</tt> with <tt>vantage</tt> of <tt>self</tt>, no prior commitment, <tt>tier</tt> of <tt>voluntary</tt></td>
            <td align="left">valid</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A6</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A1</tt> with <tt>binding</tt> of <tt>not-bindable</tt>, <tt>argumentsDigest</tt> absent from the record and from the request-digest preimage, <tt>tier</tt> of <tt>voluntary</tt></td>
            <td align="left">valid</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A7</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A2</tt> plus one in-scope write inside the interval attributed to a different request, roots and chain moved to match</td>
            <td align="left">valid, <tt>agreement</tt> of <tt>agree</tt></td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A8</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A2</tt> plus one in-scope <tt>unattributed</tt> write inside the interval, <tt>effect.observed</tt> of <tt>unknown</tt></td>
            <td align="left">valid, <tt>agreement</tt> of <tt>indeterminate</tt></td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A9</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A1</tt> with <tt>permit</tt> beside an empty write set, equal roots, <tt>effect.observed</tt> of <tt>none</tt></td>
            <td align="left">valid, <tt>agreement</tt> of <tt>not-exercised</tt></td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A10</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A2</tt> with <tt>evaluation.status</tt> of <tt>not-evaluated</tt> and <tt>unavailableInput</tt> of <tt>standing-source</tt></td>
            <td align="left">valid, <tt>agreement</tt> of <tt>agree</tt></td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A11</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A1</tt> plus <tt>oversight</tt> with <tt>act</tt> of <tt>check</tt> and a <tt>recordDigest</tt></td>
            <td align="left">valid</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A12</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A10</tt> with <tt>unavailableInput</tt> of <tt>key-source</tt></td>
            <td align="left">valid, <tt>agreement</tt> of <tt>agree</tt></td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A13</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A10</tt> with <tt>unavailableInput</tt> of <tt>consumption-state</tt></td>
            <td align="left">valid, <tt>agreement</tt> of <tt>agree</tt></td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A14</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A10</tt> with <tt>unavailableInput</tt> naming all three inputs of -02, each once, in neither the table order nor sorted order</td>
            <td align="left">valid, <tt>agreement</tt> of <tt>agree</tt></td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A15</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A11</tt> with <tt>oversight.act</tt> of <tt>observation</tt></td>
            <td align="left">valid</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A16</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A11</tt> with <tt>oversight.act</tt> of <tt>decision</tt> and no <tt>recordDigest</tt>, which is optional</td>
            <td align="left">valid</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A17</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A11</tt> with <tt>oversight.act</tt> of <tt>release</tt></td>
            <td align="left">valid</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A18</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A1</tt> with <tt>evaluation.status</tt> of <tt>not-evaluated</tt>, <tt>policy-source</tt> never established, <tt>unavailableInput</tt> of <tt>policy-source</tt> and the allow-all fallback's <tt>decision.policyDigest</tt></td>
            <td align="left">valid, <tt>agreement</tt> of <tt>agree</tt></td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A19</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A3</tt> with <tt>evaluation.status</tt> of <tt>not-evaluated</tt>, <tt>key-source</tt> and <tt>consumption-state</tt> stale, and <tt>unavailableInput</tt> naming both</td>
            <td align="left">valid, <tt>agreement</tt> of <tt>disagree</tt></td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A20</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A2</tt> with <tt>evaluation.status</tt> of <tt>not-evaluated</tt>, a profile the request names not held, <tt>unavailableInput</tt> of <tt>policy-source</tt> and the deny-all fallback's <tt>decision.policyDigest</tt></td>
            <td align="left">valid, <tt>agreement</tt> of <tt>agree</tt></td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>A21</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A1</tt> with <tt>agent.authentication</tt> of <tt>api-key</tt></td>
            <td align="left">valid</td>
            <td align="left">v0.28.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>F1</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>A1</tt> with the whole <tt>agent</tt> member removed</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>F2</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>subjectKind</tt> of <tt>none</tt> beside a named subject</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>F3</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>digest-bound</tt> with <tt>argumentsDigest</tt> removed</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>F3b</tt></td>
            <td align="left">
              <tt>A6</tt></td>
            <td align="left">
              <tt>not-bindable</tt> carrying <tt>argumentsDigest</tt> of <tt>null</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>F3c</tt></td>
            <td align="left">
              <tt>A6</tt></td>
            <td align="left">
              <tt>not-bindable</tt> carrying <tt>argumentsDigest</tt> of the empty string</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>F4</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>action</tt> changed, <tt>requestDigest</tt> left at its original value</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>F5</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>beacon-anchored</tt> with <tt>externalAnchor</tt> removed</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>F6</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">two unequal postures declared as <tt>agree</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>F7</tt></td>
            <td align="left">
              <tt>A4</tt></td>
            <td align="left">
              <tt>enforcedAt</tt> one second before <tt>signalReceivedAt</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>T1</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>effect.observed</tt> edited to <tt>none</tt>, writes intact, signed again with the real key</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>T2</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">serialized in declaration order, not <xref target="RFC8785"/> order</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>T3</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">a member name repeated at depth three</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>T4</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">nesting 129 levels deep</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>T5</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">an integer of magnitude exactly 2^53</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>D1</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>agreement</tt> of <tt>disagree</tt> with both sides agreeing</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>D2</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>agreement</tt> of <tt>one-sided</tt> with both values present</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>D3</tt></td>
            <td align="left">
              <tt>A9</tt></td>
            <td align="left">
              <tt>agreement</tt> of <tt>disagree</tt> beside <tt>permit</tt> and <tt>none</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>S1</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">second subject entry removed, interval left present</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>S2</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">second subject entry's digest set to the before-state root</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>I1r</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">interval removed, second subject entry left present</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>TI1</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>authoritative</tt> declared with <tt>vantage</tt> of <tt>self</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>TI2</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>authoritative</tt> declared with no prior commitment</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>TI3</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>authoritative</tt> declared with an empty <tt>pathScope</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>TI4</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>authoritative</tt> declared with <tt>scopeComplete</tt> of false and a coverage gap inside <tt>pathScope</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>TI5</tt></td>
            <td align="left">
              <tt>A6</tt></td>
            <td align="left">
              <tt>authoritative</tt> declared on <tt>A6</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>TI6</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>authoritative</tt> declared with <tt>scopeComplete</tt> of false and gaps naming only paths outside <tt>pathScope</tt>, which draft-gilda-audit-agent-audit-record-00 accepted</td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>C1</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">commitment <tt>keyid</tt> added to <tt>agent.signers</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>C2</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>committedAt</tt> one second after <tt>openedAt</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>C3</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>witnessNonce</tt> changed, <tt>commitmentDigest</tt> left at its original value</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>E1</tt></td>
            <td align="left">
              <tt>A2</tt></td>
            <td align="left">
              <tt>observed</tt> of <tt>none</tt> with a non-empty write set</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>E2</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">a second write whose pre-state is not the first write's post-state</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>E3</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>empty-tree</tt> under sha256 carrying the sha1 constant</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>E4</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">the only write's pre-state is not the before-state root, its post-state is the after-state root</td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>E5</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">the only write starts from the before-state root and its post-state is not the after-state root</td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>E6</tt></td>
            <td align="left">
              <tt>A2</tt></td>
            <td align="left">an empty write set beside an after-state root unequal to the before-state root, second subject moved to match</td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>V1</tt></td>
            <td align="left">
              <tt>A4</tt></td>
            <td align="left">
              <tt>enforcement</tt> of <tt>quarantined</tt>, outside the closed set</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>V2</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">a <tt>pathScope</tt> member carrying a glob metacharacter</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>V3</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">a write outside <tt>pathScope</tt> carrying <tt>inScope</tt> of <tt>true</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>V4</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>scopeComplete</tt> of true beside a gap inside <tt>pathScope</tt>, all other tier clauses met</td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>V5</tt></td>
            <td align="left">
              <tt>A5</tt></td>
            <td align="left">
              <tt>scopeComplete</tt> of true beside a gap inside <tt>pathScope</tt>, <tt>tier</tt> of <tt>voluntary</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FE1</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">six of the seven <tt>fieldEvidence</tt> keys present</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FE2</tt></td>
            <td align="left">
              <tt>A5</tt></td>
            <td align="left">
              <tt>substrate-covered</tt> declared beside <tt>vantage</tt> of <tt>self</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR1</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A1</tt> written by the second of two hops: each input fresh at <tt>decision.reportedAt</tt>, one carried from the first hop with the source's <tt>lastResult</tt> unchanged</td>
            <td align="left">valid</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR2</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>FR1</tt> with one input's age at <tt>decision.reportedAt</tt> exactly equal to its <tt>maxAge</tt></td>
            <td align="left">valid, the input fresh</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR3</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A10</tt> written by the second of two hops, the forwarded <tt>standing-source</tt> one second older than its <tt>maxAge</tt></td>
            <td align="left">valid, <tt>agreement</tt> of <tt>agree</tt></td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR4</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A10</tt> written by the second of two hops, which received <tt>standing-source</tt> as never established, <tt>lastResult</tt> of <tt>none</tt></td>
            <td align="left">valid, <tt>agreement</tt> of <tt>agree</tt></td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR5</tt></td>
            <td align="left">
              <tt>FR1</tt></td>
            <td align="left">an entry with <tt>lastResult</tt> removed</td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR6</tt></td>
            <td align="left">
              <tt>FR1</tt></td>
            <td align="left">an entry with <tt>maxAge</tt> removed</td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR7</tt></td>
            <td align="left">
              <tt>FR3</tt></td>
            <td align="left">
              <tt>unavailableInput</tt> naming <tt>key-source</tt>, whose entry is fresh, in place of <tt>standing-source</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR8</tt></td>
            <td align="left">
              <tt>FR1</tt></td>
            <td align="left">
              <tt>evaluated</tt> beside an entry one second older than its <tt>maxAge</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR9</tt></td>
            <td align="left">
              <tt>FR1</tt></td>
            <td align="left">an entry whose <tt>lastResult</tt> is later than <tt>decision.reportedAt</tt> by more than the skew tolerance</td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR10</tt></td>
            <td align="left">
              <tt>FR1</tt></td>
            <td align="left">one input named in two entries</td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR11</tt></td>
            <td align="left">
              <tt>FR1</tt></td>
            <td align="left">an entry carrying a fourth member this document does not define</td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR12</tt></td>
            <td align="left">
              <tt>FR1</tt></td>
            <td align="left">an entry whose <tt>input</tt> is <tt>network</tt>, outside the closed set</td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR13</tt></td>
            <td align="left">
              <tt>FR1</tt></td>
            <td align="left">an entry with a negative <tt>maxAge</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR14</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A2</tt> judging two delegation paths, two values of <tt>standing-source</tt> each fresh at <tt>decision.reportedAt</tt> (ages 30 and 3600 seconds under a <tt>maxAge</tt> of 60 and of 7200), the entry carrying the first value's pair</td>
            <td align="left">valid, <tt>agreement</tt> of <tt>agree</tt></td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>FR15</tt></td>
            <td align="left">
              <tt>FR14</tt></td>
            <td align="left">the entry carrying the second value's <tt>lastResult</tt> beside the first value's <tt>maxAge</tt>, under <tt>evaluated</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>EV1</tt></td>
            <td align="left">
              <tt>A10</tt></td>
            <td align="left">
              <tt>not-evaluated</tt> with <tt>unavailableInput</tt> removed</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>EV2</tt></td>
            <td align="left">
              <tt>A2</tt></td>
            <td align="left">
              <tt>evaluated</tt> carrying <tt>unavailableInput</tt> of <tt>standing-source</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>EV3</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">the <tt>evaluation</tt> member removed, which is the shape of a revision 01 record</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>EV4</tt></td>
            <td align="left">
              <tt>A10</tt></td>
            <td align="left">
              <tt>unavailableInput</tt> of <tt>network</tt>, outside the closed set</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>EV5</tt></td>
            <td align="left">
              <tt>A10</tt></td>
            <td align="left">
              <tt>not-evaluated</tt> with <tt>unavailableInput</tt> of the empty array</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>EV6</tt></td>
            <td align="left">
              <tt>A10</tt></td>
            <td align="left">
              <tt>not-evaluated</tt> with <tt>standing-source</tt> named twice</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>EV7</tt></td>
            <td align="left">
              <tt>A10</tt></td>
            <td align="left">
              <tt>not-evaluated</tt> with <tt>unavailableInput</tt> of the string <tt>standing-source</tt>, not an array</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>EV8</tt></td>
            <td align="left">
              <tt>A2</tt></td>
            <td align="left">
              <tt>evaluated</tt> carrying <tt>unavailableInput</tt> of <tt>null</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>EV9</tt></td>
            <td align="left">
              <tt>A2</tt></td>
            <td align="left">
              <tt>evaluated</tt> carrying <tt>unavailableInput</tt> of the empty array</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>EV10</tt></td>
            <td align="left">
              <tt>A2</tt></td>
            <td align="left">
              <tt>evaluated</tt> carrying <tt>unavailableInput</tt> of the empty string</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>EV11</tt></td>
            <td align="left">
              <tt>A10</tt></td>
            <td align="left">
              <tt>evaluation.status</tt> of <tt>partially-evaluated</tt>, outside the closed set</td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>EV12</tt></td>
            <td align="left">
              <tt>A10</tt></td>
            <td align="left">
              <tt>evaluation</tt> carrying a free-text <tt>reason</tt> member this document does not define</td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>EV13</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>evaluation.inputs</tt> removed, the shape of a record under draft-gilda-wimse-agent-audit-record-02</td>
            <td align="left">malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>OV1</tt></td>
            <td align="left">
              <tt>A11</tt></td>
            <td align="left">
              <tt>oversight.act</tt> of <tt>approval</tt>, outside the closed set</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>OV2</tt></td>
            <td align="left">
              <tt>A11</tt></td>
            <td align="left">
              <tt>oversight</tt> carrying a member this document does not define</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>OV3</tt></td>
            <td align="left">
              <tt>A11</tt></td>
            <td align="left">
              <tt>oversight</tt> with <tt>act</tt> removed and <tt>recordDigest</tt> kept</td>
            <td align="left">malformed</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>SQ1</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A1</tt> with <tt>sequence</tt> carrying a <tt>boundary</tt> and a <tt>seq</tt> of 1</td>
            <td align="left">valid</td>
            <td align="left">v0.28.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>SQ2</tt></td>
            <td align="left">
              <tt>SQ1</tt></td>
            <td align="left">
              <tt>sequence</tt> carrying a <tt>count</tt> member this document does not define</td>
            <td align="left">malformed</td>
            <td align="left">v0.28.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>SQ3</tt></td>
            <td align="left">
              <tt>SQ1</tt></td>
            <td align="left">
              <tt>sequence</tt> with a <tt>seq</tt> of 0</td>
            <td align="left">malformed</td>
            <td align="left">v0.28.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>SQ4</tt></td>
            <td align="left">root</td>
            <td align="left">records of one series with <tt>seq</tt> 1 and 3 held, <tt>seq</tt> 2 not held</td>
            <td align="left">each record valid, the set names <tt>seq</tt> 2 as issued and not received</td>
            <td align="left">v0.28.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>SQ5</tt></td>
            <td align="left">root</td>
            <td align="left">two records of one series with the same <tt>seq</tt> and different record identities (SHA-256 of the decoded payload bytes)</td>
            <td align="left">each record valid, the set fails the check</td>
            <td align="left">v0.28.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>N1</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">an anchor token digest carried in <tt>correlation.externalAnchor</tt>, the proof not held</td>
            <td align="left">valid, not dated by the anchor</td>
            <td align="left">v0.18.1, verdict changed</td>
          </tr>
          <tr>
            <td align="left">
              <tt>N2</tt></td>
            <td align="left">
              <tt>A4</tt></td>
            <td align="left">enforcement forty days after the signal, ordering intact</td>
            <td align="left">indeterminate</td>
            <td align="left">v0.18.1</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R1</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A1</tt> retained by its producer: <tt>received</tt> of <tt>false</tt> and one anchor of origin <tt>retainer</tt> inside <tt>anchorWithin</tt> of <tt>issuedAt</tt></td>
            <td align="left">record valid, dated at the anchor's time</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R2</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A1</tt> received from another party, <tt>receivedAt</tt> between <tt>issuedAt</tt> and the retaining party's anchor obtained on delivery</td>
            <td align="left">record valid, receipt time asserted and consistent</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R3</tt></td>
            <td align="left">
              <tt>R2</tt></td>
            <td align="left">
              <tt>receivedAt</tt> later than the retaining party's earliest anchor by more than the skew tolerance</td>
            <td align="left">record valid, entry malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R4</tt></td>
            <td align="left">
              <tt>R2</tt></td>
            <td align="left">
              <tt>received</tt> of <tt>true</tt> and no anchor of origin <tt>retainer</tt></td>
            <td align="left">record valid, entry malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R5</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>R2</tt> with the retaining party's anchor obtained before delivery and <tt>receivedAt</tt> inside the bracket</td>
            <td align="left">record valid, receipt time asserted and consistent, never established</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R6</tt></td>
            <td align="left">
              <tt>R2</tt></td>
            <td align="left">
              <tt>receivedAt</tt> earlier than <tt>issuedAt</tt> by more than the skew tolerance</td>
            <td align="left">record valid, entry malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R7</tt></td>
            <td align="left">
              <tt>R1</tt></td>
            <td align="left">the retaining party's first anchor later than <tt>issuedAt</tt> by more than <tt>anchorWithin</tt> plus the skew tolerance</td>
            <td align="left">record valid, entry malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R8</tt></td>
            <td align="left">
              <tt>R1</tt></td>
            <td align="left">the only anchor's proof is over a different envelope digest</td>
            <td align="left">record valid, not dated</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R9</tt></td>
            <td align="left">
              <tt>R1</tt></td>
            <td align="left">
              <tt>receivedAt</tt> carried beside <tt>received</tt> of <tt>false</tt></td>
            <td align="left">record valid, entry malformed</td>
            <td align="left">v0.26.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R10</tt></td>
            <td align="left">
              <tt>R2</tt></td>
            <td align="left">the retaining party's anchor is <tt>opentimestamps</tt>, its block header time 600 seconds earlier than <tt>receivedAt</tt></td>
            <td align="left">record valid, receipt time asserted and consistent</td>
            <td align="left">v0.28.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R11</tt></td>
            <td align="left">
              <tt>R10</tt></td>
            <td align="left">the block header time earlier than <tt>receivedAt</tt> by more than 7200 seconds</td>
            <td align="left">record valid, entry malformed</td>
            <td align="left">v0.28.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R12</tt></td>
            <td align="left">
              <tt>R1</tt></td>
            <td align="left">
              <tt>anchors</tt> holding a pending OpenTimestamps proof followed by its upgraded, complete proof</td>
            <td align="left">record valid, dated at the upgraded proof's block time, the pending element dating nothing</td>
            <td align="left">v0.28.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R13</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>R1</tt> for a record carrying <tt>delegation.rootDigest</tt>, with a <tt>delegation-root</tt> element whose digest equals it</td>
            <td align="left">record valid, delegation root established, its algorithm derived from the element</td>
            <td align="left">v0.28.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R14</tt></td>
            <td align="left">
              <tt>R13</tt></td>
            <td align="left">the <tt>delegation-root</tt> element omitted</td>
            <td align="left">record valid, delegation root not established, never reported as a pass</td>
            <td align="left">v0.28.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R15</tt></td>
            <td align="left">
              <tt>R13</tt></td>
            <td align="left">the <tt>delegation-root</tt> element's digest unequal to <tt>delegation.rootDigest</tt></td>
            <td align="left">record valid, entry malformed</td>
            <td align="left">v0.28.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R16</tt></td>
            <td align="left">
              <tt>R1</tt></td>
            <td align="left">the only anchor an <tt>opentimestamps</tt> proof whose path runs from <tt>envelopeDigest</tt> through a Merkle tree the retaining party built and a Bitcoin transaction carrying its root to the block header</td>
            <td align="left">record valid, dated at the block time</td>
            <td align="left">v0.28.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>R17</tt></td>
            <td align="left">
              <tt>R7</tt></td>
            <td align="left">the same entry with an outage of the retaining party's anchoring source stated outside the record, since no member carries one</td>
            <td align="left">record valid, entry malformed, as for <tt>R7</tt></td>
            <td align="left">next</td>
          </tr>
          <tr>
            <td align="left">
              <tt>IS1</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>issuedAt</tt> one second earlier than <tt>effect.interval.sealedAt</tt></td>
            <td align="left">malformed</td>
            <td align="left">next</td>
          </tr>
          <tr>
            <td align="left">
              <tt>IS2</tt></td>
            <td align="left">
              <tt>A1</tt></td>
            <td align="left">
              <tt>issuedAt</tt> one day earlier than <tt>effect.interval.sealedAt</tt></td>
            <td align="left">malformed</td>
            <td align="left">next</td>
          </tr>
          <tr>
            <td align="left">
              <tt>PS1</tt></td>
            <td align="left">
              <tt>A10</tt></td>
            <td align="left">under the <tt>v2</tt> predicate type URI, <tt>not-evaluated</tt> with <tt>unavailableInput</tt> of <tt>principal-standing-source</tt> and the matching entry</td>
            <td align="left">valid, <tt>agreement</tt> of <tt>agree</tt></td>
            <td align="left">next</td>
          </tr>
          <tr>
            <td align="left">
              <tt>PS2</tt></td>
            <td align="left">
              <tt>PS1</tt></td>
            <td align="left">the same record under the <tt>v1</tt> predicate type URI</td>
            <td align="left">malformed</td>
            <td align="left">next</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS1</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>A1</tt> under a cumulative limit of 50000: a <tt>consumption-state</tt> entry with <tt>consumption</tt>, <tt>consumed</tt> 30000, nothing held, <tt>requested</tt> 12000</td>
            <td align="left">valid, <tt>withinLimit</tt> true</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS2</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>CS1</tt> with <tt>requested</tt> 25000, so 55000 of 50000, still a <tt>permit</tt></td>
            <td align="left">valid, <tt>withinLimit</tt> false</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS3</tt></td>
            <td align="left">
              <tt>CS1</tt></td>
            <td align="left">
              <tt>reserved</tt> 12000 with nothing in <tt>held</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS4</tt></td>
            <td align="left">root</td>
            <td align="left">the retry of the first call: its <tt>decision.operationKey</tt> and <tt>decision.requestDigest</tt> equal a <tt>held</tt> entry of 12000, within the limit only because it is not counted twice</td>
            <td align="left">valid, <tt>withinLimit</tt> true</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS5</tt></td>
            <td align="left">
              <tt>CS1</tt></td>
            <td align="left">a negative <tt>requested</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS6</tt></td>
            <td align="left">
              <tt>CS1</tt></td>
            <td align="left">
              <tt>consumption</tt> also on the entry whose <tt>input</tt> is <tt>policy-source</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS7</tt></td>
            <td align="left">root</td>
            <td align="left">two records under one <tt>limitDigest</tt>: the retry of <tt>CS4</tt>, which reads revision 42 and holds the first call, then a new operation that reads revision 41, omits the held call and is permitted</td>
            <td align="left">each record valid, the set fails the check across records</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS8</tt></td>
            <td align="left">root</td>
            <td align="left">two records under one <tt>limitDigest</tt>: the first, reading revision 42, holds an earlier operation; the second, reading revision 43, no longer holds it, and no record of that operation shows <tt>none</tt> or <tt>occurred</tt></td>
            <td align="left">each record valid, the set fails the check across records</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS9</tt></td>
            <td align="left">
              <tt>CS1</tt></td>
            <td align="left">
              <tt>consumption</tt> with <tt>stateRevision</tt> removed</td>
            <td align="left">malformed</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS10</tt></td>
            <td align="left">
              <tt>CS4</tt></td>
            <td align="left">the <tt>held</tt> entry under the request's <tt>decision.operationKey</tt> carries another request's <tt>requestDigest</tt>: one operation key reused for a different request</td>
            <td align="left">malformed</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS11</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>CS4</tt> under another <tt>decision.operationKey</tt> with <tt>consumed</tt> 20000: the same intended payment made again, a new operation counted (44000 of 50000)</td>
            <td align="left">valid, <tt>withinLimit</tt> true</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS12</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>CS4</tt> under another <tt>decision.operationKey</tt>: counted, 54000 of 50000; read as a retry of the held call it would be 42000</td>
            <td align="left">valid, <tt>withinLimit</tt> false</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS13</tt></td>
            <td align="left">
              <tt>CS4</tt></td>
            <td align="left">two <tt>held</tt> entries under one operation key, 12000 each, summing to <tt>reserved</tt></td>
            <td align="left">malformed</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS14</tt></td>
            <td align="left">
              <tt>CS1</tt></td>
            <td align="left">
              <tt>decision.operationKey</tt> removed</td>
            <td align="left">malformed</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS15</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>CS1</tt> with <tt>limitDigest</tt> the digest of a limit document the authority names, not <tt>delegation.authorityDigest</tt></td>
            <td align="left">valid, <tt>withinLimit</tt> true</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS16</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>CS1</tt> with <tt>limitDigest</tt> equal to <tt>delegation.authorityDigest</tt>, the authority document stating the limit itself</td>
            <td align="left">valid, <tt>withinLimit</tt> true</td>
            <td align="left">v0.27.0</td>
          </tr>
          <tr>
            <td align="left">
              <tt>CS17</tt></td>
            <td align="left">root</td>
            <td align="left">
              <tt>CS7</tt> where the second operation is the same intended payment: an identical <tt>requestDigest</tt> under another operation key</td>
            <td align="left">each record valid, the set fails the check across records</td>
            <td align="left">v0.27.0</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="audit-map">
      <name>Mapping to the AUDIT problem statement</name>
      <t>The table below takes each problem the AUDIT BoF request <xref target="AUDIT-BOFREQ"/> and the proposed charter <xref target="AUDIT-CHARTER"/> name, quoted or closely paraphrased from those texts, and gives the part of this document that addresses it. Where this document leaves a problem to other work, the row says so. The charter's first deliverable, an architecture, and its third and fourth, protocol extensions and deployment practice, are outside a record format; the rows below fall under its second deliverable, audit data models and semantics, unless a row names another.</t>
      <table>
        <name>AUDIT problems and the parts of this document that address them</name>
        <thead>
          <tr>
            <th align="left">AUDIT problem</th>
            <th align="left">where it is stated</th>
            <th align="left">this document</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">who initiated an action</td>
            <td align="left">BoF request</td>
            <td align="left">
              <tt>agent.id</tt>, <tt>agent.credentialDigest</tt>, <tt>delegation.subject</tt> and <tt>delegation.subjectKind</tt>, <xref target="members"/></td>
          </tr>
          <tr>
            <td align="left">under which authority it occurred</td>
            <td align="left">BoF request</td>
            <td align="left">
              <tt>delegation.authorityDigest</tt> and <tt>decision.policyDigest</tt>, with <tt>evaluation</tt> saying whether the authority was evaluated, <xref target="members"/> and <xref target="evaluation"/></td>
          </tr>
          <tr>
            <td align="left">how permissions evolved during execution</td>
            <td align="left">BoF request</td>
            <td align="left">one record per decision, joined by <tt>correlation.id</tt>; <tt>remediation</tt> for each revocation or downgrade with its enforcement and the effect after it, <xref target="correlation"/>. A record carries one delegation hop and no delegation chain</td>
          </tr>
          <tr>
            <td align="left">attributing actions to a user, an agent instance or a delegation context</td>
            <td align="left">charter, challenges</td>
            <td align="left">
              <tt>agent</tt> and <tt>delegation</tt>, with the request bound by digest to the action, resource and arguments, <xref target="members"/></td>
          </tr>
          <tr>
            <td align="left">visibility across long-running or distributed workflows</td>
            <td align="left">charter, challenges</td>
            <td align="left">
              <tt>correlation.id</tt> with <tt>correlation.scope</tt> of <tt>cross-party</tt>, and the subject convention that binds one identifier to the request, the interval and the record, <xref target="subject"/> and <xref target="correlation"/></td>
          </tr>
          <tr>
            <td align="left">delegation relationships, dynamic authorization context and identity transitions</td>
            <td align="left">charter, challenges</td>
            <td align="left">the authorization context of each decision, including the freshness of every input it relied on, <xref target="evaluation"/>; identity transitions are left to the identity work the charter relies on</td>
          </tr>
          <tr>
            <td align="left">interoperable means to exchange or verify audit information across domains</td>
            <td align="left">charter, challenges</td>
            <td align="left">the canonical form, <xref target="canonical"/>; the verification order, <xref target="verifying"/>; the open conformance corpus, <xref target="vectors"/> and <xref target="impl"/></td>
          </tr>
          <tr>
            <td align="left">verifiable by a party that trusts neither the agent nor its operator</td>
            <td align="left">charter</td>
            <td align="left">the recomputes, which refuse a record its own key holder altered inconsistently, <xref target="tamper"/>; the derived tier, <xref target="observation"/>; and what a record cannot prove, <xref target="security-considerations"/></td>
          </tr>
          <tr>
            <td align="left">user intent</td>
            <td align="left">BoF request, charter</td>
            <td align="left">not carried; a record can bind an intent record by digest as it binds the authority document, and keeps the user's statement apart from the decision</td>
          </tr>
          <tr>
            <td align="left">invoked or declined actions</td>
            <td align="left">BoF request, charter</td>
            <td align="left">
              <tt>decision.reported</tt> beside <tt>effect.observed</tt> and the derived <tt>agreement</tt>, so a declined action that took effect is visible, <xref target="members"/></td>
          </tr>
          <tr>
            <td align="left">exchanged data</td>
            <td align="left">BoF request, charter</td>
            <td align="left">
              <tt>resource.argumentsDigest</tt> binds the arguments by digest and carries none of them, <xref target="members"/> and <xref target="privacy-considerations"/></td>
          </tr>
          <tr>
            <td align="left">resulting outcomes</td>
            <td align="left">BoF request, charter</td>
            <td align="left">
              <tt>effect</tt>, its write chain and the before-state and after-state roots, <xref target="members"/></td>
          </tr>
          <tr>
            <td align="left">a common identifier linking user intent to resulting actions across boundaries</td>
            <td align="left">BoF request, charter</td>
            <td align="left">
              <tt>correlation.id</tt>, the first subject entry's name, <xref target="subject"/> and <xref target="timestamps"/></td>
          </tr>
          <tr>
            <td align="left">authorization as a time-evolving state</td>
            <td align="left">charter</td>
            <td align="left">
              <tt>evaluation.inputs</tt>, <tt>posture.assessedAt</tt> and <tt>remediation</tt>, <xref target="evaluation"/> and <xref target="correlation"/></td>
          </tr>
          <tr>
            <td align="left">selective disclosure and privacy</td>
            <td align="left">charter</td>
            <td align="left">digests in place of the bound documents, and anchors over a digest alone, <xref target="privacy-considerations"/>; no mechanism for disclosing part of a record's own members</td>
          </tr>
          <tr>
            <td align="left">collecting, aggregating, verifying and transparency-logging records, possibly by an independent auditor</td>
            <td align="left">charter, scope and deliverable 2</td>
            <td align="left">what a retaining party keeps, the anchor kinds including a transparency log, and the dating check, <xref target="retained"/>; no protocol for collection or retrieval</td>
          </tr>
          <tr>
            <td align="left">a data model for records</td>
            <td align="left">BoF request, new work</td>
            <td align="left">this document</td>
          </tr>
          <tr>
            <td align="left">protocols to store and retrieve records</td>
            <td align="left">BoF request, new work</td>
            <td align="left">not defined; <xref target="retained"/> defines what is stored and leaves the protocol open</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section numbered="false" anchor="document-history">
      <name>Document History</name>
      <t>This document replaces draft-gilda-wimse-agent-audit-record. Its target is the AUDIT BoF and the working group it proposes. The revisions listed below as -02, -01 and -00 are revisions of that document.</t>
      <t>Changes in draft-gilda-audit-agent-audit-record-03:</t>
      <ul spacing="normal">
        <li>
          <t><xref target="consumption"/> says that the reading of <tt>CS7</tt> and <tt>CS17</tt> puts no condition on when the held permit was issued.</t>
        </li>
        <li>
          <t>The empty-tree digest for <tt>sha256</tt> and the 300-second skew tolerance are printed where the text names them.</t>
        </li>
        <li>
          <t><xref target="anchor-rules"/> says that on the earlier side 7200 seconds is an allowance this document chooses and not a Bitcoin consensus bound, and keeps the ordering of two <tt>opentimestamps</tt> times by block height.</t>
        </li>
        <li>
          <t>The section on receipt time and late anchoring says that an outage, anchoring that never happened in time and late anchoring read the same from the bytes, that <tt>anchorWithin</tt> binds only if the entry carrying it is anchored, and that a relying party needing the commitment requires a second anchor taken after the outage.</t>
        </li>
        <li>
          <t><xref target="evaluation"/> adds the input <tt>principal-standing-source</tt>, and <xref target="iana"/> publishes the extended set under a second predicate type URI that ends in <tt>v2</tt>, as the freeze requires. The <tt>v1</tt> URI and the records valid under it are unchanged.</t>
        </li>
        <li>
          <t><xref target="members"/> states that a record whose <tt>issuedAt</tt> is earlier than <tt>effect.interval.sealedAt</tt> is malformed.</t>
        </li>
        <li>
          <t>Five rows are added to <xref target="vectors"/> and marked <tt>next</tt>, because the release that carries them is not published: <tt>R17</tt>, <tt>IS1</tt>, <tt>IS2</tt>, <tt>PS1</tt> and <tt>PS2</tt>.</t>
        </li>
        <li>
          <t>Three listings in <xref target="impl"/> are prepared and not enabled until each party agrees to be listed.</t>
        </li>
      </ul>
      <t>Changes in draft-gilda-audit-agent-audit-record-02:</t>
      <ul spacing="normal">
        <li>
          <t>This revision freezes the predicate type URI. <xref target="iana"/> and <xref target="conformance"/> state the freeze: from this revision on, a change to what a record must carry is published under a new URI.</t>
        </li>
        <li>
          <t><xref target="conformance"/>, <xref target="impl"/> and <xref target="vectors"/> name release v0.28.0 of <xref target="VECTORS"/>, which carries 141 members (59 accept, 81 reject, 1 indeterminate) and every row of <xref target="vectors"/>; no row is marked <tt>next</tt>. Release v0.27.0 first published <tt>CS1</tt> to <tt>CS17</tt>, and release v0.28.0 first published <tt>A21</tt>, <tt>SQ1</tt> to <tt>SQ5</tt> and <tt>R10</tt> to <tt>R16</tt>.</t>
        </li>
        <li>
          <t><xref target="consumption"/> identifies a retry by <tt>decision.operationKey</tt>, required on a record that carries <tt>consumption</tt>, and each <tt>held</tt> entry carries the key. Under -01 a retry was identified by its request digest, which two identical intended payments share, so a second payment could be read as a retry of the first and not counted. Eight members are added: <tt>CS10</tt> to <tt>CS17</tt>, and the rows <tt>CS1</tt> to <tt>CS9</tt> are restated to match the published members.</t>
        </li>
        <li>
          <t><xref target="sequence"/> defines a record's identity for the duplicate check as the SHA-256 of its decoded payload bytes (vector <tt>SQ5</tt>).</t>
        </li>
        <li>
          <t>Registered vocabulary terms and values are cited by their URIs under <tt>https://w3id.org/agent-evidence/vocab/v1/</tt>, at vocabulary release 0.8.0 with its tag, commit and registry digest, instead of by bare keys. <xref target="observation"/> maps the hyphenated <tt>fieldEvidence</tt> tokens to the underscored registered values; -01 described them as reused unchanged although the spellings differ. The wire tokens are unchanged.</t>
        </li>
      </ul>
      <t>Changes in draft-gilda-audit-agent-audit-record-01:</t>
      <ul spacing="normal">
        <li>
          <t><xref target="conformance"/> states what a conforming producer and verifier are, ties verifier conformance to release 0.26.2 of <xref target="VECTORS"/>, and lists the identifiers a referencing document may rely on. The intended status is Standards Track, so that a working group document can reference this one normatively.</t>
        </li>
        <li>
          <t><xref target="impl"/> and <xref target="vectors"/> name release v0.26.2, which regenerated the corpus under draft-gilda-audit-agent-audit-record-00 and carries 111 members, and the <tt>first in</tt> column names v0.26.0 for the 36 members that release first published. <xref target="VECTORS"/> and <xref target="VOCABULARY"/> are referenced at tagged releases.</t>
        </li>
        <li>
          <t><xref target="consumption"/> adds the value a decision under a cumulative limit read. A <tt>consumption-state</tt> entry carries <tt>consumption</tt>: the limit's document digest, the unit, the limit, the amounts committed, held and requested, the permits held and the state revision read. A verifier derives <tt>withinLimit</tt>, a retried request held for a lost response is not counted twice, a held permit is released only by a record of that request showing <tt>none</tt>, and two checks across retained records find one limit spent twice. Under -00 an entry recorded the freshness of the consumption state and not the amount it showed.</t>
        </li>
        <li>
          <t>Nine members are added to <xref target="vectors"/>: <tt>CS1</tt> to <tt>CS9</tt>.</t>
        </li>
        <li>
          <t>Where a decision depended on several values of one input, an entry's <tt>lastResult</tt> and <tt>maxAge</tt> are taken from the same value, the one whose <tt>lastResult</tt> plus <tt>maxAge</tt> is earliest. Under -00 the entry took the oldest <tt>lastResult</tt> and the smallest <tt>maxAge</tt> from different values, which could report two fresh values as one stale input. Vectors <tt>FR14</tt> and <tt>FR15</tt>.</t>
        </li>
        <li>
          <t><xref target="subject"/> states the interval condition on what was observed rather than on the decision. Under -00 it said a denied decision carries an empty write set, which contradicted vectors <tt>A3</tt> and <tt>A7</tt>; a write attributed to a denied request is retained and yields <tt>disagree</tt>. <xref target="rationale"/> describes a deny beside <tt>occurred</tt> as a well-formed disagreement, not a refusable inconsistency, and refers to the agreement table instead of counting its values.</t>
        </li>
        <li>
          <t><xref target="tamper"/>, <xref target="decision-effect"/>, <xref target="security-considerations"/> and <xref target="rationale"/> narrow the claim about a record the key holder signed again. The recomputes refuse an inconsistent alteration; a coherent replacement, in which every dependent member is changed to match and the record is signed again, passes them, and is found only by comparison with a copy or an anchor of the original that the key holder does not control.</t>
        </li>
        <li>
          <t><xref target="observation"/> defines <tt>coverage.scopeComplete</tt> and <tt>coverage.gaps</tt>. A gap inside <tt>pathScope</tt> beside a <tt>scopeComplete</tt> of true is malformed at any tier, and the coverage clause of the tier recompute is <tt>scopeComplete</tt> of true. Under -00 the clause was a disjunction that passed a record declaring complete coverage beside a listed gap inside its own scope, and one declaring incomplete coverage while naming no gap inside it. Vectors <tt>TI6</tt>, <tt>V4</tt> and <tt>V5</tt>.</t>
        </li>
        <li>
          <t><xref target="anchor-rules"/> defines the time of an <tt>opentimestamps</tt> anchor as the timestamp of the Bitcoin block header its proof reaches, and gives comparisons with that time a tolerance of 7200 seconds, the consensus limit on a header time ahead of a validating node's clock, in place of the 300-second skew tolerance. Two such times are ordered by block height. Under -00 the time was unspecified, and an honest retaining party could fail the receipt bracket. Vectors <tt>R10</tt> and <tt>R11</tt>.</t>
        </li>
        <li>
          <t><xref target="retained"/> states that only an anchor that validates meets <tt>anchorWithin</tt>, so for a retaining party that relies on <tt>opentimestamps</tt> alone, <tt>anchorWithin</tt> covers the latency before a pending proof is confirmed in a block.</t>
        </li>
        <li>
          <t><xref target="retained"/> states that an upgraded proof is appended as a new element beside the pending one it completes, which stays and dates nothing; no element is rewritten in place. Vector <tt>R12</tt>.</t>
        </li>
        <li>
          <t><tt>delegation.rootDigest</tt>, optional, binds the certification path or key set of the delegation chain's root key that the chain verifier trusted at decision time, and <xref target="retained"/> keeps that material as a <tt>delegation-root</tt> element of <tt>validationData</tt>, from which a later reader derives the algorithm the chain rested on. It records what the verifier held and not how it came to hold it, and mandates no anchor topology. A retaining party that holds no such element reports the root as not established. Under -00 the record bound the authority document and not the root key the chain was verified under. Vectors <tt>R13</tt> to <tt>R15</tt>.</t>
        </li>
        <li>
          <t><xref target="anchor-rules"/> states why an anchor kind names the proof format and not only its basis, carries a Merkle root published in a Bitcoin transaction as an <tt>opentimestamps</tt> proof, and states what a revision adding a kind for another ledger has to define. Vector <tt>R16</tt>.</t>
        </li>
        <li>
          <t><tt>agent.authentication</tt> gains <tt>api-key</tt>, for a bearer secret that is not an OAuth access token. Under -00 such a request matched no value, and <tt>none</tt> would have said that no authentication took place; <tt>none</tt> is now stated to mean exactly that. A digest of a bearer secret is stated to be testable against guesses. Vector <tt>A21</tt>.</t>
        </li>
        <li>
          <t>Requirements stated with a lowercase "required" are restated with the BCP 14 keywords: the seventeen members, <tt>delegation.authorityDigest</tt>, <tt>evaluation.inputs</tt> and the members of each entry, the members of <tt>consumption</tt>, <tt>oversight.act</tt> and <tt>correlation.scope</tt>. No requirement changes.</t>
        </li>
        <li>
          <t><xref target="sequence"/> adds an optional <tt>sequence</tt> member, a series named by <tt>boundary</tt> and a <tt>seq</tt> that starts at 1 and rises by one, under the producer's signature. A party holding records of a series names a missing number below the highest it holds, and two records at one number fail the check. <xref target="withheld-rows"/> separates a withheld record, which a missing number shows, from a record never produced, which nothing shows. Vectors <tt>SQ1</tt> to <tt>SQ5</tt>.</t>
        </li>
        <li>
          <t><xref target="impl"/> states that the published command checks records under draft-gilda-wimse-agent-audit-record-02 and is not a conformance check for this revision.</t>
        </li>
        <li>
          <t><xref target="consumption"/> and <xref target="sequence"/> follow <xref target="worked"/>, so that Sections 5.1 to 5.8 keep the numbers they had in -00 and in draft-gilda-wimse-agent-audit-record-02, as <xref target="introduction"/> states.</t>
        </li>
        <li>
          <t>The acknowledgments credit the reviewers whose comments led to these changes.</t>
        </li>
      </ul>
      <t>Changes in draft-gilda-audit-agent-audit-record-00:</t>
      <ul spacing="normal">
        <li>
          <t><xref target="retained"/> defines the retention entry a retaining party keeps beside a record: anchors over the envelope digest with their kind and origin, the validation data for the envelope and each anchor, and, for a received record, <tt>receivedAt</tt>. A verifier derives each anchor's time and algorithm family from its proof.</t>
        </li>
        <li>
          <t><xref target="verifying"/> gains the dating check. The earliest anchor that validates dates the record, and no issuance time a record states does. A received record must carry an anchor the retaining party obtained on delivery, and a <tt>receivedAt</tt> outside the bracket from <tt>issuedAt</tt> to that anchor, within the skew tolerance, makes the entry malformed. The check is stated to be a consistency check: it rests on the sender's clock and on the retaining party anchoring on delivery, a digest anchored before delivery does not establish receipt, and the late-anchor limit is stated as an assumption.</t>
        </li>
        <li>
          <t><xref target="anchor-rules"/> gives an offline validation rule for each anchor kind, and says when a transparency-log anchor is a hash commitment and when a signed token. The predicate's own <tt>correlation.externalAnchor</tt> dates nothing by itself, so vector <tt>N1</tt> has one conforming verdict.</t>
        </li>
        <li>
          <t><xref target="evaluation"/> gains <tt>evaluation.inputs</tt>, required under both statuses: one entry per input the decision depended on, with <tt>lastResult</tt> and <tt>maxAge</tt>, both required. Age is measured from <tt>lastResult</tt> to <tt>decision.reportedAt</tt>, an age equal to <tt>maxAge</tt> is fresh, and <tt>unavailableInput</tt> is derived from the entries and must match them. A forwarded value keeps the source's <tt>lastResult</tt>. Under draft-gilda-wimse-agent-audit-record-02 freshness could not be recorded for an input that was accepted.</t>
        </li>
        <li>
          <t><tt>unavailableInput</tt> gains <tt>policy-source</tt>, for a decision point that could not read its policy or does not hold the profile a request names. <tt>decision.policyDigest</tt> then names the fallback the decision point enforced.</t>
        </li>
        <li>
          <t>The rule for <tt>evaluated</tt> is stated: the reported decision does not depend on any input the decision point could not obtain. <tt>decision.reported</tt> under <tt>not-evaluated</tt> is stated to be the outcome the decision point fell back to, so a fail-open is a <tt>permit</tt> and stays findable.</t>
        </li>
        <li>
          <t><tt>evaluation</tt> carries no member other than <tt>status</tt>, <tt>inputs</tt> and <tt>unavailableInput</tt>. Under the earlier revision a free-text reason beside the closed set was not refused.</t>
        </li>
        <li>
          <t>Each input is mapped to the section of <xref target="EVALUATION"/> that defines it, and a transient refusal under that document is mapped to <tt>not-evaluated</tt> and a permanent one to <tt>evaluated</tt> with <tt>deny</tt>.</t>
        </li>
        <li>
          <t>The write-chain replay is stated in <xref target="members"/>: where the running root starts, what each write must match, and where it must end. Under the earlier revision the body required the replay without defining it.</t>
        </li>
        <li>
          <t><xref target="verifying"/> applies the JSON profile before the signature, because deriving the <xref target="RFC8785"/> bytes the signature covers requires a parse the duplicate-member rule constrains.</t>
        </li>
        <li>
          <t>A closed vocabulary is extended only by a revision, and after the predicate type URI freezes only under a new URI. No vocabulary carries a catch-all value. <xref target="iana"/> states that no revision has yet frozen the URI.</t>
        </li>
        <li>
          <t>A skew tolerance of 300 seconds is defined for every comparison between times written by two parties.</t>
        </li>
        <li>
          <t><xref target="impl"/> records the open implementation, and <xref target="audit-map"/> maps the problems the AUDIT BoF request and proposed charter name to this document.</t>
        </li>
        <li>
          <t>A record under the earlier revision is malformed under this one, because it carries no <tt>evaluation.inputs</tt> (vector <tt>EV13</tt>). The corpus is regenerated, and 31 members are added to <xref target="vectors"/>: <tt>A18</tt> to <tt>A20</tt>, <tt>E4</tt> to <tt>E6</tt>, <tt>EV11</tt> to <tt>EV13</tt>, <tt>FR1</tt> to <tt>FR13</tt> and <tt>R1</tt> to <tt>R9</tt>.</t>
        </li>
      </ul>
      <t>Changes in draft-gilda-wimse-agent-audit-record-02:</t>
      <ul spacing="normal">
        <li>
          <t>A required <tt>evaluation</tt> member records whether the decision point evaluated the request, and under <tt>not-evaluated</tt> names the unavailable inputs from a closed set (<xref target="evaluation"/>). Under -01 a verifier that lost its standing source and denied wrote a record identical to a correctly enforced denial. <tt>decision.reported</tt> and the agreement table are unchanged.</t>
        </li>
        <li>
          <t>An optional <tt>oversight</tt> member records the kind of act a person took behind a decision, and may bind the overseer's own signed record by digest (<xref target="oversight"/>).</t>
        </li>
        <li>
          <t>A record conforming to -01 is malformed under -02, because it carries no <tt>evaluation</tt> member and no member has a default (vector <tt>EV3</tt>). The predicate type URI does not change: no revision has yet frozen it, and the corpus in <xref target="VECTORS"/> is regenerated against this revision.</t>
        </li>
        <li>
          <t>Eight members are added to <xref target="vectors"/>: <tt>A10</tt>, <tt>A11</tt>, <tt>EV1</tt> to <tt>EV4</tt>, <tt>OV1</tt> and <tt>OV2</tt>.</t>
        </li>
      </ul>
      <t>Changes in draft-gilda-wimse-agent-audit-record-01:</t>
      <ul spacing="normal">
        <li>
          <t>The request-digest preimage under <tt>not-bindable</tt> is stated: three members, with no <tt>argumentsDigest</tt> member in any spelling. Under -00 the text named four members and forbade the fourth, so the preimage was open and three spellings gave three digests.</t>
        </li>
        <li>
          <t>Each write carries the request digest it is attributed to, or <tt>unattributed</tt>. <tt>effect.observed</tt> describes this record's request, and it gains <tt>unknown</tt> for an unattributed write inside the scope. A write that belongs to another request no longer changes this record's agreement.</t>
        </li>
        <li>
          <t><tt>agreement</tt> gains <tt>not-exercised</tt>, for a permit beside no effect, and <tt>indeterminate</tt>, for an effect the observer could not attribute. Under -00 a permitted call that was never made read as <tt>disagree</tt>, the value a leaked deny also takes.</t>
        </li>
        <li>
          <t>A statement whose signature fails is malformed, so <xref target="verifying"/> and vector <tt>T2</tt> report the same verdict.</t>
        </li>
        <li>
          <t>Six members are added to <xref target="vectors"/>: <tt>A7</tt>, <tt>A8</tt>, <tt>A9</tt>, <tt>F3b</tt>, <tt>F3c</tt> and <tt>D3</tt>.</t>
        </li>
      </ul>
      <t>draft-gilda-wimse-agent-audit-record-00 was the first revision.</t>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Cliff Singletary pointed out that an earlier revision could not record a decision point that was unable to evaluate, and proposed the separate member that leaves <tt>decision.reported</tt> and the agreement table untouched. Girish Konda reviewed that member against Section 5 of <xref target="EVALUATION"/>, proposed adding the policy input to its closed set, and asked for the reference time, the boundary case and the freshness of accepted inputs that <tt>evaluation.inputs</tt> now carries. Wes Jackson proposed reading stale and never-established inputs from the as-of time and the maximum age. Venkata Uppalapati asked whether a receipt time could be bound to anything a later reader can check, which led to the receipt bracket, and named the late-anchor limit it leaves. Iman Schrock pointed out that the bracket is a consistency check and not proof of receipt, and proposed the case of a digest anchored before delivery. Andreas Ehstand asked whether the human act behind a permit belongs in this format and proposed the member that names its kind. Brian Campbell pointed this work to the AUDIT BoF. King Yew Choo asked how the record shows the amount already spent that a decision point read under a cumulative delegated limit, which led to <xref target="consumption"/>. Mikhail Sergeev found that aggregating freshness across values could report two fresh values as stale and proposed the pairing rule, found that the text on a denied decision contradicted vectors <tt>A3</tt> and <tt>A7</tt>, narrowed the claim about a record signed again, and found that a listed gap inside the scope did not override a declaration of complete coverage; the wording of all four follows his. Toshikatsu Oga, from running OpenTimestamps anchors, asked which time an <tt>opentimestamps</tt> anchor carries and proposed the 7200-second tolerance, the reading of <tt>anchorWithin</tt> that covers confirmation latency, and appending an upgraded proof. Rafael Asor named the delegation root key a chain verifier trusts as a gap in what is recorded, V.K. Uppalapati separated the recording gap from the gap in how the root key arrives, and Kieran Sweeney warned against closing either by mandating an anchor topology; <tt>delegation.rootDigest</tt> follows all three. Lars Kersten Kroehl asked whether an anchor kind should name its basis, which value a bearer API key takes, and why a requirement was written in lowercase. Henri Sirkkavaara proposed the sequence member and the distinction between a withheld record and one never produced.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA6y9a3sb15Eu+p2/og/1wXYOQPGmC+mdvTctyYlmbMsj0c6T
7MkJGkCT7AjoxnQ3SDOy5rec33J+2Vn11mXV6m5Qcmb8zEQg0Jd1qVX3ems6
ne51ZbcqzrP9iyq72C7LLntbLOpmmX1bN+u8y67qJrt4nV1cF1UXLuhu6qb8
R96VdZW9LBZlGz60+3v5fN4Ut/QUuS4+aH9vkXfFdd3cn2dtt9zbW9aLKl+H
Vy6b/KqbXperZT7N6Y5pTnfL5wZ3Tw9P9trtfF229KbufhPue/3q8tu9arue
F8353jI8/HxvEUZRVO22Pc+6ZlvshaGc7OVNkYchvSsW26bs7vf33hf3d+GZ
53vZNMNL8IHeiQ9dV7QdpkZ/dvl6UzTT4rZc0gW3RbUNL8qy66bebmimP718
fbkfvuBB7X9TNss2q6+yPPu2yLuboqEf13m5Cj/ibf+7LLqrg7q5ph/yZnET
frjpuk17/vgxXUdflbfFgV72mL54PG/qu7Z4jCc83t/by7EHNIfwlCy72q5W
vJz77/Lqfb7aZH+gFd3Hr4W8v+WfDrDY//uavj1Y1OvwuArbHF5Lc7t4/f27
sL7TlxjD9K5ct8U0D/8bfvtT+O3V9PXLwe9Yn/KqLJpw1dtvX5ycnJyd88dn
p2cn8vH5s+dP6OPrH6aXby7fnGN4SntlNe3qrs4u4hZk3zZhVmG73mfvNoHQ
rsoFvud5dXlzXXTnmS7fddndbOc0pcfyrMduOx/PV/Wclrh63IZnPX776uLl
968O1ks8yxYU/02zsPJxSPw6EFl2fHj8NPz58t27V+nwXxb5MntXrjerIvxz
XZXVdfaqui1W9ab45HhbIs9i2t63XbFup6t8/njZtsUDQwNBhzfxHdl3+Xww
yr2yuvIb++rni+9+urh8/eYH3r6/54v3bV3JDha3+WorhJ+9fPXdqz/g0umL
P168lhvytm6UHnBIl8WquMY908VNWNnkJdN3lxeXr/jO93VF55tu2jRhRd3b
prQ/NNM3P796++71H/54Ob14cSkUWNyEX6vltL4tmra8vgl8YdERIf74b9OL
P7z64dJocbvZ5Kt8Ex4pI9z8hwySSbO7F8I8enok1Hh6dvZcPj49e3qs5Hp2
qh/PjvhbnPLpN2++ffvq39JNxy9hT5jj/dQWdPZf2qpkYezZ66ormjBs+vsy
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
AgA=

-->

</rfc>
