From 8c29d4bdaedb8f7cca1c7447acb8cc4e513099b2 Mon Sep 17 00:00:00 2001 From: hyperpolymath <6759885+hyperpolymath@users.noreply.github.com> Date: Tue, 7 Jul 2026 11:23:08 +0100 Subject: [PATCH] chore(ir): refresh vendored Trope IR schema to 0.2 (R-2026-07-07) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Companion to trope-checker#32 (issue trope-checker#28, ADR 0004): - design/trope-ir.schema.json: refreshed byte-for-byte from the canonical trope-checker schema — version const "0.1" -> enum ["0.1","0.2"] (R-2026-07-07: A1 two-sided deceptive zeros, A2 chain retention order, A3 Attenuated(0)->Present normalization at ingest; wire format unchanged, verdict semantics changed, hence one bump) - examples/*.ir.json: version "0.1" -> "0.2" (0.1 stays accepted by the checkers; examples track the current version) - build/just/trope.just: haec-examples now invokes the check script via {{justfile_directory()}} so `just check` works on older just releases (<=1.32 run imported recipes from the import's own directory) `just check` passes: examples well-formed, vendored schema matches the canonical checker schema, and the verdict round-trip through the rebuilt (normalizing) Idris2 reference checker is unchanged for all examples. Co-Authored-By: Claude Fable 5 --- build/just/trope.just | 4 +++- design/trope-ir.schema.json | 8 ++++++-- examples/faithful-record.ir.json | 2 +- examples/station-average.ir.json | 2 +- examples/survey-collapse.ir.json | 2 +- 5 files changed, 12 insertions(+), 6 deletions(-) diff --git a/build/just/trope.just b/build/just/trope.just index 37c9eb0..e44a53a 100644 --- a/build/just/trope.just +++ b/build/just/trope.just @@ -9,4 +9,6 @@ check: haec-examples haec-examples: - bash tests/check-examples.sh + # justfile_directory() so the recipe is cwd-robust: older just (≤1.32) runs + # imported recipes from THIS file's directory, newer just from the root. + bash {{justfile_directory()}}/tests/check-examples.sh diff --git a/design/trope-ir.schema.json b/design/trope-ir.schema.json index 3cc095f..8c6ecb9 100644 --- a/design/trope-ir.schema.json +++ b/design/trope-ir.schema.json @@ -10,7 +10,11 @@ "properties": { "$schema": { "type": "string" }, "$comment": { "type": "string" }, - "version": { "type": "string", "const": "0.1" }, + "version": { + "type": "string", + "enum": ["0.1", "0.2"], + "$comment": "0.2 is current (R-2026-07-07, ADR 0004: A1 two-sided deceptive zeros, A2 chain retention order, A3 Attenuated(0)->Present normalization at ingest — verdict semantics changed, wire format unchanged). 0.1 documents remain accepted and are normalized and graded identically under 0.2 semantics." + }, "profile": { "type": "string", "const": "prevent", @@ -31,7 +35,7 @@ "fieldName": { "enum": ["quality", "bearer", "context", "record"] }, "delta": { - "$comment": "A fidelity element of N union {inf, top}. Finite delta is tropical (min-plus) quantified loss; inf is total quantified loss; top is loss of unknown amount.", + "$comment": "A fidelity element of N union {inf, top}. Finite delta is tropical (min-plus) quantified loss; inf is total quantified loss; top is loss of unknown amount. Attenuated(0) is wire-legal and is normalized to Present at IR ingest (R-2026-07-07-03, A3): validators rewrite it before grading.", "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "string", "enum": ["inf", "top"] } diff --git a/examples/faithful-record.ir.json b/examples/faithful-record.ir.json index 606590b..00e2117 100644 --- a/examples/faithful-record.ir.json +++ b/examples/faithful-record.ir.json @@ -1,7 +1,7 @@ { "$schema": "https://github.com/hyperpolymath/trope-checker/schemas/trope-ir.schema.json", "$comment": "SPDX-FileCopyrightText: © 2026 Jonathan D.A. Jewell (hyperpolymath) . SPDX-License-Identifier: MPL-2.0", - "version": "0.1", + "version": "0.2", "profile": "prevent", "nodes": [ { diff --git a/examples/station-average.ir.json b/examples/station-average.ir.json index a17ee4b..2b418d6 100644 --- a/examples/station-average.ir.json +++ b/examples/station-average.ir.json @@ -1,7 +1,7 @@ { "$schema": "https://github.com/hyperpolymath/trope-checker/schemas/trope-ir.schema.json", "$comment": "SPDX-FileCopyrightText: © 2026 Jonathan D.A. Jewell (hyperpolymath) . SPDX-License-Identifier: MPL-2.0", - "version": "0.1", + "version": "0.2", "profile": "prevent", "nodes": [ { diff --git a/examples/survey-collapse.ir.json b/examples/survey-collapse.ir.json index dbec03c..3dde966 100644 --- a/examples/survey-collapse.ir.json +++ b/examples/survey-collapse.ir.json @@ -1,7 +1,7 @@ { "$schema": "https://github.com/hyperpolymath/trope-checker/schemas/trope-ir.schema.json", "$comment": "SPDX-FileCopyrightText: © 2026 Jonathan D.A. Jewell (hyperpolymath) . SPDX-License-Identifier: MPL-2.0", - "version": "0.1", + "version": "0.2", "profile": "prevent", "nodes": [ {