import json from pathlib import Path from glas_harness.cli import main from glas_harness.contract import ExecutionRequest def test_profiles_command_lists_committed_constellations(capsys) -> None: assert main(["profiles", "--json"]) == 0 rows = json.loads(capsys.readouterr().out) assert {row["rein_id"] for row in rows} == {"rein-aharness", "rein-openweights"} def test_execution_request_example_matches_contract() -> None: fixture = Path(__file__).resolve().parents[1] / "examples" / "execution-request.json" request = ExecutionRequest.model_validate_json(fixture.read_text()) assert request.harness_profile_ref == "harness.agent-dev-local@1.0.0" assert request.assignment_ref == "role-assignment:agent-7:42"