resource-control/Makefile
tegwick f8d1c542d5 feat: operational resource procurement facility
Implement RESOURCE-WP-0005: entity register, V0.1 terms parameters,
entity association on inventory and planning records, transfer-price
and credit-state arithmetic, monthly settlement, and entity views on
the portfolio report. Live close emits nothing until delivered cost
is known. Handoffs are FIN-WP-0006 and RAILIANCE-WP-0017.
2026-08-14 13:15:02 +02:00

29 lines
1 KiB
Makefile

.PHONY: test forecast variance control-cycle exchange-forecast optimization portfolio-report settlement
test:
python3 -m unittest discover -s tests -p 'test_*.py'
python3 tools/validate.py
forecast:
python3 tools/cost_model.py data/demand/platform-audit-storage.json data/providers/object-storage.json
variance:
@test -n "$(ACTUAL)" || { echo 'ACTUAL=data/actuals/YYYY-MM.json is required' >&2; exit 2; }
python3 tools/variance.py data/forecasts/platform-audit-storage-scaleway-base-2026-08.json $(ACTUAL)
control-cycle:
@test -n "$(FORECAST)" -a -n "$(ACTUAL)" || { echo 'FORECAST=... ACTUAL=... are required' >&2; exit 2; }
python3 tools/control_cycle.py $(FORECAST) $(ACTUAL)
exchange-forecast:
python3 tools/financial_exchange.py forecast data/forecasts/platform-audit-storage-scaleway-base-2026-08.json
optimization:
python3 tools/optimization.py $(CASE)
portfolio-report:
python3 tools/portfolio_report.py .
settlement:
@test -n "$(PERIOD)" || { echo 'PERIOD=YYYY-MM is required' >&2; exit 2; }
python3 tools/settlement.py close --period $(PERIOD)