# Evidence E1 — validation Date: 2026-09-09. Scope: editable Curated Evidence v4 and the persistent local archive. ## Implemented behavior - Parser, renderer, authoring output and normalization share the existing typed payloads. Visible Markdown edits determine content for all eight kinds. Legacy v1–v3 conversion is explicit and lossless, with errors for content that cannot be represented exactly. - Manual declarations record the curator. A correction preserves the original document as lineage, separately from the current declaration. No source hash is needed to create a manual file. - The local archive records baselines, immutable candidates, active revisions and deletion/source suppression metadata. Unresolved review items and invalid edits block consolidation. Missing archive directories are availability failures, not deletions. - Activation failures preserve the previous active revision. Interrupted normalization replays only unchanged input bytes; later operator edits survive recovery. - Revision-checked correction methods reject stale workflow updates. Legacy preparation and resolution cannot overwrite an initialized local archive; explicit import/refresh integration is deferred to E3. ## Verification The final harness suite excluding opt-in L0/L2 and portable-layout cases passed with **1,180 tests** (58 deselected). All **9 portable-layout tests** passed separately with `THT_HOME` unset. The dedicated real-Qdrant integration test passed, including the optional 35-unit PSD probe. Ruff passed on the changed Evidence implementation and tests, and the strict documentation build succeeded. No frontend or backend TypeScript changes are part of E1. The integration test uses an isolated Qdrant 1.18.2 container, the actual corpus pipeline, semantic chunking, vector adapter and active Evidence searcher. Deterministic three-dimensional embeddings isolate file/content correctness from model behavior. It verifies that raw edits do not change recall, consolidation updates recalled content and curator identity, a blocked candidate preserves prior recall, and deletions remove recall. Existing schema and Memory records survive each operation. All **35 PSD units** were copied from the owner's workspace into `/private/tmp/thothii-e1-psd.bsW4cp`. Deterministic conversion preserved every ID, payload, scope, provenance and review item. There were no unresolved review items. The optional integration probe then indexed all 35 converted units and compared their complete ID set to the original. It uses PSD's actual `max_chunk_chars: 5000`; a preliminary probe at 4000 correctly blocked an oversized atomic unit. Reproduce the isolated real-corpus probe after creating a converted workspace copy: ```sh cd harness THT_E1_PSD_COPY=/absolute/path/to/converted-copy \ .venv/bin/pytest -q -s tests/test_evidence_editable_integration.py ``` The environment variable is optional. Ordinary CI uses only synthetic Evidence. No source refresh, external document download, DWH call or model request is involved. ## Delivery boundary E1 is a core/library increment. E2 must add the installed manual consolidation command, connect runtime source selection to the active local snapshot, and build administrative list/filter/detail with real persistent host paths and manual Git instructions. E3 adds source acquisition and explicit refresh/conflict handling. X1 later wires deliberate joint Memory/Evidence corrections into review gates. The actual PSD Evidence checkout was not converted. The live Docker preview at `http://127.0.0.1:8080` remains the previously deployed M3 stack, with no new Evidence administration page. The corpus conversion and reindexing described here used copies and disposable test resources.