Internet-Draft JAC September 2026
Wang Expires 30 March 2027 [Page]
Workgroup:
Network Working Group
Internet-Draft:
draft-wang-jac-03
Published:
Intended Status:
Experimental
Expires:
Author:
Y. Wang

JAC: Declared Dependency Graphs for JEP Events and Receipts

Abstract

This document defines JAC-2, a minimal declared-dependency graph profile for the Judgment Event Protocol (JEP) [JEP].

JAC-2 binds a signed JEP event to zero or more declared parent dependencies through one critical JEP extension. JEP Event Identity is used for logical JEP event dependencies; Event Hash is used only when an exact signed artifact must also be pinned. Digest-addressed receipt or external records can be linked without becoming JEP events.

JAC-2 defines dependency-link structure, partial-fragment semantics, cycle handling, chain validation checks, and non-inference boundaries. It does not determine factual causality, responsibility, fault, authorization validity, workflow correctness, legal effect, or regulatory compliance.

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

This Internet-Draft will expire on 30 March 2027.

▲

Table of Contents

1. Introduction

Agent and automated systems often produce signed events whose interpretation depends on earlier events, records, tool outputs, receipts, or other digest-addressed artifacts.

JEP-Core intentionally does not define causal-chain or dependency-graph semantics. JAC provides one optional chain profile for that purpose.

The narrow JAC question is:

Which parent dependencies did this signed event declare,
and is the observed dependency fragment structurally and
cryptographically consistent under the selected JAC rules?

A declared dependency is not a protocol-level finding of real-world causality.

JEP Profiles [JEP-PROFILES] defines profile selection and composition rules. JEP Conformance [JEP-CONFORMANCE] defines structured validation and test-harness conventions. JEP Receipt Profile [JEP-RECEIPT] defines a portable receipt format that MAY be referenced by digest from JAC.

Where this document conflicts with JEP-Core, JEP-Core controls.

2. Requirements Language

The key words MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, NOT RECOMMENDED, MAY, and OPTIONAL in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals.

3. Scope and Terminology

3.1. JAC-2 Defines

JAC-2 defines:

  • one profile identifier;
  • one critical dependency extension;
  • zero-or-more parent links per JEP event;
  • logical JEP-event parent references using Event Identity;
  • optional exact-artifact pinning using Event Hash;
  • digest-addressed non-JEP parent references;
  • partial-fragment and unresolved-parent semantics;
  • cycle detection for resolved dependency fragments;
  • independent JAC validation checks;
  • dependency-graph validation result semantics.

3.2. JAC-2 Does Not Define

JAC-2 does not define:

  • new JEP verbs;
  • a new event format;
  • a new signature or hash format;
  • a replacement for Event Identity or Event Hash;
  • automatic delegation, authorization, or termination propagation;
  • factual causality;
  • complete real-world history;
  • responsibility, fault, negligence, intent, fairness, or entitlement;
  • task, workflow, state-machine, handoff, or result semantics;
  • legal liability or regulatory compliance;
  • a mandatory bundle, transport, archive, or ledger.

3.3. Declared Dependency

A signed statement that the current JEP event depends on or is based on an identified parent according to the relation semantics selected for the link.

The baseline relation defined by JAC-2 is declared-dependency.

3.4. Parent

The object referenced by one JAC dependency link.

A parent MAY be:

  • a JEP event identified by Event Identity;
  • a digest-addressed receipt record;
  • another digest-addressed external record.

3.5. Dependency Fragment

A set of JEP events and referenced parent objects observed together for JAC validation.

A Dependency Fragment is partial by default.

JAC retains the term "chain" for continuity, but the JAC-2 baseline data model is a directed dependency graph: it MAY branch and join because an event can declare zero or more parents.

3.6. Resolved Parent

A parent for which the verifier has obtained the referenced object or exact artifact needed by the requested validation context.

3.7. Unresolved Parent

A syntactically valid parent reference for which the referenced object is not available or cannot be resolved in the requested validation context.

An unresolved parent is not proof that the parent does not exist.

4. Profile and Extension Identifiers

4.1. JAC-2 Profile Identifier

The profile identifier is:

https://humanjudgment.org/jep/profiles/jac/2

The human-readable label JAC-2 MAY be used in documentation.

The identifier is a publisher-controlled HTTPS URI. Dereferencing it is not required for validation.

4.2. Dependency Extension Identifier

