{ "environment": [ "os", "kernel", "architecture", "python", "uv" ], "command_env_allowlist": [ "PATH", "HOME", "TMPDIR", "LANG", "VIRTUAL_ENV", "UV_CACHE_DIR" ], "secret_env_names": [], "forbidden_regexes": [], "hash_paths": [ "dashboard/page_views/accounts.py", "docs/data-model.md", "docs/interface-contract.md", "jarca_ledger_mcp/application/account_valuation_service.py", "jarca_ledger_mcp/application/accounts_write_services.py", "jarca_ledger_mcp/application/assets_service.py", "jarca_ledger_mcp/application/imports_service.py", "jarca_ledger_mcp/infrastructure/sqlite/schema.py", "scripts/ci_fixture_db.py", "tests/test_account_valuations.py", "tests/test_issue_12_regressions.py", "tests/test_issue_12_review59_account.py", "tests/test_account_valuation_edge_contracts.py", "tests/test_asset_snapshot_idempotency.py", "tests/test_import_current_balance_authority.py", "tests/test_valuation_contract_docs.py", "jarca_ledger_mcp/adapters/mcp/server.py", "tests/test_account_basis_public_consumers.py" ], "commands": [ { "id": "review60-regressions", "purpose": "Run Review 60 and all independent-review named RED-to-GREEN regressions", "argv": [ "uv", "run", "--frozen", "--extra", "dev", "--extra", "dashboard", "pytest", "-q", "tests/test_account_valuation_edge_contracts.py", "tests/test_import_current_balance_authority.py", "tests/test_asset_snapshot_idempotency.py", "tests/test_valuation_contract_docs.py", "tests/test_account_basis_public_consumers.py", "tests/test_issue_12_regressions.py" ], "expected_exit_code": 0, "max_output_bytes": 65536, "claims": [ "review60-and-independent-regressions-green" ] }, { "id": "adversarial-compatibility", "purpose": "Run correction, replay, current authority, read-only, provenance, contract and documentation compatibility coverage", "argv": [ "uv", "run", "--frozen", "--extra", "dev", "--extra", "dashboard", "pytest", "-q", "tests/test_account_valuation_edge_contracts.py", "tests/test_import_current_balance_authority.py", "tests/test_asset_snapshot_idempotency.py", "tests/test_valuation_contract_docs.py", "tests/test_issue_12_regressions.py", "tests/test_account_valuations.py", "tests/test_asset_snapshots.py", "tests/test_issue_12_review59_account.py", "tests/test_issue_12_review59_reports.py", "tests/test_issue_12_review59_readonly.py", "tests/test_contract_regression.py", "tests/test_requirement_docs.py" ], "expected_exit_code": 0, "max_output_bytes": 65536, "claims": [ "adversarial-compatibility-green" ] }, { "id": "full-suite", "purpose": "Run the repository full test suite with declared optional dependencies", "argv": [ "uv", "run", "--frozen", "--extra", "dev", "--extra", "dashboard", "pytest", "-q", "-rs" ], "expected_exit_code": 0, "max_output_bytes": 65536, "claims": [ "full-suite-green" ] }, { "id": "ruff", "purpose": "Run repository lint gate", "argv": [ "uv", "run", "--frozen", "--extra", "dev", "--extra", "dashboard", "ruff", "check", "." ], "expected_exit_code": 0, "max_output_bytes": 65536, "claims": [ "ruff-green" ] }, { "id": "compileall", "purpose": "Compile Python sources, dashboard, tests and scripts", "argv": [ "python3", "-m", "compileall", "-q", "jarca_ledger_mcp", "dashboard", "tests", "scripts" ], "expected_exit_code": 0, "max_output_bytes": 65536, "claims": [ "compileall-green" ] }, { "id": "commit-diff-check", "purpose": "Validate committed rework diff whitespace", "argv": [ "git", "diff", "--check", "HEAD^", "HEAD" ], "expected_exit_code": 0, "max_output_bytes": 65536, "claims": [ "diff-check-green" ] } ], "limitations": [ "Four external PDF fixture tests are expected to skip when private sample files/passwords are unavailable.", "No actual financial data or production credential is used; tests use synthetic fixtures.", "Review 60 does not require a new real-browser observation; existing synthetic Streamlit/AppTest regressions remain in the full suite." ] }