Files
OBLITERATUS/ci/test-risk-map.json
T
Joseph Magly ff0a298c6d Test Windows console and path portability contracts
Cover legacy console fallbacks, platform temp paths, local UI disk probing, and lazy analysis exports. Bind the new local UI test to the executable source-to-test risk map.
2026-08-15 03:13:27 -04:00

530 lines
21 KiB
JSON

{
"schema_version": 2,
"owner": "OBLITERATUS maintainers",
"source_inventory": {
"roots": ["app.py", "obliteratus"],
"coverage_roots": ["obliteratus"]
},
"contract_surfaces": [
{
"id": "package-entrypoints",
"owner": "packaging maintainers",
"description": "Installed package exports, module entry points, console dispatch, and optional application construction",
"contract_types": ["package-entrypoint", "public-interface", "operator-ui"],
"paths": [
"app.py",
"obliteratus/__init__.py",
"obliteratus/__main__.py",
"obliteratus/analysis/__init__.py",
"obliteratus/evaluation/__init__.py",
"obliteratus/models/__init__.py",
"obliteratus/reporting/__init__.py",
"obliteratus/strategies/__init__.py"
],
"required_tests": [
"tests/test_cli.py",
"tests/test_cli_boundaries.py",
"tests/test_module_imports.py",
"tests/test_package_export_contracts.py",
"tests/conditional/test_operator_ui.py"
]
},
{
"id": "core-pipeline",
"owner": "abliteration pipeline maintainers",
"description": "Model mutation, orchestration, automated search, study execution, sweeps, and tournament lifecycle",
"contract_types": ["model-mutation", "model-runtime", "orchestration", "persistence"],
"paths": [
"obliteratus/abliterate.py",
"obliteratus/persistence_contracts.py",
"obliteratus/auto_obliterate.py",
"obliteratus/bayesian_optimizer.py",
"obliteratus/informed_pipeline.py",
"obliteratus/lora_ablation.py",
"obliteratus/runner.py",
"obliteratus/sweep.py",
"obliteratus/tourney.py"
],
"required_tests": [
"tests/test_abliterate.py",
"tests/test_abliterate_extended.py",
"tests/test_auto_obliterate.py",
"tests/test_bayesian_optimizer_contracts.py",
"tests/test_informed_pipeline.py",
"tests/test_informed_pipeline_contracts.py",
"tests/test_offline_integration.py",
"tests/test_runner_boundaries.py",
"tests/test_sweep_contracts.py",
"tests/test_checkpoint_atomicity.py",
"tests/test_persistence_contracts.py",
"tests/test_persistence_pipeline.py"
]
},
{
"id": "configuration-and-selection",
"owner": "runtime compatibility maintainers",
"description": "Configuration, defaults, model profiles, architecture detection, device selection, loading, and preset contracts",
"contract_types": ["configuration", "architecture-selection", "device-boundary", "model-runtime"],
"paths": [
"obliteratus/adaptive_defaults.py",
"obliteratus/architecture_profiles.py",
"obliteratus/config.py",
"obliteratus/device.py",
"obliteratus/mlx_backend.py",
"obliteratus/model_profile.py",
"obliteratus/models/loader.py",
"obliteratus/presets.py",
"obliteratus/runtime_contracts.py",
"obliteratus/study_presets.py"
],
"required_tests": [
"tests/test_adaptive_defaults.py",
"tests/test_architecture_profiles.py",
"tests/test_config.py",
"tests/test_config_properties.py",
"tests/test_device_boundaries.py",
"tests/test_loader_boundaries.py",
"tests/test_mlx_backend_boundaries.py",
"tests/test_model_profile.py",
"tests/test_model_profile_contracts.py",
"tests/test_runtime_contracts.py",
"tests/test_study_presets.py"
]
},
{
"id": "public-interface-and-services",
"owner": "operator interface maintainers",
"description": "CLI and interactive interfaces, remote execution, service adapters, scheduling, and UI boundaries",
"contract_types": ["public-interface", "external-service", "remote-execution", "operator-ui"],
"paths": [
"obliteratus/bestiary_sync.py",
"obliteratus/cli.py",
"obliteratus/interactive.py",
"obliteratus/local_ui.py",
"obliteratus/models_client.py",
"obliteratus/remote.py",
"obliteratus/remote_contracts.py",
"obliteratus/ui_watchtower.py",
"obliteratus/watchtower.py"
],
"required_tests": [
"tests/test_cli.py",
"tests/test_cli_boundaries.py",
"tests/test_local_ui_portability.py",
"tests/test_remote_boundaries.py",
"tests/test_remote_contracts.py",
"tests/conditional/test_network_services.py",
"tests/conditional/test_operator_ui.py",
"tests/conditional/test_remote_runtime.py"
]
},
{
"id": "research-inputs-and-provenance",
"owner": "research integrity maintainers",
"description": "Prompt sources, hard negatives, community records, reproducibility controls, and telemetry schemas",
"contract_types": ["research-input", "research-output", "reproducibility", "persistence"],
"paths": [
"obliteratus/community.py",
"obliteratus/hard_negative.py",
"obliteratus/prompts.py",
"obliteratus/reproducibility.py",
"obliteratus/telemetry.py"
],
"required_tests": [
"tests/test_community.py",
"tests/test_hard_negative.py",
"tests/test_prompt_sources.py",
"tests/test_module_imports.py",
"tests/test_telemetry.py",
"tests/test_telemetry_failure_contracts.py"
]
},
{
"id": "analysis-methods",
"owner": "mechanistic analysis maintainers",
"description": "Mechanistic analysis algorithms, numerical invariants, transfer methods, and visualization contracts",
"contract_types": ["research-metric", "numerical-invariant", "research-output", "model-runtime"],
"paths": [
"obliteratus/analysis/activation_patching.py",
"obliteratus/analysis/activation_probing.py",
"obliteratus/analysis/alignment_imprint.py",
"obliteratus/analysis/anti_ouroboros.py",
"obliteratus/analysis/bayesian_kernel_projection.py",
"obliteratus/analysis/causal_tracing.py",
"obliteratus/analysis/concept_geometry.py",
"obliteratus/analysis/conditional_abliteration.py",
"obliteratus/analysis/cross_layer.py",
"obliteratus/analysis/cross_model_transfer.py",
"obliteratus/analysis/defense_robustness.py",
"obliteratus/analysis/leace.py",
"obliteratus/analysis/logit_lens.py",
"obliteratus/analysis/multi_token_position.py",
"obliteratus/analysis/numerical_contracts.py",
"obliteratus/analysis/probing_classifiers.py",
"obliteratus/analysis/residual_stream.py",
"obliteratus/analysis/riemannian_manifold.py",
"obliteratus/analysis/sae_abliteration.py",
"obliteratus/analysis/sparse_surgery.py",
"obliteratus/analysis/spectral_certification.py",
"obliteratus/analysis/steering_vectors.py",
"obliteratus/analysis/tuned_lens.py",
"obliteratus/analysis/utils.py",
"obliteratus/analysis/visualization.py",
"obliteratus/analysis/wasserstein_optimal.py",
"obliteratus/analysis/wasserstein_transfer.py",
"obliteratus/analysis/whitened_svd.py"
],
"required_tests": [
"tests/test_analysis.py",
"tests/test_analysis_utils.py",
"tests/test_breakthrough_modules.py",
"tests/test_causal_and_transfer.py",
"tests/test_defense_robustness.py",
"tests/test_leace.py",
"tests/test_logit_lens.py",
"tests/test_new_analysis_modules.py",
"tests/test_numerical_contracts.py",
"tests/test_novel_analysis.py",
"tests/test_visualization.py"
]
},
{
"id": "evaluation-and-benchmarks",
"owner": "evaluation maintainers",
"description": "Evaluation routing, benchmark execution, plots, statistical metrics, and external adapter results",
"contract_types": ["research-metric", "numerical-invariant", "research-output", "external-service"],
"paths": [
"obliteratus/evaluation/advanced_metrics.py",
"obliteratus/evaluation/baselines.py",
"obliteratus/evaluation/benchmark_plots.py",
"obliteratus/evaluation/benchmarks.py",
"obliteratus/evaluation/evaluator.py",
"obliteratus/evaluation/heretic_eval.py",
"obliteratus/evaluation/lm_eval_integration.py",
"obliteratus/evaluation/metrics.py"
],
"required_tests": [
"tests/test_advanced_metrics.py",
"tests/test_benchmark_plots.py",
"tests/test_benchmarks.py",
"tests/test_evaluator.py",
"tests/test_evaluation_reporting_contracts.py",
"tests/test_heretic_eval.py",
"tests/test_lm_eval_reporting_contracts.py",
"tests/test_metrics.py",
"tests/test_property_contracts.py",
"tests/test_remaining_cpu_contracts.py"
]
},
{
"id": "reporting",
"owner": "research reporting maintainers",
"description": "Report schemas, deterministic serialization, plotting, and persisted result artifacts",
"contract_types": ["research-output", "persistence", "numerical-invariant"],
"paths": ["obliteratus/reporting/report.py"],
"required_tests": [
"tests/test_report.py",
"tests/test_evaluation_reporting_contracts.py",
"tests/test_lm_eval_reporting_contracts.py"
]
},
{
"id": "ablation-strategies",
"owner": "ablation strategy maintainers",
"description": "Strategy registration, enumeration, architecture navigation, mutation, and restoration behavior",
"contract_types": ["ablation-strategy", "architecture-selection", "model-mutation"],
"paths": [
"obliteratus/strategies/base.py",
"obliteratus/strategies/embedding_ablation.py",
"obliteratus/strategies/ffn_ablation.py",
"obliteratus/strategies/head_pruning.py",
"obliteratus/strategies/layer_removal.py",
"obliteratus/strategies/registry.py",
"obliteratus/strategies/utils.py"
],
"required_tests": [
"tests/test_strategies.py",
"tests/test_strategy_navigation_contracts.py",
"tests/test_gemma4_support.py",
"tests/test_study_presets.py"
]
}
],
"modules": [
{
"path": "obliteratus/cli.py",
"risk_class": "cpu-contract",
"risk": "public parsing, validation, dispatch, and local/remote option propagation",
"required_tests": ["tests/test_cli.py", "tests/test_cli_boundaries.py"],
"conditional_gates": []
},
{
"path": "obliteratus/config.py",
"risk_class": "cpu-contract",
"risk": "configuration defaults, normalization, validation, and serialization",
"required_tests": ["tests/test_config.py", "tests/test_config_properties.py"],
"conditional_gates": []
},
{
"path": "obliteratus/architecture_profiles.py",
"risk_class": "cpu-contract",
"risk": "architecture detection and projection-path contracts",
"required_tests": ["tests/test_architecture_profiles.py", "tests/test_gemma4_support.py"],
"conditional_gates": []
},
{
"path": "obliteratus/community.py",
"risk_class": "cpu-contract",
"risk": "contribution schema, aggregation, and atomic persistence",
"required_tests": ["tests/test_community.py"],
"conditional_gates": []
},
{
"path": "obliteratus/telemetry.py",
"risk_class": "cpu-contract",
"risk": "research telemetry schema, aggregation, and filesystem behavior",
"required_tests": [
"tests/test_telemetry.py",
"tests/test_telemetry_failure_contracts.py"
],
"conditional_gates": []
},
{
"path": "obliteratus/reporting/report.py",
"risk_class": "cpu-contract",
"risk": "report schema, output paths, serialization, and plotting contracts",
"required_tests": [
"tests/test_report.py",
"tests/test_evaluation_reporting_contracts.py",
"tests/test_lm_eval_reporting_contracts.py"
],
"conditional_gates": []
},
{
"path": "obliteratus/evaluation/metrics.py",
"risk_class": "cpu-contract",
"risk": "research metric semantics and numerical invariants",
"required_tests": ["tests/test_metrics.py", "tests/test_property_contracts.py"],
"conditional_gates": []
},
{
"path": "obliteratus/evaluation/advanced_metrics.py",
"risk_class": "cpu-contract",
"risk": "refusal detection, confidence intervals, and robustness metrics",
"required_tests": [
"tests/test_advanced_metrics.py",
"tests/test_property_contracts.py",
"tests/test_remaining_cpu_contracts.py"
],
"conditional_gates": []
},
{
"path": "obliteratus/device.py",
"risk_class": "mixed-runtime",
"risk": "device and dtype selection across CPU, CUDA, and Apple backends",
"required_tests": ["tests/test_device_boundaries.py"],
"conditional_gates": ["cuda-runtime", "mps-runtime"]
},
{
"path": "obliteratus/runtime_contracts.py",
"risk_class": "cpu-contract",
"risk": "model request, memory, architecture scale, and dtype capability decisions",
"required_tests": ["tests/test_runtime_contracts.py"],
"conditional_gates": []
},
{
"path": "obliteratus/models/loader.py",
"risk_class": "mixed-runtime",
"risk": "model loading, cache, architecture, quantization, and device-map boundaries",
"required_tests": ["tests/test_loader_boundaries.py", "tests/test_offline_integration.py"],
"conditional_gates": ["cuda-runtime", "bitsandbytes-runtime"]
},
{
"path": "obliteratus/mlx_backend.py",
"risk_class": "mixed-runtime",
"risk": "MLX model discovery, tensor placement, mutation, and persistence",
"required_tests": ["tests/test_mlx_backend_boundaries.py"],
"conditional_gates": ["mlx-runtime"]
},
{
"path": "obliteratus/persistence_contracts.py",
"risk_class": "cpu-contract",
"risk": "checkpoint sizing, metadata serialization, atomic promotion, rollback, and cleanup",
"required_tests": [
"tests/test_checkpoint_atomicity.py",
"tests/test_persistence_contracts.py",
"tests/test_persistence_pipeline.py"
],
"conditional_gates": []
},
{
"path": "obliteratus/abliterate.py",
"risk_class": "mixed-runtime",
"risk": "core model mutation, checkpoint, evaluation, and save pipeline",
"required_tests": [
"tests/test_abliterate.py",
"tests/test_abliterate_extended.py",
"tests/test_checkpoint_atomicity.py",
"tests/test_persistence_contracts.py",
"tests/test_persistence_pipeline.py",
"tests/test_offline_integration.py"
],
"conditional_gates": ["model-download-runtime"]
},
{
"path": "obliteratus/auto_obliterate.py",
"risk_class": "mixed-runtime",
"risk": "automated search state, retry, scoring, and checkpoint behavior",
"required_tests": ["tests/test_auto_obliterate.py", "tests/test_remaining_cpu_contracts.py"],
"conditional_gates": ["model-download-runtime"]
},
{
"path": "obliteratus/bayesian_optimizer.py",
"risk_class": "conditional-runtime",
"risk": "optional optimizer trials over repeated live model mutation and evaluation",
"required_tests": [
"tests/test_bayesian_optimizer_contracts.py",
"tests/test_module_imports.py",
"tests/conditional/test_model_download_runtime.py"
],
"conditional_gates": ["model-download-runtime"]
},
{
"path": "obliteratus/evaluation/baselines.py",
"risk_class": "mixed-runtime",
"risk": "control baseline mutation and comparative evaluation",
"required_tests": [
"tests/test_evaluator.py",
"tests/test_evaluation_reporting_contracts.py",
"tests/conditional/test_model_download_runtime.py"
],
"conditional_gates": ["model-download-runtime"]
},
{
"path": "obliteratus/evaluation/evaluator.py",
"risk_class": "mixed-runtime",
"risk": "dataset bounds, causal/classifier evaluation, and result semantics",
"required_tests": [
"tests/test_evaluator.py",
"tests/test_evaluation_reporting_contracts.py",
"tests/test_offline_integration.py"
],
"conditional_gates": ["model-download-runtime"]
},
{
"path": "obliteratus/informed_pipeline.py",
"risk_class": "mixed-runtime",
"risk": "multi-stage pipeline orchestration and stage-result contracts",
"required_tests": [
"tests/test_informed_pipeline.py",
"tests/test_informed_pipeline_contracts.py",
"tests/test_offline_integration.py"
],
"conditional_gates": ["model-download-runtime"]
},
{
"path": "obliteratus/lora_ablation.py",
"risk_class": "conditional-runtime",
"risk": "optional adapter construction and validation against live projections",
"required_tests": ["tests/test_module_imports.py", "tests/conditional/test_model_download_runtime.py"],
"conditional_gates": ["model-download-runtime"]
},
{
"path": "obliteratus/sweep.py",
"risk_class": "conditional-runtime",
"risk": "parameter sweeps over repeated mutation and evaluation",
"required_tests": [
"tests/test_module_imports.py",
"tests/test_sweep_contracts.py",
"tests/conditional/test_model_download_runtime.py"
],
"conditional_gates": ["model-download-runtime"]
},
{
"path": "obliteratus/evaluation/heretic_eval.py",
"risk_class": "mixed-runtime",
"risk": "publication evaluation prompts, classifiers, scoring, and external adapters",
"required_tests": ["tests/test_heretic_eval.py", "tests/conditional/test_external_evaluation_runtime.py"],
"conditional_gates": ["external-evaluation"]
},
{
"path": "obliteratus/evaluation/lm_eval_integration.py",
"risk_class": "mixed-runtime",
"risk": "external benchmark adapter arguments, metric extraction, measured-zero semantics, and comparison output",
"required_tests": [
"tests/test_lm_eval_reporting_contracts.py",
"tests/test_module_imports.py",
"tests/conditional/test_external_evaluation_runtime.py"
],
"conditional_gates": ["external-evaluation"]
},
{
"path": "obliteratus/tourney.py",
"risk_class": "conditional-runtime",
"risk": "multi-model tournament mutation, comparison, and optional publication",
"required_tests": ["tests/test_module_imports.py", "tests/conditional/test_external_evaluation_runtime.py"],
"conditional_gates": ["external-evaluation"]
},
{
"path": "obliteratus/bestiary_sync.py",
"risk_class": "conditional-runtime",
"risk": "external catalog synchronization and malformed service responses",
"required_tests": ["tests/test_module_imports.py", "tests/conditional/test_network_services.py"],
"conditional_gates": ["network-services"]
},
{
"path": "obliteratus/models_client.py",
"risk_class": "conditional-runtime",
"risk": "catalog resolution across operator files and network services",
"required_tests": ["tests/test_module_imports.py", "tests/conditional/test_network_services.py"],
"conditional_gates": ["network-services"]
},
{
"path": "obliteratus/watchtower.py",
"risk_class": "conditional-runtime",
"risk": "scheduled scans, queue state, and live service responses",
"required_tests": ["tests/test_module_imports.py", "tests/conditional/test_network_services.py"],
"conditional_gates": ["network-services"]
},
{
"path": "obliteratus/interactive.py",
"risk_class": "conditional-runtime",
"risk": "interactive terminal prompts and operator decision flow",
"required_tests": ["tests/test_cli.py", "tests/conditional/test_operator_ui.py"],
"conditional_gates": ["operator-ui"]
},
{
"path": "obliteratus/local_ui.py",
"risk_class": "mixed-runtime",
"risk": "Gradio construction, launch configuration, authentication, and signals",
"required_tests": [
"tests/test_cli.py",
"tests/test_local_ui_portability.py",
"tests/conditional/test_operator_ui.py"
],
"conditional_gates": ["operator-ui"]
},
{
"path": "obliteratus/ui_watchtower.py",
"risk_class": "conditional-runtime",
"risk": "service-backed UI tabs and scheduler controls",
"required_tests": ["tests/test_module_imports.py", "tests/conditional/test_operator_ui.py"],
"conditional_gates": ["operator-ui"]
},
{
"path": "obliteratus/remote.py",
"risk_class": "mixed-runtime",
"risk": "SSH discovery, quoting, execution, cancellation, and result synchronization",
"required_tests": ["tests/test_remote_boundaries.py", "tests/conditional/test_remote_runtime.py"],
"conditional_gates": ["remote-execution"]
},
{
"path": "obliteratus/remote_contracts.py",
"risk_class": "cpu-contract",
"risk": "remote target validation, GPU selection normalization, and shell-safe command construction",
"required_tests": ["tests/test_remote_contracts.py", "tests/test_remote_boundaries.py"],
"conditional_gates": []
}
]
}