<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.3.12) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-dogru-scitt-disclosure-evidence-07" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="Disclosure Evidence">Transformation Evidence and Coverage Reconciliation for Auditable Data Disclosure</title>

    <author fullname="Emek Can Doğru" asciiFullname="Emek Can Dogru">
      <organization>VERAX TEKNOLOJİ LİMİTED ŞİRKETİ</organization>
      <address>
        <postal>
          <country>TR</country>
        </postal>
        <email>e.dogru@conarium.dev</email>
      </address>
    </author>

    <date year="2026" month="August" day="23"/>

    <area>Security</area>
    <workgroup>SCITT</workgroup>
    <keyword>receipt</keyword> <keyword>masking</keyword> <keyword>reconciliation</keyword> <keyword>transparency</keyword> <keyword>disclosure</keyword>

    <abstract>


<?line 50?>

<t>Audit receipts record what a gateway wrote about an access. They omit how
data changed and whether every access left a receipt. This document defines
two evidence payloads for those gaps. Transformation Evidence states which
value classes were transformed, and how, without carrying values. Coverage
Reconciliation compares source activity counters with a receipt set over a
window. Each item is matched, observed without a receipt, receipted without
an observation, excluded, or indeterminate. The result is not a bare pass.
Both payloads register as Signed Statements on a SCITT Transparency
Service. This document defines no new receipt format, transparency
mechanism, or signature format.</t>



    </abstract>



  </front>

  <middle>


<?line 63?>

<section anchor="introduction"><name>Introduction</name>

<t>Systems place a policy gateway between an automated client and a data
source. Those systems increasingly emit signed, hash-chained access
receipts. Several receipt formats exist. They share a limit. A receipt is
evidence from the party that performed the access. It is about an event
that party chose to record.</t>

<t>Two gaps follow from that property.</t>

<t>First, receipts typically state that access happened. They name the policy
decision. They do not say what happened to the data between the source and
the client. A gateway may mask, redact, or tokenize values before
disclosure. That transformation is the privacy claim. A conventional
receipt does not describe it. An auditor learns that a table was read.
The auditor does not learn whether protected columns left the gateway
transformed or in the clear.</t>

<t>Second, a receipt set only covers accesses that produced receipts. A
client that reaches the data source without the gateway produces no
receipt. The receipt chain does not reveal this. Hash chains detect
removal and reordering of records that exist. They are silent about
records that were never created. Completeness needs a second account of
activity. That account comes from a party other than the gateway: the
data source.</t>

<t>This document defines two evidence structures for these gaps.</t>

<t><list style="symbols">
  <t>Transformation Evidence (<xref target="transformation-evidence"/>): a statement bound
to one disclosure. It names which classes of values were transformed,
by which action, and in what count. It never carries the values.</t>
  <t>Coverage Reconciliation (<xref target="coverage-reconciliation"/>): a procedure and a
signed result. It compares source activity snapshots at the window
bounds with the receipt set for that window. It classifies each Item of
either account. Neither population is assumed complete. The operator
declares the correspondence (<xref target="cr-mapping"/>). The result names what was
matched, observed without a receipt, receipted without an observation,
excluded, or left undecided.</t>
</list></t>

<t>Both structures are payloads. They are meant to be Signed Statements on a
Transparency Service as in <xref target="RFC9943"/>. SCITT supplies append-only,
third-party-auditable registration. This document does not reinvent that.
This document defines no new receipt format, no policy evaluation
semantics, and no transparency mechanism.</t>

<t>Other individual drafts record signed decisions about automated access.
Farley <xref target="I-D.farley-acta-signed-receipts"/>, Marques
<xref target="I-D.marques-asqav-compliance-receipts"/>, and Chueayen
<xref target="I-D.chueayen-attestation-receipts"/> use Ed25519 <xref target="RFC8032"/> and JSON
Canonicalization <xref target="RFC8785"/>. Aylward <xref target="I-D.aylward-aiga-2"/> uses Ed25519
in a hybrid signature suite and does not specify JCS. None of those drafts
defines Transformation Evidence or Coverage Reconciliation.</t>

<section anchor="threat-model"><name>Threat model and applicability</name>

<t>The full account is in <xref target="security"/>. This subsection states the bound so a
reader meets it before the procedure.</t>

<t>The Gateway and the Data Source are often run by one party. That party can
suppress the source counters. A counter reset must fail the Window
(<xref target="cr-procedure"/>). It must not yield a clean report. The Mapping Profile
is written by the Gateway operator. It can absorb unreceipted activity or
exclude it. The defence is visibility: a digest-bound profile, reported
exclusions, and a stated standing for each bound. Digests reject unknown
prefixes. Issuer key compromise is a SCITT-layer problem. A truncated
receipt set still verifies internally; detecting the cut needs a quantity
from outside that file (<xref target="sec-completeness"/>).</t>

</section>
<section anchor="what-these-structures-do-not-claim"><name>What these structures do not claim</name>

<t>Both structures state the limits of their own evidence. Transformation
Evidence describes the disclosure surface. It does not claim a value is
unlearnable. It is the Issuer's signed assertion that a transformation
was applied, not proof that it was (<xref target="te-limits"/>). A Coverage
Reconciliation result that reports activity without a receipt is a
statement about absent evidence. It is not, and <bcp14>MUST NOT</bcp14> be presented as,
proof of intent or of a breach (<xref target="cr-semantics"/>).</t>

<t>Neither structure reports a bare pass. A reconciliation against an
operator-declared correspondence cannot be stronger than that declaration
(<xref target="cr-mapping"/>). An undecided outcome is reported as undecided. It is
not folded into a proportion.</t>

</section>
<section anchor="relationship-to-coverage-attestation"><name>Relationship to coverage attestation</name>

<t>A record can be intact and silent about what is missing. A report can be
complete and silent about what it examined. These are two failures. They
close in different places.</t>

<t>This document is about the first. It states what a mediator recorded. It
states what that record leaves open. A chain that verifies says nothing
about entries that were never written. The vocabulary here lets a record
say so in its own terms.</t>

<t>The second belongs to coverage attestation. An examination declares the
population it drew from. It names the basis for that population. It
accounts for every unit it did not examine. Work on that layer is under
way on this list.</t>

<t>The two compose in one direction. They substitute in neither. A coverage
attestation states what was examined. The structures here state what the
mediator recorded of it. An attestation over a mediated examination
inherits whatever the mediator's record leaves open. It inherits that
silently unless the record says so. That silence is the failure this
document names. The other way is no rescue either. A complete access
record over a population chosen after the results were known is an exact
record of a decided question.</t>

<t>Neither layer rescues the other. One artefact answers half of a two-part
question.</t>

</section>
</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>

<?line -18?>

<t>The following terms are used throughout:</t>

<dl>
  <dt>Data Source:</dt>
  <dd>
    <t>The system holding the data, with its own accounting of query or access
