feat(2): bluesky-pds P4 data-integrity overlay — deterministic atproto account marker (recipe-aware; catches running-app-holds-sqlite restore gap) via _p4.py + ops/test_upgrade/backup/restore

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-30 02:46:50 +01:00
parent 8e160af997
commit 74da6dc46b
5 changed files with 139 additions and 0 deletions

22
tests/bluesky-pds/ops.py Normal file
View File

@ -0,0 +1,22 @@
"""bluesky-pds — pre-op seed hooks (Phase 1e HC3). The P4 marker is a deterministic atproto account
(recipe-aware data in the PDS sqlite under /pds, the backed-up volume) — see _p4.py. pre_restore
deletes the account so a successful restore is observable (non-vacuous)."""
import os
import sys
sys.path.insert(0, os.path.dirname(__file__))
import _p4 # noqa: E402
def pre_upgrade(domain, meta):
_p4.create_account(domain)
def pre_backup(domain, meta):
_p4.create_account(domain)
def pre_restore(domain, meta):
_p4.delete_account(domain)
assert not _p4.account_exists(domain), "marker account delete did not take (pre_restore)"