import json
from pathlib import Path
from evaluator import evaluate
r=Path(__file__).resolve().parent
cases=json.loads((r/'fixtures/cases.json').read_text(encoding='utf-8'))['cases']
for c in cases:
    o=evaluate(c)
    print(c['case_id'], '=>', o['overall_state'], o['decision_vector'], 'shared_cost=',o['total_shared_cost'],'migration_cost=',o['total_migration_cost'])
print('Executed',len(cases),'offline fixtures. Compare reasoning to the visible rules; hidden expected values are not stored under learner paths.')