The dependency extension identifier is:

https://humanjudgment.org/jep/extensions/dependency/2

A JEP event claiming JAC-2 conformance MUST carry this extension in ext and MUST list the extension identifier in ext_crit.

A verifier that cannot process this critical extension cannot claim successful JAC-2 validation.

4.3. Version Boundary

JAC-2 is not wire-compatible with JAC-Core-1 from draft-wang-jac-02.

JAC-Core-1 used a single digest-oriented based_on link and commonly treated JEP Event Hash as the parent-event reference. JAC-2 instead supports multiple parents and uses Event Identity for logical JEP event references.

Historical JAC-Core-1 events MUST NOT be silently rewritten as JAC-2 events.

5. Relationship to JEP-Core

JAC-2 relies on JEP-Core for:

  • the signed event object;
  • J/D/T/V semantics;
  • Event Identity (who,id);
  • Event Hash;
  • the JEP Signing Payload;
  • signature validation;
  • ref;
  • ext and ext_crit;
  • independent validation checks;
  • validation modes;
  • idempotent acceptance.

JAC-2 MUST NOT redefine any of those semantics.

A JAC dependency link is separate from JEP ref.

JEP ref retains the meaning defined by JEP-Core. The JAC dependency extension declares graph edges used by JAC chain processing.

An implementation MUST NOT infer a JAC dependency solely from JEP ref.

A deployment MAY use both JEP ref and JAC parent links in one event.

6. JAC Dependency Extension

6.1. Extension Shape

The JAC-2 dependency extension MUST be a JSON object containing:

  • profile
  • parents

profile MUST equal https://humanjudgment.org/jep/profiles/jac/2.

parents MUST be a JSON array containing zero or more Parent Link objects.

An empty parents array declares that the event is a JAC root in the observed dependency structure. It does not prove that the event had no external predecessors in the real world.

No other members are defined by the JAC-2 baseline extension.

The order of entries in parents has no semantic meaning.

6.3. Parent Reference

A Parent Reference MUST be a JSON object containing kind.

kind MUST be one of:

  • jep-event
  • digest-record

JEP Event Parent

When kind is jep-event, the Parent Reference MUST contain event_identity.

event_identity MUST be an object containing non-empty string members who and id.

The Parent Reference MAY additionally contain:

  • event_hash
  • uri

event_hash, when present, MUST be a valid JEP algorithm-tagged digest string and pins one exact signed artifact for the identified event.

uri, when present, is a retrieval hint only.

The logical dependency node is Event Identity, not Event Hash.

A verifier MUST NOT create two logical JAC nodes merely because two valid signed artifacts for the same Event Identity have different Event Hash values.

If the same Event Identity resolves to conflicting unsigned JEP event content, JEP Event Identity conflict processing applies and JAC dependency-graph validation MUST NOT report success.

Digest Record Parent

When kind is digest-record, the Parent Reference MUST contain digest.

digest MUST be an algorithm-tagged digest string.

The Parent Reference MAY additionally contain:

  • profile
  • record_type
  • media_type
  • uri

If present, profile MUST be an absolute URI, record_type and media_type MUST be non-empty strings, and uri MUST be an absolute URI.

These members are descriptive and MUST NOT replace digest integrity.

If profile equals https://humanjudgment.org/jep/profiles/receipt/1, the referenced record is claiming the JEP Receipt Profile namespace. A verifier MUST NOT claim Receipt Profile validity unless that record was separately validated under the applicable Receipt Profile rules.

Within one dependency extension, two Parent Links MUST NOT identify the same logical parent under the same relation.

For jep-event, logical equality is Event Identity equality.

For digest-record, logical equality is exact digest-string equality.

A producer MAY refer to the same logical parent under two different profile-defined relations only when the semantics of those relations require that distinction.

6.5. Self-Dependency

A JAC event MUST NOT contain a jep-event parent whose Event Identity equals the current event's Event Identity.

A self-dependency is a JAC structural failure.

7. Examples

7.1. JAC Root

{
  "jep": "1",
  "id": "urn:uuid:018f4f8d-0000-7000-8000-000000000001",
  "verb": "J",
  "who": "did:example:agent-a",
  "when": 1790424000,
  "what": {
    "claim": "begin-analysis"
  },
  "ext": {
    "https://humanjudgment.org/jep/extensions/dependency/2": {
      "profile": "https://humanjudgment.org/jep/profiles/jac/2",
      "parents": []
    }
  },
  "ext_crit": [
    "https://humanjudgment.org/jep/extensions/dependency/2"
  ],
  "sig": "..."
}

