Attach per-string provenance to assembled text #105
Labels
No labels
area: build
area: ci
area: compare
area: data
area: engine
area: model
area: provenance
area: rite
area: validation
backport
blocked
breaking
confirmed
dependencies
duplicate
epic
github_actions
invalid
needs-info
needs-triage
php
priority: high
priority: low
priority: medium
regression
type: bug
type: chore
type: correction
type: docs
type: enhancement
type: feature
type: fix
type: perf
type: refactor
type: security
wontfix
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Directorium/Core#105
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
The platform requires per-string provenance for all text. Assembled output must carry the source and licence of every Latin and English string.
Acceptance criteria
Notes
Reuses the corpus provenance shape from v0.1.0.
Done in
fd26918and70f3133, with the locator half of the rule closed later ind073227.ACs: every assembled string carries
source+rights✓ (TextLeaf); assembly fails if any string lacks provenance ✓ — fail-closed at both the build gate (tools/generator/src/provenance.mjs, thrown frombuild.mjs) and at assembly (CorpusOfficeTextProviderTest::testProperFailsClosedWhenTheReferenceHasNoLatin); provenance queryable in the output ✓ — carried on each leaf in theofficeblock; tests verify provenance across an office ✓ —tests/Office/CorpusOfficeTextProviderTest.php, plustests/Golden/GoldenProvenanceLockTest.phpgating digest moves.Note
d073227tightened this after the fact: the gate checked that a text leaf cited a public-domain source but not that the citation carried a:locator, though the schema and comments claimed it did. Build-time guard only — corpus and golden digest unmoved.