activity (for example, a database's statement statistics).</t>
  </dd>
  <dt>Gateway:</dt>
  <dd>
    <t>The component that mediates access between an automated client and a
Data Source, applies policy, transforms results, and emits receipts.</t>
  </dd>
  <dt>Disclosure:</dt>
  <dd>
    <t>A single delivery of data (possibly transformed) from the Gateway to a
client.</t>
  </dd>
  <dt>Receipt:</dt>
  <dd>
    <t>A signed record of a Disclosure produced by the Gateway. This document
is agnostic to the receipt format in use.</t>
  </dd>
  <dt>Protected Class:</dt>
  <dd>
    <t>A named category of values that policy subjects to transformation (for
example, "email", "national-id", "phone").</t>
  </dd>
  <dt>Window:</dt>
  <dd>
    <t>A time interval over which reconciliation is performed, bounded by two
snapshots of the Data Source's activity counters. Both bounds are stamped by
the Data Source; whether a Receipt falls inside them is a question about a
second clock, the Gateway's (<xref target="cr-procedure"/>).</t>
  </dd>
  <dt>Mapping Profile:</dt>
  <dd>
    <t>A versioned statement, declared by the operator, of the correspondence
expected between one client-level operation and the source-level activity
it produces — including the bound on that multiplicity, the clock source on
each side and the skew bound between them, and the rules by which activity
is excluded from comparison. A Mapping Profile is a
declaration about a deployment, not a measurement performed by the
Gateway (<xref target="cr-mapping"/>).</t>
  </dd>
  <dt>Item:</dt>
  <dd>
    <t>One unit the reconciliation procedure classifies. On the source side,
one snapshot entry whose pattern counter increased in the Window — one
pattern, not one (pattern, Data Object) pair. On the receipt side, one
Receipt that names a Data Object the snapshots do not account for.
Counting each (pattern, Data Object) pair as an Item changes
<spanx style="verb">observed-without-receipt</spanx>.</t>
  </dd>
  <dt>Data Object:</dt>
  <dd>
    <t>A named target of source activity or of a Receipt. In the shipped
reconciler this is a table (or equivalent schema object), not a column.
The result records these as <spanx style="verb">objects</spanx> on an Item.</t>
  </dd>
  <dt>Consumer:</dt>
  <dd>
    <t>A party that reads Transformation Evidence or a Coverage Reconciliation
result and presents it to a human or to another system. This document
uses Consumer for that role.</t>
  </dd>
  <dt>Reconciler:</dt>
  <dd>
    <t>The party that performs Coverage Reconciliation and produces the result
statement. This document uses Reconciler for that role.</t>
  </dd>
  <dt>Protocol-defined:</dt>
  <dd>
    <t>A standing this document itself assigns to a bound. Example: the
invalid-window rule. It is not a measurement.</t>
  </dd>
  <dt>Measured:</dt>
  <dd>
    <t>A standing a bound has when it was obtained by observation of the
deployment. It is not operator-declared and not assigned by this
document.</t>
  </dd>
  <dt>Client-level operation:</dt>
  <dd>
    <t>One Disclosure, or one client request as seen by the Gateway.</t>
  </dd>
  <dt>Source-level statement:</dt>
  <dd>
    <t>One increment of a Data Source activity counter. That is one snapshot
entry for one pattern. It is not interchangeable with a Client-level
operation.</t>
  </dd>
  <dt>Gateway operator:</dt>
  <dd>
    <t>The party that operates the Gateway.</t>
  </dd>
  <dt>Data Source operator:</dt>
  <dd>
    <t>The party that operates the Data Source. This document does not use
"the operator" without saying which. Where both are the same party,
<xref target="security"/> states the limit.</t>
  </dd>
  <dt>Issuer:</dt>
  <dd>
    <t>In the sense of <xref target="RFC9943"/>: the party that signs a Signed Statement.
For Transformation Evidence that is the Gateway operator. For a
Coverage Reconciliation result that is the Reconciler.</t>
  </dd>
  <dt>Verifier:</dt>
  <dd>
    <t>A party that checks a signature, a digest, or a Transparency Service
receipt. This document uses the term once, for independent checking of
a disclosed result against the Issuer's Transformation Evidence
assertion (<xref target="te-limits"/>).</t>
  </dd>
</dl>

</section>
<section anchor="transformation-evidence"><name>Transformation Evidence</name>

<section anchor="purpose"><name>Purpose</name>

<t>Transformation Evidence answers, for one Disclosure: which Protected
Classes were transformed in the disclosed result, by which action, and in
what count. It exists so that the transformation claim is a first-class,
signed, registrable artifact rather than prose in an operator's
documentation.</t>

</section>
<section anchor="te-structure"><name>Structure</name>

<t>Transformation Evidence is a JSON object with the following members:</t>

<dl>
  <dt><spanx style="verb">v</spanx>:</dt>
  <dd>
    <t>Structure version string. For this document: <spanx style="verb">transformation-evidence/1</spanx>.</t>
  </dd>
  <dt><spanx style="verb">disclosure</spanx>:</dt>
  <dd>
    <t>A digest binding this evidence to exactly one Disclosure, computed over
the receipt for that Disclosure (or, where the receipt format defines a
canonical record hash, that hash). Digest form is defined in
<xref target="digests"/>.</t>
  </dd>
  <dt><spanx style="verb">request</spanx>:</dt>
  <dd>
    <t>A digest of the request that produced the Disclosure. The digest of the
request, never the request text: query text can itself contain protected
values.</t>
  </dd>
  <dt><spanx style="verb">policy</spanx>:</dt>
  <dd>
    <t>An object with <spanx style="verb">id</spanx> (an identifier of the policy version applied) and
<spanx style="verb">decision</spanx> (the policy outcome under which disclosure proceeded).</t>
  </dd>
  <dt><spanx style="verb">classes</spanx>:</dt>
  <dd>
    <t>An array of objects, one per Protected Class that the applied policy
recognizes and that occurred in the disclosed result, each with:
</t>

    <dl>
      <dt><spanx style="verb">class</spanx>:</dt>
      <dd>
        <t>The Protected Class name, as named by the policy.</t>
      </dd>
      <dt><spanx style="verb">action</spanx>:</dt>
      <dd>
        <t>One of <spanx style="verb">mask</spanx>, <spanx style="verb">redact</spanx>, <spanx style="verb">tokenize</spanx>, <spanx style="verb">truncate</spanx>, or <spanx style="verb">none</spanx>. The value
<spanx style="verb">none</spanx> states that the class occurred and was disclosed
untransformed — an honest statement some deployments need to make.</t>
      </dd>
      <dt><spanx style="verb">count</spanx>:</dt>
      <dd>
        <t>The number of values of this class in the disclosed result to which
the action was applied.</t>
      </dd>
    </dl>
  </dd>
</dl>

<t>The structure <bcp14>MUST NOT</bcp14> carry data values, transformed or otherwise. Only
class names, action names, counts, digests, and identifiers appear. An
implementation encountering a value in a field defined here <bcp14>MUST</bcp14> reject
the structure.</t>

</section>
<section anchor="digests"><name>Serialization and digests</name>

<t>For digesting and signing, the structure is serialized with the JSON
Canonicalization Scheme <xref target="RFC8785"/>. Digests in this document are SHA-256
and are written as strings prefixed with <spanx style="verb">sha256:</spanx> followed by lowercase
hexadecimal. Future documents may register alternative digest prefixes;
an implementation <bcp14>MUST</bcp14> reject a digest whose prefix it does not
recognize rather than guessing.</t>

<t>A CBOR/COSE serialization <xref target="RFC9052"/> of the same data model is expected
to be specified once the JSON model has received review; nothing in the
model depends on JSON specifically.</t>

</section>
<section anchor="te-limits"><name>What Transformation Evidence does not prove</name>

<t>Transformation Evidence describes the disclosure surface of one result.
It does not state that a protected value is unlearnable by the client.
Request languages can permit predicates over protected columns. An allowed
request can then answer questions about a masked value. The value itself
is never disclosed. A result-count of one versus zero is one bit. The
evidence for such a Disclosure is still accurate. The value was
transformed in the result. The client may still have learned something.</t>

<t>Consumers <bcp14>MUST NOT</bcp14> present Transformation Evidence as proof of
non-exposure. Nor is it proof that the transformation was applied: the
payload is a signed assertion by the Issuer that it was. A Verifier may
check the disclosed bytes against that assertion. Until then, the
evidence is what the pinned Issuer asserted. Where the Issuer is the
Gateway that performed the transformation, the assertion is self-attested.
A Consumer who treats it as verified has dropped the Issuer from the
trust statement. Nothing replaces that Issuer. A deployment that needs a
class to be unlearnable must enforce that in policy. It can refuse the
objects that carry the class. No evidence structure substitutes for that.</t>

<t>The <spanx style="verb">classes</spanx> array is bounded by what the applied policy recognizes. A
value belonging to a class the policy does not name is not counted. The
absence of a class from the array is therefore a statement about the
policy's vocabulary as much as about the data, and <bcp14>MUST</bcp14> be read that way.</t>

</section>
</section>
<section anchor="coverage-reconciliation"><name>Coverage Reconciliation</name>

<section anchor="purpose-1"><name>Purpose</name>

<t>Coverage Reconciliation answers, for one Window: did the Data Source's
own accounting record activity for which no Receipt exists? It is the
mechanism by which "the gateway was bypassed" or "the receipt sink
failed" becomes detectable, rather than invisible.</t>

<t>The essential property is that the two accounts being compared originate
from different components: the receipt set from the Gateway, the activity
counters from the Data Source. A Gateway cannot make bypassed activity
disappear from an account it does not produce. Where those components
share one operator, that separation is administrative. The same-operator
limit is in <xref target="security"/>.</t>

</section>
<section anchor="cr-snapshots"><name>Activity snapshots</name>

<t>A snapshot is a JSON object capturing the Data Source's cumulative
activity counters at a point in time:</t>

<dl>
  <dt><spanx style="verb">v</spanx>:</dt>
  <dd>
    <t>Snapshot version string. For this document: <spanx style="verb">activity-snapshot/1</spanx>.</t>
  </dd>
  <dt><spanx style="verb">ts</spanx>:</dt>
  <dd>
    <t>The time the snapshot was taken (ISO 8601).</t>
  </dd>
  <dt><spanx style="verb">source</spanx>:</dt>
  <dd>
    <t>An identifier of the Data Source and the accounting scope within it
(for example, the database role whose activity is counted). Both
snapshots of a Window <bcp14>MUST</bcp14> carry the same <spanx style="verb">source</spanx>; a mismatch
invalidates the Window.</t>
  </dd>
  <dt><spanx style="verb">entries</spanx>:</dt>
  <dd>
    <t>An array of objects, one per activity pattern the source's accounting
distinguishes, each with:
</t>

    <dl>
      <dt><spanx style="verb">pattern</spanx>:</dt>
      <dd>
        <t>A digest of the normalized activity pattern (for example, a
normalized statement with constants removed). The digest, not
necessarily the text: pattern text can embed protected values and
schema detail. Deployments <bcp14>MAY</bcp14> retain pattern text privately for
diagnosis; only the digest is required here.</t>
      </dd>
      <dt><spanx style="verb">count</spanx>:</dt>
      <dd>
        <t>The cumulative counter value for this pattern at <spanx style="verb">ts</spanx>.</t>
      </dd>
    </dl>
  </dd>
</dl>

</section>
<section anchor="cr-procedure"><name>Reconciliation procedure</name>

<t>Given a start snapshot, an end snapshot, and the receipt set for the
Window, a reconciler proceeds as follows.</t>

<t>Window validity is checked first. The two snapshots <bcp14>MUST</bcp14> carry the same
<spanx style="verb">v</spanx> and <spanx style="verb">source</spanx>, the end <spanx style="verb">ts</spanx> <bcp14>MUST</bcp14> be later than the start <spanx style="verb">ts</spanx>, and no
pattern's counter may be lower at the end than at the start. A counter
regression means the source's accounting was reset or altered inside the
Window; the Window is then unreliable, and the reconciler <bcp14>MUST</bcp14> report
failure for the Window as a whole rather than reconciling the surviving
patterns. An attacker who can reset counters must gain an error, not a
clean report. Why a reset fails the Window, rather than dropping the
reset patterns, is a same-operator concern (<xref target="security"/>).</t>

<t>Window membership is itself a bound. It is decided across two clocks. The
snapshot timestamps are taken by the Data Source. A Receipt's timestamp is
written by the Gateway. An exact comparison between them fails in one
direction. A Gateway clock that trails the Data Source moves a Receipt
out of the Window. The object that Receipt names then looks like activity
with no Receipt. That outcome is the one whose semantics name gateway
bypass (<xref target="cr-semantics"/>). A clock difference of seconds can produce the
accusation. No real gap is required. The measured case was three seconds
(<xref target="implementation-status"/>). The procedure sets no floor. A smaller
offset is harder for a reader to suspect. The Mapping Profile states the
skew bound (<xref target="cr-mapping"/>).</t>

<t>A Mapping Profile therefore declares the clock source on each side and the skew
bound between them, as it declares multiplicity (<xref target="cr-mapping"/>), and both are
covered by the profile digest as every other part of it is. Where the bound is
undeclared, the rule below applies and the affected items are <spanx style="verb">indeterminate</spanx>
rather than absent evidence. Where it is declared and a Receipt falls further
outside the Window than the bound allows, the boundary does not explain it: the
item takes the outcome it would have had, and a reconciler <bcp14>MUST</bcp14> report which
bound it applied to reach that.</t>

<t>For each pattern whose counter increased during the Window, the
reconciler attributes the pattern to the data objects it touches and
checks whether any Receipt in the Window names those objects. Matching is
per pattern and per data object, not per call count: one client-level
request may legitimately produce more than one source-level statement, so
call counts and receipt counts <bcp14>MUST NOT</bcp14> be compared one-to-one. A pattern
whose target objects cannot be determined <bcp14>MUST NOT</bcp14> be silently ignored; it
receives the <spanx style="verb">indeterminate</spanx> outcome below.</t>

<t>The comparison is between two populations — source-level activity and
Receipts — and neither population is assumed complete. Each Item in either
population receives exactly one of the following outcomes. The result
statement names these outcomes as fields (<xref target="cr-result"/>):</t>

<dl>
  <dt><spanx style="verb">matched</spanx>:</dt>
  <dd>
    <t>The item corresponds to an item in the other population within the
bounds of the applicable Mapping Profile (<xref target="cr-mapping"/>), and within the
Window. The profile's two kinds of bound do not act alike here: a
multiplicity bound admits items to this outcome, and the skew bound does
not. A Receipt outside the Window is never <spanx style="verb">matched</spanx>, however small the
declared skew — the bound qualifies how far the boundary can be trusted, not
where the boundary is.</t>
  </dd>
  <dt><spanx style="verb">observed-without-receipt</spanx>:</dt>
  <dd>
    <t>The Data Source recorded activity against an object that no Receipt in
the Window names.</t>
  </dd>
  <dt><spanx style="verb">receipted-without-observation</spanx>:</dt>
  <dd>
    <t>A Receipt in the Window names an object for which the Data Source's
counters record no activity.</t>
  </dd>
  <dt><spanx style="verb">excluded</spanx>:</dt>
  <dd>
    <t>The item was removed from comparison before matching by a rule stated in
the Mapping Profile (<xref target="cr-exclusions"/>).</t>
  </dd>
  <dt><spanx style="verb">indeterminate</spanx>:</dt>
  <dd>
    <t>The evidence or the Mapping Profile does not determine an outcome — the
pattern's objects could not be attributed, a required multiplicity or skew
bound is undeclared, the item's only naming Receipt falls outside the Window,
or the Window's evidence is insufficient to decide.</t>
  </dd>
</dl>

<t>An implementation <bcp14>MUST NOT</bcp14> report an item as <spanx style="verb">matched</spanx> when the outcome is
<spanx style="verb">indeterminate</spanx>; the absence of a decision is not a decision. In
particular, where a Mapping Profile does not declare the multiplicity bound
that the comparison requires, the affected items are <spanx style="verb">indeterminate</spanx> and
not clean coverage.</t>

<t>The same rule binds the temporal bound, in the opposite direction. Where every
object an item leaves unaccounted for is named by a Receipt that falls outside
the Window, the item is <spanx style="verb">indeterminate</spanx>, and an implementation <bcp14>MUST NOT</bcp14> report
it as <spanx style="verb">observed-without-receipt</spanx>. A reconciler cannot distinguish a Gateway
clock that trails the Data Source from a Receipt written late, and reporting
absent evidence asserts a distinction it did not make. An item that leaves even
one object named by no Receipt at all is not affected by this rule: that is a
genuine absence, and a neighbouring object's clock does not make it
undecidable.</t>

<t><spanx style="verb">indeterminate</spanx> here is not a weaker pass. The comparison did not come out
clean, and a result statement <bcp14>MUST</bcp14> carry the outcome and the offset that
produced it. What the implementation is forbidden to do is state the cause.</t>

<t>A reconciliation with no <spanx style="verb">observed-without-receipt</spanx> items establishes that
each observed source-level item is attributable to a Receipt naming the
same object, under the declared correspondence. It does not establish that
every source-level statement was itself receipted, and a result <bcp14>MUST NOT</bcp14> be
stated in terms that assert it. Where one Receipt naming an object clears
an unbounded number of further statements against that object inside the
Window, the procedure has established object attribution and nothing
stronger.</t>

</section>
<section anchor="cr-mapping"><name>Mapping profiles</name>

<t>One Client-level operation may produce several Source-level statements. The
multiplicity is not a property of the Gateway. It is a property of the
deployment. A pooler or an object-relational mapper can produce it. A
Gateway cannot measure a correspondence it does not produce.</t>

<t>A Mapping Profile is therefore declared by the operator. For each
Client-level operation it covers, it states the expected source-level
patterns. It states the multiplicity bound. It states the exclusion rules
(<xref target="cr-exclusions"/>). It carries a version identifier. It is serialized
and digested as in <xref target="digests"/>.</t>

<t>The profile also declares the temporal correspondence. The operator knows
it. The Gateway cannot measure it. It names the clock on each side. The
Data Source stamps snapshots. The Gateway stamps Receipts. It states the
skew bound between them. Both are operator statements. A claim that both
sides read one clock, so the bound is zero, is still a declaration. One
clock read twice is not read at the same instant. Whether the residue
matters is a judgement about the deployment. The rule below forbids
presenting that as measured. This document also refuses a third case:
zero because nobody looked, declared by nobody, and read as agreement.</t>

<t>The temporal correspondence is declared in three fields under a <spanx style="verb">clocks</spanx>
member. The encoding is given so another specification can adopt the same
shape:</t>

<dl>
  <dt><spanx style="verb">clocks.observation</spanx>:</dt>
  <dd>
    <t>String. An identifier for the clock that stamps the activity snapshots — the
Data Source side.</t>
  </dd>
  <dt><spanx style="verb">clocks.receipt</spanx>:</dt>
  <dd>
    <t>String. An identifier for the clock that stamps Receipts — the Gateway side.</t>
  </dd>
  <dt><spanx style="verb">clocks.skew</spanx>:</dt>
  <dd>
    <t>Duration. The bound on how far those two clocks may differ. A duration is a
decimal integer with a unit suffix of <spanx style="verb">ms</spanx>, <spanx style="verb">s</spanx>, <spanx style="verb">m</spanx>, or <spanx style="verb">h</spanx>, or a bare
decimal integer read as milliseconds: <spanx style="verb">500ms</spanx>, <spanx style="verb">5s</spanx>, <spanx style="verb">2m</spanx>, <spanx style="verb">1h</spanx>, <spanx style="verb">5000</spanx>. A
duration that does not parse is an error, not a default.</t>
  </dd>
</dl>

<t>An implementation <bcp14>MUST</bcp14> reject a <spanx style="verb">clocks</spanx> member carrying any key other than
these three, and <bcp14>SHOULD</bcp14> name the key it rejected. A silently ignored fourth
field declares less than its author believes. The gap shows up as an
outcome the operator cannot account for.</t>

<t>A declaration that both sides read one clock writes all three fields: the two
identifiers may be the same string, and <spanx style="verb">skew</spanx> may be <spanx style="verb">0ms</spanx>. A declared zero is
a statement someone is accountable for; an assumed zero is the condition the
rule below forbids.</t>

<t>Where the skew bound is declared twice — in the profile and through an
interface of the reconciler's own — an implementation <bcp14>MUST NOT</bcp14> select between
them. Two declarations that parse to the same number of milliseconds are one
declaration and proceed. Two that do not are an operator error and <bcp14>MUST</bcp14> fail,
because which declaration prevailed would not be visible on the result, and a
bound whose origin cannot be read from the result is not usefully declared at
all.</t>

<t>A reconciliation result computed against a Mapping Profile <bcp14>MUST</bcp14> bind that
profile's digest, and <bcp14>MUST</bcp14> state, for each bound it relies on, whether the
bound is protocol-defined, measured, operator-declared, or undeclared. A
result <bcp14>MUST NOT</bcp14> present an operator-declared bound as a measured one.</t>

<t>The consequence is a ceiling. A coverage outcome against a declared
correspondence cannot be stronger than the declaration. Where the
declaration is an operator statement, the outcome inherits that standing.
The result statement must show it. The same discipline applies to absent
evidence in <xref target="cr-semantics"/>. A declaration presented as a measurement is
an overclaim. Truth of the declaration does not change that.</t>

<t>Where a required multiplicity bound is undeclared, the affected items are
<spanx style="verb">indeterminate</spanx> (<xref target="cr-procedure"/>). An implementation <bcp14>MUST NOT</bcp14> substitute a
default bound of one; a one-to-one rule reports false
<spanx style="verb">observed-without-receipt</spanx> items on any deployment with a pooler in front of
the Data Source, and a silent default would make that error look like a
finding.</t>

<t>An undeclared skew bound is treated the same way, and for the same reason. An
implementation <bcp14>MUST NOT</bcp14> substitute a default of zero: zero asserts that the two
clocks agree, which is the assumption that produces the false accusation this
document now guards against. It <bcp14>MUST NOT</bcp14> substitute a bound of its own choosing
either, which would decide the operator's question with a number the operator
never saw. Absent the declaration, items whose only naming Receipt sits outside the
Window are <spanx style="verb">indeterminate</spanx> and the result reports the offset. The reader
compares that offset with clocks the reader knows. The Reconciler does
not.</t>

<t>An implementation <bcp14>MAY</bcp14>, absent a declared bound, decline to offer the boundary
as the explanation for an offset larger than the Window itself, on the ground
that a boundary artefact cannot exceed the interval it bounds. This is a
reporting choice about what an implementation is willing to suggest, not a
change of outcome: the item is <spanx style="verb">indeterminate</spanx> either way. The
twenty-three hour case that motivated this choice is in
<xref target="implementation-status"/>.</t>

</section>
<section anchor="cr-exclusions"><name>Exclusions</name>

<t>Exclusion differs from the other outcomes in kind. <spanx style="verb">matched</spanx>,
<spanx style="verb">observed-without-receipt</spanx>, <spanx style="verb">receipted-without-observation</spanx>, and
<spanx style="verb">indeterminate</spanx> are produced by the comparison. <spanx style="verb">excluded</spanx> is a decision
taken before it. It decides what will be compared at all. A reconciliation
can be made to come out clean through this outcome. It therefore needs
the tightest reporting rules of the five.</t>

<t>Exclusion rules <bcp14>MUST</bcp14> be stated in the Mapping Profile and are therefore
covered by its digest. A result statement <bcp14>MUST</bcp14> report the count of excluded
items and the rule that excluded each of them. An implementation <bcp14>MUST NOT</bcp14>
exclude items by a rule that is not in the profile.</t>

<t>Without these constraints a clean result and a result cleaned by
exclusion look the same. The digest that pins what was compared then
misses the step that decided what was compared. Session or catalog
housekeeping is a legitimate exclusion. Exclusions need not be rare.
They must be visible and pinned.</t>

<t>Pinning is easy to read as more than it is. The rule identifier makes the
exclusion reproducible. A reader sees which rule removed each Item. The
reader can check that the rule was in the profile the digest covers. That
does not establish that the exclusion was correct. A housekeeping rule
and a rule that hides the auditor's target pin the same way. They verify
the same way. The mechanism reproduces the decision. It does not judge
it.
Consumers <bcp14>MUST NOT</bcp14> read a pinned exclusion as a justified one, and a result
statement <bcp14>MUST NOT</bcp14> present the digest as evidence that the exclusions were
appropriate. The same distinction holds between a declared bound and a
measured one (<xref target="cr-mapping"/>). Here it applies to what is compared at
all.</t>

</section>
<section anchor="cr-result"><name>Result statement</name>

<t>The reconciliation result is a JSON object:</t>

<dl>
  <dt><spanx style="verb">v</spanx>:</dt>
  <dd>
    <t><spanx style="verb">coverage-reconciliation/2</spanx>. The outcome vocabulary of
<spanx style="verb">coverage-reconciliation/1</spanx> is not a subset of this one: a <spanx style="verb">/1</spanx> result
reporting <spanx style="verb">covered</spanx> asserts more than the procedure establishes, and is
not re-expressible here. A consumer <bcp14>MUST NOT</bcp14> read a <spanx style="verb">/1</spanx> result as a <spanx style="verb">/2</spanx>
result.</t>
  </dd>
  <dt><spanx style="verb">window</spanx>:</dt>
  <dd>
    <t>Object with <spanx style="verb">start</spanx> and <spanx style="verb">end</spanx> (the two snapshot <spanx style="verb">ts</spanx> values).</t>
  </dd>
  <dt><spanx style="verb">source</spanx>:</dt>
  <dd>
    <t>The common <spanx style="verb">source</spanx> identifier of the two snapshots.</t>
  </dd>
  <dt><spanx style="verb">snapshots</spanx>:</dt>
  <dd>
    <t>Object with <spanx style="verb">start</spanx> and <spanx style="verb">end</spanx> digests of the two snapshot structures.</t>
  </dd>
  <dt><spanx style="verb">receipts</spanx>:</dt>
  <dd>
    <t>A digest identifying the receipt set that was compared (for chained
receipt formats, the chain head digest and the sequence range are
<bcp14>RECOMMENDED</bcp14> as the identifying material).</t>
  </dd>
  <dt/>
  <dd>
    <t>A result <bcp14>SHOULD</bcp14> state whether that identifying material was obtained
independently of the Issuer or read from the receipt set itself. The two
are not equivalent evidence, and a Consumer cannot tell them apart from
the digest (<xref target="sec-completeness"/>).</t>
  </dd>
  <dt><spanx style="verb">profile</spanx>:</dt>
  <dd>
    <t>The digest and version identifier of the Mapping Profile the comparison
was computed against (<xref target="cr-mapping"/>), or <spanx style="verb">null</spanx> when none was declared.
When <spanx style="verb">null</spanx>, every item whose outcome depends on a multiplicity bound is
<spanx style="verb">indeterminate</spanx>, and so is every item whose only naming Receipt falls
outside the Window: with no profile there is no declared skew bound either.</t>
  </dd>
  <dt><spanx style="verb">bounds</spanx>:</dt>
  <dd>
    <t>For each bound the comparison relied on, its source: <spanx style="verb">protocol-defined</spanx>,
<spanx style="verb">measured</spanx>, <spanx style="verb">operator-declared</spanx>, or <spanx style="verb">undeclared</spanx>. A result whose bounds
are <spanx style="verb">operator-declared</spanx> states an outcome of that standing, no stronger.</t>
  </dd>
  <dt><spanx style="verb">outcome</spanx>:</dt>
  <dd>
    <t><spanx style="verb">invalid-window</spanx> when the Window is unreliable (<xref target="cr-procedure"/>);
otherwise <spanx style="verb">no-exceptions</spanx> when every item is <spanx style="verb">matched</spanx> or <spanx style="verb">excluded</spanx>, and
<spanx style="verb">exceptions</spanx> when any item is <spanx style="verb">observed-without-receipt</spanx>,
<spanx style="verb">receipted-without-observation</spanx>, or <spanx style="verb">indeterminate</spanx>.</t>
  </dd>
  <dt/>
  <dd>
    <t>The name states what the comparison left open, not what it proved. A
result <bcp14>MUST NOT</bcp14> carry an outcome name that asserts coverage of the source
activity, and <spanx style="verb">no-exceptions</spanx> is not such an assertion: it says the
comparison produced no open item under the declared correspondence, which
is bounded by that correspondence (<xref target="cr-mapping"/>) and by the fact that
neither population is assumed complete.</t>
  </dd>
  <dt><spanx style="verb">items</spanx>:</dt>
  <dd>
    <t>The list of items whose outcome is not <spanx style="verb">matched</spanx>, each with its outcome
and, for <spanx style="verb">excluded</spanx>, the profile rule that excluded it. Pattern digests,
not pattern text, for the reasons in <xref target="cr-snapshots"/>.</t>
  </dd>
  <dt><spanx style="verb">counts</spanx>:</dt>
  <dd>
    <t>The number of items in each outcome, including <spanx style="verb">matched</spanx> and <spanx style="verb">excluded</spanx>.
An implementation <bcp14>MUST NOT</bcp14> aggregate <spanx style="verb">indeterminate</spanx> items into a
proportion of coverage: an outcome that does not decide cannot be
averaged into one that does, and reporting it as a percentage restores
precisely the overclaim this vocabulary exists to prevent.</t>
  </dd>
  <dt/>
  <dd>
    <t>A result carries <spanx style="verb">matched</spanx> as a count while carrying every other outcome as
an accounting, and the asymmetry is deliberate. A count a reader cannot
reconstruct is an assertion about a population the producer alone can see.
This one is not that: the result digests both activity snapshots and the
receipt set it compared (<xref target="cr-snapshots"/>, <xref target="digests"/>), and a reader holding
those inputs recomputes the matched set. The size is not an assertion.
The count is a convenience over material the reader already has.</t>
  </dd>
  <dt/>
  <dd>
    <t>That property fails in one named case. The identifying material for the
receipt set may be read from the receipt set itself
(<xref target="sec-completeness"/>). A reader then recomputes the Issuer's answer.
The digest checks transcription, not completeness. The <spanx style="verb">matched</spanx> count
inherits that standing.</t>
  </dd>
</dl>

<t>The result statement is serialized and digested as in <xref target="digests"/> and is
intended to be signed by the reconciling party and registered
(<xref target="scitt"/>). The reconciler <bcp14>SHOULD</bcp14> be operationally independent of the
Gateway; where it is not, registration on a Transparency Service at
least makes the result's existence and timing third-party-visible.</t>

</section>
<section anchor="cr-semantics"><name>Semantics of the outcomes</name>

<t>An <spanx style="verb">observed-without-receipt</spanx> outcome states that evidence is absent. It
does not state why. Gateway bypass produces it. Receipt sink failure
produces it. Accounting scope mismatch produces it. A Receipt that names
the object but falls outside the Window on the two clocks also produced
it. <xref target="cr-procedure"/> therefore removes that case from this outcome. An
earlier revision listed the mirror condition under
<spanx style="verb">receipted-without-observation</spanx> only. This text names both directions so
the omission is visible. A result statement <bcp14>MUST NOT</bcp14>
label such activity as an intrusion, a breach, or an intentional act, and
consumers <bcp14>MUST NOT</bcp14> present it as such. The mechanism surfaces the
condition. Cause is investigation, not reconciliation.</t>

<t>A <spanx style="verb">receipted-without-observation</spanx> outcome is likewise a statement about
evidence. It is not by itself a fault. A counter reset at the Window
boundary produces the same shape. So does an intermediary that collapses
statements. So does an increment outside the snapshot pair. A receipt
that describes activity that did not occur produces it too. An implementation <bcp14>MAY</bcp14> treat it as a
failure condition under a policy of its own; this document does not define
it as one, because the shape does not distinguish the cases.</t>

<t>An <spanx style="verb">indeterminate</spanx> outcome is a result, not a degraded pass. It <bcp14>MUST NOT</bcp14> be
resolved by assumption in either direction: neither counted as matched
because nothing contradicts it, nor reported as missing activity because
nothing confirms it. An implementation under pressure to produce a single
number will be tempted to fold <spanx style="verb">indeterminate</spanx> into a coverage proportion;
that operation destroys the only property that distinguishes this
vocabulary from a bare pass, and <bcp14>MUST NOT</bcp14> be performed.</t>

<t>Verification of receipt signatures and chain integrity is out of scope
for reconciliation and is assumed to have happened first, under the rules
of the receipt format in use. Reconciliation compares an
already-verified receipt set against source accounting; it does not
re-verify.</t>

</section>
</section>
<section anchor="scitt"><name>Registration on a Transparency Service</name>

<t>Both structures defined here are payloads for Signed Statements in the
sense of <xref target="RFC9943"/>. The Issuer signs the serialized structure. For
Transformation Evidence that Issuer is the Gateway operator. For a
Coverage Reconciliation result that Issuer is the Reconciler. The Issuer
registers the Signed Statement on a Transparency Service. The SCITT
Receipt is proof of inclusion, at a position, in an append-only log. That
log is operated by a party other than the Issuer.</t>

<t>This layering is deliberate. The structures gain their audit value from
registration the Issuer cannot quietly rewrite. SCITT already defines
that place, its trust model, and its verification. This document defines
no countersignature, no anchoring, and no log format of its own. Digests
in this document bind evidence to receipts over the payload. The binding
survives registration. It is not over the envelope.</t>

</section>
<section anchor="security"><name>Security Considerations</name>

<dl>
  <dt>Same-operator collusion.</dt>
  <dd>
    <t>In many deployments the Gateway and the Data Source are operated by the
same party. Value against that party is reduced. An operator with
administrative access to the source accounting can suppress the
counters. The invalid-window rule (<xref target="cr-procedure"/>) turns a reset
into a visible failure. Registration (<xref target="scitt"/>) makes suppression of
already-issued results detectable. An operator who controls both
accounts and never registers is outside this mechanism. Assurance
against that operator needs an accounting path the operator cannot
write to. That is a deployment property, not a payload property.</t>
  </dd>
  <dt>Counter manipulation.</dt>
  <dd>
    <t>An attacker who can reset or rewind source counters could otherwise
hide activity between snapshots. The <bcp14>MUST</bcp14>-fail rule exists for this
case: a Window containing a regression is reported unreliable in its
entirety. Snapshot frequency bounds the exposure — shorter Windows
mean a reset costs the attacker a visible failure sooner.</t>
  </dd>
  <dt>Declared correspondence as an attack surface.</dt>
  <dd>
    <t>The Mapping Profile (<xref target="cr-mapping"/>) is written by the operator. It
decides what counts as a match. It decides what is excluded before
matching. A wider multiplicity bound can absorb unreceipted activity.
An added exclusion rule can remove it from comparison. This mechanism
does not defend against that operator. Nothing computed against a
declaration can. It makes the declaration part of the evidence. The
profile is versioned. Its digest is bound into the result. Exclusions
are reported with count and rule. The result states that its bounds are
operator-declared. A reader who trusts the result sees that dependency.
Registration (<xref target="scitt"/>) makes the sequence of declared profiles
third-party-visible. A silently edited profile would lose that.</t>
  </dd>
  <dt>Digest agility.</dt>
  <dd>
    <t>Digests are prefixed (<xref target="digests"/>); an implementation <bcp14>MUST</bcp14> reject
unknown prefixes. Accepting an unknown prefix as an opaque match would
let an attacker route around comparison.</t>
  </dd>
  <dt>Signature and key compromise.</dt>
  <dd>
    <t>Signing and registration are inherited from the SCITT layer; key
management, revocation, and the consequences of Issuer key compromise
are governed there, not here. A compromised Issuer key voids the
evidentiary value of statements under that key, as it does for any
signed artifact.</t>
  </dd>
</dl>

<section anchor="sec-completeness"><name>Receipt set completeness and where the expected count comes from</name>

<t>A receipt set whose most recent entries have been removed is internally
consistent. Every remaining link verifies. Every signature checks. The
file does not state how many entries it should have contained.
Reconciliation does not close this. It compares the receipt set against
source accounting. An operator who can truncate one can generally
suppress the other. Detecting the removal needs a count, a head digest,
or an equivalent quantity. That quantity must not come from the
truncated file.</t>

<t>What matters to a Consumer is where that material arrives from. The two
constructions differ in a way a digest does not reveal.</t>

<t>An implementation may accept the expected quantity as a verifier input.
The check is then only as trustworthy as that input. An auditor who holds
only the receipt file has no source for it except the Issuer. That is
the party under examination. The verification is real. Its independence
is supplied by whoever ran it. It is not a property of the artifacts.</t>

<t>An implementation may instead carry the quantity inside the signed
material. The set then testifies to its own extent. That closes the first
gap. The cost should be stated. The Issuer is signing an assertion about
a population it has not finished producing. A per-entry counter
constrains only the entries that were kept. A sealed total is also
required. A running count derived from the sequence number it accompanies
adds no information. It restates the position of a present record. It
says nothing about an absent one. The useful property is a sealed
quantity over a held set. It is not a per-record decoration.</t>

<t>This document requires neither construction. It requires that a result
identifying a receipt set be readable as to which one it used. A Consumer
who cannot tell them apart will read an external pin as if the receipt
set had proved its own completeness. That is the strongest claim in this
area. It is the one least often actually made.</t>

</section>
</section>
<section anchor="privacy-considerations"><name>Privacy Considerations</name>

<t>Every structure in this document follows one rule. Evidence about
protected data must not itself become a disclosure channel.
Transformation Evidence carries class names, action names, and counts.
It never carries values. Request and pattern references are digests.
Query and pattern text can embed values and schema detail. Class names
and counts do reveal that a class was present, and in what quantity.
Deployments that treat even that as sensitive can keep the payloads
private. They can register only the digests. Third-party audit then
becomes a permissioned act.</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>This document requests registration of two media types and the creation
of two registries. Registrations follow <xref target="RFC6838"/>. Registry policy is
Specification Required as defined in <xref target="RFC8126"/>.</t>

<section anchor="media-type-applicationtransformation-evidencejson"><name>Media type: application/transformation-evidence+json</name>

<dl>
  <dt>Type name:</dt>
  <dd>
    <t>application</t>
  </dd>
  <dt>Subtype name:</dt>
  <dd>
    <t>transformation-evidence+json</t>
  </dd>
  <dt>Required parameters:</dt>
  <dd>
    <t>None.</t>
  </dd>
  <dt>Optional parameters:</dt>
  <dd>
    <t>None.</t>
  </dd>
  <dt>Encoding considerations:</dt>
  <dd>
    <t>8bit; binary UTF-8 JSON. For digesting and signing, the payload is
serialized with <xref target="RFC8785"/>.</t>
  </dd>
  <dt>Security considerations:</dt>
  <dd>
    <t>See <xref target="security"/> and <xref target="te-limits"/>. The payload <bcp14>MUST NOT</bcp14> carry data
values.</t>
  </dd>
  <dt>Interoperability considerations:</dt>
  <dd>
    <t>Implementations that do not recognize the <spanx style="verb">v</spanx> member <bcp14>MUST</bcp14> reject the
object.</t>
  </dd>
  <dt>Published specification:</dt>
  <dd>
    <t>This document, <xref target="te-structure"/>.</t>
  </dd>
  <dt>Applications that use this media type:</dt>
  <dd>
    <t>Policy gateways and auditors that record or verify a disclosure
transformation.</t>
  </dd>
  <dt>Fragment identifier considerations:</dt>
  <dd>
    <t>None.</t>
  </dd>
  <dt>Additional information:</dt>
  <dd>
    <t>Deprecated alias names for this type: none. Magic number(s): none.
File extension(s): none. Macintosh file type code(s): none.</t>
  </dd>
  <dt>Person and email address to contact for further information:</dt>
  <dd>
    <t>See the Authors' Addresses section of this document.</t>
  </dd>
  <dt>Intended usage:</dt>
  <dd>
    <t>COMMON</t>
  </dd>
  <dt>Restrictions on usage:</dt>
  <dd>
    <t>None.</t>
  </dd>
  <dt>Author:</dt>
  <dd>
    <t>See the Authors' Addresses section of this document.</t>
  </dd>
  <dt>Change controller:</dt>
  <dd>
    <t>IETF</t>
  </dd>
</dl>

</section>
<section anchor="media-type-applicationcoverage-reconciliationjson"><name>Media type: application/coverage-reconciliation+json</name>

<dl>
  <dt>Type name:</dt>
  <dd>
    <t>application</t>
  </dd>
  <dt>Subtype name:</dt>
  <dd>
    <t>coverage-reconciliation+json</t>
  </dd>
  <dt>Required parameters:</dt>
  <dd>
    <t>None.</t>
  </dd>
  <dt>Optional parameters:</dt>
  <dd>
    <t>None.</t>
  </dd>
  <dt>Encoding considerations:</dt>
  <dd>
    <t>8bit; binary UTF-8 JSON. For digesting and signing, the payload is
serialized with <xref target="RFC8785"/>.</t>
  </dd>
  <dt>Security considerations:</dt>
  <dd>
    <t>See <xref target="security"/> and <xref target="cr-semantics"/>.</t>
  </dd>
  <dt>Interoperability considerations:</dt>
  <dd>
    <t>A consumer <bcp14>MUST NOT</bcp14> read a <spanx style="verb">coverage-reconciliation/1</spanx> result as a
<spanx style="verb">/2</spanx> result (<xref target="cr-result"/>).</t>
  </dd>
  <dt>Published specification:</dt>
  <dd>
    <t>This document, <xref target="cr-result"/>.</t>
  </dd>
  <dt>Applications that use this media type:</dt>
  <dd>
    <t>Reconcilers and auditors that compare source activity with a receipt
set.</t>
  </dd>
  <dt>Fragment identifier considerations:</dt>
  <dd>
    <t>None.</t>
  </dd>
  <dt>Additional information:</dt>
  <dd>
    <t>Deprecated alias names for this type: none. Magic number(s): none.
File extension(s): none. Macintosh file type code(s): none.</t>
  </dd>
  <dt>Person and email address to contact for further information:</dt>
  <dd>
    <t>See the Authors' Addresses section of this document.</t>
  </dd>
  <dt>Intended usage:</dt>
  <dd>
    <t>COMMON</t>
  </dd>
  <dt>Restrictions on usage:</dt>
  <dd>
    <t>None.</t>
  </dd>
  <dt>Author:</dt>
  <dd>
    <t>See the Authors' Addresses section of this document.</t>
  </dd>
  <dt>Change controller:</dt>
  <dd>
    <t>IETF</t>
  </dd>
</dl>

</section>
<section anchor="transformation-actions-registry"><name>Transformation Actions registry</name>

<t>IANA is asked to create a new registry titled "Transformation Actions"
in a new "Disclosure Evidence" group.</t>

<dl>
  <dt>Registration policy:</dt>
  <dd>
    <t>Specification Required (<xref target="RFC8126"/>).</t>
  </dd>
  <dt>Registration template:</dt>
  <dd>
    <t>Action name (unique ASCII token); description; reference.</t>
  </dd>
</dl>

<t>Initial contents:</t>

<texttable>
      <ttcol align='left'>Action name</ttcol>
      <ttcol align='left'>Description</ttcol>
      <ttcol align='left'>Reference</ttcol>
      <c>mask</c>
      <c>Replace a value with a class-level placeholder</c>
      <c>This document, <xref target="te-structure"/></c>
      <c>redact</c>
      <c>Remove a value</c>
      <c>This document, <xref target="te-structure"/></c>
      <c>tokenize</c>
      <c>Replace a value with a stable token</c>
      <c>This document, <xref target="te-structure"/></c>
      <c>truncate</c>
      <c>Shorten a value</c>
      <c>This document, <xref target="te-structure"/></c>
      <c>none</c>
      <c>The class occurred and was disclosed untransformed</c>
      <c>This document, <xref target="te-structure"/></c>
</texttable>

</section>
<section anchor="coverage-reconciliation-outcomes-registry"><name>Coverage Reconciliation Outcomes registry</name>

<t>IANA is asked to create a new registry titled "Coverage Reconciliation
Outcomes" in the same "Disclosure Evidence" group.</t>

<dl>
  <dt>Registration policy:</dt>
  <dd>
    <t>Specification Required (<xref target="RFC8126"/>).</t>
  </dd>
  <dt>Registration template:</dt>
  <dd>
    <t>Outcome name (unique ASCII token); description; reference.</t>
  </dd>
</dl>

<t>Initial contents:</t>

<texttable>
      <ttcol align='left'>Outcome name</ttcol>
      <ttcol align='left'>Description</ttcol>
      <ttcol align='left'>Reference</ttcol>
      <c>matched</c>
      <c>The Item corresponds to an Item in the other population within the declared bounds</c>
      <c>This document, <xref target="cr-procedure"/></c>
      <c>observed-without-receipt</c>
      <c>The Data Source recorded activity against a Data Object that no Receipt in the Window names</c>
      <c>This document, <xref target="cr-procedure"/></c>
      <c>receipted-without-observation</c>
      <c>A Receipt in the Window names a Data Object for which the Data Source recorded no activity</c>
      <c>This document, <xref target="cr-procedure"/></c>
      <c>excluded</c>
      <c>The Item was removed from comparison by a Mapping Profile rule</c>
      <c>This document, <xref target="cr-exclusions"/></c>
      <c>indeterminate</c>
      <c>The evidence or the Mapping Profile does not determine an outcome</c>
      <c>This document, <xref target="cr-procedure"/></c>
      <c>invalid-window</c>
      <c>The Window is unreliable (counter regression or snapshot mismatch)</c>
      <c>This document, <xref target="cr-result"/></c>
</texttable>

</section>
</section>
<section anchor="implementation-status"><name>Implementation Status</name>

<t><em>This section is to be removed before publication as an RFC, per
<xref target="RFC7942"/>.</em></t>

<t>One implementation of both mechanisms exists: the Conarium gateway
(TypeScript, MIT license, <spanx style="verb">@conarium-ai/core</spanx> on npm). It has run at one
site since July 2026. Its receipts carry per-class masking counts as in
<xref target="transformation-evidence"/>. Its <spanx style="verb">conarium-reconcile</spanx> tool implements
<xref target="cr-procedure"/> against PostgreSQL statement statistics. The tool is a
single file. It has no dependency on the package. A third party can run
it without trusting the implementation under audit. Conformance test
vectors ship with the package.</t>

<t>The state below was measured against the published 0.2.38 package. It was
not read from the package documentation. It is now checked, not measured
once. Every revision of this section up to -04 described a tool that had
moved past it. Each time it claimed less than the code did. The
correction is at the end of this section. The failure is more instructive
than the current state.</t>

<t>As of 0.2.38 the tool emits the result statement of <xref target="cr-result"/> as
<spanx style="verb">coverage-reconciliation/2</spanx>, on a flag of its own. The <spanx style="verb">/1</spanx> body is unchanged
and still carries <spanx style="verb">conarium-reconcile/0.1</spanx>. The <spanx style="verb">/2</spanx> result carries
<spanx style="verb">profile</spanx>, <spanx style="verb">bounds</spanx>, <spanx style="verb">outcome</spanx>, <spanx style="verb">items</spanx>, and <spanx style="verb">counts</spanx> under the names used
here. It reads Mapping Profiles (<xref target="cr-mapping"/>), including the three
<spanx style="verb">clocks</spanx> fields.</t>

<t>The behaviour below was observed on one fixture: a Receipt naming the object,
timestamped three seconds before a two-hour Window, together with one
infrastructure statement.</t>

<t><list style="symbols">
  <t>With no profile, <spanx style="verb">profile</spanx> is <spanx style="verb">null</spanx>, all three entries in <spanx style="verb">bounds</spanx> are
<spanx style="verb">undeclared</spanx>, and both items are <spanx style="verb">indeterminate</spanx> — the data statement for
want of a declared skew bound, the infrastructure statement for want of a
declared exclusion rule. In the <spanx style="verb">/2</spanx> result the tool applies no exclusion
rule that is not in a profile, which is the requirement of
<xref target="cr-exclusions"/>. Its <spanx style="verb">/1</spanx> output still reports such statements under a
category of its own, decided by rules built into the tool; that output is
not a result statement in the sense of <xref target="cr-result"/> and does not claim to
be.</t>
  <t>With a profile declaring exclusions but no <spanx style="verb">clocks</spanx> member, the excluded item
carries the profile rule that removed it, <spanx style="verb">bounds.exclusion</spanx> is
<spanx style="verb">operator-declared</spanx>, and <spanx style="verb">bounds.skew</spanx> remains <spanx style="verb">undeclared</spanx>.</t>
  <t>With <spanx style="verb">clocks.skew</spanx> declared larger than the offset, <spanx style="verb">bounds.skew</spanx> is
<spanx style="verb">operator-declared</spanx> and the item remains <spanx style="verb">indeterminate</spanx>. A declaration does
not manufacture a match.</t>
  <t>With <spanx style="verb">clocks.skew</spanx> declared smaller than the offset, the same item becomes
<spanx style="verb">observed-without-receipt</spanx>. The declared bound reaches the comparison and not
only the report.</t>
  <t>A skew bound declared both in a profile and through the command line fails
unless the two parse to the same number of milliseconds; a <spanx style="verb">clocks</spanx> member
carrying a fourth key fails and names the key it rejected.</t>
</list></t>

<t>One gap remains. The tool's exit codes predate this vocabulary. They are
not a mapping of it. They were left unchanged on purpose. An exit code is
a compatibility contract. Renumbering them to match this document would
break installations. That would make a specification look implemented.
One code was added rather than renumbered. It is for the temporal
outcome. Existing callers do not notice it.</t>

<t>The gap that produced this section's own history is closed. The -04
revision carried four statements. They were accurate when written. They
were false within days. Each claimed less than the code did. No mechanism
here found them. A reader holding the document beside the tool's output
did. The -05 revision recorded that the test suite had no check against
this section. Until such a check existed, it said, read the section as a
claim about the date it was measured.</t>

<t>A check now runs this section instead of reading it. Every behavioural
statement above is bound to a run of the shipped tool. The fixture is
named in this document. Two directions are enforced. Every value a run
produced must appear in the sentence that states it. The number of
statements must equal the number of bound runs. A statement with no run
is unmeasured. A run with no statement is a dropped measurement. The
revision under test is derived from the repository. It is not named in
the check. A hard-coded revision is the same class of stale declaration
the check exists to catch.</t>

<t>The first thing it caught was the sentence in the paragraph above. From
the commit that added the check, -05's account of its own absence was
false. A posted draft cannot be edited. This revision is where the
correction has to live. A check whose first finding is the sentence
claiming it does not exist has shown the failure mode it was written for.</t>

<t>Two limits, stated rather than left to be found. The check pins the
behaviour statements. It does not pin the prose around them. A paragraph
can still go stale in a way nothing runs. A failure has two honest
resolutions. Change the code back. Or write the revision that says what
the code now does. Editing a posted draft is not one of them. The cost of
drift is then a document, not a diff.</t>

<t>A second check covers the conformance class rather than this document.
Every outcome the result statement can carry has a case that produces it.
Each independent ground for <spanx style="verb">indeterminate</spanx> has a case of its own. The
list of outcomes is read from the tool's own result. It is not restated
in the check. An outcome added to the vocabulary arrives there without a
reminder. It arrives failing until some case produces it. A conformance
class can lose coverage in silence. Nothing in a test set records what
was removed from it. A class that has lost coverage still passes.</t>

<t>Earlier revisions of this document, and releases of that implementation
up to 0.2.21, described a clean reconciliation as "covered". That word
asserted more than the procedure establishes. It was corrected in the
implementation in 0.2.22 and in this document in -03.</t>

<t>The temporal rule added in -04 has the same history, compressed. The
implementation admitted Receipts on an exact comparison across the two
clocks. A Receipt three seconds outside a two-hour Window produced
<spanx style="verb">observed-without-receipt</spanx> and a bypass message. That was raised in
review of -03 on the SCITT mailing list. It was reproduced. It was
corrected in 0.2.27. The correction was then attacked. A Receipt from the
previous day named the same object. It moved a real in-Window absence
into the new outcome. The implementation offered the boundary as its
explanation. A twenty-three hour offset cannot support that. 0.2.28
bounds what the implementation is willing to suggest. That is the
reporting choice in <xref target="cr-mapping"/>. Both defects were in the
implementation first. Neither was found by reading this document. The
first came from review of -03 on the list. The second came from an
adversarial review of the implementation. The fix had loosened a default.
Its author was not the party who should clear it. What made the second
sentence sayable was the tool's own output. This text did not yet exist.
The document's part was smaller and later. It is where the correction has
to be written down. The next implementation should not have to be
attacked to learn it.</t>

</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

    <references title='Normative References' anchor="sec-normative-references">



<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>
<reference anchor="RFC6838">
  <front>
    <title>Media Type Specifications and Registration Procedures</title>
    <author fullname="N. Freed" initials="N." surname="Freed"/>
    <author fullname="J. Klensin" initials="J." surname="Klensin"/>
    <author fullname="T. Hansen" initials="T." surname="Hansen"/>
    <date month="January" year="2013"/>
    <abstract>
      <t>This document defines procedures for the specification and registration of media types for use in HTTP, MIME, and other Internet protocols. This memo documents an Internet Best Current Practice.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="13"/>
  <seriesInfo name="RFC" value="6838"/>
  <seriesInfo name="DOI" value="10.17487/RFC6838"/>
</reference>
<reference anchor="RFC8126">
  <front>
    <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
    <author fullname="M. Cotton" initials="M." surname="Cotton"/>
    <author fullname="B. Leiba" initials="B." surname="Leiba"/>
    <author fullname="T. Narten" initials="T." surname="Narten"/>
    <date month="June" year="2017"/>
    <abstract>
      <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
      <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
      <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="26"/>
  <seriesInfo name="RFC" value="8126"/>
  <seriesInfo name="DOI" value="10.17487/RFC8126"/>
</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="RFC9943">
  <front>
    <title>An Architecture for Trustworthy and Transparent Digital Supply Chains</title>
    <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
    <author fullname="A. Delignat-Lavaud" initials="A." surname="Delignat-Lavaud"/>
    <author fullname="C. Fournet" initials="C." surname="Fournet"/>
    <author fullname="Y. Deshpande" initials="Y." surname="Deshpande"/>
    <author fullname="S. Lasker" initials="S." surname="Lasker"/>
    <date month="June" year="2026"/>
    <abstract>
      <t>Traceability in supply chains is a growing security concern. While Verifiable Data Structures (VDSs) have addressed specific issues, such as equivocation over digital certificates, they lack a universal architecture for all supply chains. This document defines such an architecture for single-issuer signed statement transparency. It ensures extensibility and interoperability between different transparency services as well as compliance with various auditing procedures and regulatory requirements.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9943"/>
  <seriesInfo name="DOI" value="10.17487/RFC9943"/>
</reference>



    </references>

    <references title='Informative References' anchor="sec-informative-references">



<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="RFC8032">
  <front>
    <title>Edwards-Curve Digital Signature Algorithm (EdDSA)</title>
    <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
    <author fullname="I. Liusvaara" initials="I." surname="Liusvaara"/>
    <date month="January" year="2017"/>
    <abstract>
      <t>This document describes elliptic curve signature scheme Edwards-curve Digital Signature Algorithm (EdDSA). The algorithm is instantiated with recommended parameters for the edwards25519 and edwards448 curves. An example implementation and test vectors are provided.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8032"/>
  <seriesInfo name="DOI" value="10.17487/RFC8032"/>
</reference>
<reference anchor="RFC9052">
  <front>
    <title>CBOR Object Signing and Encryption (COSE): Structures and Process</title>
    <author fullname="J. Schaad" initials="J." surname="Schaad"/>
    <date month="August" year="2022"/>
    <abstract>
      <t>Concise Binary Object Representation (CBOR) is a data format designed for small code size and small message size. There is a need to be able to define basic security services for this data format. This document defines the CBOR Object Signing and Encryption (COSE) protocol. This specification describes how to create and process signatures, message authentication codes, and encryption using CBOR for serialization. This specification additionally describes how to represent cryptographic keys using CBOR.</t>
      <t>This document, along with RFC 9053, obsoletes RFC 8152.</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="96"/>
  <seriesInfo name="RFC" value="9052"/>
  <seriesInfo name="DOI" value="10.17487/RFC9052"/>
</reference>

<reference anchor="I-D.farley-acta-signed-receipts">
   <front>
      <title>Signed Decision Receipts for Machine-to-Machine Access Control</title>
      <author fullname="Tom Farley" initials="T." surname="Farley">
         <organization>ScopeBlind (Veritas Acta)</organization>
      </author>
      <date day="28" month="June" year="2026"/>
      <abstract>
	 <t>   This document defines a portable, cryptographically signed receipt
   format for recording machine-to-machine access control decisions.
   Each receipt captures the identity of the decision maker, the tool or
   resource being accessed, the policy evaluation result, and a
   timestamp — all signed with Ed25519 [RFC8032] and serialized using
   deterministic JSON canonicalization [RFC8785].

   The format is designed for environments where AI agents invoke tools
   on behalf of human operators, particularly the Model Context Protocol
   (MCP) ecosystem.  Receipts are independently verifiable without
   contacting the issuer, enabling offline audit, regulatory compliance,
   and cross-organizational trust federation.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-farley-acta-signed-receipts-02"/>
   
</reference>

<reference anchor="I-D.marques-asqav-compliance-receipts">
   <front>
      <title>Compliance Profile of Signed Action Receipts for AI Agents</title>
      <author fullname="João André Gomes Marques" initials="J. A. G." surname="Marques">
         <organization>Asqav</organization>
      </author>
      <date day="20" month="July" year="2026"/>
      <abstract>
	 <t>   This document defines a multi-jurisdiction compliance profile of the
   signed action receipt format used by AI agents to record machine-
   readable evidence of access-control decisions.  The profile binds
   receipt fields to two regulatory surfaces: on the European Union
   side, Articles 12 and 26 of the EU AI Act (Regulation (EU) 2024/1689)
   and Article 17 of DORA (Regulation (EU) 2022/2554); on the United
   States side, the NIST AI Risk Management Framework, the Colorado AI
   Act, the Texas Responsible AI Governance Act, the New York Department
   of Financial Services Cybersecurity Regulation (23 NYCRR Part 500),
   the HIPAA Security Rule, SEC Rule 17a-4, and the Cyber Incident
   Reporting for Critical Infrastructure Act of 2022 (CIRCIA).  Working
   entirely within the existing wire format, canonicalization
   transformation, and signing algorithms of the underlying receipt
   format, the profile tightens a subset of the OPTIONAL fields to
   REQUIRED, imposes a retention floor, and requires at least one
   timestamping anchor (RFC 3161 or OpenTimestamps).  It registers
   OPTIONAL extension fields for risk and incident classification,
   cross-agent envelope binding, per-action freshness and integrity,
   build provenance, threat-framework taxonomy, server-built enforcement
   attestation, producer-asserted risk acceptance, and producer-asserted
   code authorship, each subject to false-attestation guards where
   applicable, and registers receipt type namespaces for passive-
   telemetry, result-bound observation, risk-acceptance, and code-
   authorship receipts.  The full field set and its normative
   requirements are defined in the body of this document.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-marques-asqav-compliance-receipts-07"/>
   
</reference>

<reference anchor="I-D.chueayen-attestation-receipts">
   <front>
      <title>Enforcement Attestation Receipts for AI Inference Decisions</title>
      <author fullname="Anya Chueayen" initials="A." surname="Chueayen">
         <organization>Aqta Technologies Limited</organization>
      </author>
      <date day="8" month="August" year="2026"/>
      <abstract>
	 <t>   This document specifies a compact JSON attestation receipt for an AI
   inference decision.  A receipt binds an outcome to a request hash
   under a published Ed25519 public key, so a party that does not trust
   the issuer&#x27;s infrastructure can still verify offline what the
   issuer&#x27;s signing key attested was decided.  The format is
   intentionally small and version-selected, so independent verifiers
   stay easy to implement and audit.  It is intended for settings where
   an operator-controlled log is not, on its own, sufficient evidence of
   the decision.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-chueayen-attestation-receipts-02"/>
   
</reference>

<reference anchor="I-D.aylward-aiga-2">
   <front>
      <title>AI Governance and Accountability Protocol (AIGA)</title>
      <author fullname="Edward Richard Aylward Jr" initials="E. R." surname="Aylward">
         </author>
      <date day="26" month="January" year="2026"/>
      <abstract>
	 <t>   This document specifies the AI Governance and Accountability (AIGA)
   Protocol, a practical, economically viable, and technically
   enforceable framework for governing autonomous AI agents.  AIGA is
   designed to address real-world deployment constraints, adversarial
   agent scenarios, and economic incentive alignment.

   The protocol is founded on a Tiered Risk-Based Governance model,
   applying proportional oversight to agents based on their
   capabilities.  All agents are governed by an Immutable Kernel
   Architecture which provides a non-modifiable Trusted Computing Base
   (TCB) for enforcing policy.  This is combined with Action-Based
   Authorization, where critical operations require real-time approval.

   To solve the single-point-of-failure problem, the protocol uses a
   Federated Authority Network of regional, cross-validating hubs and
   provides a Network-Level Quarantine Protocol for enforcement.  The
   entire framework is designed around Economic Incentive Alignment,
   making compliance the most economically rational choice for
   operators.

   For high-assurance (T3-T4) scenarios, AIGA specifies advanced,
   redundant mechanisms including Multi-Vendor TEE Attestation (M-TACE),
   AI &quot;Warden Triumvirate&quot; Triage, Human Review Board (HRB) Multi-
   Signature, Peer Consensus Failsafe &amp; Identity Rotation, and Double
   Ratchet Cryptography.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-aylward-aiga-2-00"/>
   
</reference>



    </references>

</references>


<?line 1178?>

<section numbered="false" anchor="acknowledgments"><name>Acknowledgments</name>

<t>The discipline of stating what each structure does not prove is owed to
every auditor who has been handed a green dashboard and asked to trust
it.</t>

<t>Iman Schrock reviewed revision -02 on the SCITT mailing list. He identified
two overclaims. One was that a clean reconciliation established coverage of
the source activity. The other was that Transformation Evidence proved the
transformation rather than the Issuer's assertion of it. Both were
corrected in -03. The outcome vocabulary of <xref target="cr-procedure"/> follows from
that exchange. So does the rule that a declared bound cannot yield a
stronger outcome. Reviewing -03, the same reviewer established a further
point. An Item whose classification rule does not resolve under the pinned
profile is <spanx style="verb">indeterminate</spanx>, not excluded. Revision -04 applies that rule
one layer up, to bounds.</t>

<t>Walter Hawkins read the reconciliation implementation. He found the
temporal defect -04 exists to correct. Window membership is decided
across two clocks. An exact comparison manufactures an accusation where
no gap exists. The failure is asymmetric. It produces false findings
rather than missed ones. He also observed that the sub-second case is
the dangerous one. It is the one a reader will believe. That is why
<xref target="cr-procedure"/> sets no floor. The requirement that a source population
declare its own completeness on the same standing ladder is also his.</t>

<t>Joel Hillier, reviewing -04 on the SCITT mailing list, asked for named
fields. He wanted a stated encoding for the temporal correspondence, not
prose. Another specification could then adopt the same shape. The three
<spanx style="verb">clocks</spanx> fields in <xref target="cr-mapping"/> are written to be copied. They answer
that request. He also observed that a gaps section going stale in the
understating direction is the same failure as one that overstates. That
is why the Implementation Status section of this revision was rewritten
from measurement.</t>

<t>Henri Sirkkavaara established the distinction in <xref target="sec-completeness"/>.
One construction supplies an expected quantity to a verifier from
outside. The other carries it inside the signed material. He built the
second. He named what the first leaves an auditor unable to do. The
consequence is stated against this document's own implementation, which
does the first. A running count derived from the sequence number it
accompanies adds no information. That narrower observation is this
author's, arrived at while measuring his. It is recorded here because it
bears on the construction. The distinction stands.</t>

<t>Andrew Yourtchenko reviewed -04 as a reader new to the work and identified
the length and density of the non-normative prose as the document's
primary obstacle, ahead of any technical point. He proposed applying the
principles of ASD-STE100 (Simplified Technical English) to the
non-normative text and published a rule set and a rewritten draft to show
the effect. The sentence-length pass in -07 follows that suggestion.</t>

</section>


  </back>

<!-- ##markdown-source:
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
pR6y+lUWU9K2C95U70DXnpnZSerP1rkacX2cOhnQi42mE0zpQUZysdvOeAPV
hxzC9+UacIGvyvs3ddMnf8mEpKas76vMMRSikqJ8nXPIzF/vhmGCTz2gjPHS
UGdwIbi+EcsFmotxopZkbmmvx+E9u8isUKwGjjj9/F6w0wu91guyuKgSq7vM
bNQ+5OTM5ivsHdFz2axiGANv0XfV767nUZqwkl5QzxJoCkoC4aDjJKtYbtWq
g7FZaRKp96uH/Ti/SHFGj25E4HReeyAFhIzU7ZYnqJK1D6wOpok5N7L2o1pF
VOhludR8Ry4Zuckh/Kat1sVX0AMQU+myG/LxcZ42My4Jc4t6UrDIJvYTITXe
HzPZYxfjqUd2r6Q1nP60wkEqB7scU/CoIjdqduyFAS+PxVz3NRc61lzgqfhb
tNva1OwHq+4aLHDENKVj5FKCQpMf8bZlHU53EeBCkRG4HIvOvZEPyolaC/hZ
9O1O36q8ZY0SkXLkg1CeKUw3yihVnm29gapR7noL4auq6eriou7evCnvyrIr
R9xwWI37tHA792vnup8+ZWB6arF2JN5LtNZSQ55oTeZvlkcuyDysh0Kx06Th
IiUNy+loJHNgNTXcXf5SVfmoB6tKKXL2zliO6Qi7xtCowsgdgzFqEmoEnYAp
mbZqatuYrXqV9ii9TAn+C/J4Q5bHWxzM473Ukq5d10KU5ci+2qoFqur6GOmR
nX6w9ErbSguYkZcsqPvk0KfW6LUYZS7Xot9FJjPOt72cEAq5j6aHL4X+it8h
NLaQG/ymTZoUZVyf2CcsJzOixGp/o2Z1pkJB5a+aW8SOGQVEqmPMSW/aZt7o
ttxFr14/imw8Zv7jhrrItcxwgZh8uTLnPyo/DNVi1QjbWRcm/b+y0o0QHRDH
3r8FAzVQVtV1cXbxxfzi8uXTJ0+KDy9ADFqT8DIO97K5xZX6yNYXxrOlos8k
013SQ6hbsFiEVfSOajp9fAPNjnvuSsUOqG4KqZUxt62iLU7N7NOobaljUU0/
5oL9T+B4sLX13QAA

-->

</rfc>