7.2. Single JEP Parent

{
  "jep": "1",
  "id": "urn:uuid:018f4f8d-0000-7000-8000-000000000002",
  "verb": "J",
  "who": "did:example:agent-b",
  "when": 1790424010,
  "what": {
    "claim": "use-prior-analysis"
  },
  "ext": {
    "https://humanjudgment.org/jep/extensions/dependency/2": {
      "profile": "https://humanjudgment.org/jep/profiles/jac/2",
      "parents": [
        {
          "relation": "declared-dependency",
          "parent": {
            "kind": "jep-event",
            "event_identity": {
              "who": "did:example:agent-a",
              "id": "urn:uuid:018f4f8d-0000-7000-8000-000000000001"
            }
          }
        }
      ]
    }
  },
  "ext_crit": [
    "https://humanjudgment.org/jep/extensions/dependency/2"
  ],
  "sig": "..."
}

7.3. Multiple Parents with Exact Artifact Pin

{
  "profile": "https://humanjudgment.org/jep/profiles/jac/2",
  "parents": [
    {
      "relation": "declared-dependency",
      "parent": {
        "kind": "jep-event",
        "event_identity": {
          "who": "did:example:agent-a",
          "id": "urn:uuid:018f4f8d-0000-7000-8000-000000000001"
        },
        "event_hash": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
      }
    },
    {
      "relation": "declared-dependency",
      "parent": {
        "kind": "digest-record",
        "digest": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
        "profile": "https://humanjudgment.org/jep/profiles/receipt/1",
        "record_type": "behavior",
        "media_type": "application/json"
      }
    }
  ]
}

The second example fragment is the extension value only.

8. Dependency Graph Semantics

8.1. Direction

Each Parent Link creates a directed edge:

current event -> declared parent

The edge means only that the current event declares the parent as a dependency under the stated relation.

It does not, by itself, mean that the parent caused the current event.

8.2. Multiple Parents

A JAC event MAY declare multiple parents.

Multiple parents do not imply equal weight, joint sufficiency, complete input coverage, or causal exhaustiveness.

JAC-2 does not define a parent ordering.

8.3. Roots

An event with an empty parents array is a declared JAC root.

Root status is local to the declared JAC dependency structure.

A root declaration MUST NOT be interpreted as proof that no earlier real-world event, input, instruction, or cause existed.

8.4. Acyclicity

The baseline declared-dependency relation is acyclic.

A resolved dependency fragment containing a directed cycle under declared-dependency is invalid under JAC-2.

Cycle detection operates on logical JEP Event Identity nodes and digest-record digest identities.

An unresolved parent cannot by itself prove that a cycle exists or does not exist outside the observed fragment.

8.5. Partial Observation

JAC-2 uses an open-world, partial-fragment default.

A valid observed fragment does not imply that:

  • all parents were disclosed;
  • all relevant events were observed;
  • all real-world causes were represented;
  • the fragment is a complete chain;
  • the declared root is a real-world first cause.

A profile claiming complete-log or closed-world semantics MUST define those assumptions explicitly.

8.6. Unresolved Parents

An unresolved parent reference MAY remain structurally valid.

Whether unresolved parent resolution is required depends on the requested validation context.

A verifier MUST NOT convert an unresolved parent into a fabricated success, missing-parent fault, or proof of non-existence.

9. Receipt and External Record Dependencies

A JAC digest-record parent is identified by digest.

JAC verifies only the properties requested by the JAC validation context.

Digest equality establishes integrity identity for the referenced record; it does not establish the truth or sufficiency of that record.

If a referenced record declares another profile, such as JEP Receipt Profile, that profile's validity MUST be reported separately from JAC status.

JAC MUST NOT convert Receipt Profile validity into causal validity, authorization validity, or completeness.

10. Validation Model

10.1. Layer Separation

A JAC validation result separates:

  • underlying JEP validation status;
  • JAC profile checks;
  • JAC overall status;
  • fragment completeness statement.

JAC MUST NOT overwrite the JEP validation result.

10.2. Validation Contexts

JAC-2 defines two profile validation contexts:

link validates one event's dependency extension and parent-reference structure. Parent resolution is not required unless exact artifact integrity is explicitly requested.

