SPEC v1.1 : une décroissance montrée nomme sa lecture
gardes du contrat / conformite (pull_request) Successful in 18s
gardes du contrat / conformite (pull_request) Successful in 18s
Un auditeur qui voit une confiance décrue ne peut pas la reproduire s'il ignore quelle fonction l'a produite, dans quelle version, à quelle date. Deux lectures divergentes du même verbatim se valent alors, sans qu'on puisse dire pourquoi : c'est l'opposabilité qui se fissure, non le fait. Champ 15 confidence_reading (§4.1), OPTIONNEL — présent seulement quand l'émetteur EXPOSE une valeur qu'il a dérivée ; ses quatre clés sont alors requises (policy, version, value, as_of). Le verbatim reste intact au champ 8. Règle de conformité au §9 : une valeur dérivée non déclarée n'est pas conforme. Additif et ignorable — un consommateur v1.0 le préserve et passe, comme §8 l'exige de tout champ inconnu. Relevé par une lecture extérieure du 2026-09-19 : « c'est une ligne du contrat, pas une ADR ». Elle avait raison sur les deux points. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
37077489de
commit
1954dcb704
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "https://prismagram.com/published-language/envelope/1.0/assertion.schema.json",
|
||||
"title": "Assertion Envelope v0.1",
|
||||
"description": "Producer contract for envelope v0.1 messages (SPEC.md §4). One cross-field rule cannot be expressed here and is enforced by the conformance runner: `jurisdiction` MUST equal the prefix of `id`.",
|
||||
"title": "Assertion Envelope v1.1",
|
||||
"description": "Producer contract for envelope v1.1 messages (SPEC.md §4). One cross-field rule cannot be expressed here and is enforced by the conformance runner: `jurisdiction` MUST equal the prefix of `id`.",
|
||||
"type": "object",
|
||||
"required": [
|
||||
"envelope",
|
||||
@@ -25,9 +25,10 @@
|
||||
"envelope": {
|
||||
"enum": [
|
||||
"0.1",
|
||||
"1.0"
|
||||
"1.0",
|
||||
"1.1"
|
||||
],
|
||||
"description": "Version of the contract. v1.0 is substantively identical to v0.1 (SPEC §8): both values validate. A message that does not declare its version is not versioned (A1 §3)."
|
||||
"description": "Version of the contract. v1.0 is substantively identical to v0.1 (SPEC §8): both values validate. v1.1 adds the optional declared reading (§4.1). A message that does not declare its version is not versioned (A1 §3)."
|
||||
},
|
||||
"id": {
|
||||
"type": "string",
|
||||
@@ -178,6 +179,40 @@
|
||||
"minLength": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
"confidence_reading": {
|
||||
"type": "object",
|
||||
"description": "OPTIONAL (SPEC §4.1, v1.1). Present only when the sender exposes a value it derived from `confidence`. A derived value shown without this object is not conformant: nobody could reproduce it.",
|
||||
"required": [
|
||||
"policy",
|
||||
"version",
|
||||
"value",
|
||||
"as_of"
|
||||
],
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"policy": {
|
||||
"type": "string",
|
||||
"minLength": 1,
|
||||
"description": "Name of the reading applied — not the value it produced."
|
||||
},
|
||||
"version": {
|
||||
"type": "string",
|
||||
"minLength": 1,
|
||||
"description": "Version of that reading. Two auditors on two dates must be able to tell whether they read alike."
|
||||
},
|
||||
"value": {
|
||||
"type": "number",
|
||||
"minimum": 0,
|
||||
"maximum": 1,
|
||||
"description": "The derived value. The verbatim one stays in `confidence`, untouched."
|
||||
},
|
||||
"as_of": {
|
||||
"type": "string",
|
||||
"format": "date-time",
|
||||
"description": "When the reading was taken. A decay without a date is not reproducible."
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"patternProperties": {
|
||||
|
||||
Reference in New Issue
Block a user