fix(evidence): validate curated runtime corpus

This commit is contained in:
2026-08-25 01:59:27 +02:00
parent 9f0184388d
commit 0caa747914
11 changed files with 107 additions and 14 deletions
+1 -1
View File
@@ -51,7 +51,7 @@ Il frontend renderizza questi widget-descriptor (registro in `src/widgets/`); il
Il repository del workspace è il confine di pubblicazione: il curatore prepara `evidence/source/`,
revisa le unità in `evidence/curated/`, valida e fa merge. Per `evidence.schema_version: 2` il
runtime materializza l'intero albero `evidence/` dal commit Git esatto, ma il renderer consegna al
preprocessing soltanto `curated/**/*.md` dalla root immutabile della revisione. Sorgenti, manifest
preprocessing esattamente `curated/**/*.md` dalla root immutabile della revisione. Sorgenti, manifest
ed evaluation restano disponibili solo per tracciabilità. Il runtime non modifica, stagea, committa
o pubblica il repository di authoring.
+5 -5
View File
@@ -13,11 +13,11 @@ compatibility, where an omitted filesystem pattern defaults to `patterns: ["**/*
`max_bytes: 10485760`.
`evidence.schema_version: 2` declares the source/curated authoring layout. Its omitted filesystem
pattern defaults to `patterns: ["curated/**/*.md"]`; every explicit v2 filesystem pattern must also
remain below `curated/`. A v2 descriptor that selects `source/`, or spans both `source/` and
`curated/`, is rejected. Explicit safe legacy filesystem patterns remain supported under Evidence
version 1. HTTP and S3 sources do not use filesystem layout patterns and retain their existing
contracts.
pattern defaults to `patterns: ["curated/**/*.md"]`; if declared, the only accepted v2 filesystem
pattern list is exactly `patterns: ["curated/**/*.md"]`. A v2 descriptor that selects `source/`,
spans both `source/` and `curated/`, uses a broader curated glob, or selects a non-Markdown file is
rejected. Explicit safe legacy filesystem patterns remain supported under Evidence version 1. HTTP
and S3 sources do not use filesystem layout patterns and retain their existing contracts.
The v2 authoring tree is:
@@ -106,7 +106,7 @@ tht --installation <absolute>/thothii-installation.yaml workspace vector rebuild
before any bytes are written and no partial root is published.
- `preprocess evidence` and `preprocess run` operate directly on the materialized root; the
temporary `evidence_materialization_required` stop is retired (the code remains only for
pre-P6 compatibility). For `evidence.schema_version: 2`, runtime acquisition receives only
pre-P6 compatibility). For `evidence.schema_version: 2`, runtime acquisition receives exactly
`curated/**/*.md`; `source/` and support files remain in the materialized tree for traceability.
HTTP/S3 Evidence is unchanged.
- The curator validates Evidence before merge. Preprocessing validates the pinned curated corpus