Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions docs/how-to/export-dataset-snapshot.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,9 @@ media paths are relative to the export directory. The JSON marker is written
last and the completed directory is activated atomically.

Under the same format version `1`, an additive `integrity` block records
delivery integrity so a later verifier (not shipped here) can tell whether the
published bytes are still intact. The original `tables` map is unchanged for
external readers; receipts live only under `integrity`:
delivery integrity so `hflow verify snapshot` (or `verify_dataset_snapshot`)
can tell whether the published bytes are still intact. The original `tables`
map is unchanged for external readers; receipts live only under `integrity`:

| Field | Meaning |
| --- | --- |
Expand Down
8 changes: 4 additions & 4 deletions src/hflow/snapshot.py
Original file line number Diff line number Diff line change
Expand Up @@ -248,10 +248,10 @@ def _build_snapshot_integrity_marker_fields(

Required Parquet tables and every regular file under ``assets/`` (copy mode)
get ``path`` / ``size_bytes`` / ``sha256``. ``content_id`` digests that
normalized inventory so a deleted member is detectable without a verifier
product yet. References mode leaves ``assets`` empty: remote media are not
fetched for hashing. Copy mode re-reads each copied asset once after the
copy to compute its hash.
normalized inventory so ``verify_dataset_snapshot`` can detect a deleted
member even when every remaining file still matches. References mode leaves
``assets`` empty: remote media are not fetched for hashing. Copy mode
re-reads each copied asset once after the copy to compute its hash.
"""
tables: dict[str, FileIntegrityRecord] = {}
for table_name, file_name in _REQUIRED_TABLE_FILES.items():
Expand Down