Files
OBLITERATUS/ci/conditional-test-policy.json
T

122 lines
4.1 KiB
JSON

{
"schema_version": 1,
"owner": "OBLITERATUS maintainers",
"workflow": ".github/workflows/conditional-tests.yml",
"cadence": "weekly and on published releases; manual dispatch is always available",
"evidence_retention_days": 30,
"maximum_evidence_age_days": 8,
"resources": {
"tiny_model": {
"repository": "hf-internal-testing/tiny-random-gpt2",
"revision": "71034c5d8bde858ff824298bdedc65515b97d2b9",
"trust_remote_code": false,
"cache": "GitHub Actions cache keyed by repository, revision, runner OS, and Python version",
"timeout_minutes": 20
}
},
"gates": [
{
"id": "model-download-runtime",
"job": "model_runtime",
"marker": "network and download",
"runner": "ubuntu-latest",
"prerequisites": "public HTTPS access to the pinned tiny model",
"expected_cost": "under 20 runner-minutes and 100 MB download",
"coverage_paths": [
"obliteratus/abliterate.py",
"obliteratus/auto_obliterate.py",
"obliteratus/bayesian_optimizer.py",
"obliteratus/evaluation/baselines.py",
"obliteratus/evaluation/evaluator.py",
"obliteratus/informed_pipeline.py",
"obliteratus/lora_ablation.py",
"obliteratus/sweep.py"
]
},
{
"id": "external-evaluation",
"job": "model_runtime",
"marker": "network and download",
"runner": "ubuntu-latest",
"prerequisites": "public HTTPS access to the pinned tiny model",
"expected_cost": "included in model-runtime",
"coverage_paths": [
"obliteratus/evaluation/heretic_eval.py",
"obliteratus/evaluation/lm_eval_integration.py",
"obliteratus/tourney.py"
]
},
{
"id": "network-services",
"job": "network_services",
"marker": "network",
"runner": "ubuntu-latest",
"prerequisites": "loopback networking; no credentials",
"expected_cost": "under 5 runner-minutes",
"coverage_paths": [
"obliteratus/bestiary_sync.py",
"obliteratus/models_client.py",
"obliteratus/watchtower.py"
]
},
{
"id": "operator-ui",
"job": "operator_ui",
"marker": "operator_ui",
"runner": "ubuntu-latest",
"prerequisites": "locked spaces extra; no public listener",
"expected_cost": "under 10 runner-minutes",
"coverage_paths": [
"obliteratus/interactive.py",
"obliteratus/local_ui.py",
"obliteratus/ui_watchtower.py"
]
},
{
"id": "cuda-runtime",
"job": "cuda",
"marker": "gpu",
"runner": "self-hosted, linux, x64, cuda",
"prerequisites": "ENABLE_CUDA_GATE=true and a dedicated CUDA runner",
"expected_cost": "under 15 self-hosted runner-minutes",
"coverage_paths": ["obliteratus/device.py", "obliteratus/models/loader.py"]
},
{
"id": "bitsandbytes-runtime",
"job": "cuda",
"marker": "gpu",
"runner": "self-hosted, linux, x64, cuda",
"prerequisites": "ENABLE_CUDA_GATE=true, NVIDIA CUDA, and locked bitsandbytes",
"expected_cost": "included in cuda",
"coverage_paths": ["obliteratus/models/loader.py"]
},
{
"id": "mps-runtime",
"job": "mps",
"marker": "mps",
"runner": "self-hosted, macOS, ARM64, mps",
"prerequisites": "ENABLE_MPS_GATE=true and an Apple Silicon MPS runner",
"expected_cost": "under 10 self-hosted runner-minutes",
"coverage_paths": ["obliteratus/device.py"]
},
{
"id": "mlx-runtime",
"job": "mlx",
"marker": "mlx",
"runner": "self-hosted, macOS, ARM64, mlx",
"prerequisites": "ENABLE_MLX_GATE=true and an Apple Silicon runner with MLX",
"expected_cost": "under 15 self-hosted runner-minutes",
"coverage_paths": ["obliteratus/mlx_backend.py"]
},
{
"id": "remote-execution",
"job": "remote",
"marker": "remote",
"runner": "ubuntu-latest",
"prerequisites": "ENABLE_REMOTE_GATE=true plus least-privileged SSH host, user, key, and pinned known_hosts secrets",
"expected_cost": "under 5 runner-minutes plus provider charges",
"coverage_paths": ["obliteratus/remote.py"]
}
]
}