Establish with evidence whether the Meraviglia ingestion path produces admissible evidence under the current truth model.
This is an audit, not a repair. No code changes in this issue.
Scope
1. EvidenceEventLog.append() bypass. record_observation() in scripts/reingest_msc_meraviglia_official_deckplan.py constructs EvidenceEvent objects directly and appends them to a plain Python list. EvidenceEventLog.append() — which validates artifact possession, locator presence, observer presence, and that a document class may support the claim — is never called. This applies to all 103 Meraviglia events, not a subset.
2. Unregistered Q-* vocabulary. No Meraviglia question id appears in evidence/registry/questions.json (16 registered: Q-0001…Q-0016). Per ADR-0002 I3, UNKNOWN is computed by comparing registered questions against the statement graph, so statements under unregistered questions are invisible to coverage measurement.
3. deck.venue_present semantic overloading. 76 Meraviglia statements use this one statement_type across at least three unrelated value domains: venue names, deck names on deck entities (e.g. msc-meraviglia:deck:4 → 'Kos'), and deck-list values. Quantify per value-kind.
Non-goals
No code changes. No re-ingestion. No question-registry additions. No EventLog hardening. No Bellissima work. No repair of any kind.
Acceptance criteria
A written audit that:
- counts affected events/statements per defect
- states which validations were skipped and what each would have caught
- determines whether any published knowledge depends on an unvalidated event
- recommends a sequenced repair with explicit blast radius
Ending in exactly one verdict: SAFE AS-IS / NEEDS REPAIR / NEEDS REPAIR BEFORE ANY NEW INGEST.
Evidence gates
- Every claim cites
file:line or a named artifact
- No conclusion drawn from test greenness
- Read-only:
git status --porcelain empty at completion
Context
Recorded during the historical-correction work (PRs #29–#31) and deliberately deferred there. See ADR-0005 "Out of scope", which explicitly declines to claim event admissibility.
Labels evidence and audit were approved for this issue but do not exist in the repository.
Establish with evidence whether the Meraviglia ingestion path produces admissible evidence under the current truth model.
This is an audit, not a repair. No code changes in this issue.
Scope
1.
EvidenceEventLog.append()bypass.record_observation()inscripts/reingest_msc_meraviglia_official_deckplan.pyconstructsEvidenceEventobjects directly and appends them to a plain Python list.EvidenceEventLog.append()— which validates artifact possession, locator presence, observer presence, and that a document class may support the claim — is never called. This applies to all 103 Meraviglia events, not a subset.2. Unregistered
Q-*vocabulary. No Meraviglia question id appears inevidence/registry/questions.json(16 registered: Q-0001…Q-0016). Per ADR-0002 I3, UNKNOWN is computed by comparing registered questions against the statement graph, so statements under unregistered questions are invisible to coverage measurement.3.
deck.venue_presentsemantic overloading. 76 Meraviglia statements use this one statement_type across at least three unrelated value domains: venue names, deck names on deck entities (e.g.msc-meraviglia:deck:4→'Kos'), and deck-list values. Quantify per value-kind.Non-goals
No code changes. No re-ingestion. No question-registry additions. No
EventLoghardening. No Bellissima work. No repair of any kind.Acceptance criteria
A written audit that:
Ending in exactly one verdict:
SAFE AS-IS/NEEDS REPAIR/NEEDS REPAIR BEFORE ANY NEW INGEST.Evidence gates
file:lineor a named artifactgit status --porcelainempty at completionContext
Recorded during the historical-correction work (PRs #29–#31) and deliberately deferred there. See ADR-0005 "Out of scope", which explicitly declines to claim event admissibility.
Labels
evidenceandauditwere approved for this issue but do not exist in the repository.