from research import *
s=begin(626,'Test evidence portability','Can the completed prefix replay from an extracted packet without access to current originals?',{'through':625,'test':'extract portable archive; verify snapshots and scripts with originals absent'},['Evidence package; read-only verifier'])
r=json.loads((ROOT/'prep/PORTABILITY_C625.json').read_text());fields=['status','sequential_steps','source_snapshot_hashes_verified','current_source_copies_checked','step_checks_replayed','replay_writes_blocked'];result={k:r[k] for k in fields}
finish(s,{'portable_test':result,'report_sha256':hashlib.sha256((ROOT/'prep/PORTABILITY_C625.json').read_bytes()).hexdigest()},'The extracted packet replayed all94 completed steps through C625 using28 source snapshots and no current originals. Its229 named checks passed with replay writes blocked. The evidence is portable beyond this working directory.','Verify current-source integrity and ensure the final draft retains the frozen controls.',{'portable_pass':r['status']=='PASS' and r['sequential_steps']==94,'snapshot_only':r['current_source_copies_checked']==0 and r['source_snapshot_hashes_verified']==28,'read_only':r['replay_writes_blocked'] is True})