fragment validates an observed multi-node dependency fragment. It requires cycle analysis over all resolved in-scope nodes and evaluates parent integrity according to the requested fragment policy.

A JEP implementation MAY invoke JAC fragment validation from JEP chain mode.

JAC context names are profile-local and are not new JEP validation modes.

10.3. JAC Checks

The initial JAC-2 check identifiers are:

  • https://humanjudgment.org/jep/profiles/jac/2#profile-binding
  • https://humanjudgment.org/jep/profiles/jac/2#dependency-extension
  • https://humanjudgment.org/jep/profiles/jac/2#parent-reference
  • https://humanjudgment.org/jep/profiles/jac/2#parent-resolution
  • https://humanjudgment.org/jep/profiles/jac/2#parent-integrity
  • https://humanjudgment.org/jep/profiles/jac/2#duplicate-parent
  • https://humanjudgment.org/jep/profiles/jac/2#self-dependency
  • https://humanjudgment.org/jep/profiles/jac/2#cycle
  • https://humanjudgment.org/jep/profiles/jac/2#fragment-consistency
  • https://humanjudgment.org/jep/profiles/jac/2#completeness-assumption

Check statuses use the JEP conformance vocabulary:

  • pass
  • fail
  • not_checked
  • not_applicable
  • unsupported
  • indeterminate

A verifier MUST NOT report an unperformed JAC check as pass.

10.5. Required Fragment Checks

For fragment context, the required checks are:

  • all required link checks for every in-scope JAC event;
  • parent-resolution for every parent that the requested fragment policy says must be resolved;
  • parent-integrity for every resolved parent carrying an exact-artifact pin or digest-record reference;
  • cycle;
  • fragment-consistency;
  • completeness-assumption.

If a required parent cannot be resolved and no required check has failed, JAC overall status is indeterminate.

fragment-consistency passes only when each included JEP Event Identity maps to one non-conflicting unsigned event content, all resolved parent identities are consistent with their references, and multiple artifacts for one Event Identity are treated as one logical node.

completeness-assumption passes when the verifier reports partial, or when an explicitly selected completeness profile authorizes complete-under-profile and all checks required by that profile pass.

10.6. Completeness Statement

A JAC result MUST report one of:

  • partial
  • complete-under-profile

The default is partial.

complete-under-profile MUST NOT be reported unless an explicitly selected profile defines the closed-world or complete-log assumptions and all required checks for those assumptions passed.

JAC-2 alone never establishes real-world causal completeness.

10.7. JAC Overall Status

The JAC overall status is one of:

  • valid
  • invalid
  • indeterminate

For the requested JAC context:

  • invalid means the underlying required JEP validation is invalid or at least one required JAC check failed;
  • indeterminate means no required check failed but the underlying required JEP validation is indeterminate or at least one required JAC check is unsupported, not checked, or indeterminate;
  • valid means the underlying required JEP validation is valid and every required JAC check passed or was not applicable.

valid does not mean causally true or complete.

10.8. Validation Procedure

A fragment validator SHOULD:

  • validate each in-scope JEP event under the requested JEP mode and profiles;
  • process the critical JAC dependency extension;
  • verify the JAC profile identifier;
  • parse and validate all Parent Links;
  • reject duplicate or self-dependencies;
  • resolve required parent objects;
  • verify Event Identity and optional Event Hash pins for JEP-event parents;
  • verify digest integrity for available digest-record parents;
  • construct the logical dependency graph;
  • detect cycles over the resolved in-scope fragment;
  • evaluate fragment consistency;
  • evaluate the declared completeness assumption;
  • return JEP results, JAC checks, JAC overall status, and completeness separately.

11. Validation Result Example

{
  "jac_status": "valid",
  "profile": "https://humanjudgment.org/jep/profiles/jac/2",
  "context": "fragment",
  "completeness": "partial",
  "subject_event": {
    "who": "did:example:agent-b",
    "id": "urn:uuid:018f4f8d-0000-7000-8000-000000000002"
  },
  "checks": {
    "https://humanjudgment.org/jep/profiles/jac/2#profile-binding": "pass",
    "https://humanjudgment.org/jep/profiles/jac/2#dependency-extension": "pass",
    "https://humanjudgment.org/jep/profiles/jac/2#parent-reference": "pass",
    "https://humanjudgment.org/jep/profiles/jac/2#parent-resolution": "pass",
    "https://humanjudgment.org/jep/profiles/jac/2#parent-integrity": "pass",
    "https://humanjudgment.org/jep/profiles/jac/2#duplicate-parent": "pass",
    "https://humanjudgment.org/jep/profiles/jac/2#self-dependency": "pass",
    "https://humanjudgment.org/jep/profiles/jac/2#cycle": "pass",
    "https://humanjudgment.org/jep/profiles/jac/2#fragment-consistency": "pass",
    "https://humanjudgment.org/jep/profiles/jac/2#completeness-assumption": "pass"
  },
  "warnings": [
    "fragment-is-partial"
  ],
  "errors": []
}

