<?xml version="1.0" encoding="utf-8"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude"
     category="info"
     docName="draft-ahuja-agent-routing-policy-00"
     ipr="trust200902"
     submissionType="IETF"
     consensus="false"
     version="3"
     xml:lang="en"
     tocInclude="true"
     sortRefs="true"
     symRefs="true">

  <front>
    <title abbrev="Agent Routing Policy">A Policy Grammar for Inter-Domain Agent Routing</title>
    <seriesInfo name="Internet-Draft" value="draft-ahuja-agent-routing-policy-00"/>

    <author initials="S. P." surname="Ahuja" fullname="Sumit P. Ahuja">
      <organization>Main Labs</organization>
      <address>
        <postal>
          <country>United States of America</country>
        </postal>
        <email>sumit@mainlabs.ai</email>
        <uri>https://orcid.org/0009-0009-3487-5001</uri>
      </address>
    </author>

    <date year="2026" month="September" day="17"/>

    <area>ART</area>
    <workgroup>Individual Submission</workgroup>

    <keyword>agents</keyword>
    <keyword>delegation</keyword>
    <keyword>inter-domain</keyword>
    <keyword>policy</keyword>
    <keyword>routing</keyword>

    <abstract>
      <t>Agent tasks are delegated across organizational boundaries. Existing
      work specifies how agents are identified, discovered, and described,
      states requirements for cross-domain isolation and authorization, and
      identifies the absence of a mechanism for expressing capability policy as
      a gap. This document defines four policy attributes for inter-domain
      agent delegation, the declarations each attribute carries, and a validity
      condition on delegation chains that no party establishes by observing the
      whole chain. Whether independently chosen policies converge is analysed
      in separate work.</t>
    </abstract>
  </front>

  <middle>

    <section anchor="intro">
      <name>Introduction</name>

      <t>A delegation crosses an organizational boundary when the party
      receiving a task is operated by someone other than the party sending it.
      The sender then has no view of what the task encounters downstream, and
      the receiver is acting under policy the sender cannot inspect.</t>

      <t><xref target="INTENTREQ"/> requires that a coordination substrate let
      an organization isolate its capability namespace, and that interoperation
      across organizational boundaries be explicitly authorized and
      policy-controlled (REQ-13). <xref target="GWGAP"/> Section 7.2 states the
      same absence as a gap: capability descriptions say what an agent can do
      and do not say who may discover or invoke it under what conditions, and
      there is no standard mechanism for expressing, distributing, and
      enforcing those constraints. This document specifies a mechanism for the
      expression half of that gap.</t>

      <t>The test applied throughout is whether a behaviour must be specified
      to survive crossing a boundary, or whether a domain may decide it alone.
      An attribute a domain can implement internally, with no counterparty
      obliged to read it, does not belong in a protocol. Each attribute in
      <xref target="attributes"/> is here because it fails that way.</t>

      <t>Domains exist for administrative reasons. Data residency law,
      sovereign compute programmes, sunk regional infrastructure, and
      organizations that will not route work through a competitor's systems all
      produce boundaries that no improvement in agent capability removes. This
      document takes no position on whether specialised or general agents
      prevail.</t>
    </section>

    <section anchor="conventions">
      <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>

      <dl>
        <dt>Domain:</dt>
        <dd>A jurisdiction of policy ownership. A domain owns policy over the
        agents it operates and over the delegations it accepts and emits. The
        term carries no claim about knowledge, capability, or subject-matter
        expertise. Two domains may operate identical agents and hold opposite
        policies.</dd>

        <dt>Delegation:</dt>
        <dd>The transfer of a task from one agent to another.</dd>

        <dt>Delegation chain:</dt>
        <dd>The ordered sequence of delegations by which a task reaches its
        current holder. A chain of length zero is a task that has not been
        delegated.</dd>

        <dt>Hop:</dt>
        <dd>A single delegation, together with the domains on either side of
        it.</dd>

        <dt>Governing profile:</dt>
        <dd>The immutable definition, agreed between the parties to a hop,
        under which attribute values are compared. Profile identity is subject
        to <xref target="profileid"/>. A profile is not global; two hops in one
        chain may name different profiles, with the consequence stated in <xref
        target="chainvalidity"/>.</dd>

        <dt>Attenuation relation:</dt>
        <dd>The relation a profile defines between two values of an attribute,
        under which one value is no broader than another.</dd>

        <dt>Relying party:</dt>
        <dd>A party evaluating a hop or a chain in order to accept, forward, or
        refuse a task.</dd>
      </dl>
    </section>

    <section anchor="relwork">
      <name>Relationship to Existing Work</name>

      <t>Agent identity, discovery, and capability advertisement are specified
      elsewhere and are not restated here. This document assumes an agent can
      be named, located, and described.</t>

      <t><xref target="INTENTREQ"/> and <xref target="GWGAP"/> are the
      documents this mechanism answers. <xref target="reqmap"/> states which
      requirements and gaps each part of the grammar addresses and which
      constrain it.</t>

      <t><xref target="BCR"/> supplies the scope-comparison vocabulary and the
      chain-composition rules this document uses. They are adopted, not
      extended; see <xref target="vocab"/>. <xref target="BINDING"/> states the
      same non-elevation property for composed verifier results generally, and
      is cited where this document relies on it.</t>

      <t>Authorization frameworks answer whether a party may act. An
      authorization decision does not identify who holds a task after the
      permitting credential expired, and it does not identify who is
      accountable for a task two delegations downstream of the party that was
      authorized. Policy over delegation is not a generalised form of
      authorization and does not subsume it.</t>

      <t>Whether a claimed transition can later be established by a party that
      did not participate in it is treated in <xref target="DET"/>, and the
      evidentiary weight of records asserting order is treated in <xref
      target="DECREC"/>. This document produces no evidence artifacts and makes
      no ordering or retrospective-determinability claims.</t>
    </section>

    <section anchor="vocab">
      <name>Scope Comparison Vocabulary</name>

      <t>This document does not define a comparison vocabulary. It uses the one
      published in <xref target="BCR"/> Section 7, and implementers are
      expected to read that section. A relying party <bcp14>MAY</bcp14> use a
      scope verifier conforming to <xref target="BCR"/> to evaluate the
      attribute defined in <xref target="chainattr"/>. The summary below
      identifies only what this document relies on.</t>

      <t>Membership and attenuation are separate decisions. Membership returns
      IN_SCOPE, OUT_OF_SCOPE, or UNDECIDED. Attenuation returns NO_BROADER,
      BROADER, or UNDECIDED. This document is concerned with attenuation. Where
      an attribute has mandatory components, the composite rules of <xref
      target="BCR"/> Section 7 apply unchanged: any BROADER component makes the
      composite broader, otherwise any UNDECIDED component makes the composite
      UNDECIDED, each component result remains visible, and a missing component
      is not a successful comparison.</t>

      <t>An UNDECIDED attenuation result states why. Two reasons defined in
      <xref target="BCR"/> are relied on here, and they are relied on because a
      relying party does different things with them.</t>

      <dl>
        <dt>NO_COMPARISON_RELATION:</dt>
        <dd>The verifier holds the exact governing profile and that profile
        supplies no applicable relation for the component and values reported.
        This is absence of a relation under that profile and is not a claim
        that comparison is globally impossible. No party holding different
        inputs changes it, so the relying party halts.</dd>

        <dt>PROFILE_NOT_HELD:</dt>
        <dd>The exact governing profile definition is unavailable to the
        deciding verifier. Its absence does not establish that the profile
        defines no relation. Retrieval of the exact definition, or
        re-evaluation by a verifier accepted under relying-party policy, may
        remedy it, so the relying party <bcp14>MAY</bcp14> route the
        evaluation.</dd>
      </dl>

      <t>These two do not exhaust the causes of UNDECIDED, and another cause
      <bcp14>MUST NOT</bcp14> be reported as either of them. Until a required
      current comparison succeeds, the relying party refuses.</t>

      <t>LOCAL_ONLY is a composition status carried on a decided attenuation
      result, separate from that result. It is not a third attenuation value
      and not a substitute for UNDECIDED. A negative local result stays
      negative whatever its composition status.</t>

      <t>UNDECIDED describes an unavailable comparison. It is not the execution
      outcome INDETERMINATE, and the two <bcp14>MUST NOT</bcp14> be reported
      interchangeably.</t>
    </section>

    <section anchor="attributes">
      <name>Policy Attributes</name>

      <t>Each attribute is stated in the same form: what the advertising domain
      asserts, what a receiving domain is obliged to do, what it is not obliged
      to do, and what the attribute does not establish.</t>

      <t>An attribute value carried on a delegation <bcp14>MUST</bcp14> be
      accompanied by the declarations in <xref target="declaration"/>.</t>

      <t>Attribute values are compared by matching declared identifiers under
      the governing profile. Evaluating an attribute <bcp14>MUST NOT</bcp14>
      require any party to interpret the semantics of the task, consistent with
      REQ-10 and REQ-11 of <xref target="INTENTREQ"/>.</t>

      <section anchor="attr1">
        <name>Graduated Self-Deprioritization</name>

        <t>A domain advertises a graduated reduction in its willingness to
        receive delegations, without becoming unreachable.</t>

        <t>The advertising domain asserts that delegations to the named agents
        remain acceptable and that it prefers they be sent elsewhere where an
        alternative exists.</t>

        <t>A receiving domain <bcp14>MUST</bcp14> treat the advertisement as
        ordered against other advertisements from the same domain under the
        governing profile. It <bcp14>MUST NOT</bcp14> treat the advertisement
        as a refusal, and <bcp14>MUST NOT</bcp14> require the advertising
        domain to justify the value.</t>

        <t>This attribute does not establish capacity, health, or load. A
        domain may deprioritize itself for contractual reasons unrelated to its
        state. A relying party that reads load from this attribute is reading
        something the attribute does not carry.</t>
      </section>

      <section anchor="attr2">
        <name>Non-Binding Preference Signalling</name>

        <t>A domain advertises a preference among its own endpoints to a
        counterparty that will make the selection.</t>

        <t>The advertising domain asserts a ranking over agents it operates.
        The counterparty <bcp14>MAY</bcp14> use the ranking and
        <bcp14>MAY</bcp14> disregard it. A domain <bcp14>MUST NOT</bcp14> treat
        its own preference as having bound the counterparty's choice, and
        <bcp14>MUST NOT</bcp14> refuse a delegation solely because the
        counterparty selected a lower-ranked endpoint.</t>

        <t>REQ-7 of <xref target="INTENTREQ"/> requires that any selection
        depending on real-time state be made by the entity holding that state.
        This attribute is conformant because it is not a selection. The
        advertising domain states a preference derived from what it knows about
        its own endpoints; the decision remains with the party holding the
        requesting context. A binding form would place the decision with a
        party that cannot see the inputs it needs, which is the failure REQ-7
        excludes.</t>

        <t>REQ-8 of <xref target="INTENTREQ"/> defines a mode in which the
        infrastructure returns multiple matching handlers and the requester
        chooses. That mode exists for endpoint reachability rather than for
        preference, and this document does not claim otherwise. The attribute
        is usable within it.</t>

        <t>This attribute does not establish that the ranked endpoints are
        interchangeable, and establishes nothing about endpoints operated by
        other domains.</t>
      </section>

      <section anchor="attr3">
        <name>Opaque Policy Tags</name>

        <t>A domain attaches a tag whose meaning is agreed bilaterally with the
        receiving domain and is not defined by this document.</t>

        <t>The advertising domain asserts that the tag is drawn from the
        vocabulary agreed with the receiver. A receiving domain that holds the
        agreement <bcp14>MUST</bcp14> apply the agreed handling. A receiving
        domain that does not hold the agreement <bcp14>MUST</bcp14> forward the
        tag unaltered if it forwards the delegation at all, and <bcp14>MUST
        NOT</bcp14> infer meaning from an unrecognised tag.</t>

        <t>A tag's meaning is not available to parties outside the agreement,
        including parties on the same chain. This is the property that makes
        tags usable for compliance, residency, and priority arrangements a
        domain will not publish, and it is the property that excludes them from
        <xref target="chainvalidity"/>.</t>

        <t>This attribute does not establish that any handling occurred. A tag
        is a request under a bilateral agreement, not a receipt.</t>
      </section>

      <section anchor="chainattr">
        <name>Chain Validity Attribute</name>

        <t>A domain attaches a value stating the class of onward delegation it
        considers commercially coherent for this task.</t>

        <t>Values are drawn from an aggregable hierarchical namespace
        supporting prefix matching, as required by REQ-12 of <xref
        target="INTENTREQ"/>. That namespace is used as substrate and is not
        redefined here. A profile <bcp14>MAY</bcp14> define containment as
        prefix containment over that namespace, in which case transitivity
        follows by construction and the basis is definition-derived under <xref
        target="transitivity"/>.</t>

        <t>A receiving domain <bcp14>MUST NOT</bcp14> emit an onward delegation
        whose value returns BROADER against the value it received. A receiving
        domain <bcp14>MAY</bcp14> emit an onward delegation whose value returns
        NO_BROADER.</t>

        <t>This attribute does not establish that a chain is authorized, safe,
        or correct. It establishes that each hop was no broader than its
        predecessor, and a chain-wide statement only where <xref
        target="transitivity"/> and <xref target="chainvalidity"/> permit
        one.</t>
      </section>
    </section>

    <section anchor="profileid">
      <name>Profile Identity</name>

      <t>Every profile identifier used to govern a comparison
      <bcp14>MUST</bcp14> identify immutable comparison semantics. An
      identifier fixed by immutable standards text satisfies this. Any other
      profile identifier <bcp14>MUST</bcp14> be content-addressed. A mutable
      alias or version label alone is insufficient. This requirement is taken
      from <xref target="BCR"/> Section 7 and applies here unchanged, because a
      chain-wide statement made under a profile that can change afterwards is
      not a statement about anything.</t>

      <t>A relying party <bcp14>MUST</bcp14> pin the exact profile definition
      selected by an identifier and <bcp14>MUST</bcp14> refuse if that
      definition cannot be resolved unambiguously or has changed.</t>
    </section>

    <section anchor="declaration">
      <name>Attribute Declaration</name>

      <t>An attribute is either chain-checkable or bilateral. A chain-checkable
      attribute has values compared under a governing profile and is the
      subject of <xref target="chainvalidity"/>. A bilateral attribute has
      meaning available only to the parties to an agreement, and <xref
      target="chainvalidity"/> excludes it.</t>

      <t>Every attribute definition <bcp14>MUST</bcp14> declare which it is.
      The declaration is a field of the definition. A definition that states
      the property in prose without declaring it is not conformant, because a
      party evaluating a chain reads fields.</t>

      <t>Under this document the attributes in <xref target="attributes"/> are
      declared as follows: graduated self-deprioritization, bilateral;
      non-binding preference signalling, bilateral; opaque policy tags,
      bilateral; chain validity, chain-checkable.</t>

      <t>A profile defining an attenuation relation for a chain-checkable
      attribute <bcp14>MUST</bcp14> state whether that relation is reflexive
      and whether it is transitive, and <bcp14>MUST</bcp14> classify the basis
      of any transitivity claim as definition-derived, mechanically-checkable,
      or asserted, as specified in <xref target="BCR"/> Section 7. The
      requirements on a mechanically-checkable claim, including the finite
      domain, the deterministic procedure, the establishment record, and the
      disclosure of reliance mode, are those of <xref target="BCR"/> and are
      not restated here.</t>

      <t>A profile that makes no transitivity claim is permitted. Its results
      are governed by <xref target="transitivity"/>.</t>

      <t>A profile whose relation is not reflexive <bcp14>MUST</bcp14> state
      that an unchanged value will be refused. A domain forwarding a task
      without narrowing it under such a profile is refused, and that
      consequence is a design choice the profile makes rather than an
      error.</t>
    </section>

    <section anchor="transitivity">
      <name>Transitivity Conformance</name>

      <t><xref target="chainvalidity"/> draws a chain-wide statement from
      per-hop comparisons. A party that verifies each hop concludes that the
      value at the end of the chain is no broader than the value at its start,
      without holding the chain entire. This is what allows a chain-wide
      statement to be reached under REQ-4 and REQ-6 of <xref
      target="INTENTREQ"/>: no party holds state proportional to the chain, and
      each comparison is local. The induction is sound only if the relation
      composes.</t>

      <t>A relying party <bcp14>MUST NOT</bcp14> promote per-hop comparisons
      into a chain-wide statement unless transitivity is definition-derived or
      mechanically established over the profile's complete declared finite
      domain, as <xref target="BCR"/> Section 7 requires. A decided comparison
      under a non-transitive relation, an asserted-transitive relation, or a
      relation whose transitivity is not claimed is LOCAL_ONLY to its hop. It
      remains useful evidence about that hop and does not compose.</t>

      <t><xref target="BINDING"/> Section 17 states the same property for
      composed verifier results generally: an aggregate result does not carry a
      claim stronger than its verified inputs, and a satisfied result does not
      survive composition when something it depends on is not established. Two
      independently developed documents arriving at this rule is the reason it
      is stated here as a constraint rather than as a recommendation.</t>

      <t>Relations defined by threshold, by rounding, or by table lookup over
      an incompletely declared domain are commonly not transitive. A profile
      using such a relation is not thereby non-conformant. Its results are
      hop-scoped, and LOCAL_ONLY is the conformant way to say so.</t>

      <t>Current practice does not close this. <xref target="ATN"/> specifies
      delegation-chain verification as five steps, of which the second requires
      each link's scope to be a subset of its parent's. That is pairwise
      checking. The document states no transitivity property for the relation,
      classifies no basis for one, and defines no composition rule along the
      chain. A relying party following those steps has verified every link and
      has no stated ground for a statement about the chain. That gap is what
      the declaration in <xref target="declaration"/> closes, and <xref
      target="ATN"/> is cited here as the practice the requirement addresses
      rather than as a competing mechanism.</t>
    </section>

    <section anchor="chainvalidity">
      <name>Chain Validity Condition</name>

      <t>Let a chain consist of hops h(1) through h(n), each carrying a value
      of a chain-checkable attribute and each governed by a profile.</t>

      <t>A chain of length zero is valid. The holder has received no delegation
      and has narrowed nothing, so there is no hop at which containment could
      fail.</t>

      <t>A chain of length one requires a current NO_BROADER comparison at that
      hop. It requires no transitive induction, and the transitivity basis of
      its profile does not affect the result.</t>

      <t>A chain of length greater than one is valid for an attribute when all
      of the following hold:</t>

      <ol>
        <li>for every hop h(i), the comparison of the value emitted by h(i)
        against the value received by h(i) returns NO_BROADER under the profile
        governing h(i);</li>

        <li>every adjacent comparison used for the chain-wide statement uses
        the same immutable profile definition, the same relation-rule
        definition, the same finite-domain identity where applicable, and the
        same transitivity basis; and</li>

        <li>that transitivity basis is definition-derived or
        mechanically-checkable.</li>
      </ol>

      <t>Condition 2 is not a convenience. Transitivity established separately
      for two different relations does not establish that those relations
      compose, and this document defines no cross-relation composition rule.
      Where a chain changes any of those relation inputs, the decided
      comparisons on either side of that boundary remain LOCAL_ONLY across it,
      and no chain-wide statement is available even though every hop was
      decided and every profile claimed transitivity. A relying party
      <bcp14>MUST</bcp14> report that outcome rather than treating two
      composable profiles as composing with each other.</t>

      <t>Bilateral attributes are excluded. A relying party <bcp14>MUST
      NOT</bcp14> evaluate chain validity over a bilateral attribute, and
      <bcp14>MUST NOT</bcp14> infer from a valid chain that any bilateral
      attribute was honoured at any hop.</t>

      <t>Where a comparison at a hop returns UNDECIDED, the relying party
      proceeds according to the reason as described in <xref target="vocab"/>.
      Under NO_COMPARISON_RELATION the chain is not valid and the relying party
      halts. Under PROFILE_NOT_HELD the chain is not valid to this relying
      party, which <bcp14>MAY</bcp14> route the evaluation to a party holding
      the exact definition. A relying party <bcp14>MUST NOT</bcp14> treat a
      chain as valid by default in either case, and <bcp14>MUST NOT</bcp14>
      substitute LOCAL_ONLY for an unavailable comparison.</t>

      <t>A failure to establish composition does not convert a decided hop
      result into UNDECIDED. The hop result stands with its LOCAL_ONLY
      composition status, and the chain-wide statement is refused.</t>

      <t>A structural statement about a chain and a comparison result
      <bcp14>MUST NOT</bcp14> be combined into an overall validity claim unless
      both reports travel with the claim, including their decidability and
      composition limits.</t>
    </section>

    <section anchor="reqmap">
      <name>Requirements and Gaps Addressed</name>

      <t>This section states the relationship between this mechanism and the
      documents it answers. It claims no conformance on behalf of any
      implementation.</t>

      <t>REQ-13 of <xref target="INTENTREQ"/> is the requirement this document
      answers. The attributes in <xref target="attributes"/> are the means by
      which cross-boundary interoperation is policy-controlled, and <xref
      target="chainvalidity"/> is the means by which that control survives
      onward delegation.</t>

      <t><xref target="GWGAP"/> Section 7.2 names the absence of a standard
      mechanism for expressing, distributing, and enforcing capability
      visibility policy. This document addresses expression. It does not
      address distribution, and it is not an enforcement point; see <xref
      target="security"/>.</t>

      <t><xref target="GWGAP"/> Section 7.4 identifies binding agent
      interactions to organizational identity and authorization context as that
      document's highest-priority candidate. This document does not supply that
      binding. A policy grammar is one component of it and is not a substitute
      for it.</t>

      <t>REQ-12 supplies the namespace on which the chain-checkable attribute
      is defined.</t>

      <t>REQ-7 and REQ-8 constrain the form of non-binding preference
      signalling.</t>

      <t>REQ-4 and REQ-6 are the reason <xref target="transitivity"/> exists. A
      chain-wide statement is drawn from local per-hop comparisons precisely so
      that no party holds chain-scale state.</t>

      <t>REQ-10 and REQ-11 constrain evaluation to declared identifiers, with
      no inference required of any evaluating party.</t>

      <t>REQ-14 requires bounded convergence. This document specifies the
      attributes and the per-hop and chain semantics. Whether domains setting
      these attributes independently, and according to their own interests,
      reach a stable global outcome is analysed in separate work and is out of
      scope here.</t>
    </section>

    <section anchor="security">
      <name>Security Considerations</name>

      <t>Opaque policy tags are a channel between domains holding a bilateral
      agreement. The channel is intended and its capacity is bounded by the
      agreed vocabulary, but a vocabulary agreed for one purpose can carry
      information for another. Domains that forward tags they do not
      understand, as <xref target="attributes"/> requires, are forwarding
      content they cannot inspect.</t>

      <t>Graduated self-deprioritization can be advertised falsely. A domain
      that deprioritizes itself while remaining reachable may be shedding work
      it has accepted an obligation to perform, and a domain that never
      deprioritizes itself may be concealing saturation. The attribute carries
      no evidence either way.</t>

      <t>A profile that classifies a transitivity basis as definition-derived
      for a relation that does not compose causes relying parties to draw
      chain-wide statements from per-hop comparisons that do not support them.
      The resulting error is silent, which makes it more damaging than a
      profile that claims nothing. A declared basis is a claim by the profile's
      author. <xref target="BCR"/> Section 7 states the trust and freshness
      conditions under which a mechanical establishment record may be relied
      on, and those conditions apply here.</t>

      <t>A mutable profile identifier permits the semantics of a past
      comparison to be changed after the fact. <xref target="profileid"/>
      exists for that reason.</t>

      <t><xref target="chainvalidity"/> places no bound on chain length. A
      relying party evaluating a chain performs at least one comparison per
      hop, and a chain presented to it may be arbitrarily long. A relying party
      <bcp14>SHOULD</bcp14> bound the number of hops it will evaluate, and
      <bcp14>MUST NOT</bcp14> treat exhaustion of that bound as a valid chain.
      The bound is a local resource decision and is not a property of the
      chain, so two relying parties applying different bounds to the same chain
      may reach different results and neither is wrong.</t>

      <t>The default on an unresolved evaluation is to refuse. A relying party
      that cannot evaluate a chain, for any reason in <xref target="vocab"/>,
      <xref target="transitivity"/>, or <xref target="chainvalidity"/>,
      <bcp14>MUST NOT</bcp14> forward or accept the task on the basis of that
      evaluation.</t>

      <t>The isolation REQ-13 requires is not supplied by this document. These
      attributes express policy across a boundary that some other mechanism
      establishes, and a valid chain is not an access-control decision. A
      deployment that treats attribute evaluation as enforcement has
      substituted a policy statement for an enforcement point.</t>
    </section>

    <section anchor="iana">
      <name>IANA Considerations</name>

      <t>This document requests no IANA actions. Attribute types are carried in
      profiles agreed between parties and are not registered at this revision.
      Comparison results, reason codes, composition status, and transitivity
      basis values are those of <xref target="BCR"/> and are registered, if at
      all, by that document. A future revision may request a registry for
      attribute types should the vocabulary stabilise.</t>
    </section>

  </middle>

  <back>

    <references>
      <name>References</name>

      <references>
        <name>Normative References</name>

        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author initials="S." surname="Bradner" fullname="S. Bradner"/>
            <date year="1997" month="March"/>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>

        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author initials="B." surname="Leiba" fullname="B. Leiba"/>
            <date year="2017" month="May"/>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>

        <reference anchor="BCR" target="https://datatracker.ietf.org/doc/html/draft-schrock-ep-bounded-capability-receipts-06">
          <front>
            <title>Bounded Capability Receipts and Durable Spend Control for Agent Actions</title>
            <author initials="I." surname="Schrock" fullname="Iman Schrock">
              <organization>EMILIA Protocol, Inc.</organization>
            </author>
            <date year="2026" month="September" day="9"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-schrock-ep-bounded-capability-receipts-06"/>
        </reference>
      </references>

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

        <reference anchor="INTENTREQ" target="https://datatracker.ietf.org/doc/html/draft-feng-dmsc-intent-routing-requirements-00">
          <front>
            <title>Requirements for Intent Routing in Multi-Agent Systems at Internet Scale</title>
            <author initials="C." surname="Feng" fullname="Chong Feng"/>
            <date year="2026" month="August" day="14"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-feng-dmsc-intent-routing-requirements-00"/>
        </reference>

        <reference anchor="GWGAP" target="https://datatracker.ietf.org/doc/html/draft-dunbar-dmsc-gw-scenarios-gap-analysis-04">
          <front>
            <title>Deployment Scenarios and Gap Analysis for AI Agent Gateway</title>
            <author initials="L." surname="Dunbar" fullname="Linda Dunbar"/>
            <author initials="Y." surname="Wang" fullname="YiFei Wang"/>
            <author initials="I." surname="Schrock" fullname="Iman Schrock"/>
            <author initials="B." surname="Liu" fullname="Bing Liu"/>
            <date year="2026" month="August" day="14"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-dunbar-dmsc-gw-scenarios-gap-analysis-04"/>
        </reference>

        <reference anchor="BINDING" target="https://datatracker.ietf.org/doc/html/draft-bu-agentproto-security-principal-binding-07">
          <front>
            <title>Security Principal and Verifier Binding for Agent Communication Protocols</title>
            <author initials="S." surname="Bu" fullname="Songbo Bu"/>
            <date year="2026" month="September" day="15"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-bu-agentproto-security-principal-binding-07"/>
        </reference>

        <reference anchor="DET" target="https://datatracker.ietf.org/doc/html/draft-wadkins-agentproto-action-determinability-00">
          <front>
            <title>Independent Determinability of Agent Actions</title>
            <author initials="D." surname="Wadkins" fullname="Douglas Wadkins">
              <organization>Strakewright</organization>
            </author>
            <date year="2026" month="September" day="10"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-wadkins-agentproto-action-determinability-00"/>
        </reference>

        <reference anchor="ATN" target="https://datatracker.ietf.org/doc/html/draft-somoza-dmsc-atn-agent-trust-negotiation-00">
          <front>
            <title>Agent Trust Negotiation: Capability, Delegation, and Provenance Binding for AI Agents</title>
            <author initials="E." surname="Somoza" fullname="Enrique Somoza"/>
            <date year="2026" month="May" day="29"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-somoza-dmsc-atn-agent-trust-negotiation-00"/>
        </reference>

        <reference anchor="DECREC" target="https://datatracker.ietf.org/doc/html/draft-bradleyb-audit-decision-records-00">
          <front>
            <title>Signed Decision Records for Agent Authorization: Disclosures, Entry Emission, and Ordering Evidence</title>
            <author initials="B." surname="B" fullname="Bradley B">
              <organization>11 AI Blockchain Developments LLC</organization>
            </author>
            <date year="2026" month="August" day="13"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-bradleyb-audit-decision-records-00"/>
        </reference>
      </references>
    </references>

    <section anchor="acks" numbered="false">
      <name>Acknowledgements</name>

      <t>Iman Schrock authored the scope-comparison vocabulary and the
      chain-composition rules this document adopts. Songbo Bu stated the
      non-elevation property for composed verifier results, which <xref
      target="transitivity"/> relies on. Chong Feng stated the requirements
      this mechanism answers. Linda Dunbar, YiFei Wang, Iman Schrock and Bing
      Liu identified the gap in policy expression that <xref
      target="reqmap"/> maps to. Mirja Kuehlewind posed the test this document
      uses to select its attributes: what must be standardised to survive
      crossing a domain boundary, as distinct from what a domain may decide
      alone. Douglas Wadkins and Henri Sirkkavaara sharpened, on the agentproto
      mailing list, the distinction between evidence of one transition and
      evidence of another, which is why this document states what its
      attributes do not establish. Bradley B distinguished correspondence from
      precedence in records, cited here for the limit it places on what a chain
      report can claim.</t>
    </section>

  </back>
</rfc>
