You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Align the public settings/gameplay Rust API with the current tests-first contract by replacing superseded generic evidence/provenance vocabulary with the concrete source, attribution, dataset, licensing, and source-mapping concepts consumers actually need.
Context
ADR-0012 replaced the earlier generic verification/evidence architecture with ordinary tests, expected/reference comparisons, source attribution, pinned revisions, licensing, reproducibility metadata, and client/runtime records where applicable.
Current public settings/gameplay types still expose names such as SettingEvidenceKind, SettingProvenance, EvidenceRef, and source-provenance-oriented errors. These names may encode useful facts, but the generic evidence/provenance vocabulary no longer represents the current architecture contract and should not become an accidental 1.x API commitment.
This is a terminology and contract-boundary cleanup, not a request to discard useful source attribution or dataset identity.
Scope
Inventory public settings/gameplay types and methods whose contract is expressed as generic evidence/provenance.
Identify the concrete fact each surface actually represents: source attribution, source kind, source location/mapping, dataset identity/version, license, reviewed source status, or editable source availability.
Rename or reshape public types only where the current name encodes the superseded generic architecture rather than a durable domain fact.
Preserve source attribution, pinned identity, licensing, reproducibility, and source-preserving edit behavior where they are required by real consumers/tests.
Keep fixture/test-only metadata out of the runtime public API unless a concrete consumer contract requires it.
Update documentation and tests to use direct terminology rather than introducing a replacement generic taxonomy.
Non-goals
Removing source attribution, licensing, dataset identity, or reproducibility metadata that has a concrete purpose.
Reintroducing a generic evidence hierarchy under different names.
Changing Workshop semantics or settings/gameplay behavior unrelated to the public contract cleanup.
Broad data-pipeline refactoring.
Treating implementation output as expected/reference data.
Acceptance criteria
Public settings/gameplay APIs no longer expose a generic evidence/provenance model that conflicts with ADR-0012 and the current architecture contract.
Every retained metadata type has a concrete meaning such as source attribution, source mapping/location, dataset identity/version, license, or reviewed source status.
Source-preserving settings edits continue to fail safely when required source location/content is unavailable or stale.
Gameplay/settings consumers retain the source/data facts they actually use without depending on a generic trust/evidence taxonomy.
Tests protect behavior and the supported public contract rather than obsolete terminology or internal representation.
No new generic evidence/provenance abstraction is introduced.
Parent: #252
Goal
Align the public settings/gameplay Rust API with the current tests-first contract by replacing superseded generic evidence/provenance vocabulary with the concrete source, attribution, dataset, licensing, and source-mapping concepts consumers actually need.
Context
ADR-0012 replaced the earlier generic verification/evidence architecture with ordinary tests, expected/reference comparisons, source attribution, pinned revisions, licensing, reproducibility metadata, and client/runtime records where applicable.
Current public settings/gameplay types still expose names such as
SettingEvidenceKind,SettingProvenance,EvidenceRef, and source-provenance-oriented errors. These names may encode useful facts, but the generic evidence/provenance vocabulary no longer represents the current architecture contract and should not become an accidental 1.x API commitment.This is a terminology and contract-boundary cleanup, not a request to discard useful source attribution or dataset identity.
Scope
Non-goals
Acceptance criteria
Dependencies / ownership
workshop-rsfor settings/gameplay public API and source/data contracts.