Objective. Confirm that the same UTC day anchored from two independent sources — a local ledger and discovered sidecars — yields identical digest and count. Everything is plain ASCII.
Inputs
- UTC date
YYYY-MM-DD. - Source A: local append-only ledger of full lines
SSMCLOCK1|iso_utc|rasi_idx|theta_deg|sha256(file)|chain[|kv:...] - Source B: discovered sidecar files containing the same full lines.
Procedure (deterministic, copy-ready)
- Collect same-day sets (per source).
- Select lines whose
iso_utcshare the UTC day keyYYYY-MM-DD(strict...Z, no subseconds).
- Select lines whose
- Canonical order each set by the tuple
(iso_utc, stamp_core, chain), wherestamp_core = "SSMCLOCK1|" + iso_utc + "|" + rasi_idx + "|" + theta_deg + "|" + sha256(file). - Literal join each ordered set:
"Stamp_1|...|Stamp_n"(single|, no leading/trailing|). - Hash each joined string:
rollup_D = sha256( ascii(Stamp_1 "|" ... "|" Stamp_n) )
Output must be lowercase 64-hex. - Compare parity: digests and counts must match across sources.
Expected results
rollup_D(ledger) == rollup_D(sidecars)count(ledger) == count(sidecars)
If they differ (root-cause checklist)
- Re-run UTC day selection (no local time).
- Re-emit
theta_degas recorded (fixedtheta_prec, round-half-to-even, IEEE-754 binary64); do not reprint/normalize lines. - Ensure lowercase 64-hex for digests.
- Confirm exact ASCII join with
|(no spaces, no newline separators). - Diff sets (ASCII) to list
missing_in_ledgerandmissing_in_sidecars. - Rewalk chain in the ledger to detect deletions/reorders:
chain_k = H_chain( ascii(chain_{k-1} + "|" + stamp_core_k) )withchain_0 = "0"*64.
Example (minimal parity report, ASCII)
VERIFY_DATE=2025-10-14
LEDGER_RECOMPUTE=<64-hex> COUNT=12
SIDECARS_RECOMPUTE=<64-hex> COUNT=12
ANCHOR_LEDGER_OK=true
ANCHOR_SIDECARS_OK=true
VERDICT=PASS
Why parity matters
Two independent reconstructions of the same day’s anchor make manipulation (subset, reorder, omission) obvious. The rules hinge only on public, reproducible strings.
Navigation
Back: SSM-Clock Stamp – Resync from Sidecars (repair local ledger) (5.5)
Next: SSM-Clock Stamp – Anchor Mismatch → Root-Cause (5.7)