from pathlib import Path
import json
R=Path(__file__).resolve().parent
cases=json.loads((R/'fixtures/cases.json').read_text(encoding='utf-8'))['cases']
assert len(cases)==8
assert all(c.get('id') and c.get('module_pair') for c in cases)
assert any(c['direct_write'] for c in cases)
assert any(c['shared_model'] for c in cases)
assert any(c['physical_separate'] and c['direct_write'] for c in cases)
assert any(c['async'] and c['local_projection'] for c in cases)
assert any(c['sync'] and not c['async'] for c in cases)
assert any(c['transfer'] for c in cases)
print('PASS: 8 synthetic boundary fixtures are structurally valid; implement the ownership analysis in starter.py')