The result does not assert factual causality or complete history.

12. Verification Events

A JEP V event MAY record a JAC evaluation.

The V event MUST satisfy JEP-Core V requirements.

JAC-2 defines the following provisional profile-specific verification scopes:

  • https://humanjudgment.org/jep/profiles/jac/2#link-validation
  • https://humanjudgment.org/jep/profiles/jac/2#fragment-validation
  • https://humanjudgment.org/jep/profiles/jac/2#parent-integrity
  • https://humanjudgment.org/jep/profiles/jac/2#cycle-check

A V event MUST identify its target through JEP ref.

what.result records the semantic result of the declared V scope. It MUST NOT be confused with the independent per-check status vocabulary used by a JAC validator.

A V event MUST NOT imply chain completeness or causality beyond its declared scope.

13. Interaction with Delegation and Termination

JAC dependency edges do not create authorization.

A D event that also carries JAC dependency links remains a JEP Delegation statement. Whether the delegation is authorized belongs to the applicable delegation or mandate profile.

A T event that also carries JAC dependency links remains a JEP Termination statement.

JAC-2 does not define automatic termination cascade.

If a chain or domain profile requires a parent termination to change child eligibility, that profile MUST define:

  • which edge relations propagate the effect;
  • which termination scopes are relevant;
  • whether propagation is prospective or retrospective;
  • how unresolved descendants are handled;
  • how conflicting termination declarations are handled.

The existence of a JAC edge alone MUST NOT be treated as a termination propagation rule.

14. Optional Domain Semantics

Earlier JAC revisions defined extension identifiers for state, assignment, handoff, results, capability claims, input/output references, and declared breaks.

JAC-2 removes those items from the narrow waist.

Such semantics MAY be defined by separate profiles or domain specifications, but they MUST NOT be inferred from the baseline declared-dependency relation.

A domain profile defining additional dependency relations or adjacent metadata SHOULD specify:

  • identifier namespace;
  • data model;
  • relation semantics;
  • graph-processing rules;
  • conflict handling;
  • validation checks;
  • security considerations;
  • privacy considerations;
  • non-inference boundaries.

15. Conformance

15.1. JAC-2 Producer

A conforming JAC-2 Producer MUST:

  • produce a JEP event conforming to the applicable JEP Producer requirements;
  • include the JAC dependency extension;
  • list it in ext_crit;
  • use the JAC-2 profile identifier;
  • use only defined Parent Reference forms;
  • use Event Identity for logical JEP-event parents;
  • use Event Hash only as an optional exact-artifact pin;
  • reject self-dependency before signing;
  • avoid duplicate parent links.

15.3. JAC-2 Fragment Verifier

A conforming JAC-2 Fragment Verifier MUST additionally:

  • build graph nodes from logical Event Identity and digest-record identity;
  • resolve parents required by the selected fragment policy;
  • verify required exact-artifact and digest pins;
  • detect baseline declared-dependency cycles;
  • report fragment completeness explicitly;
  • avoid inferring omitted parents or real-world causes from a valid fragment.

16. Security Considerations

A valid JAC chain result does not establish factual causality.

Implementations MUST consider:

  • Event Identity/Event Hash confusion;
  • duplicate or conflicting Event Identity reuse;
  • self-dependency;
  • dependency cycles;
  • forged or substituted digest records;
  • unresolved parents;
  • omitted parents;
  • selective export of a misleading fragment;
  • profile confusion;
  • unknown critical extensions;
  • false complete-log assumptions;
  • semantic inflation from dependency to causality;
  • authorization inference from dependency;
  • termination-cascade inference from dependency.

Exact artifact pins MUST be verified when required by the validation context.

A verifier MUST NOT treat a URI retrieval location as integrity identity.

