The snapshot and manifest schemas, both example dataspaces, and the shared text renderer now pass the fixture validator and the negative contract tests. JSON, NDJSON, and Markdown frontmatter publish a snapshot only when rights, identity, and references allow it. CONTENT-WP-0001 and CONTENT-WP-0003 are marked finished against those artifacts. CONTENT-WP-0000-T04 stays open. SCOPE.md and the 19:05 scope-against-intent note record the stop. Assistant: grok Assistant-Session: 01a130f1-abfb-7d71-9cd6-a8b75ec7f95a
1.1 KiB
1.1 KiB
Fact policy v0.1
A claim is a statement about one entity field. It is not a proof. The snapshot keeps every claim. The manifest factPolicy only decides what a display may show.
| Situation | Claim shape | resolve_claims state |
|---|---|---|
| No claim for that key | absent | missing |
| The field was checked and has no value | status: unknown |
unknown |
| One asserted value | status: asserted |
present |
| The holder asked not to display it | status: withheld |
withheld |
| Two asserted values | both status: asserted |
contradicted |
Policies when values disagree:
show-allreturns every asserted value and statecontradicted.withholdreturns no values and statecontradicted.preferredreturns the single claim withpreferred: true. If none or more than one is marked, it returns no values and statecontradicted.
Absence is not the same as unknown, and unknown is not the same as false. A relation with no sourceRefs is invalid. It is not stored as an unsourced fact. Conflicting claims stay in the snapshot either way. The policy does not delete them.