{"version": "2.1.0", "$schema": "https://json.schemastore.org/sarif-2.1.0.json", "runs": [{"tool": {"driver": {"name": "Repobility", "informationUri": "https://repobility.com", "rules": [{"id": "scanner-ba82490511f37b22", "name": "Possibly dead Python function: fetch_batch", "shortDescription": {"text": "Possibly dead Python function: fetch_batch"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fee18c011b93d5a0", "name": "Possibly dead Python function: polygon_client", "shortDescription": {"text": "Possibly dead Python function: polygon_client"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a93c08aebda9a74b", "name": "Possibly dead Python function: decorator", "shortDescription": {"text": "Possibly dead Python function: decorator"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d63da3583b14afc0", "name": "Dockerfile runs as root: Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: Dockerfile"}, "fullDescription": {"text": "No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-177d8379263642b3", "name": "Docker base image is tag-pinned but not digest-pinned: public.ecr.aws/lambda/python:3.12", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: public.ecr.aws/lambda/python:3.12"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-28c4a04bd807da0c", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/checkout@v4 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c6cdbacedca1452c", "name": "GitHub Action tracks a moving branch", "shortDescription": {"text": "GitHub Action tracks a moving branch"}, "fullDescription": {"text": "cipher813/alpha-engine-docs/.github/actions/append-changelog@main can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ad6701f0a8405e22", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-099ee681b192c803", "name": "Very large file: training/meta_trainer.py (4475 lines)", "shortDescription": {"text": "Very large file: training/meta_trainer.py (4475 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-25f71b12e37a0676", "name": "Very large file: training/train_handler.py (1315 lines)", "shortDescription": {"text": "Very large file: training/train_handler.py (1315 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-505fd3cd3d9c8df5", "name": "Very large file: inference/stages/write_output.py (1391 lines)", "shortDescription": {"text": "Very large file: inference/stages/write_output.py (1391 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b827c7fe457f5f93", "name": "Very large file: inference/stages/run_inference.py (1110 lines)", "shortDescription": {"text": "Very large file: inference/stages/run_inference.py (1110 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 132 console/debugger/print-style debug statements in non-test source. This is a common fast-generation residue before production cleanup."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3c6b55e9ff2fe641", "name": "Commented-code block (6 lines) in config.py:47", "shortDescription": {"text": "Commented-code block (6 lines) in config.py:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1143e09af00a154e", "name": "Commented-code block (12 lines) in training/model_zoo.py:236", "shortDescription": {"text": "Commented-code block (12 lines) in training/model_zoo.py:236"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b793ed77057e1358", "name": "Legacy-named symbol `list_objects_v2` in training/meta_trainer.py:575", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in training/meta_trainer.py:575"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-724c5c687ffaaa92", "name": "Commented-code block (5 lines) in training/meta_trainer.py:62", "shortDescription": {"text": "Commented-code block (5 lines) in training/meta_trainer.py:62"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c7464b330ee8dda4", "name": "Commented-code block (7 lines) in training/train_handler.py:65", "shortDescription": {"text": "Commented-code block (7 lines) in training/train_handler.py:65"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-eaff6d3e9d2c9671", "name": "Commented-code block (5 lines) in training/risk_model_persist.py:60", "shortDescription": {"text": "Commented-code block (5 lines) in training/risk_model_persist.py:60"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e2518a6d89d2c9f5", "name": "Commented-code block (8 lines) in training/leakfree_meta_ic.py:182", "shortDescription": {"text": "Commented-code block (8 lines) in training/leakfree_meta_ic.py:182"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-245090a349e8ca89", "name": "Legacy-named symbol `no_git_sha_tag_legacy` in inference/deploy_drift.py:71", "shortDescription": {"text": "Legacy-named symbol `no_git_sha_tag_legacy` in inference/deploy_drift.py:71"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f1da2062e0c69909", "name": "Commented-code block (5 lines) in inference/deploy_drift.py:37", "shortDescription": {"text": "Commented-code block (5 lines) in inference/deploy_drift.py:37"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8e964cb0439a8ac1", "name": "Commented-code block (6 lines) in inference/daily_predict.py:49", "shortDescription": {"text": "Commented-code block (6 lines) in inference/daily_predict.py:49"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b9e78e1148726c07", "name": "Commented-code block (5 lines) in inference/handler.py:50", "shortDescription": {"text": "Commented-code block (5 lines) in inference/handler.py:50"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-78617463262f5ff2", "name": "Commented-code block (6 lines) in inference/lib_pin_drift.py:55", "shortDescription": {"text": "Commented-code block (6 lines) in inference/lib_pin_drift.py:55"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6ced4970f4ce0499", "name": "Commented-code block (6 lines) in inference/pipeline.py:54", "shortDescription": {"text": "Commented-code block (6 lines) in inference/pipeline.py:54"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-558b4d988f88cdfa", "name": "Legacy-named symbol `list_objects_v2` in inference/stages/fetch_alt_data.py:61", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in inference/stages/fetch_alt_data.py:61"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-815c600ef519fcbe", "name": "Commented-code block (5 lines) in inference/stages/load_prices.py:39", "shortDescription": {"text": "Commented-code block (5 lines) in inference/stages/load_prices.py:39"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bd6932c7ab7c403e", "name": "Commented-code block (6 lines) in inference/stages/write_output.py:217", "shortDescription": {"text": "Commented-code block (6 lines) in inference/stages/write_output.py:217"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9a2ae7189ee99503", "name": "Commented-code block (5 lines) in inference/stages/regime_fast_signal.py:157", "shortDescription": {"text": "Commented-code block (5 lines) in inference/stages/regime_fast_signal.py:157"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-22a0c684463d2227", "name": "Commented-code block (5 lines) in inference/stages/load_model.py:72", "shortDescription": {"text": "Commented-code block (5 lines) in inference/stages/load_model.py:72"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7719105a64bd8ccd", "name": "Commented-code block (14 lines) in inference/stages/load_universe.py:246", "shortDescription": {"text": "Commented-code block (14 lines) in inference/stages/load_universe.py:246"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6f156937b8f90d48", "name": "Commented-code block (7 lines) in inference/stages/run_inference.py:289", "shortDescription": {"text": "Commented-code block (7 lines) in inference/stages/run_inference.py:289"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3da8cd27aa58f34a", "name": "Commented-code block (7 lines) in tests/test_promotion_blocker_telemetry.py:126", "shortDescription": {"text": "Commented-code block (7 lines) in tests/test_promotion_blocker_telemetry.py:126"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b6023da5ced99490", "name": "Commented-code block (8 lines) in tests/test_inference_calibrator_guard.py:121", "shortDescription": {"text": "Commented-code block (8 lines) in tests/test_inference_calibrator_guard.py:121"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-171875c90490417c", "name": "Legacy-named symbol `test_handler_train_returns_400_deprecated` in tests/test_inference_handler.py:31", "shortDescription": {"text": "Legacy-named symbol `test_handler_train_returns_400_deprecated` in tests/test_inference_handler.py:31"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d761acd91c78329f", "name": "Legacy-named symbol `research_gbm_v1` in tests/test_research_gbm_scorer.py:178", "shortDescription": {"text": "Legacy-named symbol `research_gbm_v1` in tests/test_research_gbm_scorer.py:178"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f93545fec99e3b5c", "name": "Legacy-named symbol `alpha_v1` in tests/test_variant_cutover_gate.py:111", "shortDescription": {"text": "Legacy-named symbol `alpha_v1` in tests/test_variant_cutover_gate.py:111"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-019aa6c11ddb071d", "name": "Commented-code block (5 lines) in tests/test_variant_cutover_gate.py:228", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_variant_cutover_gate.py:228"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-11c5b8d3b93bfd58", "name": "Legacy-named symbol `test_wave3_reader_prefers_new_prefix_over_legacy` in tests/test_regime_features.py:198", "shortDescription": {"text": "Legacy-named symbol `test_wave3_reader_prefers_new_prefix_over_legacy` in tests/test_regime_features.py:198"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8283deab0791a79a", "name": "Commented-code block (5 lines) in tests/test_coverage_check.py:121", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_coverage_check.py:121"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9909c1eb978ca250", "name": "Commented-code block (5 lines) in tests/test_calibrator.py:430", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_calibrator.py:430"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d9751072d8f1bd6f", "name": "Commented-code block (6 lines) in tests/test_label_generator_triple_barrier.py:93", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_label_generator_triple_barrier.py:93"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f1e14d2a7c8242e7", "name": "Commented-code block (5 lines) in tests/test_subsample_validator.py:49", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_subsample_validator.py:49"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ffb3eca64919f890", "name": "Commented-code block (6 lines) in tests/test_meta_trainer_streaming.py:138", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_meta_trainer_streaming.py:138"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d944ae434e93fc18", "name": "Commented-code block (5 lines) in tests/test_regime_predictor_extended_macros.py:179", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_regime_predictor_extended_macros.py:179"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2a60e889e9f43b6c", "name": "Commented-code block (5 lines) in tests/test_gbm_scorer.py:219", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_gbm_scorer.py:219"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fa853677dfa22c78", "name": "Legacy-named symbol `list_objects_v2` in tests/test_fetch_alt_data.py:112", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in tests/test_fetch_alt_data.py:112"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-549cef7d754dea96", "name": "Commented-code block (5 lines) in tests/test_sample_weights.py:43", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_sample_weights.py:43"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e816e6f560983b78", "name": "Legacy-named symbol `no_git_sha_tag_legacy` in tests/test_deploy_drift_stack_state.py:215", "shortDescription": {"text": "Legacy-named symbol `no_git_sha_tag_legacy` in tests/test_deploy_drift_stack_state.py:215"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ab1c31dba57c2bb0", "name": "Commented-code block (6 lines) in tests/test_flow_doctor_wiring.py:111", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_flow_doctor_wiring.py:111"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-568ed8ea6579ed9b", "name": "Commented-code block (5 lines) in tests/test_inference_vol_aug_parallel.py:84", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_inference_vol_aug_parallel.py:84"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-71318528331178de", "name": "Legacy-named symbol `test_load_prices_prefers_reference_prefix_over_legacy` in tests/test_triple_barrier_cutover_runner_", "shortDescription": {"text": "Legacy-named symbol `test_load_prices_prefers_reference_prefix_over_legacy` in tests/test_triple_barrier_cutover_runner_wave3_readers.py:69"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-06162077b5669478", "name": "Commented-code block (7 lines) in tests/test_inference_triple_barrier_parallel.py:125", "shortDescription": {"text": "Commented-code block (7 lines) in tests/test_inference_triple_barrier_parallel.py:125"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6b0f1808768e320c", "name": "Commented-code block (6 lines) in tests/test_canonical_alpha_labels.py:227", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_canonical_alpha_labels.py:227"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5bd85efc7fde6590", "name": "Commented-code block (6 lines) in tests/test_regime_retrospective_eval.py:121", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_regime_retrospective_eval.py:121"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-712eddfe41653c4f", "name": "Commented-code block (6 lines) in tests/test_labeling_triple_barrier.py:154", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_labeling_triple_barrier.py:154"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1132c61202919ec1", "name": "Commented-code block (5 lines) in tests/test_meta_trainer_train_start_date.py:45", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_meta_trainer_train_start_date.py:45"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3cf085d1f3d322ec", "name": "Legacy-named symbol `gbm_v1` in tests/test_daily_predict.py:43", "shortDescription": {"text": "Legacy-named symbol `gbm_v1` in tests/test_daily_predict.py:43"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2176f5609b846120", "name": "Commented-code block (5 lines) in tests/test_momentum_veto.py:109", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_momentum_veto.py:109"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-92dfef9aac75792e", "name": "Commented-code block (5 lines) in tests/test_gbm_blender_fit_predict.py:53", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_gbm_blender_fit_predict.py:53"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-52ce0250cb56ecc0", "name": "Legacy-named symbol `list_objects_v2` in tests/test_regime_retrospective_eval_handler.py:36", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in tests/test_regime_retrospective_eval_handler.py:36"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6467237ece55c9f2", "name": "Legacy-named symbol `test_bear_stretches_matches_legacy` in tests/test_regime_drawdown.py:64", "shortDescription": {"text": "Legacy-named symbol `test_bear_stretches_matches_legacy` in tests/test_regime_drawdown.py:64"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f6fb055defbc1e55", "name": "Commented-code block (6 lines) in scripts/dry_run_meta_training.py:23", "shortDescription": {"text": "Commented-code block (6 lines) in scripts/dry_run_meta_training.py:23"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-336b5281747c61ec", "name": "Commented-code block (10 lines) in scripts/backfill_regime_fast_signal.py:169", "shortDescription": {"text": "Commented-code block (10 lines) in scripts/backfill_regime_fast_signal.py:169"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-da048beaabf17c3f", "name": "Legacy-named symbol `list_objects_v2` in scripts/momentum_ic_study_21d.py:127", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in scripts/momentum_ic_study_21d.py:127"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1017ea112bfcd765", "name": "Commented-code block (6 lines) in monitoring/drift_detector.py:45", "shortDescription": {"text": "Commented-code block (6 lines) in monitoring/drift_detector.py:45"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-eac5b0a3cb8e5851", "name": "Commented-code block (8 lines) in regime/handler.py:164", "shortDescription": {"text": "Commented-code block (8 lines) in regime/handler.py:164"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-09708745d81c97d2", "name": "Commented-code block (6 lines) in regime/bocpd.py:37", "shortDescription": {"text": "Commented-code block (6 lines) in regime/bocpd.py:37"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-672c75c74340656c", "name": "Commented-code block (9 lines) in regime/features.py:52", "shortDescription": {"text": "Commented-code block (9 lines) in regime/features.py:52"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0c6d29a2d55e5565", "name": "Commented-code block (8 lines) in regime/drawdown.py:98", "shortDescription": {"text": "Commented-code block (8 lines) in regime/drawdown.py:98"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d4fa94536de1bf78", "name": "Commented-code block (5 lines) in regime/retrospective_eval.py:70", "shortDescription": {"text": "Commented-code block (5 lines) in regime/retrospective_eval.py:70"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c9e39f6286093ee8", "name": "Legacy-named symbol `list_objects_v2` in regime/retrospective_eval_handler.py:125", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in regime/retrospective_eval_handler.py:125"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-12715d4f5ef39938", "name": "Commented-code block (5 lines) in regime/retrospective_eval_handler.py:207", "shortDescription": {"text": "Commented-code block (5 lines) in regime/retrospective_eval_handler.py:207"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8c838a1271ad7628", "name": "Commented-code block (5 lines) in regime/substrate.py:59", "shortDescription": {"text": "Commented-code block (5 lines) in regime/substrate.py:59"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-398d6dd8b665bdee", "name": "Commented-code block (5 lines) in analysis/triple_barrier_cutover_runner.py:113", "shortDescription": {"text": "Commented-code block (5 lines) in analysis/triple_barrier_cutover_runner.py:113"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-62845b0e981682c8", "name": "Commented-code block (6 lines) in model/research_features.py:23", "shortDescription": {"text": "Commented-code block (6 lines) in model/research_features.py:23"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e90711fea2748717", "name": "Commented-code block (7 lines) in model/gbm_scorer.py:257", "shortDescription": {"text": "Commented-code block (7 lines) in model/gbm_scorer.py:257"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fb17b8107c078f98", "name": "Commented-code block (5 lines) in model/stance_classifier.py:53", "shortDescription": {"text": "Commented-code block (5 lines) in model/stance_classifier.py:53"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a11b0f8d7b3e1644", "name": "Legacy-named symbol `research_gbm_v1` in model/research_gbm.py:309", "shortDescription": {"text": "Legacy-named symbol `research_gbm_v1` in model/research_gbm.py:309"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-40a10d74767bd1f4", "name": "Commented-code block (6 lines) in model/residual_momentum_scorer.py:47", "shortDescription": {"text": "Commented-code block (6 lines) in model/residual_momentum_scorer.py:47"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fda7a40247db7376", "name": "Commented-code block (5 lines) in model/subsample_validator.py:52", "shortDescription": {"text": "Commented-code block (5 lines) in model/subsample_validator.py:52"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1fbfef6aaf75511a", "name": "Commented-code block (6 lines) in model/regime_predictor.py:158", "shortDescription": {"text": "Commented-code block (6 lines) in model/regime_predictor.py:158"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-405c9f1dbc39ac7d", "name": "Commented-code block (9 lines) in model/meta_model.py:41", "shortDescription": {"text": "Commented-code block (9 lines) in model/meta_model.py:41"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-65e328e2285be8f5", "name": "Legacy-named symbol `list_objects_v2` in model/registry.py:55", "shortDescription": {"text": "Legacy-named symbol `list_objects_v2` in model/registry.py:55"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bc4952061a64fe8c", "name": "Commented-code block (5 lines) in model/registry.py:122", "shortDescription": {"text": "Commented-code block (5 lines) in model/registry.py:122"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2c04133e54348533", "name": "Near-duplicate function bodies in 2 places", "shortDescription": {"text": "Near-duplicate function bodies in 2 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\ntraining/model_zoo.py:train_weekly_rotation, training/model_zoo.py:run_rotation_and_select\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/24986"}, "properties": {"repository": "cipher813/alpha-engine-predictor", "repoUrl": "https://github.com/cipher813/alpha-engine-predictor", "branch": "main"}, "results": [{"ruleId": "scanner-ba82490511f37b22", "level": "note", "message": {"text": "Possibly dead Python function: fetch_batch"}, "properties": {"repobilityId": "1bcc962838a17dfc", "scanner": "scanner-primary", "fingerprint": "ba82490511f37b22", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "polygon_client.py:221"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-fee18c011b93d5a0", "level": "note", "message": {"text": "Possibly dead Python function: polygon_client"}, "properties": {"repobilityId": "1d8d33071bdc1afe", "scanner": "scanner-primary", "fingerprint": "fee18c011b93d5a0", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "polygon_client.py:342"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a93c08aebda9a74b", "level": "note", "message": {"text": "Possibly dead Python function: decorator"}, "properties": {"repobilityId": "ffbcbc9bc189af1c", "scanner": "scanner-primary", "fingerprint": "a93c08aebda9a74b", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "retry.py:14"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d63da3583b14afc0", "level": "warning", "message": {"text": "Dockerfile runs as root: Dockerfile"}, "properties": {"repobilityId": "a2ed1bd120e507db", "scanner": "scanner-primary", "fingerprint": "d63da3583b14afc0", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-177d8379263642b3", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: public.ecr.aws/lambda/python:3.12"}, "properties": {"repobilityId": "bbf47cd7b89763c4", "scanner": "scanner-primary", "fingerprint": "177d8379263642b3", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Dockerfile"}, "region": {"startLine": 17}}}]}, {"ruleId": "scanner-28c4a04bd807da0c", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "2aee2e2d969c7c6b", "scanner": "scanner-primary", "fingerprint": "28c4a04bd807da0c", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy.yml"}, "region": {"startLine": 32}}}]}, {"ruleId": "scanner-28c4a04bd807da0c", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "2aee2e2d969c7c6b", "scanner": "scanner-primary", "fingerprint": "28c4a04bd807da0c", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy.yml"}, "region": {"startLine": 44}}}]}, {"ruleId": "scanner-28c4a04bd807da0c", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "37a5a9bb8844ec91", "scanner": "scanner-primary", "fingerprint": "28c4a04bd807da0c", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy.yml"}, "region": {"startLine": 51}}}]}, {"ruleId": "scanner-28c4a04bd807da0c", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "cdd488c07b90bf4b", "scanner": "scanner-primary", "fingerprint": "28c4a04bd807da0c", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy.yml"}, "region": {"startLine": 54}}}]}, {"ruleId": "scanner-28c4a04bd807da0c", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "4319262162feb627", "scanner": "scanner-primary", "fingerprint": "28c4a04bd807da0c", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy.yml"}, "region": {"startLine": 57}}}]}, {"ruleId": "scanner-28c4a04bd807da0c", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "8c49f82bc1fad1c1", "scanner": "scanner-primary", "fingerprint": "28c4a04bd807da0c", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy.yml"}, "region": {"startLine": 63}}}]}, {"ruleId": "scanner-c6cdbacedca1452c", "level": "error", "message": {"text": "GitHub Action tracks a moving branch"}, "properties": {"repobilityId": "017dac74e74a3bb4", "scanner": "scanner-primary", "fingerprint": "c6cdbacedca1452c", "layer": "cicd", "severity": "high", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy.yml"}, "region": {"startLine": 84}}}]}, {"ruleId": "scanner-ad6701f0a8405e22", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "8384c23520d55657", "scanner": "scanner-primary", "fingerprint": "ad6701f0a8405e22", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-099ee681b192c803", "level": "note", "message": {"text": "Very large file: training/meta_trainer.py (4475 lines)"}, "properties": {"repobilityId": "6485e7c75f6a3667", "scanner": "scanner-primary", "fingerprint": "099ee681b192c803", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-25f71b12e37a0676", "level": "note", "message": {"text": "Very large file: training/train_handler.py (1315 lines)"}, "properties": {"repobilityId": "c52eccce4e418119", "scanner": "scanner-primary", "fingerprint": "25f71b12e37a0676", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-505fd3cd3d9c8df5", "level": "note", "message": {"text": "Very large file: inference/stages/write_output.py (1391 lines)"}, "properties": {"repobilityId": "f741d2de95669426", "scanner": "scanner-primary", "fingerprint": "505fd3cd3d9c8df5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b827c7fe457f5f93", "level": "note", "message": {"text": "Very large file: inference/stages/run_inference.py (1110 lines)"}, "properties": {"repobilityId": "ac95053a4c98de62", "scanner": "scanner-primary", "fingerprint": "b827c7fe457f5f93", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "cf71d16c7305827d", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "402727ae5823ae65", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-3c6b55e9ff2fe641", "level": "none", "message": {"text": "Commented-code block (6 lines) in config.py:47"}, "properties": {"repobilityId": "0afc996ffee2572d", "scanner": "scanner-primary", "fingerprint": "3c6b55e9ff2fe641", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1143e09af00a154e", "level": "none", "message": {"text": "Commented-code block (12 lines) in training/model_zoo.py:236"}, "properties": {"repobilityId": "cc1b632116c58be7", "scanner": "scanner-primary", "fingerprint": "1143e09af00a154e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b793ed77057e1358", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in training/meta_trainer.py:575"}, "properties": {"repobilityId": "20a0f5a15ca5236b", "scanner": "scanner-primary", "fingerprint": "b793ed77057e1358", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-724c5c687ffaaa92", "level": "none", "message": {"text": "Commented-code block (5 lines) in training/meta_trainer.py:62"}, "properties": {"repobilityId": "7002236be32b709e", "scanner": "scanner-primary", "fingerprint": "724c5c687ffaaa92", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c7464b330ee8dda4", "level": "none", "message": {"text": "Commented-code block (7 lines) in training/train_handler.py:65"}, "properties": {"repobilityId": "234df8c1416e6b15", "scanner": "scanner-primary", "fingerprint": "c7464b330ee8dda4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eaff6d3e9d2c9671", "level": "none", "message": {"text": "Commented-code block (5 lines) in training/risk_model_persist.py:60"}, "properties": {"repobilityId": "084007e51b682365", "scanner": "scanner-primary", "fingerprint": "eaff6d3e9d2c9671", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e2518a6d89d2c9f5", "level": "none", "message": {"text": "Commented-code block (8 lines) in training/leakfree_meta_ic.py:182"}, "properties": {"repobilityId": "b985dd1141871a2e", "scanner": "scanner-primary", "fingerprint": "e2518a6d89d2c9f5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-245090a349e8ca89", "level": "note", "message": {"text": "Legacy-named symbol `no_git_sha_tag_legacy` in inference/deploy_drift.py:71"}, "properties": {"repobilityId": "1b9db229e101790a", "scanner": "scanner-primary", "fingerprint": "245090a349e8ca89", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f1da2062e0c69909", "level": "none", "message": {"text": "Commented-code block (5 lines) in inference/deploy_drift.py:37"}, "properties": {"repobilityId": "6de93c8c44814644", "scanner": "scanner-primary", "fingerprint": "f1da2062e0c69909", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8e964cb0439a8ac1", "level": "none", "message": {"text": "Commented-code block (6 lines) in inference/daily_predict.py:49"}, "properties": {"repobilityId": "aea23acbe3d63fb0", "scanner": "scanner-primary", "fingerprint": "8e964cb0439a8ac1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b9e78e1148726c07", "level": "none", "message": {"text": "Commented-code block (5 lines) in inference/handler.py:50"}, "properties": {"repobilityId": "c48f9636d774d17f", "scanner": "scanner-primary", "fingerprint": "b9e78e1148726c07", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-78617463262f5ff2", "level": "none", "message": {"text": "Commented-code block (6 lines) in inference/lib_pin_drift.py:55"}, "properties": {"repobilityId": "ce27e0a7f1f325b8", "scanner": "scanner-primary", "fingerprint": "78617463262f5ff2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6ced4970f4ce0499", "level": "none", "message": {"text": "Commented-code block (6 lines) in inference/pipeline.py:54"}, "properties": {"repobilityId": "c30b19775f66f79f", "scanner": "scanner-primary", "fingerprint": "6ced4970f4ce0499", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-558b4d988f88cdfa", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in inference/stages/fetch_alt_data.py:61"}, "properties": {"repobilityId": "0eb977cae4f43aac", "scanner": "scanner-primary", "fingerprint": "558b4d988f88cdfa", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-815c600ef519fcbe", "level": "none", "message": {"text": "Commented-code block (5 lines) in inference/stages/load_prices.py:39"}, "properties": {"repobilityId": "e01a44e85819ff70", "scanner": "scanner-primary", "fingerprint": "815c600ef519fcbe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bd6932c7ab7c403e", "level": "none", "message": {"text": "Commented-code block (6 lines) in inference/stages/write_output.py:217"}, "properties": {"repobilityId": "c83f557e85f1ce88", "scanner": "scanner-primary", "fingerprint": "bd6932c7ab7c403e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9a2ae7189ee99503", "level": "none", "message": {"text": "Commented-code block (5 lines) in inference/stages/regime_fast_signal.py:157"}, "properties": {"repobilityId": "c2000140ac336132", "scanner": "scanner-primary", "fingerprint": "9a2ae7189ee99503", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-22a0c684463d2227", "level": "none", "message": {"text": "Commented-code block (5 lines) in inference/stages/load_model.py:72"}, "properties": {"repobilityId": "0541ec85d6ed57c9", "scanner": "scanner-primary", "fingerprint": "22a0c684463d2227", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7719105a64bd8ccd", "level": "none", "message": {"text": "Commented-code block (14 lines) in inference/stages/load_universe.py:246"}, "properties": {"repobilityId": "e40787042214dac2", "scanner": "scanner-primary", "fingerprint": "7719105a64bd8ccd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6f156937b8f90d48", "level": "none", "message": {"text": "Commented-code block (7 lines) in inference/stages/run_inference.py:289"}, "properties": {"repobilityId": "0fd4177837e48c66", "scanner": "scanner-primary", "fingerprint": "6f156937b8f90d48", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3da8cd27aa58f34a", "level": "none", "message": {"text": "Commented-code block (7 lines) in tests/test_promotion_blocker_telemetry.py:126"}, "properties": {"repobilityId": "5418c3c5108a4f65", "scanner": "scanner-primary", "fingerprint": "3da8cd27aa58f34a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b6023da5ced99490", "level": "none", "message": {"text": "Commented-code block (8 lines) in tests/test_inference_calibrator_guard.py:121"}, "properties": {"repobilityId": "6ac8c5d9aaf4bdbe", "scanner": "scanner-primary", "fingerprint": "b6023da5ced99490", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-171875c90490417c", "level": "note", "message": {"text": "Legacy-named symbol `test_handler_train_returns_400_deprecated` in tests/test_inference_handler.py:31"}, "properties": {"repobilityId": "6a49de5eace62d55", "scanner": "scanner-primary", "fingerprint": "171875c90490417c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d761acd91c78329f", "level": "note", "message": {"text": "Legacy-named symbol `research_gbm_v1` in tests/test_research_gbm_scorer.py:178"}, "properties": {"repobilityId": "34b70858894e1412", "scanner": "scanner-primary", "fingerprint": "d761acd91c78329f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f93545fec99e3b5c", "level": "note", "message": {"text": "Legacy-named symbol `alpha_v1` in tests/test_variant_cutover_gate.py:111"}, "properties": {"repobilityId": "074541df4a6c77ab", "scanner": "scanner-primary", "fingerprint": "f93545fec99e3b5c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-019aa6c11ddb071d", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_variant_cutover_gate.py:228"}, "properties": {"repobilityId": "b153b19ee0011e01", "scanner": "scanner-primary", "fingerprint": "019aa6c11ddb071d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-11c5b8d3b93bfd58", "level": "note", "message": {"text": "Legacy-named symbol `test_wave3_reader_prefers_new_prefix_over_legacy` in tests/test_regime_features.py:198"}, "properties": {"repobilityId": "4779e59b3b2e18d0", "scanner": "scanner-primary", "fingerprint": "11c5b8d3b93bfd58", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8283deab0791a79a", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_coverage_check.py:121"}, "properties": {"repobilityId": "f58889befb2bde71", "scanner": "scanner-primary", "fingerprint": "8283deab0791a79a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9909c1eb978ca250", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_calibrator.py:430"}, "properties": {"repobilityId": "1065e410cae4b0d5", "scanner": "scanner-primary", "fingerprint": "9909c1eb978ca250", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d9751072d8f1bd6f", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_label_generator_triple_barrier.py:93"}, "properties": {"repobilityId": "159501865b3a6ef6", "scanner": "scanner-primary", "fingerprint": "d9751072d8f1bd6f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f1e14d2a7c8242e7", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_subsample_validator.py:49"}, "properties": {"repobilityId": "3b6ab353712d0691", "scanner": "scanner-primary", "fingerprint": "f1e14d2a7c8242e7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ffb3eca64919f890", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_meta_trainer_streaming.py:138"}, "properties": {"repobilityId": "ccadcad77aad46f4", "scanner": "scanner-primary", "fingerprint": "ffb3eca64919f890", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d944ae434e93fc18", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_regime_predictor_extended_macros.py:179"}, "properties": {"repobilityId": "d20d62f973ed5a68", "scanner": "scanner-primary", "fingerprint": "d944ae434e93fc18", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2a60e889e9f43b6c", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_gbm_scorer.py:219"}, "properties": {"repobilityId": "e92445dd7c32db12", "scanner": "scanner-primary", "fingerprint": "2a60e889e9f43b6c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fa853677dfa22c78", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in tests/test_fetch_alt_data.py:112"}, "properties": {"repobilityId": "66d3e4674ca88ac7", "scanner": "scanner-primary", "fingerprint": "fa853677dfa22c78", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-549cef7d754dea96", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_sample_weights.py:43"}, "properties": {"repobilityId": "4e2189dc04db8040", "scanner": "scanner-primary", "fingerprint": "549cef7d754dea96", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e816e6f560983b78", "level": "note", "message": {"text": "Legacy-named symbol `no_git_sha_tag_legacy` in tests/test_deploy_drift_stack_state.py:215"}, "properties": {"repobilityId": "eb54387d65a0125c", "scanner": "scanner-primary", "fingerprint": "e816e6f560983b78", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ab1c31dba57c2bb0", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_flow_doctor_wiring.py:111"}, "properties": {"repobilityId": "7dc90c411b1e1529", "scanner": "scanner-primary", "fingerprint": "ab1c31dba57c2bb0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-568ed8ea6579ed9b", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_inference_vol_aug_parallel.py:84"}, "properties": {"repobilityId": "82884cb4baa4b016", "scanner": "scanner-primary", "fingerprint": "568ed8ea6579ed9b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-71318528331178de", "level": "note", "message": {"text": "Legacy-named symbol `test_load_prices_prefers_reference_prefix_over_legacy` in tests/test_triple_barrier_cutover_runner_wave3_readers.py:69"}, "properties": {"repobilityId": "b31c2b8373bc6cac", "scanner": "scanner-primary", "fingerprint": "71318528331178de", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-06162077b5669478", "level": "none", "message": {"text": "Commented-code block (7 lines) in tests/test_inference_triple_barrier_parallel.py:125"}, "properties": {"repobilityId": "e09d84f3361ccfa3", "scanner": "scanner-primary", "fingerprint": "06162077b5669478", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6b0f1808768e320c", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_canonical_alpha_labels.py:227"}, "properties": {"repobilityId": "1bd57baac159f15c", "scanner": "scanner-primary", "fingerprint": "6b0f1808768e320c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5bd85efc7fde6590", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_regime_retrospective_eval.py:121"}, "properties": {"repobilityId": "e05a6ddc4a39a282", "scanner": "scanner-primary", "fingerprint": "5bd85efc7fde6590", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-712eddfe41653c4f", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_labeling_triple_barrier.py:154"}, "properties": {"repobilityId": "b34843a961e930bf", "scanner": "scanner-primary", "fingerprint": "712eddfe41653c4f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1132c61202919ec1", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_meta_trainer_train_start_date.py:45"}, "properties": {"repobilityId": "8086a9be70de05cb", "scanner": "scanner-primary", "fingerprint": "1132c61202919ec1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3cf085d1f3d322ec", "level": "note", "message": {"text": "Legacy-named symbol `gbm_v1` in tests/test_daily_predict.py:43"}, "properties": {"repobilityId": "dd2d1bf4a2437978", "scanner": "scanner-primary", "fingerprint": "3cf085d1f3d322ec", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2176f5609b846120", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_momentum_veto.py:109"}, "properties": {"repobilityId": "a4d3d29e7d9218ac", "scanner": "scanner-primary", "fingerprint": "2176f5609b846120", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-92dfef9aac75792e", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_gbm_blender_fit_predict.py:53"}, "properties": {"repobilityId": "5371d7d5e663dac0", "scanner": "scanner-primary", "fingerprint": "92dfef9aac75792e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-52ce0250cb56ecc0", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in tests/test_regime_retrospective_eval_handler.py:36"}, "properties": {"repobilityId": "baa3f50eaa7bd9a1", "scanner": "scanner-primary", "fingerprint": "52ce0250cb56ecc0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6467237ece55c9f2", "level": "note", "message": {"text": "Legacy-named symbol `test_bear_stretches_matches_legacy` in tests/test_regime_drawdown.py:64"}, "properties": {"repobilityId": "2572b55d10b44953", "scanner": "scanner-primary", "fingerprint": "6467237ece55c9f2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f6fb055defbc1e55", "level": "none", "message": {"text": "Commented-code block (6 lines) in scripts/dry_run_meta_training.py:23"}, "properties": {"repobilityId": "4cb5b2a132d35c5e", "scanner": "scanner-primary", "fingerprint": "f6fb055defbc1e55", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-336b5281747c61ec", "level": "none", "message": {"text": "Commented-code block (10 lines) in scripts/backfill_regime_fast_signal.py:169"}, "properties": {"repobilityId": "3c09880118c114a4", "scanner": "scanner-primary", "fingerprint": "336b5281747c61ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-da048beaabf17c3f", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in scripts/momentum_ic_study_21d.py:127"}, "properties": {"repobilityId": "b8620aa5ada26389", "scanner": "scanner-primary", "fingerprint": "da048beaabf17c3f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1017ea112bfcd765", "level": "none", "message": {"text": "Commented-code block (6 lines) in monitoring/drift_detector.py:45"}, "properties": {"repobilityId": "c14b7f1b2730fc41", "scanner": "scanner-primary", "fingerprint": "1017ea112bfcd765", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eac5b0a3cb8e5851", "level": "none", "message": {"text": "Commented-code block (8 lines) in regime/handler.py:164"}, "properties": {"repobilityId": "497734306eb7fd9f", "scanner": "scanner-primary", "fingerprint": "eac5b0a3cb8e5851", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-09708745d81c97d2", "level": "none", "message": {"text": "Commented-code block (6 lines) in regime/bocpd.py:37"}, "properties": {"repobilityId": "9abfe6a7aab9d98d", "scanner": "scanner-primary", "fingerprint": "09708745d81c97d2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-672c75c74340656c", "level": "none", "message": {"text": "Commented-code block (9 lines) in regime/features.py:52"}, "properties": {"repobilityId": "356baae46a4013de", "scanner": "scanner-primary", "fingerprint": "672c75c74340656c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0c6d29a2d55e5565", "level": "none", "message": {"text": "Commented-code block (8 lines) in regime/drawdown.py:98"}, "properties": {"repobilityId": "1e421f33a975735e", "scanner": "scanner-primary", "fingerprint": "0c6d29a2d55e5565", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d4fa94536de1bf78", "level": "none", "message": {"text": "Commented-code block (5 lines) in regime/retrospective_eval.py:70"}, "properties": {"repobilityId": "4299897eec7c2c9b", "scanner": "scanner-primary", "fingerprint": "d4fa94536de1bf78", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c9e39f6286093ee8", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in regime/retrospective_eval_handler.py:125"}, "properties": {"repobilityId": "dd0645802aeedab8", "scanner": "scanner-primary", "fingerprint": "c9e39f6286093ee8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-12715d4f5ef39938", "level": "none", "message": {"text": "Commented-code block (5 lines) in regime/retrospective_eval_handler.py:207"}, "properties": {"repobilityId": "5c084fcd6ddf0c25", "scanner": "scanner-primary", "fingerprint": "12715d4f5ef39938", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8c838a1271ad7628", "level": "none", "message": {"text": "Commented-code block (5 lines) in regime/substrate.py:59"}, "properties": {"repobilityId": "c3de7411d200b0cb", "scanner": "scanner-primary", "fingerprint": "8c838a1271ad7628", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-398d6dd8b665bdee", "level": "none", "message": {"text": "Commented-code block (5 lines) in analysis/triple_barrier_cutover_runner.py:113"}, "properties": {"repobilityId": "cb2d4c7007168301", "scanner": "scanner-primary", "fingerprint": "398d6dd8b665bdee", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-62845b0e981682c8", "level": "none", "message": {"text": "Commented-code block (6 lines) in model/research_features.py:23"}, "properties": {"repobilityId": "be96935362b1f8e2", "scanner": "scanner-primary", "fingerprint": "62845b0e981682c8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e90711fea2748717", "level": "none", "message": {"text": "Commented-code block (7 lines) in model/gbm_scorer.py:257"}, "properties": {"repobilityId": "84dde862d220d2f1", "scanner": "scanner-primary", "fingerprint": "e90711fea2748717", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fb17b8107c078f98", "level": "none", "message": {"text": "Commented-code block (5 lines) in model/stance_classifier.py:53"}, "properties": {"repobilityId": "776dd80ec14b18b9", "scanner": "scanner-primary", "fingerprint": "fb17b8107c078f98", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a11b0f8d7b3e1644", "level": "note", "message": {"text": "Legacy-named symbol `research_gbm_v1` in model/research_gbm.py:309"}, "properties": {"repobilityId": "eae5f5817346d8b3", "scanner": "scanner-primary", "fingerprint": "a11b0f8d7b3e1644", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-40a10d74767bd1f4", "level": "none", "message": {"text": "Commented-code block (6 lines) in model/residual_momentum_scorer.py:47"}, "properties": {"repobilityId": "0e446db17b75ddc5", "scanner": "scanner-primary", "fingerprint": "40a10d74767bd1f4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fda7a40247db7376", "level": "none", "message": {"text": "Commented-code block (5 lines) in model/subsample_validator.py:52"}, "properties": {"repobilityId": "b6517d4c110248d8", "scanner": "scanner-primary", "fingerprint": "fda7a40247db7376", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1fbfef6aaf75511a", "level": "none", "message": {"text": "Commented-code block (6 lines) in model/regime_predictor.py:158"}, "properties": {"repobilityId": "0adc75f02f203de1", "scanner": "scanner-primary", "fingerprint": "1fbfef6aaf75511a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-405c9f1dbc39ac7d", "level": "none", "message": {"text": "Commented-code block (9 lines) in model/meta_model.py:41"}, "properties": {"repobilityId": "722cdb5c52304982", "scanner": "scanner-primary", "fingerprint": "405c9f1dbc39ac7d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-65e328e2285be8f5", "level": "note", "message": {"text": "Legacy-named symbol `list_objects_v2` in model/registry.py:55"}, "properties": {"repobilityId": "0c7c9e5fefec1fc2", "scanner": "scanner-primary", "fingerprint": "65e328e2285be8f5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bc4952061a64fe8c", "level": "none", "message": {"text": "Commented-code block (5 lines) in model/registry.py:122"}, "properties": {"repobilityId": "3069154a0d66ecfd", "scanner": "scanner-primary", "fingerprint": "bc4952061a64fe8c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "8cddd698205e5b1d", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "b2f7e9f2c6d51544", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "7256ffc351e875a0", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "16a2ad4dc13d3a21", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "1f2d910b93f7a4fd", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}]}]}