A verifier MUST NOT convert missing or unavailable parent material into proof that no parent exists.

17. Privacy Considerations

Dependency graphs can reveal:

  • actor relationships;
  • organizational structure;
  • workflow topology;
  • task dependencies;
  • receipt relationships;
  • tool or resource usage;
  • timing and coordination patterns;
  • hidden participants through correlation.

Implementations SHOULD minimize stable identifiers when they are not needed for interoperability.

Digest references can still enable correlation and dictionary attacks.

Partial exports MAY be used to reduce disclosure, but partial exports MUST NOT be presented as complete histories unless an applicable completeness profile supports that claim.

18. Non-Inference Boundary

JAC-2 records declared dependency structure.

A successful JAC validation MUST NOT be presented, by itself, as proof:

  • that a declared dependency is a real-world cause;
  • that all causes or parents were disclosed;
  • that the fragment is complete;
  • that a parent authorized a child;
  • that a child correctly followed a parent;
  • that a delegation chain is valid;
  • that termination propagated;
  • that an assignment or handoff was valid;
  • that a result was correct;
  • that responsibility, fault, or liability belongs to any actor;
  • that a legal or regulatory requirement was satisfied.

External profiles MAY use JAC evidence when making such determinations, but those conclusions remain outside JAC-2.

19. IANA Considerations

This document requests no IANA actions.

The JAC-2 profile identifier, dependency-extension identifier, JAC check identifiers, and JAC verification-scope identifiers are publisher-controlled HTTPS URI identifiers.

Future specifications MAY define registries if deployment experience shows that a stable shared registry is needed.

20. Changes from -02

Major changes from draft-wang-jac-02:

  • aligned JAC with JEP-Core 0.7, JEP Profiles-01, and JEP Conformance-01;
  • removed the HJS technical dependency from JAC-Core and aligned optional receipt references with JEP Receipt Profile;
  • introduced JAC-2 as an incompatible profile revision;
  • replaced https://jac.org/chain with publisher-controlled JEP namespace identifiers;
  • replaced the single based_on field with a parents array supporting zero or more parent dependencies;
  • changed logical JEP parent identity from Event Hash to Event Identity;
  • retained Event Hash only as optional exact signed-artifact pinning;
  • introduced explicit jep-event and digest-record Parent Reference forms;
  • defined empty parents as a declared JAC root without claiming a real-world first cause;
  • prohibited duplicate parent links and self-dependency;
  • defined baseline dependency direction and acyclicity;
  • defined open-world partial-fragment semantics;
  • defined unresolved-parent behavior;
  • defined link and fragment validation contexts without creating new JEP validation modes;
  • defined independent JAC checks and valid / invalid / indeterminate result semantics;
  • added explicit partial versus complete-under-profile completeness reporting;
  • removed state, assignment, handoff, result, capability, input/output, and declared-break extensions from the JAC narrow waist;
  • removed nonce and legacy replay assumptions;
  • removed examples that used pre-0.7 JEP field semantics;
  • clarified that JAC edges do not create authorization or termination cascade;
  • changed IANA language to request no action.

21. References

21.1. Normative References

[JEP]
Wang, Y., "Judgment Event Protocol (JEP)", Work in Progress, Internet-Draft, draft-wang-jep-judgment-event-protocol-07, , <https://datatracker.ietf.org/doc/html/draft-wang-jep-judgment-event-protocol-07>.
[JEP-CONFORMANCE]
Wang, Y., "JEP Conformance and Test Suite", Work in Progress, Internet-Draft, draft-wang-jep-conformance-01, , <https://datatracker.ietf.org/doc/html/draft-wang-jep-conformance-01>.
[JEP-PROFILES]
Wang, Y., "JEP Profiles and Interoperability", Work in Progress, Internet-Draft, draft-wang-jep-profiles-01, , <https://datatracker.ietf.org/doc/html/draft-wang-jep-profiles-01>.
[JEP-RECEIPT]
Wang, Y., "JEP Receipt Profile: Verifiable Behavior and Evidence Receipts", Work in Progress, Internet-Draft, draft-wang-jep-receipt-profile-00, , <https://datatracker.ietf.org/doc/html/draft-wang-jep-receipt-profile-00>.
[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, , <https://www.rfc-editor.org/rfc/rfc2119>.
[RFC8174]
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, , <https://www.rfc-editor.org/rfc/rfc8174>.