# Команды проверки репозитория arm-ka-docs. Запуск из корня репозитория.
# Сервисных целей (lint/test/up...) здесь нет: описание общих целей сервисов — dev/checks.md.
VENV := .venv
# Если окружение создано (`make venv`) — берём его интерпретатор, иначе системный python3 (в нём должен быть jsonschema)
PY := $(if $(wildcard $(VENV)/bin/python),$(CURDIR)/$(VENV)/bin/python,python3)
CHANGE ?= slice-0-skeleton

.PHONY: venv validate-contracts validate-openspec check

# Единственная зависимость скриптов проверки контракта — jsonschema
venv:
	uv venv --python 3.11 --allow-existing $(VENV)
	uv pip install --python $(VENV)/bin/python jsonschema

# Примеры contracts/examples/ против трёх схем JSON Schema 2020-12
validate-contracts:
	$(PY) scripts/validate_contracts.py

# Спека текущего изменения OpenSpec (нужен CLI openspec в PATH)
validate-openspec:
	openspec validate $(CHANGE) --strict

check: validate-contracts validate-openspec
