Files
ARCADIA-Studio/harness/experiments/save-diagnostics-package-20261001/raw/scripts/prepare-package46-model-oracle.py
T

20 lines
1.4 KiB
Python

from pathlib import Path
root = Path(__file__).resolve().parent
original = (root / 'native46/native-model-oracle.py').read_text(encoding='utf-8')
text = original
changes = [
("proof=json.loads(Path('C:/ar-compact-01a0d717/.local/package39/extraction-check.json').read_text(encoding='utf-8'))", "proof=json.loads((root/'extraction-check.json').read_text(encoding='utf-8'))"),
("[(bundle/'examples/release1','project.arcadia'),(root/'fresh-c','project.arcadia')]", "[(bundle/'examples/release1','project.arcadia'),(root/'working/collision-a','project.arcadia'),(root/'working/fresh-c','project.arcadia')]"),
('Assess pressure alarm QA46', 'Assess pressure alarm Package46'),
("assert models[1]==expected,'Complete saved Project must have only declared Activity-name delta'", "assert models[1]==models[2]==expected,'Both complete saved Projects must have only declared Activity-name delta'"),
]
for before, after in changes:
expected_occurrences = 2 if before == 'Assess pressure alarm QA46' else 1
assert text.count(before) == expected_occurrences, before
text = text.replace(before, after)
assert text != original and 'C:/ar-compact-' not in text and 'QA46' not in text
output = root / 'package46/native-model-oracle.py'
with output.open('x', encoding='utf-8', newline='\n') as f:
f.write(text)
print('Adapted known complete model/source oracle to the actual #46 extraction and both edited source destinations; execution pending')