from pathlib import Path
import shutil,hashlib,json
p=Path(__file__).parent
source=p/"teaching-v1";target=p/"teaching-backup"
if target.exists():shutil.rmtree(target)
shutil.copytree(source,target)
manifest={f.name:hashlib.sha256(f.read_bytes()).hexdigest() for f in source.iterdir() if f.is_file()}
assert manifest=={f.name:hashlib.sha256(f.read_bytes()).hexdigest() for f in target.iterdir() if f.is_file()}
(p/"backup-reference.json").write_text(json.dumps({"identity":"仅教学目录复制，不是Cherry原生备份或迁移","sha256":manifest},indent=2))
print("3 teaching files copied and hash verified")
