Terms references, coverage declarations, envelope identity, session access context and content depth - #45
Merged
Conversation
This was referenced Aug 14, 2026
jalexspringer
force-pushed
the
v1-click-context
branch
from
August 17, 2026 07:57
50cf32a to
af939c9
Compare
…s_context, content_depth (#3, #42, #43, #44) Terms reference (new 5.2.4, #3). Optional event-level terms_ref, distinct from license_ref: the terms are the basis, the licence is the proof. A public URL or an opaque identifier both parties can resolve; private resolution conforms. Core carries the reference and does not resolve, validate or interpret it, and the terms it points at do not redefine core event semantics. Event-level only: a session-level default was considered and deferred because sessions legitimately span content under different terms. Occurrence and coverage (#42). Section 4.3 now states one occurrence boundary per core event: retrieval per completed fetch, grounding per distinct content item per declared scope, reproduction per source item per output element, presentation per rendering, engagement per observed action. "Qualifying occurrence" is defined, a conformance level is stated to be a capability claim rather than a coverage claim, and coverage becomes an explicit declaration (new 5.7.6): complete, sampled, aggregated or selected, over a stated relationship scope, with the rule for the last three objectively decidable at emission time and disclosed. Manifests MAY declare the modes machine-readably (8.5). Governing terms select events and coverage; they do not redefine semantics (SCOPE.md, the boundary recorded in #4). Envelope identity. manifest_ref joins the standalone event and event batch envelopes (7.1), the only envelope field naming the manifest - and so the domain - under which the emitter claims to report. SHOULD-level for standalone delivery under settlement or audit obligations. Session access context (new 5.1.3, #43). Sessions gain a data container mirroring the event-level field, closing the accidental extension point at the session root (11.1, 12.1). One core container: access_context, typed institutional identifiers (ror, saml_entity_id, isni, open vocabulary) - the institution whose access rights the session used, never an individual. Populated only where governing terms require it, placed inside the privacy model in 5.5 with intent/minimal pairing guidance. Content depth (6.1, #44). content_depth records how much of a content record a retrieval reached: metadata, abstract or full, open values, applicable from any source_role. Depth is what was reachable at retrieval, independent of what later entered a generation context. Four new fixtures. Conformance suite 78/78, worked examples 10/10. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…eans nothing (#3) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
jalexspringer
force-pushed
the
v1-terms-coverage-identity
branch
from
August 17, 2026 08:33
5afa1c4 to
8b7083c
Compare
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This was referenced Aug 18, 2026
jalexspringer
added a commit
that referenced
this pull request
Aug 22, 2026
…s branch The rebase onto v1-draft brought in fixtures and an inline example added by PRs #38, #41 and #45, none of which were swept by the v1 identity commit or carry the pinned violation this branch now requires. - CI installed plain `jsonschema`, so the hardened runners' format-checker guard aborted the job. The workflow now matches tests/README.md and installs `jsonschema[format-nongpl]`. - 17 fixtures and the §5.1.3 access_context example still declared schema_version 0.1. Bumped to 1.0; invalid-schema-version.json keeps its deliberately wrong value. - 8 invalid fixtures had no `_expected_error`. Each now pins its own violation, including the two application-layer provenance rules and the ctx_token pattern. Suite: 107/107 fixtures, 13/13 examples, 5/5 mutations caught. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Delivers four issues for the v1 release candidate. Based on
v1-click-context(PR #38); retargets tov1-draftwhen that merges.license_ref#3 — optional event-levelterms_ref, distinct fromlicense_ref(new 5.2.4): the terms are the basis, the licence is the proof. Opaque or URL; core does not resolve, validate or interpret it, and it does not redefine core event semantics. Event-level only; a session-level default was considered and deferred.complete,sampled,aggregated,selected, with decidability and disclosure rules and an optional machine-readabletelemetry.coveragein the manifest (8.5). Governing terms select events and coverage; they do not redefine semantics (SCOPE.md, Event semantics and their requirements belong to the licence, not the protocol #4).manifest_refon standalone event and event batch envelopes (7.1).datacontainer with typedaccess_contextinstitutional identifiers (new 5.1.3), terms-gated, placed inside the privacy model (5.5); the session root stops being an accidental extension point (11.1, 12.1).content_depth(metadata/abstract/full) on the retrieval data profile (6.1), anysource_role.Four new fixtures. Conformance suite 78/78, worked examples 10/10.
🤖 Generated with Claude Code