diff options
| author | Ralph Amissah <ralph.amissah@gmail.com> | 2026-09-21 10:52:39 -0400 |
|---|---|---|
| committer | Ralph Amissah <ralph.amissah@gmail.com> | 2026-09-22 14:23:53 -0400 |
| commit | e1c9056903c2478066d5da8934d704f4d1935da4 (patch) | |
| tree | f3fbfee319f3947e216f996d5097480bf82d65cb /test/reference/abstraction/live-manual.en.ssp | |
| parent | test (ref-abstr-ssp): live-manual mended headers (diff) | |
abstraction: format 2.0, source.digests
format 2.0, source.digest covers every markup file, the sha256 over one
line per markup file, "<sha256> <filename>", sorted by filename.
source.digest was the sha256 of the master file as read, before any
insert. This is right for a .sst, which is the whole document. For a
.ssm with inserts .ssi (containing the substantive part of a documents
text) this is close to meaningless.
Considered change of meaning (rather than an addition) and given the
major part of the format version with it: 1.1 becomes 2.0, in the .ssp
header line and in the database's schema.version row together.
A 1.x reader refuses a 2.0 artefact, which is what that check is for.
- Sorted, so the value does not depend on the order a filesystem hands
back a directory.
- By filename (rather than by path), so it does not depend on where the
pod sits, which is the property the pod rebuild comparison rests on:
a pod unzipped elsewhere must still give the same abstraction.
Within one language every markup file lives in one directory, so a
filename identifies it.
Each line is checkable on its own against a digests.txt line or a files
row, which the single value was not. The whole is reproducible with
sha256sum and sort, and was verified that way for a one file document
and for a twenty file one.
An unreadable file is named in the digest rather than skipped. The parse
has failed elsewhere by then, and a digest that quietly left a file out
would claim the document is something it is not.
The reference abstractions are regenerated. Two lines change in each and
no others: the version, and the digest.
(assisted by Claude-Code)
Diffstat (limited to 'test/reference/abstraction/live-manual.en.ssp')
| -rw-r--r-- | test/reference/abstraction/live-manual.en.ssp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/test/reference/abstraction/live-manual.en.ssp b/test/reference/abstraction/live-manual.en.ssp index 63ebd14..174ba73 100644 --- a/test/reference/abstraction/live-manual.en.ssp +++ b/test/reference/abstraction/live-manual.en.ssp @@ -1,10 +1,10 @@ -% SiSU Document Abstraction v1.1 +% SiSU Document Abstraction v2.0 % Source: live-manual.ssm @source { language: en languages: en ca de es fr it ja pl pt_BR ro - digest: 5A7382F1D8029DAAE5F621B92E3C7210664585B43CAA4C327FDB5807AC2EBBEC + digest: 348382659EF5F76F8F2FE3F89078DCFB9A087E4A3F4CC1F9E60DC25A7782AD5C } @meta { |
