{"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-e5e5c69ae07b3592", "name": "Possibly dead Python function: case_names", "shortDescription": {"text": "Possibly dead Python function: case_names"}, "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-073cfa3f5eb420ab", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/enrichment-dead-letter.test.ts:54", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/enrichment-dead-letter.test.ts:54"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-71ee62edba0ea1de", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/fs-dir-asset-link.test.ts:56", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/fs-dir-asset-link.test.ts:56"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-95b7444df6a4159e", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/images-repo-meilisearch.test.ts:72", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/images-repo-meilisearch.test.ts:72"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d92a410623ef666c", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/people-route.test.ts:48", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/people-route.test.ts:48"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cb3eabcc8df5b10d", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/geocode-reverse.test.ts:36", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/geocode-reverse.test.ts:36"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-853f4f01d178f5ed", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/fs-dir-sidecars.test.ts:55", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/fs-dir-sidecars.test.ts:55"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d46be48f164155e9", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/observability-config.repo.test.ts:159", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/observability-config.repo.test.ts:159"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-16437f85a0cc5ed6", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/indexer-images-repo.test.ts:47", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/indexer-images-repo.test.ts:47"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-650891db7476ea2f", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/observability-route.test.ts:52", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/observability-route.test.ts:52"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-053ab9e78e4883a6", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/search-place-route.test.ts:82", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/search-place-route.test.ts:82"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-59d936bb2c138d48", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/indexer-dead-letter.test.ts:58", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/indexer-dead-letter.test.ts:58"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3fa813d5d34f45f8", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/search-route-meilisearch.test.ts:99", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/search-route-meilisearch.test.ts:99"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d90c511c8d76acb1", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/assets-overrides.test.ts:81", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/assets-overrides.test.ts:81"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fc7ca7be2037001a", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/jobs-route.test.ts:68", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/jobs-route.test.ts:68"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-875b420a2882dc4e", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/enrichment-route.test.ts:46", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/enrichment-route.test.ts:46"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-76d752f6561a44d8", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/admin-backfill-meilisearch.test.ts:77", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/admin-backfill-meilisearch.test.ts:77"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1261ff4f883e4d52", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/fs-dir-paging-sidecars.test.ts:60", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/fs-dir-paging-sidecars.test.ts:60"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ea58a4c09fd7317e", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/search/facets.test.ts:26", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/search/facets.test.ts:26"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8dd9c63f5528ac18", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/search/buckets.test.ts:41", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/search/buckets.test.ts:41"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b12eb9d1570f30c0", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/search/list.test.ts:27", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/search/list.test.ts:27"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dcaea45fd25f0497", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/search/scope.test.ts:38", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/search/scope.test.ts:38"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a0a2add483aa9314", "name": "Stray `console.log` in TS/JS \u2014 src/api/tests/fs/thumb.test.ts:147", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/fs/thumb.test.ts:147"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-046c1ad076bd8aae", "name": "Stray `console.log` in TS/JS \u2014 src/api/scripts/seed-fake-workers.ts:49", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/scripts/seed-fake-workers.ts:49"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6b15126a3f3e915a", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/enrichment/enrichment-config.repo.test.ts:58", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/enrichment/enrichment-config.repo.test.ts:58"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6d8d5bb8f6c878dc", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/enrichment/coordinate-cache.test.ts:49", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/enrichment/coordinate-cache.test.ts:49"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-33929067924f0f97", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/job-runner/jobs.repo.test.ts:50", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/job-runner/jobs.repo.test.ts:50"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c3c2def6a344d0a6", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/job-runner/runner.test.ts:52", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/job-runner/runner.test.ts:52"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c98fdd91e54c99a4", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/ffi/ffi-pool-config.repo.test.ts:113", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/ffi/ffi-pool-config.repo.test.ts:113"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2f9e6145872a16b7", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/assets.histogram.test.ts:111", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/assets.histogram.test.ts:111"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-86a4a99ef465f70a", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.upload.test.ts:83", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.upload.test.ts:83"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e886cbb7dc675e77", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.mkdir.test.ts:89", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.mkdir.test.ts:89"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1b4aa050fdf312eb", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.move.test.ts:95", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.move.test.ts:95"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b0af85a23ec628d3", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/assets.thumb-etag.test.ts:99", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/assets.thumb-etag.test.ts:99"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3796024a83964912", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.trash-list.test.ts:53", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.trash-list.test.ts:53"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1cd6fc005e4e538f", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/backup-exists.test.ts:115", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/backup-exists.test.ts:115"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-240a87c380467c4d", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.scan-relink.test.ts:37", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.scan-relink.test.ts:37"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7b287675b556b3ba", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.rescan.test.ts:54", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.rescan.test.ts:54"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6c260a3af83db32a", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.etag.test.ts:69", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.etag.test.ts:69"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-15d9fa70a42b0313", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/presets.test.ts:107", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/presets.test.ts:107"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0aaf49b54edfbba7", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/dedupe-config.repo.test.ts:42", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/dedupe-config.repo.test.ts:42"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6863b8c54dbca89b", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/dedupe.test.ts:52", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/dedupe.test.ts:52"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-899b8144186b2d1c", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/migration.test.ts:91", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/migration.test.ts:91"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cadb8ef3b429815f", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/routes.performance.test.ts:71", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/routes.performance.test.ts:71"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-19d821d863283bbe", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/missing-reaper.test.ts:47", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/missing-reaper.test.ts:47"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f2016c048af3688e", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/smoke.test.ts:40", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/smoke.test.ts:40"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-de787a4c9f3f8a8a", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/trash-gc.test.ts:46", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/trash-gc.test.ts:46"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2496e1551183709f", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/cache-gc.test.ts:52", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/cache-gc.test.ts:52"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-75979642f4865055", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/mirror/scan.test.ts:43", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/mirror/scan.test.ts:43"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-126d18fdc30756b1", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/mirror/copy.test.ts:44", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/mirror/copy.test.ts:44"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-db2a293de22810e5", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/migration/scrub-mirror-orphans.test.ts:48", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/migration/scrub-mirror-orphans.test.ts:48"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-491e888c4410d8b8", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/migration/restructure-backup-geo.test.ts:135", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/migration/restructure-backup-geo.test.ts:135"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c51f3b064e18db30", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/migration/restructure-backup-screenshots.test.ts:35", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/migration/restructure-backup-screenshots.test.ts:35"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-765c6bd6dbc65c0b", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.dedup.test.ts:31", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.dedup.test.ts:31"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-61e62826fd948bef", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.fileinfo.test.ts:30", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.fileinfo.test.ts:30"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-05cd01eead70d6f9", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.idempotency.test.ts:30", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.idempotency.test.ts:30"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-374245b5fc32d109", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.events.test.ts:29", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.events.test.ts:29"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f9f33588b75b99f2", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.skeleton.test.ts:30", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.skeleton.test.ts:30"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a315f3d6fa7aa0ba", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/stages/exif.merge.test.ts:31", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/stages/exif.merge.test.ts:31"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-40893e9eef2d03b5", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/stages/preview.test.ts:271", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/stages/preview.test.ts:271"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0fecbaf0eb213ebe", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/stages/thumb.test.ts:183", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/stages/thumb.test.ts:183"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7112075fc51e0e9c", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/imports/repo.test.ts:54", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/imports/repo.test.ts:54"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-236d0915f44b9f48", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/imports/worker.test.ts:50", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/imports/worker.test.ts:50"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b42d9afef0aa31a8", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/db/migrations.backfills.test.ts:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/db/migrations.backfills.test.ts:45"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-14fe3bea7ee8d893", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/db/migrations.core.test.ts:43", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/db/migrations.core.test.ts:43"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-64b9f239677decad", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/db/client.test.ts:49", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/db/client.test.ts:49"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e2d8030b33acd476", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/db/migrations.merge-duplicates.test.ts:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/db/migrations.merge-duplicates.test.ts:45"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-992cdea1eb09d1a8", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/indexer/libraries.cache.test.ts:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/indexer/libraries.cache.test.ts:45"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-db0ca045d88907b9", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/people/people.repo.test.ts:40", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/people/people.repo.test.ts:40"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f9b7d70841755bb4", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/people/cluster-pool.test.ts:48", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/people/cluster-pool.test.ts:48"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bc38523a2f51134f", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/people/clustering-job.test.ts:43", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/people/clustering-job.test.ts:43"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1e6d278e2c06eb8d", "name": "Stray `console.log` in TS/JS \u2014 src/api/src/fs/mirror-config.test.ts:49", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/fs/mirror-config.test.ts:49"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-89bbc613258d4adc", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/test_backup_smoke.ts:74", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/test_backup_smoke.ts:74"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-99f722dbda65e66c", "name": "TODO/FIXME marker in shipping code \u2014 src/web/projects/maple/src/app/search-page.component.ts:62", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 src/web/projects/maple/src/app/search-page.component.ts:62"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b7c54347a5180f99", "name": "Stray `console.log` in TS/JS \u2014 src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.service.ts:137", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.service.ts:137"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-38d7bda03f142ea6", "name": "TODO/FIXME marker in shipping code \u2014 src/web/e2e/bottom-sheet.spec.ts:24", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 src/web/e2e/bottom-sheet.spec.ts:24"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-539ee18767c5fe1d", "name": "Dockerfile runs as root: src/api/Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: src/api/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-dcf631c1e4608024", "name": "Docker base image is tag-pinned but not digest-pinned: rust:1.83-slim", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: rust:1.83-slim"}, "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-c903f1b536f80e64", "name": "Docker base image is tag-pinned but not digest-pinned: oven/bun:1.3-slim", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: oven/bun:1.3-slim"}, "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-aa5acaa49eb8315b", "name": "Containers defined but no K8s/orchestration manifest found", "shortDescription": {"text": "Containers defined but no K8s/orchestration manifest found"}, "fullDescription": {"text": "Repo has Dockerfiles/compose but no Kubernetes/Nomad manifests. If the target deployment is K8s, the manifests may live in a separate ops repo."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-61f8b6d8353ca93b", "name": "Insecure pattern 'domparser_html_parse' in docs/mobile/maple-mobile-spec.html:272", "shortDescription": {"text": "Insecure pattern 'domparser_html_parse' in docs/mobile/maple-mobile-spec.html:272"}, "fullDescription": {"text": "Found a known-risky pattern (domparser_html_parse). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f87a4773ee3471c9", "name": "Insecure pattern 'node_child_process' in src/api/src/enrichment/face-models-bootstrap.ts:29", "shortDescription": {"text": "Insecure pattern 'node_child_process' in src/api/src/enrichment/face-models-bootstrap.ts:29"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-47ba15ee57a1c066", "name": "Insecure pattern 'eval_used' in src/scripts/acr-reference/README.md:68", "shortDescription": {"text": "Insecure pattern 'eval_used' in src/scripts/acr-reference/README.md:68"}, "fullDescription": {"text": "Found a known-risky pattern (eval_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-73b22d23d303a3a0", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/cache@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-540560ed36fa7e3f", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/cache@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-79f006334dfd722e", "name": "Very large file: src/raw-pipeline/raw-core/src/decode.rs (1129 lines)", "shortDescription": {"text": "Very large file: src/raw-pipeline/raw-core/src/decode.rs (1129 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-c3ff6bb872011b36", "name": "Very large file: src/raw-pipeline/raw-core/src/color/dcp.rs (2188 lines)", "shortDescription": {"text": "Very large file: src/raw-pipeline/raw-core/src/color/dcp.rs (2188 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-06baabdeefa5956b", "name": "Very large file: src/api/src/routes/folders.ts (1348 lines)", "shortDescription": {"text": "Very large file: src/api/src/routes/folders.ts (1348 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-d0ca44d4f361a5b1", "name": "Very large file: src/api/src/db/schema.ts (1167 lines)", "shortDescription": {"text": "Very large file: src/api/src/db/schema.ts (1167 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-16b8a96cf9540b2d", "name": "Very large file: src/api/src/db/client.ts (1396 lines)", "shortDescription": {"text": "Very large file: src/api/src/db/client.ts (1396 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-141b30a41e03817b", "name": "No license file detected", "shortDescription": {"text": "No license file detected"}, "fullDescription": {"text": "No LICENSE/COPYING/NOTICE file was found. Generated repositories often omit licensing, which blocks reuse and automated intake."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-15b627f591c8f17c", "name": "Node manifest has dependencies but no lockfile: src/web/projects/maple-common/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: src/web/projects/maple-common/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "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 211 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-72b2a6250083a784", "name": "Placeholder or mock-heavy implementation detected", "shortDescription": {"text": "Placeholder or mock-heavy implementation detected"}, "fullDescription": {"text": "Found 97 placeholder/mock markers across 56 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "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-b9088664ace7f748", "name": "Composite production-readiness gap", "shortDescription": {"text": "Composite production-readiness gap"}, "fullDescription": {"text": "Multiple low-cost hardening controls are missing together: license, lockfile. Opus verification showed these co-occurring gaps are a better readiness signal than reading each flag in isolation."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-749d4bc1bd66df5f", "name": "Agent instructions exist but release-hardening basics are missing", "shortDescription": {"text": "Agent instructions exist but release-hardening basics are missing"}, "fullDescription": {"text": "AI-coder instruction files were found, but the repo is missing license, lockfile. Treat this as a contract gap: the agent is guided, but the generated output is not yet guarded by the controls that make it repeatable."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e725d2ab884fbd49", "name": "Multiple root agent instruction files without precedence", "shortDescription": {"text": "Multiple root agent instruction files without precedence"}, "fullDescription": {"text": "The repo has multiple top-level AI-coder instruction files. Without precedence rules, different agents may follow different policies."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4326e53b38604da3", "name": "Commented-code block (5 lines) in test-fixtures/face-clustering/scripts/generate.py:120", "shortDescription": {"text": "Commented-code block (5 lines) in test-fixtures/face-clustering/scripts/generate.py:120"}, "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-115d0b921d216e72", "name": "Network/subprocess call without timeout or try/except \u2014 tools/calibration/archived_derive_baseline_exposure.py:71", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 tools/calibration/archived_derive_baseline_exposure.py:71"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-133578006fc7479c", "name": "Commented-code block (8 lines) in src/api/tests/backup-ingest-helpers.ts:108", "shortDescription": {"text": "Commented-code block (8 lines) in src/api/tests/backup-ingest-helpers.ts:108"}, "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-5f8e076b5596f940", "name": "Commented-code block (12 lines) in src/api/tests/images-repo-meilisearch.test.ts:163", "shortDescription": {"text": "Commented-code block (12 lines) in src/api/tests/images-repo-meilisearch.test.ts:163"}, "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-6ba8b26bd954324b", "name": "Commented-code block (5 lines) in src/api/tests/people-route.test.ts:248", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/tests/people-route.test.ts:248"}, "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-6ab7a8ccd81c09f0", "name": "Commented-code block (7 lines) in src/api/tests/assets-restore.test.ts:264", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/tests/assets-restore.test.ts:264"}, "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-6a9bc27ae39a7de2", "name": "Commented-code block (10 lines) in src/api/tests/assets-upload.test.ts:55", "shortDescription": {"text": "Commented-code block (10 lines) in src/api/tests/assets-upload.test.ts: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-b398a8fa4e6ae9ef", "name": "Commented-code block (6 lines) in src/api/tests/backup-rendered.test.ts:68", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/tests/backup-rendered.test.ts:68"}, "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-60ca475e42909891", "name": "Commented-code block (5 lines) in src/api/tests/folders-trash-list.test.ts:65", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/tests/folders-trash-list.test.ts: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-4a371e9d05de4254", "name": "Commented-code block (5 lines) in src/api/tests/backup-ingest-cloud-dedup.test.ts:25", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/tests/backup-ingest-cloud-dedup.test.ts:25"}, "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-212f5d845473a438", "name": "Commented-code block (6 lines) in src/api/tests/backup-ingest.test.ts:9", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/tests/backup-ingest.test.ts:9"}, "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-e87fae22cf0934c3", "name": "Commented-code block (7 lines) in src/api/tests/workers-status-perf.test.ts:123", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/tests/workers-status-perf.test.ts:123"}, "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-72afbfa2e8255687", "name": "Commented-code block (10 lines) in src/api/tests/indexer-id.test.ts:103", "shortDescription": {"text": "Commented-code block (10 lines) in src/api/tests/indexer-id.test.ts:103"}, "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-8b4166b2ebd2b219", "name": "Commented-code block (6 lines) in src/api/tests/search-place-route.test.ts:504", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/tests/search-place-route.test.ts:504"}, "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-bf34d7fb75898c79", "name": "Commented-code block (5 lines) in src/api/tests/backup-state.test.ts:28", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/tests/backup-state.test.ts:28"}, "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-e0e33feb2211b3dc", "name": "Commented-code block (7 lines) in src/api/tests/fs-route.test.ts:6", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/tests/fs-route.test.ts:6"}, "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-5f95595144a74021", "name": "Commented-code block (5 lines) in src/api/tests/assets-xmp-conflict.test.ts:82", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/tests/assets-xmp-conflict.test.ts:82"}, "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-76171e866dbee465", "name": "Commented-code block (8 lines) in src/api/tests/fs-trash-move.test.ts:100", "shortDescription": {"text": "Commented-code block (8 lines) in src/api/tests/fs-trash-move.test.ts:100"}, "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-247f4ac6ce922566", "name": "Commented-code block (5 lines) in src/api/tests/request-context.test.ts:26", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/tests/request-context.test.ts:26"}, "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-838ad9a345ab0967", "name": "Commented-code block (6 lines) in src/api/tests/xmp-path-keyed.test.ts:267", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/tests/xmp-path-keyed.test.ts:267"}, "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-c835fdf661d4cd7d", "name": "Commented-code block (5 lines) in src/api/tests/fs-dir-paging-sidecars.test.ts:75", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/tests/fs-dir-paging-sidecars.test.ts:75"}, "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-940d6bc51747f1b0", "name": "Commented-code block (6 lines) in src/api/tests/fs-xmp-list-paired-sidecars.test.ts:53", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/tests/fs-xmp-list-paired-sidecars.test.ts: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-3f51846499071b39", "name": "Commented-code block (6 lines) in src/api/tests/auth/routes.bootstrap.test.ts:14", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/tests/auth/routes.bootstrap.test.ts:14"}, "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-83f3a9663dfbba22", "name": "Commented-code block (7 lines) in src/api/tests/search/buckets.test.ts:47", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/tests/search/buckets.test.ts: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-3f817012194056bb", "name": "Commented-code block (8 lines) in src/api/tests/fs/thumb.test.ts:165", "shortDescription": {"text": "Commented-code block (8 lines) in src/api/tests/fs/thumb.test.ts:165"}, "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-a4a75181cea0ab66", "name": "Commented-code block (6 lines) in src/api/scripts/seed-fake-workers.ts:74", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/scripts/seed-fake-workers.ts:74"}, "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-69bb65777d3b2751", "name": "Commented-code block (6 lines) in src/api/src/log.ts:73", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/log.ts:73"}, "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-4c483896da4d0fc7", "name": "Commented-code block (6 lines) in src/api/src/otel.ts:119", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/otel.ts:119"}, "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-05b242da374baad3", "name": "Commented-code block (5 lines) in src/api/src/index.ts:115", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/index.ts:115"}, "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-d181813880db5238", "name": "Commented-code block (5 lines) in src/api/src/otel-logs.ts:79", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/otel-logs.ts:79"}, "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-25b788f169590f3a", "name": "Commented-code block (6 lines) in src/api/src/enrichment/face-similarity.ts:177", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/enrichment/face-similarity.ts:177"}, "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-0b573efb2ce42644", "name": "Commented-code block (7 lines) in src/api/src/enrichment/face-detector.ts:211", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/src/enrichment/face-detector.ts:211"}, "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-99a046052b626f17", "name": "Legacy-named symbol `arcface_r100_glint360k_v1` in src/api/src/enrichment/face-models.test.ts:166", "shortDescription": {"text": "Legacy-named symbol `arcface_r100_glint360k_v1` in src/api/src/enrichment/face-models.test.ts:166"}, "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-70c7059d3fcbc124", "name": "Commented-code block (6 lines) in src/api/src/enrichment/face-models.test.ts:180", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/enrichment/face-models.test.ts:180"}, "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-56e29f25661b4b09", "name": "Commented-code block (5 lines) in src/api/src/enrichment/face-pool.test.ts:275", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/enrichment/face-pool.test.ts:275"}, "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-f0fd3c9caa2e3c25", "name": "Commented-code block (5 lines) in src/api/src/enrichment/face-detector.test.ts:121", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/enrichment/face-detector.test.ts: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-f12c6399be868030", "name": "Commented-code block (5 lines) in src/api/src/enrichment/face-detector.umeyama.test.ts:208", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/enrichment/face-detector.umeyama.test.ts:208"}, "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-effa92db46989ac1", "name": "Legacy-named symbol `mobilefacenet_v1` in src/api/src/enrichment/face-models.ts:123", "shortDescription": {"text": "Legacy-named symbol `mobilefacenet_v1` in src/api/src/enrichment/face-models.ts:123"}, "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-ec9f68ad879917df", "name": "Commented-code block (5 lines) in src/api/src/enrichment/face-models.ts:186", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/enrichment/face-models.ts:186"}, "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-77c19610d9bcf6ba", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/api/src/enrichment/face-models.ts:453", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/api/src/enrichment/face-models.ts:453"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5d3b07b2aafacad0", "name": "Commented-code block (11 lines) in src/api/src/enrichment/face-bootstrap.ts:104", "shortDescription": {"text": "Commented-code block (11 lines) in src/api/src/enrichment/face-bootstrap.ts:104"}, "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-6b7ceafa1a9e09a0", "name": "Commented-code block (5 lines) in src/api/src/enrichment/face-models-bootstrap.ts:79", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/enrichment/face-models-bootstrap.ts:79"}, "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-04903f1c5fd4d317", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/api/src/enrichment/face-models-bootstrap.ts:84", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/api/src/enrichment/face-models-bootstrap.ts:84"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ddcff06d5c7bc299", "name": "Commented-code block (5 lines) in src/api/src/auth/jwt-bootstrap.ts:35", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/auth/jwt-bootstrap.ts:35"}, "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-460547d80994b5f4", "name": "Commented-code block (6 lines) in src/api/src/auth/webauthn.ts:20", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/auth/webauthn.ts:20"}, "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-ffec34e039120937", "name": "Legacy-named symbol `rawOld` in src/api/src/auth/refresh_store.ts:67", "shortDescription": {"text": "Legacy-named symbol `rawOld` in src/api/src/auth/refresh_store.ts:67"}, "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-0d5ad990bcf5c258", "name": "Commented-code block (6 lines) in src/api/src/auth/native_code_store.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/auth/native_code_store.ts:3"}, "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-061ac6ca3aaa522e", "name": "Commented-code block (6 lines) in src/api/src/auth/middleware.ts:52", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/auth/middleware.ts: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-62a47b1d679e0897", "name": "Commented-code block (10 lines) in src/api/src/auth/rate_limit.ts:3", "shortDescription": {"text": "Commented-code block (10 lines) in src/api/src/auth/rate_limit.ts:3"}, "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-e2286d1d787f7b91", "name": "Commented-code block (5 lines) in src/api/src/handler-registry/registry.test.ts:64", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/handler-registry/registry.test.ts:64"}, "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-bf9019b6acf4c8cf", "name": "Commented-code block (5 lines) in src/api/src/middleware/request-context.ts:300", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/middleware/request-context.ts:300"}, "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-9bf175f83e35d07a", "name": "Commented-code block (6 lines) in src/api/src/backup/upload-session.test.ts:89", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/backup/upload-session.test.ts:89"}, "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-e66fb763c3bf1e46", "name": "Commented-code block (10 lines) in src/api/src/backup/upload-session.ts:83", "shortDescription": {"text": "Commented-code block (10 lines) in src/api/src/backup/upload-session.ts:83"}, "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-c60bbf509ed9dc8c", "name": "Commented-code block (5 lines) in src/api/src/job-runner/handlers/pano-stitch.ts:287", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/job-runner/handlers/pano-stitch.ts:287"}, "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-779264eba6ec0346", "name": "Commented-code block (12 lines) in src/api/src/ffi/ffi-pool.ts:5", "shortDescription": {"text": "Commented-code block (12 lines) in src/api/src/ffi/ffi-pool.ts:5"}, "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-3f1415bdce4b3d8d", "name": "Commented-code block (5 lines) in src/api/src/ffi/raw_ffi.ts:168", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/ffi/raw_ffi.ts:168"}, "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-47b6835bd747253b", "name": "Commented-code block (7 lines) in src/api/src/routes/pano.test.ts:44", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/src/routes/pano.test.ts:44"}, "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-f5405113b2d9429d", "name": "Commented-code block (5 lines) in src/api/src/routes/auth.ts:53", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/auth.ts: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-bf2f4d8ea13103ab", "name": "Commented-code block (5 lines) in src/api/src/routes/people.ts:80", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/people.ts:80"}, "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-d471475910416c3c", "name": "Commented-code block (7 lines) in src/api/src/routes/observability.ts:285", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/src/routes/observability.ts:285"}, "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-ff373a44218a899e", "name": "Commented-code block (9 lines) in src/api/src/routes/backup-sidecar.ts:107", "shortDescription": {"text": "Commented-code block (9 lines) in src/api/src/routes/backup-sidecar.ts:107"}, "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-63bcb5b5c0b30b40", "name": "Commented-code block (5 lines) in src/api/src/routes/backup-exists.ts:95", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/backup-exists.ts:95"}, "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-b9e332278a617014", "name": "Commented-code block (5 lines) in src/api/src/routes/auth-native-code.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/auth-native-code.ts:3"}, "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-288427620afd2f87", "name": "Commented-code block (7 lines) in src/api/src/routes/folders.ts:54", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/src/routes/folders.ts: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-a6b99b27f25f1fee", "name": "Commented-code block (7 lines) in src/api/src/routes/fs-thumbs.ts:101", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/src/routes/fs-thumbs.ts:101"}, "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-177f8e814c08c7a7", "name": "Commented-code block (5 lines) in src/api/src/routes/changes.ts:36", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/changes.ts:36"}, "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-2b77875ed05842d2", "name": "Commented-code block (6 lines) in src/api/src/routes/changes.sse.test.ts:195", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/routes/changes.sse.test.ts:195"}, "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-4a90dc262a09cb7b", "name": "Commented-code block (5 lines) in src/api/src/routes/fs-thumbs.etag.test.ts:100", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/fs-thumbs.etag.test.ts:100"}, "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-a5f051c3ec434b0e", "name": "Commented-code block (5 lines) in src/api/src/routes/presets.ts:118", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/presets.ts:118"}, "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-a9be35c205e46fdb", "name": "Commented-code block (7 lines) in src/api/src/routes/fs.ts:7", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/src/routes/fs.ts:7"}, "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-d6ec33d4b1df1f8b", "name": "Commented-code block (6 lines) in src/api/src/routes/fs.etag.test.ts:9", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/routes/fs.etag.test.ts:9"}, "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-e8f17bf99e5af77f", "name": "Commented-code block (5 lines) in src/api/src/routes/auth-account.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/auth-account.ts:3"}, "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-354aa7463af0bcdd", "name": "Commented-code block (5 lines) in src/api/src/routes/backup-rendered.ts:359", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/backup-rendered.ts:359"}, "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-ebc3bf0ec662cf84", "name": "Commented-code block (11 lines) in src/api/src/routes/assets.thumb-etag.test.ts:141", "shortDescription": {"text": "Commented-code block (11 lines) in src/api/src/routes/assets.thumb-etag.test.ts:141"}, "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-6a32b5f224fe27e3", "name": "Commented-code block (6 lines) in src/api/src/routes/xmp.ts:91", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/routes/xmp.ts:91"}, "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-7056063bf34af850", "name": "Commented-code block (5 lines) in src/api/src/routes/backup-ingest.ts:120", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/backup-ingest.ts:120"}, "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-470cb35e8b6db0e5", "name": "Commented-code block (6 lines) in src/api/src/routes/events.ts:240", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/routes/events.ts:240"}, "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-e1a5b5ce587f155e", "name": "Commented-code block (6 lines) in src/api/src/routes/mirror.ts:185", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/routes/mirror.ts:185"}, "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-b4d3f68006169abe", "name": "Commented-code block (7 lines) in src/api/src/routes/imports.ts:193", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/src/routes/imports.ts:193"}, "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-a30600120960fd5f", "name": "Commented-code block (5 lines) in src/api/src/routes/backup-notify-deleted.ts:93", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/backup-notify-deleted.ts: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-15303a4046c0e878", "name": "Commented-code block (6 lines) in src/api/src/routes/changes.poll.test.ts:93", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/routes/changes.poll.test.ts: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-ec842aef114e4a6b", "name": "Commented-code block (6 lines) in src/api/src/routes/mirror-reconcile-runner.ts:202", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/routes/mirror-reconcile-runner.ts:202"}, "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-ee9c20be8921b65f", "name": "Commented-code block (7 lines) in src/api/src/routes/enrichment.ts:67", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/src/routes/enrichment.ts:67"}, "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-a2d090a4ffbe704f", "name": "Commented-code block (5 lines) in src/api/src/routes/assets/metadata.ts:93", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/assets/metadata.ts: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-5572a962a9d132b5", "name": "Commented-code block (5 lines) in src/api/src/routes/assets/histogram.ts:171", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/assets/histogram.ts:171"}, "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-2768c7dcfe7b5016", "name": "Legacy-named symbol `markDeprecated` in src/api/src/routes/assets/xmp.ts:33", "shortDescription": {"text": "Legacy-named symbol `markDeprecated` in src/api/src/routes/assets/xmp.ts:33"}, "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-160e25053c8d9b06", "name": "Commented-code block (5 lines) in src/api/src/routes/assets/trash.ts:82", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/assets/trash.ts:82"}, "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-f139fa77456fab19", "name": "Commented-code block (6 lines) in src/api/src/routes/search/buckets.ts:24", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/routes/search/buckets.ts:24"}, "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-d6e9351df8e2c2b1", "name": "Commented-code block (6 lines) in src/api/src/routes/search/query.ts:111", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/routes/search/query.ts: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-2ef79bd801f2fba0", "name": "Commented-code block (5 lines) in src/api/src/routes/search/nl-date.ts:139", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/routes/search/nl-date.ts:139"}, "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-93bfd1c2ef7b4c94", "name": "Commented-code block (6 lines) in src/api/src/routes/search/list.ts:51", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/routes/search/list.ts:51"}, "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-dd3925189b898351", "name": "Commented-code block (9 lines) in src/api/src/routes/search/sort.ts:18", "shortDescription": {"text": "Commented-code block (9 lines) in src/api/src/routes/search/sort.ts:18"}, "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-7ae727d82f3fc156", "name": "Commented-code block (5 lines) in src/api/src/workers/run-stage.test-helpers.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/run-stage.test-helpers.ts:3"}, "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-1301bccfd9f18156", "name": "Commented-code block (6 lines) in src/api/src/workers/routes-status.ts:26", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/workers/routes-status.ts:26"}, "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-401923a38be96d4a", "name": "Commented-code block (5 lines) in src/api/src/workers/missing-reaper.test.ts:402", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/missing-reaper.test.ts:402"}, "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-2734669ddc4bc0c8", "name": "Commented-code block (5 lines) in src/api/src/workers/stage-config.ts:60", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/stage-config.ts: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-8cf0b8906078224c", "name": "Commented-code block (6 lines) in src/api/src/workers/routes.test.ts:81", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/workers/routes.test.ts:81"}, "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-ac8aedcf0860f7a3", "name": "Commented-code block (5 lines) in src/api/src/workers/start-workers.ts:126", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/start-workers.ts: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-bcae267ec8003cfe", "name": "Commented-code block (5 lines) in src/api/src/workers/routes-main.ts:149", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/routes-main.ts:149"}, "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-6bea87687a0032e7", "name": "Commented-code block (6 lines) in src/api/src/workers/run-stage.ts:48", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/workers/run-stage.ts:48"}, "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-918ff73a10de8e5b", "name": "Commented-code block (5 lines) in src/api/src/workers/run-stage.test.ts:77", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/run-stage.test.ts:77"}, "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-18f334a2ea628609", "name": "Commented-code block (9 lines) in src/api/src/workers/run-stage.missing-tag.test.ts:330", "shortDescription": {"text": "Commented-code block (9 lines) in src/api/src/workers/run-stage.missing-tag.test.ts:330"}, "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-954ba2759279a7f3", "name": "Commented-code block (9 lines) in src/api/src/workers/trash-gc.ts:43", "shortDescription": {"text": "Commented-code block (9 lines) in src/api/src/workers/trash-gc.ts: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-17fc9e91e2565efb", "name": "Commented-code block (9 lines) in src/api/src/workers/worker-main.ts:32", "shortDescription": {"text": "Commented-code block (9 lines) in src/api/src/workers/worker-main.ts:32"}, "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-cd5c0e7cf9aec3e3", "name": "Commented-code block (5 lines) in src/api/src/workers/cache-gc.ts:91", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/cache-gc.ts:91"}, "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-f02a5c7b7f0e5ce7", "name": "Commented-code block (6 lines) in src/api/src/workers/dedupe.ts:110", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/workers/dedupe.ts:110"}, "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-5b9ef38a612099e9", "name": "Commented-code block (5 lines) in src/api/src/workers/cache-gc.test.ts:314", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/cache-gc.test.ts:314"}, "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-e33245038a2d058f", "name": "Commented-code block (6 lines) in src/api/src/workers/mirror/scan.test.ts:48", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/workers/mirror/scan.test.ts:48"}, "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-46267e7b23a339c1", "name": "Commented-code block (6 lines) in src/api/src/workers/mirror/copy.test.ts:49", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/workers/mirror/copy.test.ts: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-b148805b0fb2657a", "name": "Legacy-named symbol `renderedRelOld` in src/api/src/workers/migration/move-backup-asset.ts:155", "shortDescription": {"text": "Legacy-named symbol `renderedRelOld` in src/api/src/workers/migration/move-backup-asset.ts:155"}, "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-a7c8348c1af52e89", "name": "Commented-code block (8 lines) in src/api/src/workers/migration/move-backup-asset.ts:120", "shortDescription": {"text": "Commented-code block (8 lines) in src/api/src/workers/migration/move-backup-asset.ts:120"}, "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-5dcd946a6940eacc", "name": "Legacy-named symbol `renderedRelOld` in src/api/src/workers/migration/restructure-fs.test.ts:44", "shortDescription": {"text": "Legacy-named symbol `renderedRelOld` in src/api/src/workers/migration/restructure-fs.test.ts:44"}, "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-8aebe4077d1d9cc4", "name": "Legacy-named symbol `renderedRelOld` in src/api/src/workers/migration/restructure-fs.ts:110", "shortDescription": {"text": "Legacy-named symbol `renderedRelOld` in src/api/src/workers/migration/restructure-fs.ts:110"}, "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-06c8145af46b3ab6", "name": "Commented-code block (5 lines) in src/api/src/workers/migration/restructure-backup-screenshots.test.ts:175", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/migration/restructure-backup-screenshots.test.ts:175"}, "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-a72b13618c7567de", "name": "Commented-code block (6 lines) in src/api/src/workers/discover/discover-config.repo.ts:6", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/workers/discover/discover-config.repo.ts:6"}, "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-2406cd68a22caa5d", "name": "Commented-code block (7 lines) in src/api/src/workers/discover/discover.dedup.test.ts:164", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/src/workers/discover/discover.dedup.test.ts: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-a849aabc7afef057", "name": "Commented-code block (5 lines) in src/api/src/workers/discover/discover.fileinfo.test.ts:60", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/discover/discover.fileinfo.test.ts: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-157fd132932a6b7c", "name": "Commented-code block (6 lines) in src/api/src/workers/discover/sweeper.test.ts:132", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/workers/discover/sweeper.test.ts:132"}, "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-fee4843a67d39dff", "name": "Commented-code block (5 lines) in src/api/src/workers/discover/index.ts:92", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/discover/index.ts:92"}, "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-ab9c24ee3a7243a4", "name": "Commented-code block (7 lines) in src/api/src/workers/discover/handle-event.ts:43", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/src/workers/discover/handle-event.ts: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-558bbe0be2ea54b1", "name": "Commented-code block (12 lines) in src/api/src/workers/discover/sweeper.ts:49", "shortDescription": {"text": "Commented-code block (12 lines) in src/api/src/workers/discover/sweeper.ts: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-7d1d6d73dd67efc1", "name": "Commented-code block (5 lines) in src/api/src/workers/stages/face-embed.ts:119", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/stages/face-embed.ts:119"}, "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-a1dd25d856f123e2", "name": "Commented-code block (13 lines) in src/api/src/workers/stages/exif.ts:69", "shortDescription": {"text": "Commented-code block (13 lines) in src/api/src/workers/stages/exif.ts:69"}, "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-c7767e410d36fddb", "name": "Commented-code block (6 lines) in src/api/src/workers/stages/exif.merge.test.ts:39", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/workers/stages/exif.merge.test.ts: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-5196088816ba675a", "name": "Commented-code block (5 lines) in src/api/src/workers/stages/describe.ts:86", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/stages/describe.ts:86"}, "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-147135dac28be003", "name": "Commented-code block (5 lines) in src/api/src/workers/stages/preview.ts:51", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/stages/preview.ts:51"}, "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-1b8f6f705a78e7a3", "name": "Commented-code block (5 lines) in src/api/src/workers/stages/face-detect.ts:95", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/stages/face-detect.ts:95"}, "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-aa038ae353081dde", "name": "Commented-code block (13 lines) in src/api/src/workers/stages/thumb.ts:49", "shortDescription": {"text": "Commented-code block (13 lines) in src/api/src/workers/stages/thumb.ts: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-c7b5bd5d9f1c471e", "name": "Commented-code block (5 lines) in src/api/src/workers/stages/exif.test.ts:87", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/workers/stages/exif.test.ts:87"}, "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-e6c493fd7adb6f78", "name": "Commented-code block (7 lines) in src/api/src/workers/stages/face-stage-shared.ts:45", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/src/workers/stages/face-stage-shared.ts: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-a5c3f4932703eff6", "name": "Commented-code block (5 lines) in src/api/src/imports/repo.ts:101", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/imports/repo.ts:101"}, "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-6e05df3a7bba1cca", "name": "Commented-code block (5 lines) in src/api/src/imports/repo.test.ts:138", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/imports/repo.test.ts: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-a0c1c598c98a7595", "name": "Commented-code block (7 lines) in src/api/src/imports/scan.test.ts:104", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/src/imports/scan.test.ts:104"}, "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-872a18e175d585f9", "name": "Commented-code block (8 lines) in src/api/src/imports/scan.ts:108", "shortDescription": {"text": "Commented-code block (8 lines) in src/api/src/imports/scan.ts:108"}, "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-79b9bcee7855746c", "name": "Commented-code block (6 lines) in src/api/src/imports/worker.ts:239", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/imports/worker.ts:239"}, "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-bee81242ebb13f53", "name": "Commented-code block (7 lines) in src/api/src/runtime/child-process-worker.ts:182", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/src/runtime/child-process-worker.ts: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-01af3eb8e254c641", "name": "Commented-code block (5 lines) in src/api/src/runtime/http-content-disposition.test.ts:56", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/runtime/http-content-disposition.test.ts:56"}, "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-bdd41da459fb6dbb", "name": "Commented-code block (5 lines) in src/api/src/db/migrations.backfills.test.ts:134", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/db/migrations.backfills.test.ts:134"}, "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-206a41e52cb69dab", "name": "Legacy-named symbol `mobilefacenet_v1` in src/api/src/db/schema.ts:611", "shortDescription": {"text": "Legacy-named symbol `mobilefacenet_v1` in src/api/src/db/schema.ts:611"}, "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-d8b459212e1e1525", "name": "Commented-code block (6 lines) in src/api/src/db/schema.ts:634", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/db/schema.ts:634"}, "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-d0dd505ec74657c0", "name": "Commented-code block (6 lines) in src/api/src/db/migrations.ts:87", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/db/migrations.ts:87"}, "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-89f264d4bdff53e2", "name": "Commented-code block (5 lines) in src/api/src/db/changes.repo.ts:31", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/db/changes.repo.ts:31"}, "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-8463e5d7ce89efbc", "name": "Commented-code block (5 lines) in src/api/src/db/client.ts:265", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/db/client.ts:265"}, "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-aeecd47848177ce5", "name": "Commented-code block (5 lines) in src/api/src/db/client.test.ts:271", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/db/client.test.ts:271"}, "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-d9b74d90dbf5818c", "name": "Commented-code block (5 lines) in src/api/src/db/assets.repo.ts:165", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/db/assets.repo.ts:165"}, "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-6460db5883ebc2bd", "name": "Commented-code block (5 lines) in src/api/src/db/changes.repo.test.ts:52", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/db/changes.repo.test.ts: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-e3b4ae015c2a74bb", "name": "Commented-code block (6 lines) in src/api/src/db/assets.transform.ts:57", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/db/assets.transform.ts:57"}, "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-1f0282570303e293", "name": "Commented-code block (7 lines) in src/api/src/indexer/exif.ts:215", "shortDescription": {"text": "Commented-code block (7 lines) in src/api/src/indexer/exif.ts:215"}, "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-ca12ab19b07d9e7f", "name": "Commented-code block (6 lines) in src/api/src/indexer/exif.formats.test.ts:76", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/indexer/exif.formats.test.ts:76"}, "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-f59f664b9311b478", "name": "Commented-code block (5 lines) in src/api/src/indexer/images.repo.ts:319", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/indexer/images.repo.ts:319"}, "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-ee39c0b60b1300a2", "name": "Commented-code block (10 lines) in src/api/src/thumbs/render.test.ts:105", "shortDescription": {"text": "Commented-code block (10 lines) in src/api/src/thumbs/render.test.ts:105"}, "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-c08d6f635c23ded9", "name": "Commented-code block (5 lines) in src/api/src/thumbs/apply-orientation.test.ts:103", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/thumbs/apply-orientation.test.ts:103"}, "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-054806fbc9f678c9", "name": "Commented-code block (5 lines) in src/api/src/thumbs/imgdecode-pool.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/thumbs/imgdecode-pool.ts:1"}, "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-c8226e0c5a643847", "name": "Commented-code block (6 lines) in src/api/src/people/cluster-coordinator.ts:133", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/people/cluster-coordinator.ts:133"}, "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-f0b74f6c076a70a3", "name": "Commented-code block (5 lines) in src/api/src/people/people.repo.ts:254", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/people/people.repo.ts:254"}, "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-a87e19417f850d7c", "name": "Commented-code block (6 lines) in src/api/src/people/clustering-job.ts:31", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/people/clustering-job.ts:31"}, "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-352cbe437c5113fc", "name": "Commented-code block (5 lines) in src/api/src/people/cluster-load.ts:168", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/people/cluster-load.ts:168"}, "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-27423abee567d08a", "name": "Commented-code block (6 lines) in src/api/src/people/clustering-metrics.test.ts:80", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/people/clustering-metrics.test.ts:80"}, "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-0e584230fdb88ccf", "name": "Commented-code block (5 lines) in src/api/src/people/clustering-quality-harness.ts:248", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/people/clustering-quality-harness.ts:248"}, "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-5bd1d4917e668687", "name": "Commented-code block (5 lines) in src/api/src/people/people.repo.test.ts:45", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/people/people.repo.test.ts: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-ac3b8d85d717c69b", "name": "Commented-code block (9 lines) in src/api/src/people/cluster-pool.test.ts:182", "shortDescription": {"text": "Commented-code block (9 lines) in src/api/src/people/cluster-pool.test.ts: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-3ba2a2f315e04f8e", "name": "Commented-code block (6 lines) in src/api/src/people/cluster.worker.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/people/cluster.worker.ts:1"}, "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-067d84fac6fd8d4d", "name": "Commented-code block (8 lines) in src/api/src/people/cluster-pool.ts:5", "shortDescription": {"text": "Commented-code block (8 lines) in src/api/src/people/cluster-pool.ts:5"}, "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-1866422ecee761e4", "name": "Commented-code block (5 lines) in src/api/src/fs/mirrored.ts:122", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/fs/mirrored.ts: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-d103aa9db9b8f718", "name": "Commented-code block (6 lines) in src/api/src/fs/xmp.ts:518", "shortDescription": {"text": "Commented-code block (6 lines) in src/api/src/fs/xmp.ts:518"}, "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-f882ecbefb3351e5", "name": "Commented-code block (5 lines) in src/api/src/fs/browse.ts:416", "shortDescription": {"text": "Commented-code block (5 lines) in src/api/src/fs/browse.ts:416"}, "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-4421f264fdbdafaf", "name": "Network/subprocess call without timeout or try/except \u2014 src/scripts/slider_visual_matrix.py:118", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 src/scripts/slider_visual_matrix.py:118"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-59cd958162592c10", "name": "Commented-code block (6 lines) in src/scripts/apple_render_diff.py:122", "shortDescription": {"text": "Commented-code block (6 lines) in src/scripts/apple_render_diff.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-8dd6e1f342fb8182", "name": "Commented-code block (10 lines) in src/scripts/stage_stats_test.py:80", "shortDescription": {"text": "Commented-code block (10 lines) in src/scripts/stage_stats_test.py:80"}, "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-a0f5f0f2ca5a9f4f", "name": "Network/subprocess call without timeout or try/except \u2014 src/scripts/stage_stats_test.py:61", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 src/scripts/stage_stats_test.py:61"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6ac641dae0a9d05e", "name": "Commented-code block (5 lines) in src/scripts/stage_stats.py:50", "shortDescription": {"text": "Commented-code block (5 lines) in src/scripts/stage_stats.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-3d6c153c8ad6c504", "name": "Network/subprocess call without timeout or try/except \u2014 src/scripts/stage_diff_test.py:65", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 src/scripts/stage_diff_test.py:65"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cac56a44cde2adca", "name": "Legacy-named symbol `_Standard_v2` in src/scripts/convert_dcps.py:144", "shortDescription": {"text": "Legacy-named symbol `_Standard_v2` in src/scripts/convert_dcps.py:144"}, "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-8cacbc8f087a7af1", "name": "Commented-code block (7 lines) in src/scripts/convert_dcps.py:144", "shortDescription": {"text": "Commented-code block (7 lines) in src/scripts/convert_dcps.py:144"}, "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-e600bebb5b1b2f85", "name": "Commented-code block (5 lines) in src/scripts/pano_metrics.py:371", "shortDescription": {"text": "Commented-code block (5 lines) in src/scripts/pano_metrics.py:371"}, "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-9c373bf103a43e98", "name": "Commented-code block (5 lines) in src/scripts/derive_agx_lut.py:81", "shortDescription": {"text": "Commented-code block (5 lines) in src/scripts/derive_agx_lut.py:81"}, "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-ec617e9d9bf90837", "name": "Commented-code block (6 lines) in src/scripts/acr-reference/acr_batch.jsx:6", "shortDescription": {"text": "Commented-code block (6 lines) in src/scripts/acr-reference/acr_batch.jsx:6"}, "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-ad6ca6f5d69fbbc6", "name": "Commented-code block (6 lines) in src/scripts/acr-reference/run.py:46", "shortDescription": {"text": "Commented-code block (6 lines) in src/scripts/acr-reference/run.py:46"}, "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-a2f3dda87ee44eaa", "name": "Commented-code block (5 lines) in src/web/projects/maple/src/app/app.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/app.ts:1"}, "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-8610884686c918e5", "name": "Commented-code block (5 lines) in src/web/projects/maple/src/app/app.config.ts:22", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/app.config.ts:22"}, "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-9f863765cb3705c7", "name": "Commented-code block (5 lines) in src/web/projects/maple/src/app/app.routes.ts:30", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/app.routes.ts:30"}, "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-abaaa37968a0fb58", "name": "Commented-code block (5 lines) in src/web/projects/maple/src/app/search-page.component.ts:4", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/search-page.component.ts:4"}, "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-04efc67b05c3e056", "name": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/settings-shell.component.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/settings-shell.component.ts:1"}, "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-fffde46d64aabca0", "name": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/settings-icon.component.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/settings-icon.component.ts:1"}, "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-33c634b6455a69bc", "name": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/pano/pano-settings.component.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/pano/pano-settings.component.ts:3"}, "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-5a6306e664b16677", "name": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/users/users.component.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/users/users.component.ts:3"}, "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-1180468071fe25c3", "name": "Commented-code block (8 lines) in src/web/projects/maple/src/app/settings/observability/observability.component.ts:3", "shortDescription": {"text": "Commented-code block (8 lines) in src/web/projects/maple/src/app/settings/observability/observability.component.ts:3"}, "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-05ae6fb229a1cb2d", "name": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/workers/imports-panel.service.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/workers/imports-panel.service.ts:1"}, "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-13b721dcdb3202d5", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple/src/app/settings/workers/imports-panel.service.ts:5", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple/src/app/settings/workers/imports-panel.service.ts:55"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b001f832b636a0b8", "name": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/workers/workers.component.spec.ts:182", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/workers/workers.component.spec.ts: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-c118cd9481512cbf", "name": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/workers/damaged-panel.service.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/workers/damaged-panel.service.ts:1"}, "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-47475d7cdcc2d2a2", "name": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/workers/workers.component.ts:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/workers/workers.component.ts:3"}, "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-b1c5aa05bb90322a", "name": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/workers/mirror-settings.component.ts:1", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/workers/mirror-settings.component.ts:1"}, "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-93f5f5afb4035790", "name": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/workers/workers.vm.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/workers/workers.vm.ts:3"}, "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-135fd6a58b6f9972", "name": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/workers/migration-panel.service.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/workers/migration-panel.service.ts:1"}, "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-55b6ac2dcad3fc1a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple/src/app/settings/workers/migration-panel.service.ts", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple/src/app/settings/workers/migration-panel.service.ts:31"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8758e32b484a3a11", "name": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/imports/imports.component.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/imports/imports.component.ts:3"}, "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-41fccde4f4e3cd3a", "name": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/people/hidden-people.component.ts:8", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/people/hidden-people.component.ts:8"}, "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-1d582aa4b2e94bd2", "name": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/people/visible-once.directive.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/people/visible-once.directive.ts:3"}, "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-5af602055c8cfd48", "name": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/people/people.component.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/people/people.component.ts:3"}, "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-c2e2db54910d6811", "name": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/people/thumb-blob-cache.ts:6", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/people/thumb-blob-cache.ts:6"}, "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-53998bb9031cb555", "name": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/people/people.vm.spec.ts:346", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/people/people.vm.spec.ts:346"}, "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-c770e1ecf3522ce2", "name": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/people/people.vm.ts:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/people/people.vm.ts:3"}, "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-4ecbb91cc1ca1506", "name": "Commented-code block (9 lines) in src/web/projects/maple/src/app/search/search.vm.ts:3", "shortDescription": {"text": "Commented-code block (9 lines) in src/web/projects/maple/src/app/search/search.vm.ts:3"}, "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-d673498cdfc5f9c2", "name": "Commented-code block (5 lines) in src/web/projects/maple/src/app/search/search.component.ts:13", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/search/search.component.ts:13"}, "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-3769258e58f48890", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/public-api.ts:24", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/public-api.ts:24"}, "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-8187813c7718d7f1", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/tokens.spec.ts:5", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/tokens.spec.ts:5"}, "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-34d6c85c77f8e753", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/layout-service.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/layout-service.ts:3"}, "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-393f52dd880cdfb3", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/pano/pano-dialog.component.ts:146", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/pano/pano-dialog.component.ts:146"}, "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-73dd94564aab73fd", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/library/filter-chips.component.ts:4", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/library/filter-chips.component.ts:4"}, "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-3b0bfd52406ac35d", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/library/library-grid.component.spec.ts:102", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/library/library-grid.component.spec.ts:102"}, "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-afe91a05fc6a25ab", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/library/library-grid.component.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/library/library-grid.component.ts:8"}, "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-7fd282c4d7e5c3a2", "name": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/models/adjustment-model.ts:3", "shortDescription": {"text": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/models/adjustment-model.ts:3"}, "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-6df105add6a1da32", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/info/info-enrichment.component.ts:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/info/info-enrichment.component.ts:3"}, "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-d4bbdfbb1453514a", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/info/keyword-chips-row.component.spec.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/info/keyword-chips-row.component.spec.ts:3"}, "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-fb14b648f030f66f", "name": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/info/info-panel.component.ts:8", "shortDescription": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/info/info-panel.component.ts:8"}, "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-57896f9a641a4f45", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/info/keyword-chips-row.component.ts:9", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/info/keyword-chips-row.component.ts:9"}, "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-25be9c5509ada00f", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/info/rating-flags-row.component.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/info/rating-flags-row.component.ts:3"}, "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-c6f7126edc4bb57d", "name": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/info/info-panel.component.spec.ts:3", "shortDescription": {"text": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/info/info-panel.component.spec.ts:3"}, "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-15e5aa34ee0cd327", "name": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/info/histogram.component.ts:3", "shortDescription": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/info/histogram.component.ts:3"}, "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-3124696214123dd7", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/info/camera-location-grid.component.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/info/camera-location-grid.component.ts:8"}, "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-d842d9105ef84485", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/info/histogram.component.spec.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/info/histogram.component.spec.ts:3"}, "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-8a64e16db896c039", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/info/info-vision.component.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/info/info-vision.component.ts:3"}, "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-d1860cdd51443959", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/info/enrichment-status-badge.component.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/info/enrichment-status-badge.component.ts:1"}, "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-39ddfe469bd7a9dd", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/info/info-place.component.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/info/info-place.component.ts:3"}, "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-feb4a0a2558812db", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/library-store.service.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/library-store.service.ts:5"}, "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-aefb40b26a80985c", "name": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/state/browse-preferences.service.ts:6", "shortDescription": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/state/browse-preferences.service.ts:6"}, "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-4d7beeb2dda51250", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/library-fetch.service.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/library-fetch.service.ts:3"}, "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-c6fc2b363924dde9", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/store.ts:15", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/store.ts:15"}, "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-b35f1da56b06d612", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/state/store.ts:48", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/state/store.ts:48"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-24c98adf25b6d6aa", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/state/library-cache.service.ts:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/state/library-cache.service.ts:3"}, "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-4eea23e8a074fc9f", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/timeline-state.service.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/timeline-state.service.ts:3"}, "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-e0f6d5dd8cd57ed7", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/library-status.service.ts:11", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/library-status.service.ts:11"}, "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-30f75eb3f2e82f83", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/state/library-state.service.spec.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/state/library-state.service.spec.ts:3"}, "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-3875ee546f2072d3", "name": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/state/library-state-imported-asset.spec.ts:3", "shortDescription": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/state/library-state-imported-asset.spec.ts:3"}, "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-7e1770a14498c9e7", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/timeline-state.service.spec.ts:15", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/timeline-state.service.spec.ts:15"}, "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-7dd0368a9fcfaa8e", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/auth/auth.interceptor.ts:6", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/auth/auth.interceptor.ts:6"}, "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-e42b54260386e048", "name": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.gpu-flag.spec.ts:3", "shortDescription": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.gpu-flag.spec.ts:3"}, "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-eaa655c90dc4a634", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.worker.ts:9", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.worker.ts:9"}, "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-d7f15dfa4a576b34", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.service.spec.ts:61", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.service.spec.ts:61"}, "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-56770ff003746190", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-wasm-init.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-wasm-init.ts:7"}, "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-0c0f5fcb55a37ace", "name": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/gpu-live-render.token.ts:5", "shortDescription": {"text": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/gpu-live-render.token.ts:5"}, "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-3fbf03b23ab5ddd1", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.service.ts:69", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.service.ts:69"}, "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-5cb39b8e8652b6ea", "name": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.types.ts:67", "shortDescription": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.types.ts:67"}, "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-eed2ee8d9468d38d", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/util/typed-storage.spec.ts:12", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/util/typed-storage.spec.ts:12"}, "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-4c5fabd1f13f1539", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/util/idb.ts:16", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/util/idb.ts:16"}, "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-b66f6f4ca4f7c785", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/api/filesystem-browse.service.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/api/filesystem-browse.service.ts:3"}, "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-14adcc5a9bf9badf", "name": "Commented-code block (15 lines) in src/web/projects/maple-common/src/lib/api/people.store.spec.ts:3", "shortDescription": {"text": "Commented-code block (15 lines) in src/web/projects/maple-common/src/lib/api/people.store.spec.ts:3"}, "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-5a645f1d79334e95", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/api/people.store.spec.ts:294", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/api/people.store.spec.ts:294"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-82ac6d19cf7f4239", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/api/worker-events.service.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/api/worker-events.service.ts:3"}, "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-c08b5abf1c9e3687", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/api/people.store.ts:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/api/people.store.ts:3"}, "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-729181067fd18648", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/api/people.store.ts:274", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/api/people.store.ts:274"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c1a8fd92ac7926b9", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/api/folder-listing-cache.ts:4", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/api/folder-listing-cache.ts:4"}, "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-999ade64c1dcc354", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/api/bun-api-backend.service.ts:534", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/api/bun-api-backend.service.ts:534"}, "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-36775fca28f56102", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/develop/capture-sharpening-section.co", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/develop/capture-sharpening-section.component.ts:1"}, "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-87ce6d17c6489ea1", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/develop/slider.component.ts:20", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/develop/slider.component.ts:20"}, "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-0ee77462321184e8", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.component.t", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.component.ts:58"}, "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-aadd8d1083fe5461", "name": "Commented-code block (10 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.zoom-gestu", "shortDescription": {"text": "Commented-code block (10 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.zoom-gestures.spec.ts:3"}, "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-44c0423c91fe50c4", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.zoom-gestur", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.zoom-gestures.ts:6"}, "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-e424ab0a61105633", "name": "Commented-code block (14 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.two-phase.", "shortDescription": {"text": "Commented-code block (14 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.two-phase.ts:8"}, "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-9e79c6c85f97ec46", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.draw2d.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.draw2d.ts:5"}, "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-894e163c16f7482c", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.gpu-present", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.gpu-present.ts:5"}, "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-aa5b1ae173a2403e", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.draw2d.spec", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.draw2d.spec.ts:3"}, "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-3b836986ade212de", "name": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.component.s", "shortDescription": {"text": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.component.spec.ts:3"}, "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-27fe3f31bf334631", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/asset-grid/asset-grid.component.ts:13", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/asset-grid/asset-grid.component.ts:133"}, "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-716e1239275444a2", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/library-picker/library-picker.compone", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/library-picker/library-picker.component.spec.ts:7"}, "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-bce0af80eb1fe9d2", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/timeline-view/timeline-view.component", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/timeline-view/timeline-view.component.ts:136"}, "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-3ce75c2d25d18961", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/timeline-view/timeline-filter-row.com", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/timeline-view/timeline-filter-row.component.spec.ts:14"}, "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-c113d75f9b17e5da", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/asset-thumb/asset-thumb.component.ts:", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/asset-thumb/asset-thumb.component.ts:3"}, "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-7f780822142cdf2c", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/folder-tree/folder-tree.component.ts:", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/folder-tree/folder-tree.component.ts:29"}, "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-7743a2c47edefb5f", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/bottom-sheet.component.spec.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/bottom-sheet.component.spec.ts:3"}, "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-42b434caa6a802f2", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/protocol-handler.component.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/protocol-handler.component.ts:3"}, "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-86b907f7a9dc7421", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/tab-bar-visibility.service.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/tab-bar-visibility.service.ts:3"}, "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-ddbfcaae51a5bfcd", "name": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/shells/bottom-sheet.component.ts:5", "shortDescription": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/shells/bottom-sheet.component.ts:5"}, "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-2e145bb69bc1c949", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/source-picker-drawer/source-picker-drawer", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/source-picker-drawer/source-picker-drawer.component.ts:5"}, "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-5c1b8082d87d5d2e", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/source-picker-drawer/source-picker-drawer", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/source-picker-drawer/source-picker-drawer.component.spec.ts:3"}, "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-5a1e3d143c954d35", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/browse-shell/browse-shell.component.ts:11", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/browse-shell/browse-shell.component.ts:114"}, "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-4e03f8b3c2a9acd5", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/browse-shell/browse-shell.component.spec.", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/browse-shell/browse-shell.component.spec.ts: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-8000f68c72ca1300", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/shells/editor-shell/editor-shell.component.ts:70", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/shells/editor-shell/editor-shell.component.ts: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-1cd1ee52a7c77811", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/observability/observability-config.model.ts:4", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/observability/observability-config.model.ts:4"}, "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-7f25ced6ce8653eb", "name": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/observability/observability.service.spec.ts:1", "shortDescription": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/observability/observability.service.spec.ts:1"}, "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-1d6f8100cd181574", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/observability/observability-config-cache.ts:4", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/observability/observability-config-cache.ts:4"}, "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-ec1851b75ca9e0be", "name": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/observability/observability.service.ts:4", "shortDescription": {"text": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/observability/observability.service.ts:4"}, "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-3dd421da91fb381e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/observability/observability.service.", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/observability/observability.service.ts:280"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-90b461616b1773c3", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/folder-access/file-cache.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/folder-access/file-cache.ts:3"}, "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-37c408f960d99d85", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/sw/app-update.service.spec.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/sw/app-update.service.spec.ts:3"}, "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-aab1b993a50b5f6b", "name": "Commented-code block (12 lines) in src/web/projects/maple-common/src/lib/sw/app-update.service.ts:5", "shortDescription": {"text": "Commented-code block (12 lines) in src/web/projects/maple-common/src/lib/sw/app-update.service.ts:5"}, "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-ee13d2004ab058e4", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/search/search-scope-chips.component.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/search/search-scope-chips.component.ts:5"}, "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-1c0f520bb70ec9e7", "name": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/search/search.component.ts:5", "shortDescription": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/search/search.component.ts:5"}, "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-f848ff2a20932761", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/search/search.component.ts:10", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/search/search.component.ts:10"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-417c0de0c2a0d2f7", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/search/search-types.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/search/search-types.ts:3"}, "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-63ed5c937e651658", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/search/search-bar.component.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/search/search-bar.component.ts:5"}, "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-e358b77aff1ba533", "name": "Commented-code block (11 lines) in src/web/projects/maple-common/src/lib/icons/maple-icon-registry.ts:231", "shortDescription": {"text": "Commented-code block (11 lines) in src/web/projects/maple-common/src/lib/icons/maple-icon-registry.ts:231"}, "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-c13282874e41241e", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/icons/maple-icon.component.spec.ts:48", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/icons/maple-icon.component.spec.ts:48"}, "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-f3b2aef30854e532", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/deep-link/deep-link.service.ts:1", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/deep-link/deep-link.service.ts:1"}, "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-711c002da5717462", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/deep-link/deep-link.service.spec.ts:49", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/deep-link/deep-link.service.spec.ts: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-5e6a5b323bde9022", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/editor.component.spec.ts:19", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/editor.component.spec.ts:19"}, "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-e7921f34bc3cfe8d", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/sub-param-row.component.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/sub-param-row.component.ts:3"}, "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-0dc2ee320110ee54", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/value-chip.component.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/value-chip.component.ts:3"}, "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-00a4db361149bb80", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/tool-sub-param.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/tool-sub-param.ts:3"}, "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-0870381a1758fe9e", "name": "Commented-code block (11 lines) in src/web/projects/maple-common/src/lib/editor/editor-state.service.ts:6", "shortDescription": {"text": "Commented-code block (11 lines) in src/web/projects/maple-common/src/lib/editor/editor-state.service.ts:6"}, "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-2a8c8db44e0d5839", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/editor/tool-model.ts:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/editor/tool-model.ts:3"}, "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-2880c8b1f5aff19c", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/editor/editor.component.ts:77", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/editor/editor.component.ts:77"}, "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-f5f6eadb3940c355", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/drag-bar.component.ts:87", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/drag-bar.component.ts:87"}, "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-931181f9edda9eb2", "name": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/editor/presets/builtin-presets.ts:3", "shortDescription": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/editor/presets/builtin-presets.ts:3"}, "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-6729567673f6d336", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/presets/user-preset-store.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/presets/user-preset-store.ts:8"}, "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-c5d88f524646f973", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/presets/preset-model.spec.ts:4", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/presets/preset-model.spec.ts:4"}, "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-2f9f1f5d36755c5c", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/presets/presets-panel.component.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/presets/presets-panel.component.ts:3"}, "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-147aeb23cdedf3ab", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/editor/presets/preset-model.ts:7", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/editor/presets/preset-model.ts:7"}, "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-d43c0a1567fed4ab", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/perf/slider-tick.bench.spec.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/perf/slider-tick.bench.spec.ts:7"}, "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-a1049852e1481921", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/xmp-store.service.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/xmp-store.service.ts:5"}, "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-548a97cdf08d2916", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/xmp/xmp-serializer.service.ts:7", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/xmp/xmp-serializer.service.ts:7"}, "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-4f7999054695657c", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/sidecar.store.ts:8", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/sidecar.store.ts:8"}, "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-5cdf5f683cd7ad11", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/chroma-prefilter.spec.ts:4", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/chroma-prefilter.spec.ts:4"}, "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-b5a5bbf986cd84cd", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/sidecar.store.spec.ts:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/sidecar.store.spec.ts:3"}, "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-44824a1613a8d38d", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/xmp/xmp-fields.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/xmp/xmp-fields.ts:3"}, "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-9f8c54dd70c304b5", "name": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/xmp/hot-pixel.spec.ts:4", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/xmp/hot-pixel.spec.ts:4"}, "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-f70d29211e1b64c3", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/brightness.spec.ts:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/brightness.spec.ts:3"}, "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-36bfa914a4533f23", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/xmp/sidecar-idb-cache.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/xmp/sidecar-idb-cache.ts:8"}, "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-d11585bb395ace53", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/xmp/capture-sharpening-sigma.spec.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/xmp/capture-sharpening-sigma.spec.ts:1"}, "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-a1f85476e0d914f5", "name": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/xmp-parser.service.ts:3", "shortDescription": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/xmp-parser.service.ts:3"}, "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-ad48cc1d07a60503", "name": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/maple-cache/maple-cache.service.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/maple-cache/maple-cache.service.ts:3"}, "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-81360001c15a0422", "name": "Commented-code block (5 lines) in src/web/projects/maple-syrup/src/app/app.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-syrup/src/app/app.ts:1"}, "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-92473b5add89b27c", "name": "Commented-code block (5 lines) in src/web/projects/maple-syrup/src/app/app.routes.ts:18", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/projects/maple-syrup/src/app/app.routes.ts:18"}, "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-f6f7730b5d18754c", "name": "Commented-code block (5 lines) in src/web/_design-reference/lib/raw-wasm.jsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/_design-reference/lib/raw-wasm.jsx:3"}, "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-c8f65ad167671b4e", "name": "Commented-code block (5 lines) in src/web/e2e/bottom-sheet.spec.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/e2e/bottom-sheet.spec.ts:8"}, "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-b9020bc4a4638caf", "name": "Commented-code block (5 lines) in src/web/e2e/fonts.spec.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/e2e/fonts.spec.ts:6"}, "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-7a511ef0564b39ff", "name": "Commented-code block (5 lines) in src/web/e2e/search.spec.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/e2e/search.spec.ts:3"}, "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-03e0059418101fe5", "name": "Commented-code block (6 lines) in src/web/e2e/anchored-search.spec.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/e2e/anchored-search.spec.ts:3"}, "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-f5eb6e4a56616be9", "name": "Commented-code block (5 lines) in src/web/e2e/source-picker-drawer.spec.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in src/web/e2e/source-picker-drawer.spec.ts:3"}, "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-db70822ae17489bf", "name": "Commented-code block (6 lines) in src/web/e2e/raw-open.spec.ts:7", "shortDescription": {"text": "Commented-code block (6 lines) in src/web/e2e/raw-open.spec.ts:7"}, "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-7de670297e14f2a1", "name": "41 env vars used in code but missing from .env.example", "shortDescription": {"text": "41 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `LFW_ROOT`, `MAPLE_AUTOCLUSTER_FACE_THRESHOLD`, `MAPLE_BACKUP_TMP`, `MAPLE_CORS_ORIGIN`, `MAPLE_DESCRIBE_PROVIDER_URL`, `MAPLE_DEV`, `MAPLE_DEV_AUTH`, `MAPLE_DEV_ORIGIN` + 33 more. Add them (with a placeholder/comment) to .env.example so onboarding doesn't break."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "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:\nsrc/scripts/hue_stability.py:read_chan, src/scripts/halo_check.py:read_chan\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/23748"}, "properties": {"repository": "zubair-io/Maple", "repoUrl": "https://github.com/zubair-io/Maple", "branch": "main"}, "results": [{"ruleId": "scanner-e5e5c69ae07b3592", "level": "note", "message": {"text": "Possibly dead Python function: case_names"}, "properties": {"repobilityId": "827dd4ff2b2006ee", "scanner": "scanner-primary", "fingerprint": "e5e5c69ae07b3592", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/scripts/acr-reference/matrix.py:109"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-073cfa3f5eb420ab", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/enrichment-dead-letter.test.ts:54"}, "properties": {"repobilityId": "0774791fb3d7d4a6", "scanner": "scanner-primary", "fingerprint": "073cfa3f5eb420ab", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-71ee62edba0ea1de", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/fs-dir-asset-link.test.ts:56"}, "properties": {"repobilityId": "8207e878c30f3ab3", "scanner": "scanner-primary", "fingerprint": "71ee62edba0ea1de", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-95b7444df6a4159e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/images-repo-meilisearch.test.ts:72"}, "properties": {"repobilityId": "d4f1787812679adb", "scanner": "scanner-primary", "fingerprint": "95b7444df6a4159e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d92a410623ef666c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/people-route.test.ts:48"}, "properties": {"repobilityId": "7766e922f4c337df", "scanner": "scanner-primary", "fingerprint": "d92a410623ef666c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cb3eabcc8df5b10d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/geocode-reverse.test.ts:36"}, "properties": {"repobilityId": "5883fd3bba9b5fa3", "scanner": "scanner-primary", "fingerprint": "cb3eabcc8df5b10d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-853f4f01d178f5ed", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/fs-dir-sidecars.test.ts:55"}, "properties": {"repobilityId": "c800152538e6fb7f", "scanner": "scanner-primary", "fingerprint": "853f4f01d178f5ed", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d46be48f164155e9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/observability-config.repo.test.ts:159"}, "properties": {"repobilityId": "744fe3cf9c75cefd", "scanner": "scanner-primary", "fingerprint": "d46be48f164155e9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-16437f85a0cc5ed6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/indexer-images-repo.test.ts:47"}, "properties": {"repobilityId": "12140c88b77d93b6", "scanner": "scanner-primary", "fingerprint": "16437f85a0cc5ed6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-650891db7476ea2f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/observability-route.test.ts:52"}, "properties": {"repobilityId": "0c820db3bccb6b6f", "scanner": "scanner-primary", "fingerprint": "650891db7476ea2f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-053ab9e78e4883a6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/search-place-route.test.ts:82"}, "properties": {"repobilityId": "e4ef3a15e3f6ef23", "scanner": "scanner-primary", "fingerprint": "053ab9e78e4883a6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-59d936bb2c138d48", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/indexer-dead-letter.test.ts:58"}, "properties": {"repobilityId": "8c4229c167877b20", "scanner": "scanner-primary", "fingerprint": "59d936bb2c138d48", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3fa813d5d34f45f8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/search-route-meilisearch.test.ts:99"}, "properties": {"repobilityId": "c696a49bd7f18fc9", "scanner": "scanner-primary", "fingerprint": "3fa813d5d34f45f8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d90c511c8d76acb1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/assets-overrides.test.ts:81"}, "properties": {"repobilityId": "3bc9858217a17dcd", "scanner": "scanner-primary", "fingerprint": "d90c511c8d76acb1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fc7ca7be2037001a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/jobs-route.test.ts:68"}, "properties": {"repobilityId": "df7ede73182e5b58", "scanner": "scanner-primary", "fingerprint": "fc7ca7be2037001a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-875b420a2882dc4e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/enrichment-route.test.ts:46"}, "properties": {"repobilityId": "7c0a126e4dece4a5", "scanner": "scanner-primary", "fingerprint": "875b420a2882dc4e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-76d752f6561a44d8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/admin-backfill-meilisearch.test.ts:77"}, "properties": {"repobilityId": "eded49d7e2a42d0b", "scanner": "scanner-primary", "fingerprint": "76d752f6561a44d8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1261ff4f883e4d52", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/fs-dir-paging-sidecars.test.ts:60"}, "properties": {"repobilityId": "99eddc11120885de", "scanner": "scanner-primary", "fingerprint": "1261ff4f883e4d52", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ea58a4c09fd7317e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/search/facets.test.ts:26"}, "properties": {"repobilityId": "92765def68cd39a0", "scanner": "scanner-primary", "fingerprint": "ea58a4c09fd7317e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8dd9c63f5528ac18", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/search/buckets.test.ts:41"}, "properties": {"repobilityId": "09372a2dad2f903c", "scanner": "scanner-primary", "fingerprint": "8dd9c63f5528ac18", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b12eb9d1570f30c0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/search/list.test.ts:27"}, "properties": {"repobilityId": "046ba4b5d74948c6", "scanner": "scanner-primary", "fingerprint": "b12eb9d1570f30c0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-dcaea45fd25f0497", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/search/scope.test.ts:38"}, "properties": {"repobilityId": "39064dbd50e65746", "scanner": "scanner-primary", "fingerprint": "dcaea45fd25f0497", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a0a2add483aa9314", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/tests/fs/thumb.test.ts:147"}, "properties": {"repobilityId": "9e89c48481d82de5", "scanner": "scanner-primary", "fingerprint": "a0a2add483aa9314", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-046c1ad076bd8aae", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/scripts/seed-fake-workers.ts:49"}, "properties": {"repobilityId": "bf050fc187c19610", "scanner": "scanner-primary", "fingerprint": "046c1ad076bd8aae", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6b15126a3f3e915a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/enrichment/enrichment-config.repo.test.ts:58"}, "properties": {"repobilityId": "9fbdd50e68e8806b", "scanner": "scanner-primary", "fingerprint": "6b15126a3f3e915a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6d8d5bb8f6c878dc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/enrichment/coordinate-cache.test.ts:49"}, "properties": {"repobilityId": "0d4c81031f6eccfb", "scanner": "scanner-primary", "fingerprint": "6d8d5bb8f6c878dc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-33929067924f0f97", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/job-runner/jobs.repo.test.ts:50"}, "properties": {"repobilityId": "6cf0e94999bb417b", "scanner": "scanner-primary", "fingerprint": "33929067924f0f97", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c3c2def6a344d0a6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/job-runner/runner.test.ts:52"}, "properties": {"repobilityId": "99311326796f3af5", "scanner": "scanner-primary", "fingerprint": "c3c2def6a344d0a6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c98fdd91e54c99a4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/ffi/ffi-pool-config.repo.test.ts:113"}, "properties": {"repobilityId": "bdde701e4948c8b4", "scanner": "scanner-primary", "fingerprint": "c98fdd91e54c99a4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2f9e6145872a16b7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/assets.histogram.test.ts:111"}, "properties": {"repobilityId": "8ce1ab894ee7a63d", "scanner": "scanner-primary", "fingerprint": "2f9e6145872a16b7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-86a4a99ef465f70a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.upload.test.ts:83"}, "properties": {"repobilityId": "1c3295d98166e1b4", "scanner": "scanner-primary", "fingerprint": "86a4a99ef465f70a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e886cbb7dc675e77", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.mkdir.test.ts:89"}, "properties": {"repobilityId": "d5fc7a9f95a53601", "scanner": "scanner-primary", "fingerprint": "e886cbb7dc675e77", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1b4aa050fdf312eb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.move.test.ts:95"}, "properties": {"repobilityId": "5d396096ec2c20d3", "scanner": "scanner-primary", "fingerprint": "1b4aa050fdf312eb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b0af85a23ec628d3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/assets.thumb-etag.test.ts:99"}, "properties": {"repobilityId": "b0bd18d7e63d1571", "scanner": "scanner-primary", "fingerprint": "b0af85a23ec628d3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3796024a83964912", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.trash-list.test.ts:53"}, "properties": {"repobilityId": "e28b3a17a40536a9", "scanner": "scanner-primary", "fingerprint": "3796024a83964912", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1cd6fc005e4e538f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/backup-exists.test.ts:115"}, "properties": {"repobilityId": "0695c9bd78f3d8ad", "scanner": "scanner-primary", "fingerprint": "1cd6fc005e4e538f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-240a87c380467c4d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.scan-relink.test.ts:37"}, "properties": {"repobilityId": "fdca22e2ed87d6fe", "scanner": "scanner-primary", "fingerprint": "240a87c380467c4d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7b287675b556b3ba", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.rescan.test.ts:54"}, "properties": {"repobilityId": "b49213ecc6da60fb", "scanner": "scanner-primary", "fingerprint": "7b287675b556b3ba", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6c260a3af83db32a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/folders.etag.test.ts:69"}, "properties": {"repobilityId": "3e9b0aec783490a7", "scanner": "scanner-primary", "fingerprint": "6c260a3af83db32a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-15d9fa70a42b0313", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/routes/presets.test.ts:107"}, "properties": {"repobilityId": "039ad70714e75e60", "scanner": "scanner-primary", "fingerprint": "15d9fa70a42b0313", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0aaf49b54edfbba7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/dedupe-config.repo.test.ts:42"}, "properties": {"repobilityId": "df92acb89db2d98a", "scanner": "scanner-primary", "fingerprint": "0aaf49b54edfbba7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6863b8c54dbca89b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/dedupe.test.ts:52"}, "properties": {"repobilityId": "1b081431165f1112", "scanner": "scanner-primary", "fingerprint": "6863b8c54dbca89b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-899b8144186b2d1c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/migration.test.ts:91"}, "properties": {"repobilityId": "16420fa1b000baa6", "scanner": "scanner-primary", "fingerprint": "899b8144186b2d1c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cadb8ef3b429815f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/routes.performance.test.ts:71"}, "properties": {"repobilityId": "fb75cd876dd3a26f", "scanner": "scanner-primary", "fingerprint": "cadb8ef3b429815f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-19d821d863283bbe", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/missing-reaper.test.ts:47"}, "properties": {"repobilityId": "7fcb93b444c327e6", "scanner": "scanner-primary", "fingerprint": "19d821d863283bbe", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f2016c048af3688e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/smoke.test.ts:40"}, "properties": {"repobilityId": "8107eb8e8316c3d4", "scanner": "scanner-primary", "fingerprint": "f2016c048af3688e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-de787a4c9f3f8a8a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/trash-gc.test.ts:46"}, "properties": {"repobilityId": "c2243d73f088d449", "scanner": "scanner-primary", "fingerprint": "de787a4c9f3f8a8a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2496e1551183709f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/cache-gc.test.ts:52"}, "properties": {"repobilityId": "7abfed2ab0d1fb7c", "scanner": "scanner-primary", "fingerprint": "2496e1551183709f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-75979642f4865055", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/mirror/scan.test.ts:43"}, "properties": {"repobilityId": "d4e3d05e74d69511", "scanner": "scanner-primary", "fingerprint": "75979642f4865055", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-126d18fdc30756b1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/mirror/copy.test.ts:44"}, "properties": {"repobilityId": "d4c5229e553dd018", "scanner": "scanner-primary", "fingerprint": "126d18fdc30756b1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-db2a293de22810e5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/migration/scrub-mirror-orphans.test.ts:48"}, "properties": {"repobilityId": "4d6dff6438ac591d", "scanner": "scanner-primary", "fingerprint": "db2a293de22810e5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-491e888c4410d8b8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/migration/restructure-backup-geo.test.ts:135"}, "properties": {"repobilityId": "f92a9c7d9bc21b1c", "scanner": "scanner-primary", "fingerprint": "491e888c4410d8b8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c51f3b064e18db30", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/migration/restructure-backup-screenshots.test.ts:35"}, "properties": {"repobilityId": "067a4c31f0b1d3ff", "scanner": "scanner-primary", "fingerprint": "c51f3b064e18db30", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-765c6bd6dbc65c0b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.dedup.test.ts:31"}, "properties": {"repobilityId": "09daa4669cbce896", "scanner": "scanner-primary", "fingerprint": "765c6bd6dbc65c0b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-61e62826fd948bef", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.fileinfo.test.ts:30"}, "properties": {"repobilityId": "6d9bf488346a7192", "scanner": "scanner-primary", "fingerprint": "61e62826fd948bef", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-05cd01eead70d6f9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.idempotency.test.ts:30"}, "properties": {"repobilityId": "62a843b08decd125", "scanner": "scanner-primary", "fingerprint": "05cd01eead70d6f9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-374245b5fc32d109", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.events.test.ts:29"}, "properties": {"repobilityId": "7805eba06afb92ff", "scanner": "scanner-primary", "fingerprint": "374245b5fc32d109", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f9f33588b75b99f2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/discover/discover.skeleton.test.ts:30"}, "properties": {"repobilityId": "eb68e886366e1bee", "scanner": "scanner-primary", "fingerprint": "f9f33588b75b99f2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a315f3d6fa7aa0ba", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/stages/exif.merge.test.ts:31"}, "properties": {"repobilityId": "eee87d65cebf4b17", "scanner": "scanner-primary", "fingerprint": "a315f3d6fa7aa0ba", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-40893e9eef2d03b5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/stages/preview.test.ts:271"}, "properties": {"repobilityId": "eb2fef7ea2d08ff6", "scanner": "scanner-primary", "fingerprint": "40893e9eef2d03b5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0fecbaf0eb213ebe", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/workers/stages/thumb.test.ts:183"}, "properties": {"repobilityId": "bc17c767a9aaf688", "scanner": "scanner-primary", "fingerprint": "0fecbaf0eb213ebe", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7112075fc51e0e9c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/imports/repo.test.ts:54"}, "properties": {"repobilityId": "596dffd0d1394b19", "scanner": "scanner-primary", "fingerprint": "7112075fc51e0e9c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-236d0915f44b9f48", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/imports/worker.test.ts:50"}, "properties": {"repobilityId": "d7213ec33b7512c0", "scanner": "scanner-primary", "fingerprint": "236d0915f44b9f48", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b42d9afef0aa31a8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/db/migrations.backfills.test.ts:45"}, "properties": {"repobilityId": "5cdd136ccf094cf0", "scanner": "scanner-primary", "fingerprint": "b42d9afef0aa31a8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-14fe3bea7ee8d893", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/db/migrations.core.test.ts:43"}, "properties": {"repobilityId": "427edace52f9f0df", "scanner": "scanner-primary", "fingerprint": "14fe3bea7ee8d893", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-64b9f239677decad", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/db/client.test.ts:49"}, "properties": {"repobilityId": "3e3f6b2a53f2bd8a", "scanner": "scanner-primary", "fingerprint": "64b9f239677decad", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e2d8030b33acd476", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/db/migrations.merge-duplicates.test.ts:45"}, "properties": {"repobilityId": "658d4038e261e150", "scanner": "scanner-primary", "fingerprint": "e2d8030b33acd476", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-992cdea1eb09d1a8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/indexer/libraries.cache.test.ts:45"}, "properties": {"repobilityId": "8b0b7d3fa6a23282", "scanner": "scanner-primary", "fingerprint": "992cdea1eb09d1a8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-db0ca045d88907b9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/people/people.repo.test.ts:40"}, "properties": {"repobilityId": "7bdc254754d842cf", "scanner": "scanner-primary", "fingerprint": "db0ca045d88907b9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f9b7d70841755bb4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/people/cluster-pool.test.ts:48"}, "properties": {"repobilityId": "e390f3f1e3b4af43", "scanner": "scanner-primary", "fingerprint": "f9b7d70841755bb4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bc38523a2f51134f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/people/clustering-job.test.ts:43"}, "properties": {"repobilityId": "c68e9ac708c2ec1f", "scanner": "scanner-primary", "fingerprint": "bc38523a2f51134f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1e6d278e2c06eb8d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/api/src/fs/mirror-config.test.ts:49"}, "properties": {"repobilityId": "0ec062547fcdb8bc", "scanner": "scanner-primary", "fingerprint": "1e6d278e2c06eb8d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-89bbc613258d4adc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/test_backup_smoke.ts:74"}, "properties": {"repobilityId": "72a9c461aa17b729", "scanner": "scanner-primary", "fingerprint": "89bbc613258d4adc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-99f722dbda65e66c", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 src/web/projects/maple/src/app/search-page.component.ts:62"}, "properties": {"repobilityId": "d1ea8c5f8c7a2dcd", "scanner": "scanner-primary", "fingerprint": "99f722dbda65e66c", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-b7c54347a5180f99", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.service.ts:137"}, "properties": {"repobilityId": "082c75b557476b07", "scanner": "scanner-primary", "fingerprint": "b7c54347a5180f99", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-38d7bda03f142ea6", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 src/web/e2e/bottom-sheet.spec.ts:24"}, "properties": {"repobilityId": "978ebeee69e6b4d2", "scanner": "scanner-primary", "fingerprint": "38d7bda03f142ea6", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-539ee18767c5fe1d", "level": "warning", "message": {"text": "Dockerfile runs as root: src/api/Dockerfile"}, "properties": {"repobilityId": "d0eca4a6669e3f5b", "scanner": "scanner-primary", "fingerprint": "539ee18767c5fe1d", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-dcf631c1e4608024", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: rust:1.83-slim"}, "properties": {"repobilityId": "9db7a330d9ec8dcb", "scanner": "scanner-primary", "fingerprint": "dcf631c1e4608024", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/api/Dockerfile"}, "region": {"startLine": 36}}}]}, {"ruleId": "scanner-c903f1b536f80e64", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: oven/bun:1.3-slim"}, "properties": {"repobilityId": "255ca63ec9e1004d", "scanner": "scanner-primary", "fingerprint": "c903f1b536f80e64", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/api/Dockerfile"}, "region": {"startLine": 62}}}]}, {"ruleId": "scanner-dcf631c1e4608024", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: rust:1.83-slim"}, "properties": {"repobilityId": "e5d16d9178300454", "scanner": "scanner-primary", "fingerprint": "dcf631c1e4608024", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/api/Dockerfile"}, "region": {"startLine": 94}}}]}, {"ruleId": "scanner-c903f1b536f80e64", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: oven/bun:1.3-slim"}, "properties": {"repobilityId": "04c88408062547d2", "scanner": "scanner-primary", "fingerprint": "c903f1b536f80e64", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/api/Dockerfile"}, "region": {"startLine": 112}}}]}, {"ruleId": "scanner-aa5acaa49eb8315b", "level": "note", "message": {"text": "Containers defined but no K8s/orchestration manifest found"}, "properties": {"repobilityId": "b230ea9b68736081", "scanner": "scanner-primary", "fingerprint": "aa5acaa49eb8315b", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["coverage", "deployment"]}}, {"ruleId": "scanner-61f8b6d8353ca93b", "level": "warning", "message": {"text": "Insecure pattern 'domparser_html_parse' in docs/mobile/maple-mobile-spec.html:272"}, "properties": {"repobilityId": "68d13adf3cb4c050", "scanner": "scanner-primary", "fingerprint": "61f8b6d8353ca93b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "domparser_html_parse"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "docs/mobile/maple-mobile-spec.html"}, "region": {"startLine": 272}}}]}, {"ruleId": "scanner-f87a4773ee3471c9", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in src/api/src/enrichment/face-models-bootstrap.ts:29"}, "properties": {"repobilityId": "f2386e03da1b36a3", "scanner": "scanner-primary", "fingerprint": "f87a4773ee3471c9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/api/src/enrichment/face-models-bootstrap.ts"}, "region": {"startLine": 29}}}]}, {"ruleId": "scanner-47ba15ee57a1c066", "level": "error", "message": {"text": "Insecure pattern 'eval_used' in src/scripts/acr-reference/README.md:68"}, "properties": {"repobilityId": "399f2b79022db518", "scanner": "scanner-primary", "fingerprint": "47ba15ee57a1c066", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "eval_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/scripts/acr-reference/README.md"}, "region": {"startLine": 68}}}]}, {"ruleId": "scanner-73b22d23d303a3a0", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "7363c27c989c7c3f", "scanner": "scanner-primary", "fingerprint": "73b22d23d303a3a0", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/web.yml"}, "region": {"startLine": 99}}}]}, {"ruleId": "scanner-73b22d23d303a3a0", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "7363c27c989c7c3f", "scanner": "scanner-primary", "fingerprint": "73b22d23d303a3a0", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/web.yml"}, "region": {"startLine": 153}}}]}, {"ruleId": "scanner-73b22d23d303a3a0", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "7363c27c989c7c3f", "scanner": "scanner-primary", "fingerprint": "73b22d23d303a3a0", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/web.yml"}, "region": {"startLine": 205}}}]}, {"ruleId": "scanner-540560ed36fa7e3f", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "3d101c7f5ee9ad3d", "scanner": "scanner-primary", "fingerprint": "540560ed36fa7e3f", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/raw-pipeline.yml"}, "region": {"startLine": 81}}}]}, {"ruleId": "scanner-540560ed36fa7e3f", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "3d101c7f5ee9ad3d", "scanner": "scanner-primary", "fingerprint": "540560ed36fa7e3f", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/raw-pipeline.yml"}, "region": {"startLine": 128}}}]}, {"ruleId": "scanner-540560ed36fa7e3f", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "3d101c7f5ee9ad3d", "scanner": "scanner-primary", "fingerprint": "540560ed36fa7e3f", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/raw-pipeline.yml"}, "region": {"startLine": 179}}}]}, {"ruleId": "scanner-540560ed36fa7e3f", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "3d101c7f5ee9ad3d", "scanner": "scanner-primary", "fingerprint": "540560ed36fa7e3f", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/raw-pipeline.yml"}, "region": {"startLine": 252}}}]}, {"ruleId": "scanner-79f006334dfd722e", "level": "note", "message": {"text": "Very large file: src/raw-pipeline/raw-core/src/decode.rs (1129 lines)"}, "properties": {"repobilityId": "6f9784cc73824f85", "scanner": "scanner-primary", "fingerprint": "79f006334dfd722e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-c3ff6bb872011b36", "level": "note", "message": {"text": "Very large file: src/raw-pipeline/raw-core/src/color/dcp.rs (2188 lines)"}, "properties": {"repobilityId": "d165be0d00474a79", "scanner": "scanner-primary", "fingerprint": "c3ff6bb872011b36", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-06baabdeefa5956b", "level": "note", "message": {"text": "Very large file: src/api/src/routes/folders.ts (1348 lines)"}, "properties": {"repobilityId": "18a3f844c20348b9", "scanner": "scanner-primary", "fingerprint": "06baabdeefa5956b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d0ca44d4f361a5b1", "level": "note", "message": {"text": "Very large file: src/api/src/db/schema.ts (1167 lines)"}, "properties": {"repobilityId": "367a5072edb4551c", "scanner": "scanner-primary", "fingerprint": "d0ca44d4f361a5b1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-16b8a96cf9540b2d", "level": "note", "message": {"text": "Very large file: src/api/src/db/client.ts (1396 lines)"}, "properties": {"repobilityId": "568276b8d26ee3ab", "scanner": "scanner-primary", "fingerprint": "16b8a96cf9540b2d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "0475d75c8c76f32a", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-15b627f591c8f17c", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: src/web/projects/maple-common/package.json"}, "properties": {"repobilityId": "5ce9bbc922a8e885", "scanner": "scanner-primary", "fingerprint": "15b627f591c8f17c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/web/projects/maple-common/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "918f6aa2390a2546", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-72b2a6250083a784", "level": "warning", "message": {"text": "Placeholder or mock-heavy implementation detected"}, "properties": {"repobilityId": "0bd4853ebf12903a", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "137191f62d68a907", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "note", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "667bb25e54af661b", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-749d4bc1bd66df5f", "level": "warning", "message": {"text": "Agent instructions exist but release-hardening basics are missing"}, "properties": {"repobilityId": "e61d1085b5835be3", "scanner": "scanner-primary", "fingerprint": "749d4bc1bd66df5f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "0d829b5686c9f61b", "scanner": "scanner-primary", "fingerprint": "ea8f3013f588db25", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-8424db9c75e04ba4", "level": "none", "message": {"text": "Very short observed git history"}, "properties": {"repobilityId": "abecbc7934a946ba", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-e725d2ab884fbd49", "level": "note", "message": {"text": "Multiple root agent instruction files without precedence"}, "properties": {"repobilityId": "1953db6c89508d22", "scanner": "scanner-primary", "fingerprint": "e725d2ab884fbd49", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["agent-instructions", "governance"]}}, {"ruleId": "scanner-4326e53b38604da3", "level": "none", "message": {"text": "Commented-code block (5 lines) in test-fixtures/face-clustering/scripts/generate.py:120"}, "properties": {"repobilityId": "d10ba351fa46cccb", "scanner": "scanner-primary", "fingerprint": "4326e53b38604da3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-115d0b921d216e72", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 tools/calibration/archived_derive_baseline_exposure.py:71"}, "properties": {"repobilityId": "c615208964f185d6", "scanner": "scanner-primary", "fingerprint": "115d0b921d216e72", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-133578006fc7479c", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/api/tests/backup-ingest-helpers.ts:108"}, "properties": {"repobilityId": "6561fdc3c5ff4b1a", "scanner": "scanner-primary", "fingerprint": "133578006fc7479c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5f8e076b5596f940", "level": "none", "message": {"text": "Commented-code block (12 lines) in src/api/tests/images-repo-meilisearch.test.ts:163"}, "properties": {"repobilityId": "3eb6a104c573d4e4", "scanner": "scanner-primary", "fingerprint": "5f8e076b5596f940", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6ba8b26bd954324b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/tests/people-route.test.ts:248"}, "properties": {"repobilityId": "7bd5181e4cf06f59", "scanner": "scanner-primary", "fingerprint": "6ba8b26bd954324b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6ab7a8ccd81c09f0", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/tests/assets-restore.test.ts:264"}, "properties": {"repobilityId": "8c6a856d0d34a8d2", "scanner": "scanner-primary", "fingerprint": "6ab7a8ccd81c09f0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6a9bc27ae39a7de2", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/api/tests/assets-upload.test.ts:55"}, "properties": {"repobilityId": "0e66932a3788152e", "scanner": "scanner-primary", "fingerprint": "6a9bc27ae39a7de2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b398a8fa4e6ae9ef", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/tests/backup-rendered.test.ts:68"}, "properties": {"repobilityId": "8f2cda58a6f699cf", "scanner": "scanner-primary", "fingerprint": "b398a8fa4e6ae9ef", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-60ca475e42909891", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/tests/folders-trash-list.test.ts:65"}, "properties": {"repobilityId": "2029899fc13f99a8", "scanner": "scanner-primary", "fingerprint": "60ca475e42909891", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4a371e9d05de4254", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/tests/backup-ingest-cloud-dedup.test.ts:25"}, "properties": {"repobilityId": "e7c813c2ff7f8b5d", "scanner": "scanner-primary", "fingerprint": "4a371e9d05de4254", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-212f5d845473a438", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/tests/backup-ingest.test.ts:9"}, "properties": {"repobilityId": "d38fe7283f013b2f", "scanner": "scanner-primary", "fingerprint": "212f5d845473a438", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e87fae22cf0934c3", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/tests/workers-status-perf.test.ts:123"}, "properties": {"repobilityId": "3dcc9b6d36b8344d", "scanner": "scanner-primary", "fingerprint": "e87fae22cf0934c3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-72afbfa2e8255687", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/api/tests/indexer-id.test.ts:103"}, "properties": {"repobilityId": "3e9f584186f263a0", "scanner": "scanner-primary", "fingerprint": "72afbfa2e8255687", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8b4166b2ebd2b219", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/tests/search-place-route.test.ts:504"}, "properties": {"repobilityId": "226b9870c32f9c8f", "scanner": "scanner-primary", "fingerprint": "8b4166b2ebd2b219", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bf34d7fb75898c79", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/tests/backup-state.test.ts:28"}, "properties": {"repobilityId": "c45c16a554ca23f1", "scanner": "scanner-primary", "fingerprint": "bf34d7fb75898c79", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e0e33feb2211b3dc", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/tests/fs-route.test.ts:6"}, "properties": {"repobilityId": "eb5be8b183e7b61a", "scanner": "scanner-primary", "fingerprint": "e0e33feb2211b3dc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5f95595144a74021", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/tests/assets-xmp-conflict.test.ts:82"}, "properties": {"repobilityId": "c3f6b34f65cefd39", "scanner": "scanner-primary", "fingerprint": "5f95595144a74021", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-76171e866dbee465", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/api/tests/fs-trash-move.test.ts:100"}, "properties": {"repobilityId": "28c750cca96b5892", "scanner": "scanner-primary", "fingerprint": "76171e866dbee465", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-247f4ac6ce922566", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/tests/request-context.test.ts:26"}, "properties": {"repobilityId": "4017ed26a8b64038", "scanner": "scanner-primary", "fingerprint": "247f4ac6ce922566", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-838ad9a345ab0967", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/tests/xmp-path-keyed.test.ts:267"}, "properties": {"repobilityId": "924ba63d6c353f9d", "scanner": "scanner-primary", "fingerprint": "838ad9a345ab0967", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c835fdf661d4cd7d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/tests/fs-dir-paging-sidecars.test.ts:75"}, "properties": {"repobilityId": "f10cf3601f58ce8e", "scanner": "scanner-primary", "fingerprint": "c835fdf661d4cd7d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-940d6bc51747f1b0", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/tests/fs-xmp-list-paired-sidecars.test.ts:53"}, "properties": {"repobilityId": "c7fe7f1bf1e9a6cb", "scanner": "scanner-primary", "fingerprint": "940d6bc51747f1b0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3f51846499071b39", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/tests/auth/routes.bootstrap.test.ts:14"}, "properties": {"repobilityId": "7dceed4f3c876033", "scanner": "scanner-primary", "fingerprint": "3f51846499071b39", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-83f3a9663dfbba22", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/tests/search/buckets.test.ts:47"}, "properties": {"repobilityId": "d2c4358abb861859", "scanner": "scanner-primary", "fingerprint": "83f3a9663dfbba22", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3f817012194056bb", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/api/tests/fs/thumb.test.ts:165"}, "properties": {"repobilityId": "e9a4b864bd7a3392", "scanner": "scanner-primary", "fingerprint": "3f817012194056bb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a4a75181cea0ab66", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/scripts/seed-fake-workers.ts:74"}, "properties": {"repobilityId": "db46eb2ade4c9db3", "scanner": "scanner-primary", "fingerprint": "a4a75181cea0ab66", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-69bb65777d3b2751", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/log.ts:73"}, "properties": {"repobilityId": "4d10b0684e5f9f70", "scanner": "scanner-primary", "fingerprint": "69bb65777d3b2751", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4c483896da4d0fc7", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/otel.ts:119"}, "properties": {"repobilityId": "75fee4cc9a42e3cd", "scanner": "scanner-primary", "fingerprint": "4c483896da4d0fc7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-05b242da374baad3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/index.ts:115"}, "properties": {"repobilityId": "049172104a22f9d1", "scanner": "scanner-primary", "fingerprint": "05b242da374baad3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d181813880db5238", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/otel-logs.ts:79"}, "properties": {"repobilityId": "3bd4a1bfbe5a83a5", "scanner": "scanner-primary", "fingerprint": "d181813880db5238", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-25b788f169590f3a", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/enrichment/face-similarity.ts:177"}, "properties": {"repobilityId": "7eaa6193d747133e", "scanner": "scanner-primary", "fingerprint": "25b788f169590f3a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0b573efb2ce42644", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/src/enrichment/face-detector.ts:211"}, "properties": {"repobilityId": "a7d7f7109a3d90e0", "scanner": "scanner-primary", "fingerprint": "0b573efb2ce42644", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-99a046052b626f17", "level": "note", "message": {"text": "Legacy-named symbol `arcface_r100_glint360k_v1` in src/api/src/enrichment/face-models.test.ts:166"}, "properties": {"repobilityId": "929634c3e5b2cc9c", "scanner": "scanner-primary", "fingerprint": "99a046052b626f17", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-70c7059d3fcbc124", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/enrichment/face-models.test.ts:180"}, "properties": {"repobilityId": "e91b283a52c82898", "scanner": "scanner-primary", "fingerprint": "70c7059d3fcbc124", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-56e29f25661b4b09", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/enrichment/face-pool.test.ts:275"}, "properties": {"repobilityId": "60bc0bb126b3e149", "scanner": "scanner-primary", "fingerprint": "56e29f25661b4b09", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f0fd3c9caa2e3c25", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/enrichment/face-detector.test.ts:121"}, "properties": {"repobilityId": "1eb4f5404b284fad", "scanner": "scanner-primary", "fingerprint": "f0fd3c9caa2e3c25", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f12c6399be868030", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/enrichment/face-detector.umeyama.test.ts:208"}, "properties": {"repobilityId": "031f350310162faf", "scanner": "scanner-primary", "fingerprint": "f12c6399be868030", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-effa92db46989ac1", "level": "note", "message": {"text": "Legacy-named symbol `mobilefacenet_v1` in src/api/src/enrichment/face-models.ts:123"}, "properties": {"repobilityId": "8c15c1cc5a515758", "scanner": "scanner-primary", "fingerprint": "effa92db46989ac1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ec9f68ad879917df", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/enrichment/face-models.ts:186"}, "properties": {"repobilityId": "83e19f5c74884fe7", "scanner": "scanner-primary", "fingerprint": "ec9f68ad879917df", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-77c19610d9bcf6ba", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/api/src/enrichment/face-models.ts:453"}, "properties": {"repobilityId": "e683190c957fcc9b", "scanner": "scanner-primary", "fingerprint": "77c19610d9bcf6ba", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5d3b07b2aafacad0", "level": "none", "message": {"text": "Commented-code block (11 lines) in src/api/src/enrichment/face-bootstrap.ts:104"}, "properties": {"repobilityId": "830d27404e5c1946", "scanner": "scanner-primary", "fingerprint": "5d3b07b2aafacad0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6b7ceafa1a9e09a0", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/enrichment/face-models-bootstrap.ts:79"}, "properties": {"repobilityId": "ce85fbb948b8ffd8", "scanner": "scanner-primary", "fingerprint": "6b7ceafa1a9e09a0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-04903f1c5fd4d317", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/api/src/enrichment/face-models-bootstrap.ts:84"}, "properties": {"repobilityId": "7de571cf521b77a4", "scanner": "scanner-primary", "fingerprint": "04903f1c5fd4d317", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ddcff06d5c7bc299", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/auth/jwt-bootstrap.ts:35"}, "properties": {"repobilityId": "c6292579ac5cfb5b", "scanner": "scanner-primary", "fingerprint": "ddcff06d5c7bc299", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-460547d80994b5f4", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/auth/webauthn.ts:20"}, "properties": {"repobilityId": "c57c9dac66fd5c1e", "scanner": "scanner-primary", "fingerprint": "460547d80994b5f4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ffec34e039120937", "level": "note", "message": {"text": "Legacy-named symbol `rawOld` in src/api/src/auth/refresh_store.ts:67"}, "properties": {"repobilityId": "705df50e2f281c0d", "scanner": "scanner-primary", "fingerprint": "ffec34e039120937", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0d5ad990bcf5c258", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/auth/native_code_store.ts:3"}, "properties": {"repobilityId": "096869ec7d95e391", "scanner": "scanner-primary", "fingerprint": "0d5ad990bcf5c258", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-061ac6ca3aaa522e", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/auth/middleware.ts:52"}, "properties": {"repobilityId": "1af6bc337e695d41", "scanner": "scanner-primary", "fingerprint": "061ac6ca3aaa522e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-62a47b1d679e0897", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/api/src/auth/rate_limit.ts:3"}, "properties": {"repobilityId": "a6b0a3d88cece303", "scanner": "scanner-primary", "fingerprint": "62a47b1d679e0897", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e2286d1d787f7b91", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/handler-registry/registry.test.ts:64"}, "properties": {"repobilityId": "6dbbbb6297ef7731", "scanner": "scanner-primary", "fingerprint": "e2286d1d787f7b91", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bf9019b6acf4c8cf", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/middleware/request-context.ts:300"}, "properties": {"repobilityId": "a50b586761a36857", "scanner": "scanner-primary", "fingerprint": "bf9019b6acf4c8cf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9bf175f83e35d07a", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/backup/upload-session.test.ts:89"}, "properties": {"repobilityId": "95269a3c233cc4c8", "scanner": "scanner-primary", "fingerprint": "9bf175f83e35d07a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e66fb763c3bf1e46", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/api/src/backup/upload-session.ts:83"}, "properties": {"repobilityId": "ee4d2dd3f2f62720", "scanner": "scanner-primary", "fingerprint": "e66fb763c3bf1e46", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c60bbf509ed9dc8c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/job-runner/handlers/pano-stitch.ts:287"}, "properties": {"repobilityId": "9a751716716773bd", "scanner": "scanner-primary", "fingerprint": "c60bbf509ed9dc8c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-779264eba6ec0346", "level": "none", "message": {"text": "Commented-code block (12 lines) in src/api/src/ffi/ffi-pool.ts:5"}, "properties": {"repobilityId": "41595e7a00e2ec97", "scanner": "scanner-primary", "fingerprint": "779264eba6ec0346", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3f1415bdce4b3d8d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/ffi/raw_ffi.ts:168"}, "properties": {"repobilityId": "cc68d128a06fbf68", "scanner": "scanner-primary", "fingerprint": "3f1415bdce4b3d8d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-47b6835bd747253b", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/src/routes/pano.test.ts:44"}, "properties": {"repobilityId": "ef69e154aab9a453", "scanner": "scanner-primary", "fingerprint": "47b6835bd747253b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f5405113b2d9429d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/auth.ts:53"}, "properties": {"repobilityId": "aa5be39cfb0c97ae", "scanner": "scanner-primary", "fingerprint": "f5405113b2d9429d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bf2f4d8ea13103ab", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/people.ts:80"}, "properties": {"repobilityId": "76b3edfb4fcfdcf3", "scanner": "scanner-primary", "fingerprint": "bf2f4d8ea13103ab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d471475910416c3c", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/src/routes/observability.ts:285"}, "properties": {"repobilityId": "d98f0fc490571df2", "scanner": "scanner-primary", "fingerprint": "d471475910416c3c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ff373a44218a899e", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/api/src/routes/backup-sidecar.ts:107"}, "properties": {"repobilityId": "832e96d166d1c1b2", "scanner": "scanner-primary", "fingerprint": "ff373a44218a899e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-63bcb5b5c0b30b40", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/backup-exists.ts:95"}, "properties": {"repobilityId": "9afc805318053c03", "scanner": "scanner-primary", "fingerprint": "63bcb5b5c0b30b40", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b9e332278a617014", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/auth-native-code.ts:3"}, "properties": {"repobilityId": "03840bc928d7e5a4", "scanner": "scanner-primary", "fingerprint": "b9e332278a617014", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-288427620afd2f87", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/src/routes/folders.ts:54"}, "properties": {"repobilityId": "2994dd0604ad9f31", "scanner": "scanner-primary", "fingerprint": "288427620afd2f87", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a6b99b27f25f1fee", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/src/routes/fs-thumbs.ts:101"}, "properties": {"repobilityId": "b4977097bad3e7a9", "scanner": "scanner-primary", "fingerprint": "a6b99b27f25f1fee", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-177f8e814c08c7a7", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/changes.ts:36"}, "properties": {"repobilityId": "f0e7eb67f95108c0", "scanner": "scanner-primary", "fingerprint": "177f8e814c08c7a7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2b77875ed05842d2", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/routes/changes.sse.test.ts:195"}, "properties": {"repobilityId": "fda5a6b590445a40", "scanner": "scanner-primary", "fingerprint": "2b77875ed05842d2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4a90dc262a09cb7b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/fs-thumbs.etag.test.ts:100"}, "properties": {"repobilityId": "5e281c50d86e4638", "scanner": "scanner-primary", "fingerprint": "4a90dc262a09cb7b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a5f051c3ec434b0e", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/presets.ts:118"}, "properties": {"repobilityId": "56c48814e6b0284c", "scanner": "scanner-primary", "fingerprint": "a5f051c3ec434b0e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a9be35c205e46fdb", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/src/routes/fs.ts:7"}, "properties": {"repobilityId": "f62d22dd0aeb921a", "scanner": "scanner-primary", "fingerprint": "a9be35c205e46fdb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d6ec33d4b1df1f8b", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/routes/fs.etag.test.ts:9"}, "properties": {"repobilityId": "c7aec796c45d4299", "scanner": "scanner-primary", "fingerprint": "d6ec33d4b1df1f8b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e8f17bf99e5af77f", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/auth-account.ts:3"}, "properties": {"repobilityId": "234f5549fc8b1cf6", "scanner": "scanner-primary", "fingerprint": "e8f17bf99e5af77f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-354aa7463af0bcdd", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/backup-rendered.ts:359"}, "properties": {"repobilityId": "1be7d20825974266", "scanner": "scanner-primary", "fingerprint": "354aa7463af0bcdd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ebc3bf0ec662cf84", "level": "none", "message": {"text": "Commented-code block (11 lines) in src/api/src/routes/assets.thumb-etag.test.ts:141"}, "properties": {"repobilityId": "29f82b7475440b81", "scanner": "scanner-primary", "fingerprint": "ebc3bf0ec662cf84", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6a32b5f224fe27e3", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/routes/xmp.ts:91"}, "properties": {"repobilityId": "1135043cd7361283", "scanner": "scanner-primary", "fingerprint": "6a32b5f224fe27e3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7056063bf34af850", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/backup-ingest.ts:120"}, "properties": {"repobilityId": "418faa3c431f4e60", "scanner": "scanner-primary", "fingerprint": "7056063bf34af850", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-470cb35e8b6db0e5", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/routes/events.ts:240"}, "properties": {"repobilityId": "cd40bad22114145d", "scanner": "scanner-primary", "fingerprint": "470cb35e8b6db0e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e1a5b5ce587f155e", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/routes/mirror.ts:185"}, "properties": {"repobilityId": "e59b1f2ff1d6bbaf", "scanner": "scanner-primary", "fingerprint": "e1a5b5ce587f155e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b4d3f68006169abe", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/src/routes/imports.ts:193"}, "properties": {"repobilityId": "3b0af3cdcaf007e9", "scanner": "scanner-primary", "fingerprint": "b4d3f68006169abe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a30600120960fd5f", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/backup-notify-deleted.ts:93"}, "properties": {"repobilityId": "ced20a82e69e3ba0", "scanner": "scanner-primary", "fingerprint": "a30600120960fd5f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-15303a4046c0e878", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/routes/changes.poll.test.ts:93"}, "properties": {"repobilityId": "aada77d4c7547aae", "scanner": "scanner-primary", "fingerprint": "15303a4046c0e878", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec842aef114e4a6b", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/routes/mirror-reconcile-runner.ts:202"}, "properties": {"repobilityId": "8be1d00a361229f4", "scanner": "scanner-primary", "fingerprint": "ec842aef114e4a6b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ee9c20be8921b65f", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/src/routes/enrichment.ts:67"}, "properties": {"repobilityId": "030e293ac7d9e0cf", "scanner": "scanner-primary", "fingerprint": "ee9c20be8921b65f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a2d090a4ffbe704f", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/assets/metadata.ts:93"}, "properties": {"repobilityId": "1d5949b7d44cb594", "scanner": "scanner-primary", "fingerprint": "a2d090a4ffbe704f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5572a962a9d132b5", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/assets/histogram.ts:171"}, "properties": {"repobilityId": "8a6e07618f9eea76", "scanner": "scanner-primary", "fingerprint": "5572a962a9d132b5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2768c7dcfe7b5016", "level": "note", "message": {"text": "Legacy-named symbol `markDeprecated` in src/api/src/routes/assets/xmp.ts:33"}, "properties": {"repobilityId": "dbac2a21f13c92b7", "scanner": "scanner-primary", "fingerprint": "2768c7dcfe7b5016", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-160e25053c8d9b06", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/assets/trash.ts:82"}, "properties": {"repobilityId": "69a53b113dc8e318", "scanner": "scanner-primary", "fingerprint": "160e25053c8d9b06", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f139fa77456fab19", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/routes/search/buckets.ts:24"}, "properties": {"repobilityId": "49b694c6550280f7", "scanner": "scanner-primary", "fingerprint": "f139fa77456fab19", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d6e9351df8e2c2b1", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/routes/search/query.ts:111"}, "properties": {"repobilityId": "ea14515b468b3415", "scanner": "scanner-primary", "fingerprint": "d6e9351df8e2c2b1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2ef79bd801f2fba0", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/routes/search/nl-date.ts:139"}, "properties": {"repobilityId": "91476e7f13a1b471", "scanner": "scanner-primary", "fingerprint": "2ef79bd801f2fba0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-93bfd1c2ef7b4c94", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/routes/search/list.ts:51"}, "properties": {"repobilityId": "86f8dab94f693d4c", "scanner": "scanner-primary", "fingerprint": "93bfd1c2ef7b4c94", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dd3925189b898351", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/api/src/routes/search/sort.ts:18"}, "properties": {"repobilityId": "91a3aa23b85b2d9c", "scanner": "scanner-primary", "fingerprint": "dd3925189b898351", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7ae727d82f3fc156", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/run-stage.test-helpers.ts:3"}, "properties": {"repobilityId": "db0a3194031ef5db", "scanner": "scanner-primary", "fingerprint": "7ae727d82f3fc156", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1301bccfd9f18156", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/workers/routes-status.ts:26"}, "properties": {"repobilityId": "124abeb57a57f2c3", "scanner": "scanner-primary", "fingerprint": "1301bccfd9f18156", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-401923a38be96d4a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/missing-reaper.test.ts:402"}, "properties": {"repobilityId": "6078f9967cc5cfa1", "scanner": "scanner-primary", "fingerprint": "401923a38be96d4a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2734669ddc4bc0c8", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/stage-config.ts:60"}, "properties": {"repobilityId": "8712f27acda599af", "scanner": "scanner-primary", "fingerprint": "2734669ddc4bc0c8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8cf0b8906078224c", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/workers/routes.test.ts:81"}, "properties": {"repobilityId": "d5e055ba6b51919b", "scanner": "scanner-primary", "fingerprint": "8cf0b8906078224c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac8aedcf0860f7a3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/start-workers.ts:126"}, "properties": {"repobilityId": "750e09b04401da1b", "scanner": "scanner-primary", "fingerprint": "ac8aedcf0860f7a3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bcae267ec8003cfe", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/routes-main.ts:149"}, "properties": {"repobilityId": "0a2d235507a41ae2", "scanner": "scanner-primary", "fingerprint": "bcae267ec8003cfe", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6bea87687a0032e7", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/workers/run-stage.ts:48"}, "properties": {"repobilityId": "299d807acc159191", "scanner": "scanner-primary", "fingerprint": "6bea87687a0032e7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-918ff73a10de8e5b", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/run-stage.test.ts:77"}, "properties": {"repobilityId": "3d45704209335881", "scanner": "scanner-primary", "fingerprint": "918ff73a10de8e5b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-18f334a2ea628609", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/api/src/workers/run-stage.missing-tag.test.ts:330"}, "properties": {"repobilityId": "00e3b8b128d1a02e", "scanner": "scanner-primary", "fingerprint": "18f334a2ea628609", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-954ba2759279a7f3", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/api/src/workers/trash-gc.ts:43"}, "properties": {"repobilityId": "e0f5ba152b73bbd0", "scanner": "scanner-primary", "fingerprint": "954ba2759279a7f3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-17fc9e91e2565efb", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/api/src/workers/worker-main.ts:32"}, "properties": {"repobilityId": "963c1471746933d1", "scanner": "scanner-primary", "fingerprint": "17fc9e91e2565efb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cd5c0e7cf9aec3e3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/cache-gc.ts:91"}, "properties": {"repobilityId": "66dd90a933a8f335", "scanner": "scanner-primary", "fingerprint": "cd5c0e7cf9aec3e3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f02a5c7b7f0e5ce7", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/workers/dedupe.ts:110"}, "properties": {"repobilityId": "21d2b07247b6ea3e", "scanner": "scanner-primary", "fingerprint": "f02a5c7b7f0e5ce7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5b9ef38a612099e9", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/cache-gc.test.ts:314"}, "properties": {"repobilityId": "8e4e6e9c21bfc5e2", "scanner": "scanner-primary", "fingerprint": "5b9ef38a612099e9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e33245038a2d058f", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/workers/mirror/scan.test.ts:48"}, "properties": {"repobilityId": "e26f59b9d3ae5fd9", "scanner": "scanner-primary", "fingerprint": "e33245038a2d058f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-46267e7b23a339c1", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/workers/mirror/copy.test.ts:49"}, "properties": {"repobilityId": "7ab50810c0d941ac", "scanner": "scanner-primary", "fingerprint": "46267e7b23a339c1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b148805b0fb2657a", "level": "note", "message": {"text": "Legacy-named symbol `renderedRelOld` in src/api/src/workers/migration/move-backup-asset.ts:155"}, "properties": {"repobilityId": "4002b0df6301a92e", "scanner": "scanner-primary", "fingerprint": "b148805b0fb2657a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a7c8348c1af52e89", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/api/src/workers/migration/move-backup-asset.ts:120"}, "properties": {"repobilityId": "94d10f4742274d89", "scanner": "scanner-primary", "fingerprint": "a7c8348c1af52e89", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5dcd946a6940eacc", "level": "note", "message": {"text": "Legacy-named symbol `renderedRelOld` in src/api/src/workers/migration/restructure-fs.test.ts:44"}, "properties": {"repobilityId": "2685a063339cdbcf", "scanner": "scanner-primary", "fingerprint": "5dcd946a6940eacc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8aebe4077d1d9cc4", "level": "note", "message": {"text": "Legacy-named symbol `renderedRelOld` in src/api/src/workers/migration/restructure-fs.ts:110"}, "properties": {"repobilityId": "8c02c730cf7c3b1a", "scanner": "scanner-primary", "fingerprint": "8aebe4077d1d9cc4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-06c8145af46b3ab6", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/migration/restructure-backup-screenshots.test.ts:175"}, "properties": {"repobilityId": "f37a673b8bc98179", "scanner": "scanner-primary", "fingerprint": "06c8145af46b3ab6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a72b13618c7567de", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/workers/discover/discover-config.repo.ts:6"}, "properties": {"repobilityId": "ab50078d0fb3b4b9", "scanner": "scanner-primary", "fingerprint": "a72b13618c7567de", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2406cd68a22caa5d", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/src/workers/discover/discover.dedup.test.ts:164"}, "properties": {"repobilityId": "eac9118248356b91", "scanner": "scanner-primary", "fingerprint": "2406cd68a22caa5d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a849aabc7afef057", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/discover/discover.fileinfo.test.ts:60"}, "properties": {"repobilityId": "872ed934cdc54aa9", "scanner": "scanner-primary", "fingerprint": "a849aabc7afef057", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-157fd132932a6b7c", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/workers/discover/sweeper.test.ts:132"}, "properties": {"repobilityId": "a0534a3845a9921f", "scanner": "scanner-primary", "fingerprint": "157fd132932a6b7c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fee4843a67d39dff", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/discover/index.ts:92"}, "properties": {"repobilityId": "b48e05c77630bbd1", "scanner": "scanner-primary", "fingerprint": "fee4843a67d39dff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ab9c24ee3a7243a4", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/src/workers/discover/handle-event.ts:43"}, "properties": {"repobilityId": "d3112be1d37d9644", "scanner": "scanner-primary", "fingerprint": "ab9c24ee3a7243a4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-558bbe0be2ea54b1", "level": "none", "message": {"text": "Commented-code block (12 lines) in src/api/src/workers/discover/sweeper.ts:49"}, "properties": {"repobilityId": "2086149841a3969a", "scanner": "scanner-primary", "fingerprint": "558bbe0be2ea54b1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7d1d6d73dd67efc1", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/stages/face-embed.ts:119"}, "properties": {"repobilityId": "50810b369826b48b", "scanner": "scanner-primary", "fingerprint": "7d1d6d73dd67efc1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a1dd25d856f123e2", "level": "none", "message": {"text": "Commented-code block (13 lines) in src/api/src/workers/stages/exif.ts:69"}, "properties": {"repobilityId": "2274b575f4fd8bfa", "scanner": "scanner-primary", "fingerprint": "a1dd25d856f123e2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c7767e410d36fddb", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/workers/stages/exif.merge.test.ts:39"}, "properties": {"repobilityId": "b91d3382fba4df25", "scanner": "scanner-primary", "fingerprint": "c7767e410d36fddb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5196088816ba675a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/stages/describe.ts:86"}, "properties": {"repobilityId": "f505464e5517937b", "scanner": "scanner-primary", "fingerprint": "5196088816ba675a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-147135dac28be003", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/stages/preview.ts:51"}, "properties": {"repobilityId": "f8c1298c31009500", "scanner": "scanner-primary", "fingerprint": "147135dac28be003", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1b8f6f705a78e7a3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/stages/face-detect.ts:95"}, "properties": {"repobilityId": "87c002e7db16ea22", "scanner": "scanner-primary", "fingerprint": "1b8f6f705a78e7a3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa038ae353081dde", "level": "none", "message": {"text": "Commented-code block (13 lines) in src/api/src/workers/stages/thumb.ts:49"}, "properties": {"repobilityId": "90a6c9cce48e40b3", "scanner": "scanner-primary", "fingerprint": "aa038ae353081dde", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c7b5bd5d9f1c471e", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/workers/stages/exif.test.ts:87"}, "properties": {"repobilityId": "228f7089160cdb47", "scanner": "scanner-primary", "fingerprint": "c7b5bd5d9f1c471e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e6c493fd7adb6f78", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/src/workers/stages/face-stage-shared.ts:45"}, "properties": {"repobilityId": "e091e02715e9dd4e", "scanner": "scanner-primary", "fingerprint": "e6c493fd7adb6f78", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a5c3f4932703eff6", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/imports/repo.ts:101"}, "properties": {"repobilityId": "c55a8a29e6c8ab70", "scanner": "scanner-primary", "fingerprint": "a5c3f4932703eff6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6e05df3a7bba1cca", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/imports/repo.test.ts:138"}, "properties": {"repobilityId": "bd11e90364616763", "scanner": "scanner-primary", "fingerprint": "6e05df3a7bba1cca", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a0c1c598c98a7595", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/src/imports/scan.test.ts:104"}, "properties": {"repobilityId": "9ad1ebc3b3b0978a", "scanner": "scanner-primary", "fingerprint": "a0c1c598c98a7595", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-872a18e175d585f9", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/api/src/imports/scan.ts:108"}, "properties": {"repobilityId": "141588c2204c141b", "scanner": "scanner-primary", "fingerprint": "872a18e175d585f9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-79b9bcee7855746c", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/imports/worker.ts:239"}, "properties": {"repobilityId": "fbbf16d325df28a3", "scanner": "scanner-primary", "fingerprint": "79b9bcee7855746c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bee81242ebb13f53", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/src/runtime/child-process-worker.ts:182"}, "properties": {"repobilityId": "26bd2fa8414ae814", "scanner": "scanner-primary", "fingerprint": "bee81242ebb13f53", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-01af3eb8e254c641", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/runtime/http-content-disposition.test.ts:56"}, "properties": {"repobilityId": "b3bec8395fbeddc0", "scanner": "scanner-primary", "fingerprint": "01af3eb8e254c641", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bdd41da459fb6dbb", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/db/migrations.backfills.test.ts:134"}, "properties": {"repobilityId": "3630f269d2b2bfef", "scanner": "scanner-primary", "fingerprint": "bdd41da459fb6dbb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-206a41e52cb69dab", "level": "note", "message": {"text": "Legacy-named symbol `mobilefacenet_v1` in src/api/src/db/schema.ts:611"}, "properties": {"repobilityId": "61fed48531ef766e", "scanner": "scanner-primary", "fingerprint": "206a41e52cb69dab", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d8b459212e1e1525", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/db/schema.ts:634"}, "properties": {"repobilityId": "e773b7176447aa80", "scanner": "scanner-primary", "fingerprint": "d8b459212e1e1525", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d0dd505ec74657c0", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/db/migrations.ts:87"}, "properties": {"repobilityId": "d9b9da8ffeb94118", "scanner": "scanner-primary", "fingerprint": "d0dd505ec74657c0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-89f264d4bdff53e2", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/db/changes.repo.ts:31"}, "properties": {"repobilityId": "95afe76b95d2a0b4", "scanner": "scanner-primary", "fingerprint": "89f264d4bdff53e2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8463e5d7ce89efbc", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/db/client.ts:265"}, "properties": {"repobilityId": "c0d051168ffe3dd4", "scanner": "scanner-primary", "fingerprint": "8463e5d7ce89efbc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aeecd47848177ce5", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/db/client.test.ts:271"}, "properties": {"repobilityId": "6db88bbcc269f3a3", "scanner": "scanner-primary", "fingerprint": "aeecd47848177ce5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d9b74d90dbf5818c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/db/assets.repo.ts:165"}, "properties": {"repobilityId": "d22a5d060f7deca2", "scanner": "scanner-primary", "fingerprint": "d9b74d90dbf5818c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6460db5883ebc2bd", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/db/changes.repo.test.ts:52"}, "properties": {"repobilityId": "14a30c5b8b0b9604", "scanner": "scanner-primary", "fingerprint": "6460db5883ebc2bd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e3b4ae015c2a74bb", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/db/assets.transform.ts:57"}, "properties": {"repobilityId": "6d0e60d77c6ae363", "scanner": "scanner-primary", "fingerprint": "e3b4ae015c2a74bb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1f0282570303e293", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/api/src/indexer/exif.ts:215"}, "properties": {"repobilityId": "f86ab308b666e7ee", "scanner": "scanner-primary", "fingerprint": "1f0282570303e293", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ca12ab19b07d9e7f", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/indexer/exif.formats.test.ts:76"}, "properties": {"repobilityId": "cd6390ca1e9fe610", "scanner": "scanner-primary", "fingerprint": "ca12ab19b07d9e7f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f59f664b9311b478", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/indexer/images.repo.ts:319"}, "properties": {"repobilityId": "6448905cadd524b6", "scanner": "scanner-primary", "fingerprint": "f59f664b9311b478", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ee39c0b60b1300a2", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/api/src/thumbs/render.test.ts:105"}, "properties": {"repobilityId": "9ec75a7615a34b75", "scanner": "scanner-primary", "fingerprint": "ee39c0b60b1300a2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c08d6f635c23ded9", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/thumbs/apply-orientation.test.ts:103"}, "properties": {"repobilityId": "312dde178aafeee7", "scanner": "scanner-primary", "fingerprint": "c08d6f635c23ded9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-054806fbc9f678c9", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/thumbs/imgdecode-pool.ts:1"}, "properties": {"repobilityId": "e56dea1780170627", "scanner": "scanner-primary", "fingerprint": "054806fbc9f678c9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c8226e0c5a643847", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/people/cluster-coordinator.ts:133"}, "properties": {"repobilityId": "82e184ef7ce39f65", "scanner": "scanner-primary", "fingerprint": "c8226e0c5a643847", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f0b74f6c076a70a3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/people/people.repo.ts:254"}, "properties": {"repobilityId": "d0a84ced7b590a30", "scanner": "scanner-primary", "fingerprint": "f0b74f6c076a70a3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a87e19417f850d7c", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/people/clustering-job.ts:31"}, "properties": {"repobilityId": "7b1c9d974d0352ed", "scanner": "scanner-primary", "fingerprint": "a87e19417f850d7c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-352cbe437c5113fc", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/people/cluster-load.ts:168"}, "properties": {"repobilityId": "be45ea25342bda53", "scanner": "scanner-primary", "fingerprint": "352cbe437c5113fc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-27423abee567d08a", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/people/clustering-metrics.test.ts:80"}, "properties": {"repobilityId": "161a9012f1b0fe1b", "scanner": "scanner-primary", "fingerprint": "27423abee567d08a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0e584230fdb88ccf", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/people/clustering-quality-harness.ts:248"}, "properties": {"repobilityId": "cd9d969171ad9a2c", "scanner": "scanner-primary", "fingerprint": "0e584230fdb88ccf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5bd1d4917e668687", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/people/people.repo.test.ts:45"}, "properties": {"repobilityId": "22cae85d12a1d993", "scanner": "scanner-primary", "fingerprint": "5bd1d4917e668687", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac3b8d85d717c69b", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/api/src/people/cluster-pool.test.ts:182"}, "properties": {"repobilityId": "e986668c96801f6b", "scanner": "scanner-primary", "fingerprint": "ac3b8d85d717c69b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3ba2a2f315e04f8e", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/people/cluster.worker.ts:1"}, "properties": {"repobilityId": "261b56a7a666efa0", "scanner": "scanner-primary", "fingerprint": "3ba2a2f315e04f8e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-067d84fac6fd8d4d", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/api/src/people/cluster-pool.ts:5"}, "properties": {"repobilityId": "194f7405540281d9", "scanner": "scanner-primary", "fingerprint": "067d84fac6fd8d4d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1866422ecee761e4", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/fs/mirrored.ts:122"}, "properties": {"repobilityId": "68d68205f694ab30", "scanner": "scanner-primary", "fingerprint": "1866422ecee761e4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d103aa9db9b8f718", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/api/src/fs/xmp.ts:518"}, "properties": {"repobilityId": "f2a9dd0e7f3000cb", "scanner": "scanner-primary", "fingerprint": "d103aa9db9b8f718", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f882ecbefb3351e5", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/api/src/fs/browse.ts:416"}, "properties": {"repobilityId": "0fd5870c7bc31b8f", "scanner": "scanner-primary", "fingerprint": "f882ecbefb3351e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4421f264fdbdafaf", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 src/scripts/slider_visual_matrix.py:118"}, "properties": {"repobilityId": "4650983ae07d09c0", "scanner": "scanner-primary", "fingerprint": "4421f264fdbdafaf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-59cd958162592c10", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/scripts/apple_render_diff.py:122"}, "properties": {"repobilityId": "9ff339f85e4a47b0", "scanner": "scanner-primary", "fingerprint": "59cd958162592c10", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8dd6e1f342fb8182", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/scripts/stage_stats_test.py:80"}, "properties": {"repobilityId": "6993b1018689b599", "scanner": "scanner-primary", "fingerprint": "8dd6e1f342fb8182", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a0f5f0f2ca5a9f4f", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 src/scripts/stage_stats_test.py:61"}, "properties": {"repobilityId": "81b221730dd04e41", "scanner": "scanner-primary", "fingerprint": "a0f5f0f2ca5a9f4f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6ac641dae0a9d05e", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/scripts/stage_stats.py:50"}, "properties": {"repobilityId": "b35c1423aca2e84b", "scanner": "scanner-primary", "fingerprint": "6ac641dae0a9d05e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3d6c153c8ad6c504", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 src/scripts/stage_diff_test.py:65"}, "properties": {"repobilityId": "1485552d2d8fb689", "scanner": "scanner-primary", "fingerprint": "3d6c153c8ad6c504", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-cac56a44cde2adca", "level": "note", "message": {"text": "Legacy-named symbol `_Standard_v2` in src/scripts/convert_dcps.py:144"}, "properties": {"repobilityId": "7b155c68a7e6590b", "scanner": "scanner-primary", "fingerprint": "cac56a44cde2adca", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8cacbc8f087a7af1", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/scripts/convert_dcps.py:144"}, "properties": {"repobilityId": "0beb04c9b3ef11bc", "scanner": "scanner-primary", "fingerprint": "8cacbc8f087a7af1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e600bebb5b1b2f85", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/scripts/pano_metrics.py:371"}, "properties": {"repobilityId": "577b095600b6625e", "scanner": "scanner-primary", "fingerprint": "e600bebb5b1b2f85", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9c373bf103a43e98", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/scripts/derive_agx_lut.py:81"}, "properties": {"repobilityId": "9cc5de3f9188bf83", "scanner": "scanner-primary", "fingerprint": "9c373bf103a43e98", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec617e9d9bf90837", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/scripts/acr-reference/acr_batch.jsx:6"}, "properties": {"repobilityId": "00bd56e5c715a8e3", "scanner": "scanner-primary", "fingerprint": "ec617e9d9bf90837", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad6ca6f5d69fbbc6", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/scripts/acr-reference/run.py:46"}, "properties": {"repobilityId": "cf5d694bd7526ff5", "scanner": "scanner-primary", "fingerprint": "ad6ca6f5d69fbbc6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a2f3dda87ee44eaa", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/app.ts:1"}, "properties": {"repobilityId": "88b0c5c31c834498", "scanner": "scanner-primary", "fingerprint": "a2f3dda87ee44eaa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8610884686c918e5", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/app.config.ts:22"}, "properties": {"repobilityId": "7739545d9e0a6623", "scanner": "scanner-primary", "fingerprint": "8610884686c918e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9f863765cb3705c7", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/app.routes.ts:30"}, "properties": {"repobilityId": "71c898a7e3c01655", "scanner": "scanner-primary", "fingerprint": "9f863765cb3705c7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-abaaa37968a0fb58", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/search-page.component.ts:4"}, "properties": {"repobilityId": "deaf2d4268e7e2aa", "scanner": "scanner-primary", "fingerprint": "abaaa37968a0fb58", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-04efc67b05c3e056", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/settings-shell.component.ts:1"}, "properties": {"repobilityId": "19838a859f3561be", "scanner": "scanner-primary", "fingerprint": "04efc67b05c3e056", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fffde46d64aabca0", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/settings-icon.component.ts:1"}, "properties": {"repobilityId": "7e4fb3ee16738733", "scanner": "scanner-primary", "fingerprint": "fffde46d64aabca0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-33c634b6455a69bc", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/pano/pano-settings.component.ts:3"}, "properties": {"repobilityId": "b4dadd048b5ddeaa", "scanner": "scanner-primary", "fingerprint": "33c634b6455a69bc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5a6306e664b16677", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/users/users.component.ts:3"}, "properties": {"repobilityId": "1a00e421e0bb4368", "scanner": "scanner-primary", "fingerprint": "5a6306e664b16677", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1180468071fe25c3", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/web/projects/maple/src/app/settings/observability/observability.component.ts:3"}, "properties": {"repobilityId": "2605db03c3f59e93", "scanner": "scanner-primary", "fingerprint": "1180468071fe25c3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-05ae6fb229a1cb2d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/workers/imports-panel.service.ts:1"}, "properties": {"repobilityId": "49ebc17e386561f8", "scanner": "scanner-primary", "fingerprint": "05ae6fb229a1cb2d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-13b721dcdb3202d5", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple/src/app/settings/workers/imports-panel.service.ts:55"}, "properties": {"repobilityId": "61be3356616befd3", "scanner": "scanner-primary", "fingerprint": "13b721dcdb3202d5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b001f832b636a0b8", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/workers/workers.component.spec.ts:182"}, "properties": {"repobilityId": "f54c20425cc3420c", "scanner": "scanner-primary", "fingerprint": "b001f832b636a0b8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c118cd9481512cbf", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/workers/damaged-panel.service.ts:1"}, "properties": {"repobilityId": "67b6bc7df162c340", "scanner": "scanner-primary", "fingerprint": "c118cd9481512cbf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-47475d7cdcc2d2a2", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/workers/workers.component.ts:3"}, "properties": {"repobilityId": "5584c13572cb0732", "scanner": "scanner-primary", "fingerprint": "47475d7cdcc2d2a2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b1c5aa05bb90322a", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/workers/mirror-settings.component.ts:1"}, "properties": {"repobilityId": "16303eced29f966f", "scanner": "scanner-primary", "fingerprint": "b1c5aa05bb90322a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-93f5f5afb4035790", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/workers/workers.vm.ts:3"}, "properties": {"repobilityId": "f948b8d2763e98c0", "scanner": "scanner-primary", "fingerprint": "93f5f5afb4035790", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-135fd6a58b6f9972", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/settings/workers/migration-panel.service.ts:1"}, "properties": {"repobilityId": "9c3b2b2f6a6d2633", "scanner": "scanner-primary", "fingerprint": "135fd6a58b6f9972", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-55b6ac2dcad3fc1a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple/src/app/settings/workers/migration-panel.service.ts:31"}, "properties": {"repobilityId": "e1ce473195f5eb6e", "scanner": "scanner-primary", "fingerprint": "55b6ac2dcad3fc1a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8758e32b484a3a11", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/imports/imports.component.ts:3"}, "properties": {"repobilityId": "c1215390ed553e65", "scanner": "scanner-primary", "fingerprint": "8758e32b484a3a11", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-41fccde4f4e3cd3a", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/people/hidden-people.component.ts:8"}, "properties": {"repobilityId": "30b00f8702fcb0fc", "scanner": "scanner-primary", "fingerprint": "41fccde4f4e3cd3a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1d582aa4b2e94bd2", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/people/visible-once.directive.ts:3"}, "properties": {"repobilityId": "2b084e5867af4501", "scanner": "scanner-primary", "fingerprint": "1d582aa4b2e94bd2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5af602055c8cfd48", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple/src/app/settings/people/people.component.ts:3"}, "properties": {"repobilityId": "1a90786d83e64fd6", "scanner": "scanner-primary", "fingerprint": "5af602055c8cfd48", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c2e2db54910d6811", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/people/thumb-blob-cache.ts:6"}, "properties": {"repobilityId": "fc18db6c2d979e18", "scanner": "scanner-primary", "fingerprint": "c2e2db54910d6811", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-53998bb9031cb555", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/people/people.vm.spec.ts:346"}, "properties": {"repobilityId": "03cd47105c1d4b50", "scanner": "scanner-primary", "fingerprint": "53998bb9031cb555", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c770e1ecf3522ce2", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple/src/app/settings/people/people.vm.ts:3"}, "properties": {"repobilityId": "9918ea6636d0de75", "scanner": "scanner-primary", "fingerprint": "c770e1ecf3522ce2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4ecbb91cc1ca1506", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/web/projects/maple/src/app/search/search.vm.ts:3"}, "properties": {"repobilityId": "3730312331f46d22", "scanner": "scanner-primary", "fingerprint": "4ecbb91cc1ca1506", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d673498cdfc5f9c2", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple/src/app/search/search.component.ts:13"}, "properties": {"repobilityId": "db391a9eff781ac4", "scanner": "scanner-primary", "fingerprint": "d673498cdfc5f9c2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3769258e58f48890", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/public-api.ts:24"}, "properties": {"repobilityId": "33b948db0381e3da", "scanner": "scanner-primary", "fingerprint": "3769258e58f48890", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8187813c7718d7f1", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/tokens.spec.ts:5"}, "properties": {"repobilityId": "ba91ec20574134df", "scanner": "scanner-primary", "fingerprint": "8187813c7718d7f1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-34d6c85c77f8e753", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/layout-service.ts:3"}, "properties": {"repobilityId": "5989b860bb49e69b", "scanner": "scanner-primary", "fingerprint": "34d6c85c77f8e753", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-393f52dd880cdfb3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/pano/pano-dialog.component.ts:146"}, "properties": {"repobilityId": "f6c5d17abf814008", "scanner": "scanner-primary", "fingerprint": "393f52dd880cdfb3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-73dd94564aab73fd", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/library/filter-chips.component.ts:4"}, "properties": {"repobilityId": "3261a0bf4352973c", "scanner": "scanner-primary", "fingerprint": "73dd94564aab73fd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3b0bfd52406ac35d", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/library/library-grid.component.spec.ts:102"}, "properties": {"repobilityId": "4e04afcace8d6c22", "scanner": "scanner-primary", "fingerprint": "3b0bfd52406ac35d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-afe91a05fc6a25ab", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/library/library-grid.component.ts:8"}, "properties": {"repobilityId": "5fc953b3171399e4", "scanner": "scanner-primary", "fingerprint": "afe91a05fc6a25ab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7fd282c4d7e5c3a2", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/models/adjustment-model.ts:3"}, "properties": {"repobilityId": "f1ff508cd6507747", "scanner": "scanner-primary", "fingerprint": "7fd282c4d7e5c3a2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6df105add6a1da32", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/info/info-enrichment.component.ts:3"}, "properties": {"repobilityId": "2a9039d39128437c", "scanner": "scanner-primary", "fingerprint": "6df105add6a1da32", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d4bbdfbb1453514a", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/info/keyword-chips-row.component.spec.ts:3"}, "properties": {"repobilityId": "c40b764c9be7cf79", "scanner": "scanner-primary", "fingerprint": "d4bbdfbb1453514a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fb14b648f030f66f", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/info/info-panel.component.ts:8"}, "properties": {"repobilityId": "8d155779f6481672", "scanner": "scanner-primary", "fingerprint": "fb14b648f030f66f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-57896f9a641a4f45", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/info/keyword-chips-row.component.ts:9"}, "properties": {"repobilityId": "13e79ea6e7e67cce", "scanner": "scanner-primary", "fingerprint": "57896f9a641a4f45", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-25be9c5509ada00f", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/info/rating-flags-row.component.ts:3"}, "properties": {"repobilityId": "65fc8bd6e667168c", "scanner": "scanner-primary", "fingerprint": "25be9c5509ada00f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c6f7126edc4bb57d", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/info/info-panel.component.spec.ts:3"}, "properties": {"repobilityId": "f21127e1bb5fb8d1", "scanner": "scanner-primary", "fingerprint": "c6f7126edc4bb57d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-15e5aa34ee0cd327", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/info/histogram.component.ts:3"}, "properties": {"repobilityId": "f55f3bc4e6a2d7d7", "scanner": "scanner-primary", "fingerprint": "15e5aa34ee0cd327", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3124696214123dd7", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/info/camera-location-grid.component.ts:8"}, "properties": {"repobilityId": "f4a92d4596b23b7e", "scanner": "scanner-primary", "fingerprint": "3124696214123dd7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d842d9105ef84485", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/info/histogram.component.spec.ts:3"}, "properties": {"repobilityId": "39049a480a97a185", "scanner": "scanner-primary", "fingerprint": "d842d9105ef84485", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8a64e16db896c039", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/info/info-vision.component.ts:3"}, "properties": {"repobilityId": "28a5ecef15b94b52", "scanner": "scanner-primary", "fingerprint": "8a64e16db896c039", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d1860cdd51443959", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/info/enrichment-status-badge.component.ts:1"}, "properties": {"repobilityId": "55e99d5faebabe6c", "scanner": "scanner-primary", "fingerprint": "d1860cdd51443959", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-39ddfe469bd7a9dd", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/info/info-place.component.ts:3"}, "properties": {"repobilityId": "2520247b0c377ccf", "scanner": "scanner-primary", "fingerprint": "39ddfe469bd7a9dd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-feb4a0a2558812db", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/library-store.service.ts:5"}, "properties": {"repobilityId": "f37ab07fe3f52553", "scanner": "scanner-primary", "fingerprint": "feb4a0a2558812db", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aefb40b26a80985c", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/state/browse-preferences.service.ts:6"}, "properties": {"repobilityId": "b750ed0cc3c778b4", "scanner": "scanner-primary", "fingerprint": "aefb40b26a80985c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4d7beeb2dda51250", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/library-fetch.service.ts:3"}, "properties": {"repobilityId": "1f89e1b931a41a55", "scanner": "scanner-primary", "fingerprint": "4d7beeb2dda51250", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c6fc2b363924dde9", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/store.ts:15"}, "properties": {"repobilityId": "6c50722862de60c1", "scanner": "scanner-primary", "fingerprint": "c6fc2b363924dde9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b35f1da56b06d612", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/state/store.ts:48"}, "properties": {"repobilityId": "d2930858118fca88", "scanner": "scanner-primary", "fingerprint": "b35f1da56b06d612", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-24c98adf25b6d6aa", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/state/library-cache.service.ts:3"}, "properties": {"repobilityId": "130d6b8a0e72ed79", "scanner": "scanner-primary", "fingerprint": "24c98adf25b6d6aa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4eea23e8a074fc9f", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/timeline-state.service.ts:3"}, "properties": {"repobilityId": "293950bfe811d199", "scanner": "scanner-primary", "fingerprint": "4eea23e8a074fc9f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e0f6d5dd8cd57ed7", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/library-status.service.ts:11"}, "properties": {"repobilityId": "22454b369cf372a2", "scanner": "scanner-primary", "fingerprint": "e0f6d5dd8cd57ed7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-30f75eb3f2e82f83", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/state/library-state.service.spec.ts:3"}, "properties": {"repobilityId": "e61dd171fbddbcb3", "scanner": "scanner-primary", "fingerprint": "30f75eb3f2e82f83", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3875ee546f2072d3", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/state/library-state-imported-asset.spec.ts:3"}, "properties": {"repobilityId": "1503f516ef9325b3", "scanner": "scanner-primary", "fingerprint": "3875ee546f2072d3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7e1770a14498c9e7", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/state/timeline-state.service.spec.ts:15"}, "properties": {"repobilityId": "964b26e034467d09", "scanner": "scanner-primary", "fingerprint": "7e1770a14498c9e7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7dd0368a9fcfaa8e", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/auth/auth.interceptor.ts:6"}, "properties": {"repobilityId": "5349a00c5314018f", "scanner": "scanner-primary", "fingerprint": "7dd0368a9fcfaa8e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e42b54260386e048", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.gpu-flag.spec.ts:3"}, "properties": {"repobilityId": "6ff974151bc4d405", "scanner": "scanner-primary", "fingerprint": "e42b54260386e048", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eaa655c90dc4a634", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.worker.ts:9"}, "properties": {"repobilityId": "037c8123a8dfd8f7", "scanner": "scanner-primary", "fingerprint": "eaa655c90dc4a634", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d7f15dfa4a576b34", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.service.spec.ts:61"}, "properties": {"repobilityId": "3fc274235f83528d", "scanner": "scanner-primary", "fingerprint": "d7f15dfa4a576b34", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-56770ff003746190", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-wasm-init.ts:7"}, "properties": {"repobilityId": "af922005057914f7", "scanner": "scanner-primary", "fingerprint": "56770ff003746190", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0c0f5fcb55a37ace", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/gpu-live-render.token.ts:5"}, "properties": {"repobilityId": "c06797abe61719fd", "scanner": "scanner-primary", "fingerprint": "0c0f5fcb55a37ace", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3fbf03b23ab5ddd1", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.service.ts:69"}, "properties": {"repobilityId": "079a06858ddddd0a", "scanner": "scanner-primary", "fingerprint": "3fbf03b23ab5ddd1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5cb39b8e8652b6ea", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/raw-pipeline/raw-pipeline.types.ts:67"}, "properties": {"repobilityId": "91a771f78bee49ae", "scanner": "scanner-primary", "fingerprint": "5cb39b8e8652b6ea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eed2ee8d9468d38d", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/util/typed-storage.spec.ts:12"}, "properties": {"repobilityId": "59dd8b13d3a88eb0", "scanner": "scanner-primary", "fingerprint": "eed2ee8d9468d38d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4c5fabd1f13f1539", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/util/idb.ts:16"}, "properties": {"repobilityId": "8f07086ddbf3cc64", "scanner": "scanner-primary", "fingerprint": "4c5fabd1f13f1539", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b66f6f4ca4f7c785", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/api/filesystem-browse.service.ts:3"}, "properties": {"repobilityId": "b7f6441e19b86b98", "scanner": "scanner-primary", "fingerprint": "b66f6f4ca4f7c785", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-14adcc5a9bf9badf", "level": "none", "message": {"text": "Commented-code block (15 lines) in src/web/projects/maple-common/src/lib/api/people.store.spec.ts:3"}, "properties": {"repobilityId": "1b4151848c9a2ee3", "scanner": "scanner-primary", "fingerprint": "14adcc5a9bf9badf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5a645f1d79334e95", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/api/people.store.spec.ts:294"}, "properties": {"repobilityId": "4bd3dd52e050dd59", "scanner": "scanner-primary", "fingerprint": "5a645f1d79334e95", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-82ac6d19cf7f4239", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/api/worker-events.service.ts:3"}, "properties": {"repobilityId": "3e9acf8950cb2177", "scanner": "scanner-primary", "fingerprint": "82ac6d19cf7f4239", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c08b5abf1c9e3687", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/api/people.store.ts:3"}, "properties": {"repobilityId": "acff13324b800f8c", "scanner": "scanner-primary", "fingerprint": "c08b5abf1c9e3687", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-729181067fd18648", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/api/people.store.ts:274"}, "properties": {"repobilityId": "6fa0d6b0428ec790", "scanner": "scanner-primary", "fingerprint": "729181067fd18648", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c1a8fd92ac7926b9", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/api/folder-listing-cache.ts:4"}, "properties": {"repobilityId": "6ab5f029dc38b284", "scanner": "scanner-primary", "fingerprint": "c1a8fd92ac7926b9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-999ade64c1dcc354", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/api/bun-api-backend.service.ts:534"}, "properties": {"repobilityId": "2ee122f1ad4b5878", "scanner": "scanner-primary", "fingerprint": "999ade64c1dcc354", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-36775fca28f56102", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/develop/capture-sharpening-section.component.ts:1"}, "properties": {"repobilityId": "f06822b1bb302d4b", "scanner": "scanner-primary", "fingerprint": "36775fca28f56102", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-87ce6d17c6489ea1", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/develop/slider.component.ts:20"}, "properties": {"repobilityId": "01fb559903201c35", "scanner": "scanner-primary", "fingerprint": "87ce6d17c6489ea1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0ee77462321184e8", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.component.ts:58"}, "properties": {"repobilityId": "880dfb3224bc8b35", "scanner": "scanner-primary", "fingerprint": "0ee77462321184e8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aadd8d1083fe5461", "level": "none", "message": {"text": "Commented-code block (10 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.zoom-gestures.spec.ts:3"}, "properties": {"repobilityId": "cdf54ff61bbcf993", "scanner": "scanner-primary", "fingerprint": "aadd8d1083fe5461", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-44c0423c91fe50c4", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.zoom-gestures.ts:6"}, "properties": {"repobilityId": "5ae7fbf9ed296c2a", "scanner": "scanner-primary", "fingerprint": "44c0423c91fe50c4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e424ab0a61105633", "level": "none", "message": {"text": "Commented-code block (14 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.two-phase.ts:8"}, "properties": {"repobilityId": "3f64c399e20d9795", "scanner": "scanner-primary", "fingerprint": "e424ab0a61105633", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9e79c6c85f97ec46", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.draw2d.ts:5"}, "properties": {"repobilityId": "360dc2e6bb247eb0", "scanner": "scanner-primary", "fingerprint": "9e79c6c85f97ec46", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-894e163c16f7482c", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.gpu-present.ts:5"}, "properties": {"repobilityId": "3fe746fa2f304f18", "scanner": "scanner-primary", "fingerprint": "894e163c16f7482c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa5b1ae173a2403e", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.draw2d.spec.ts:3"}, "properties": {"repobilityId": "bb3298d89be27cd8", "scanner": "scanner-primary", "fingerprint": "aa5b1ae173a2403e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3b836986ade212de", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/components/image-canvas/image-canvas.component.spec.ts:3"}, "properties": {"repobilityId": "73b49499f4bd39d7", "scanner": "scanner-primary", "fingerprint": "3b836986ade212de", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-27fe3f31bf334631", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/asset-grid/asset-grid.component.ts:133"}, "properties": {"repobilityId": "a88643111f8e6d0a", "scanner": "scanner-primary", "fingerprint": "27fe3f31bf334631", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-716e1239275444a2", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/library-picker/library-picker.component.spec.ts:7"}, "properties": {"repobilityId": "1d0b3568abe360eb", "scanner": "scanner-primary", "fingerprint": "716e1239275444a2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bce0af80eb1fe9d2", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/timeline-view/timeline-view.component.ts:136"}, "properties": {"repobilityId": "73677f6e6a1896eb", "scanner": "scanner-primary", "fingerprint": "bce0af80eb1fe9d2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3ce75c2d25d18961", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/components/timeline-view/timeline-filter-row.component.spec.ts:14"}, "properties": {"repobilityId": "e02c47e65a6d8a4b", "scanner": "scanner-primary", "fingerprint": "3ce75c2d25d18961", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c113d75f9b17e5da", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/asset-thumb/asset-thumb.component.ts:3"}, "properties": {"repobilityId": "4eb64f42a56891af", "scanner": "scanner-primary", "fingerprint": "c113d75f9b17e5da", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7f780822142cdf2c", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/components/folder-tree/folder-tree.component.ts:29"}, "properties": {"repobilityId": "09f168735d8ce0a7", "scanner": "scanner-primary", "fingerprint": "7f780822142cdf2c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7743a2c47edefb5f", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/bottom-sheet.component.spec.ts:3"}, "properties": {"repobilityId": "3825b77a2b195a95", "scanner": "scanner-primary", "fingerprint": "7743a2c47edefb5f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-42b434caa6a802f2", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/protocol-handler.component.ts:3"}, "properties": {"repobilityId": "260c42cc01387806", "scanner": "scanner-primary", "fingerprint": "42b434caa6a802f2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-86b907f7a9dc7421", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/tab-bar-visibility.service.ts:3"}, "properties": {"repobilityId": "bc4184cbe8de9be4", "scanner": "scanner-primary", "fingerprint": "86b907f7a9dc7421", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ddbfcaae51a5bfcd", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/shells/bottom-sheet.component.ts:5"}, "properties": {"repobilityId": "b8ead376a05c8ae7", "scanner": "scanner-primary", "fingerprint": "ddbfcaae51a5bfcd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2e145bb69bc1c949", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/source-picker-drawer/source-picker-drawer.component.ts:5"}, "properties": {"repobilityId": "4c3fcfcec3c84ef0", "scanner": "scanner-primary", "fingerprint": "2e145bb69bc1c949", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5c1b8082d87d5d2e", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/source-picker-drawer/source-picker-drawer.component.spec.ts:3"}, "properties": {"repobilityId": "e9af44e0237b13b7", "scanner": "scanner-primary", "fingerprint": "5c1b8082d87d5d2e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5a1e3d143c954d35", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/browse-shell/browse-shell.component.ts:114"}, "properties": {"repobilityId": "43d988e09bf1a4a2", "scanner": "scanner-primary", "fingerprint": "5a1e3d143c954d35", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4e03f8b3c2a9acd5", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/shells/browse-shell/browse-shell.component.spec.ts:23"}, "properties": {"repobilityId": "8f1221474de07c74", "scanner": "scanner-primary", "fingerprint": "4e03f8b3c2a9acd5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8000f68c72ca1300", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/shells/editor-shell/editor-shell.component.ts:70"}, "properties": {"repobilityId": "6c21cb40686e8359", "scanner": "scanner-primary", "fingerprint": "8000f68c72ca1300", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1cd1ee52a7c77811", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/observability/observability-config.model.ts:4"}, "properties": {"repobilityId": "17af9344e2130718", "scanner": "scanner-primary", "fingerprint": "1cd1ee52a7c77811", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7f25ced6ce8653eb", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/observability/observability.service.spec.ts:1"}, "properties": {"repobilityId": "6ddc22503849574d", "scanner": "scanner-primary", "fingerprint": "7f25ced6ce8653eb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1d6f8100cd181574", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/observability/observability-config-cache.ts:4"}, "properties": {"repobilityId": "686af08d0f64d0b1", "scanner": "scanner-primary", "fingerprint": "1d6f8100cd181574", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec1851b75ca9e0be", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/web/projects/maple-common/src/lib/observability/observability.service.ts:4"}, "properties": {"repobilityId": "2d5abaf410c4b6c6", "scanner": "scanner-primary", "fingerprint": "ec1851b75ca9e0be", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3dd421da91fb381e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/observability/observability.service.ts:280"}, "properties": {"repobilityId": "165982b91c21d668", "scanner": "scanner-primary", "fingerprint": "3dd421da91fb381e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-90b461616b1773c3", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/folder-access/file-cache.ts:3"}, "properties": {"repobilityId": "f874e5b7c9b39352", "scanner": "scanner-primary", "fingerprint": "90b461616b1773c3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-37c408f960d99d85", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/sw/app-update.service.spec.ts:3"}, "properties": {"repobilityId": "bac3ace2cf994ab0", "scanner": "scanner-primary", "fingerprint": "37c408f960d99d85", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aab1b993a50b5f6b", "level": "none", "message": {"text": "Commented-code block (12 lines) in src/web/projects/maple-common/src/lib/sw/app-update.service.ts:5"}, "properties": {"repobilityId": "73d794d9b66f0992", "scanner": "scanner-primary", "fingerprint": "aab1b993a50b5f6b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ee13d2004ab058e4", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/search/search-scope-chips.component.ts:5"}, "properties": {"repobilityId": "7d675bb522f5a8a8", "scanner": "scanner-primary", "fingerprint": "ee13d2004ab058e4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1c0f520bb70ec9e7", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/search/search.component.ts:5"}, "properties": {"repobilityId": "b4da30a3260d89f4", "scanner": "scanner-primary", "fingerprint": "1c0f520bb70ec9e7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f848ff2a20932761", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/web/projects/maple-common/src/lib/search/search.component.ts:10"}, "properties": {"repobilityId": "bca314d8f5653dbf", "scanner": "scanner-primary", "fingerprint": "f848ff2a20932761", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-417c0de0c2a0d2f7", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/search/search-types.ts:3"}, "properties": {"repobilityId": "7a0d232e16677fa2", "scanner": "scanner-primary", "fingerprint": "417c0de0c2a0d2f7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-63ed5c937e651658", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/search/search-bar.component.ts:5"}, "properties": {"repobilityId": "b0ffdd2cac66efb2", "scanner": "scanner-primary", "fingerprint": "63ed5c937e651658", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e358b77aff1ba533", "level": "none", "message": {"text": "Commented-code block (11 lines) in src/web/projects/maple-common/src/lib/icons/maple-icon-registry.ts:231"}, "properties": {"repobilityId": "437463dc56f571df", "scanner": "scanner-primary", "fingerprint": "e358b77aff1ba533", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c13282874e41241e", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/icons/maple-icon.component.spec.ts:48"}, "properties": {"repobilityId": "76a6bcc517d3f118", "scanner": "scanner-primary", "fingerprint": "c13282874e41241e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f3b2aef30854e532", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/deep-link/deep-link.service.ts:1"}, "properties": {"repobilityId": "26b0581d4b0228b0", "scanner": "scanner-primary", "fingerprint": "f3b2aef30854e532", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-711c002da5717462", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/deep-link/deep-link.service.spec.ts:49"}, "properties": {"repobilityId": "86ea780085f6f0ee", "scanner": "scanner-primary", "fingerprint": "711c002da5717462", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5e6a5b323bde9022", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/editor.component.spec.ts:19"}, "properties": {"repobilityId": "a66103a83c10388d", "scanner": "scanner-primary", "fingerprint": "5e6a5b323bde9022", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e7921f34bc3cfe8d", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/sub-param-row.component.ts:3"}, "properties": {"repobilityId": "b10acb1c0ade583b", "scanner": "scanner-primary", "fingerprint": "e7921f34bc3cfe8d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0dc2ee320110ee54", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/value-chip.component.ts:3"}, "properties": {"repobilityId": "7c55857821650272", "scanner": "scanner-primary", "fingerprint": "0dc2ee320110ee54", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-00a4db361149bb80", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/tool-sub-param.ts:3"}, "properties": {"repobilityId": "04ebfe5c9d271b62", "scanner": "scanner-primary", "fingerprint": "00a4db361149bb80", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0870381a1758fe9e", "level": "none", "message": {"text": "Commented-code block (11 lines) in src/web/projects/maple-common/src/lib/editor/editor-state.service.ts:6"}, "properties": {"repobilityId": "609f55905cbcbd14", "scanner": "scanner-primary", "fingerprint": "0870381a1758fe9e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2a8c8db44e0d5839", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/editor/tool-model.ts:3"}, "properties": {"repobilityId": "72ac0b9facf8e913", "scanner": "scanner-primary", "fingerprint": "2a8c8db44e0d5839", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2880c8b1f5aff19c", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/editor/editor.component.ts:77"}, "properties": {"repobilityId": "c5850d088c7ea636", "scanner": "scanner-primary", "fingerprint": "2880c8b1f5aff19c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f5f6eadb3940c355", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/drag-bar.component.ts:87"}, "properties": {"repobilityId": "036d454bbd248cdc", "scanner": "scanner-primary", "fingerprint": "f5f6eadb3940c355", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-931181f9edda9eb2", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/web/projects/maple-common/src/lib/editor/presets/builtin-presets.ts:3"}, "properties": {"repobilityId": "7d4e3e8cc78d9199", "scanner": "scanner-primary", "fingerprint": "931181f9edda9eb2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6729567673f6d336", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/presets/user-preset-store.ts:8"}, "properties": {"repobilityId": "8a5aceac5051e109", "scanner": "scanner-primary", "fingerprint": "6729567673f6d336", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c5d88f524646f973", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/presets/preset-model.spec.ts:4"}, "properties": {"repobilityId": "0408d2189be77341", "scanner": "scanner-primary", "fingerprint": "c5d88f524646f973", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2f9f1f5d36755c5c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/presets/presets-panel.component.ts:3"}, "properties": {"repobilityId": "39f716caadf608ff", "scanner": "scanner-primary", "fingerprint": "2f9f1f5d36755c5c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-147aeb23cdedf3ab", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/editor/presets/preset-model.ts:7"}, "properties": {"repobilityId": "cd84180a5afd722e", "scanner": "scanner-primary", "fingerprint": "147aeb23cdedf3ab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d43c0a1567fed4ab", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/editor/perf/slider-tick.bench.spec.ts:7"}, "properties": {"repobilityId": "779e606369ccacb1", "scanner": "scanner-primary", "fingerprint": "d43c0a1567fed4ab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a1049852e1481921", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/xmp-store.service.ts:5"}, "properties": {"repobilityId": "a891a26c93126da3", "scanner": "scanner-primary", "fingerprint": "a1049852e1481921", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-548a97cdf08d2916", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/xmp/xmp-serializer.service.ts:7"}, "properties": {"repobilityId": "5a382060728770ff", "scanner": "scanner-primary", "fingerprint": "548a97cdf08d2916", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4f7999054695657c", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/sidecar.store.ts:8"}, "properties": {"repobilityId": "f1b9d87970c897e9", "scanner": "scanner-primary", "fingerprint": "4f7999054695657c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5cdf5f683cd7ad11", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/chroma-prefilter.spec.ts:4"}, "properties": {"repobilityId": "2e4f6ec2b77624af", "scanner": "scanner-primary", "fingerprint": "5cdf5f683cd7ad11", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b5a5bbf986cd84cd", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/sidecar.store.spec.ts:3"}, "properties": {"repobilityId": "8dd5f9e826d9eed4", "scanner": "scanner-primary", "fingerprint": "b5a5bbf986cd84cd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-44824a1613a8d38d", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/xmp/xmp-fields.ts:3"}, "properties": {"repobilityId": "2b3769b946db59f9", "scanner": "scanner-primary", "fingerprint": "44824a1613a8d38d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9f8c54dd70c304b5", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/projects/maple-common/src/lib/xmp/hot-pixel.spec.ts:4"}, "properties": {"repobilityId": "3cee170a3590f167", "scanner": "scanner-primary", "fingerprint": "9f8c54dd70c304b5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f70d29211e1b64c3", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/brightness.spec.ts:3"}, "properties": {"repobilityId": "57a788a1d2dd7e09", "scanner": "scanner-primary", "fingerprint": "f70d29211e1b64c3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-36bfa914a4533f23", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/xmp/sidecar-idb-cache.ts:8"}, "properties": {"repobilityId": "020f5afe1718d2c9", "scanner": "scanner-primary", "fingerprint": "36bfa914a4533f23", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d11585bb395ace53", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/xmp/capture-sharpening-sigma.spec.ts:1"}, "properties": {"repobilityId": "98f218c971285f67", "scanner": "scanner-primary", "fingerprint": "d11585bb395ace53", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a1f85476e0d914f5", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/web/projects/maple-common/src/lib/xmp/xmp-parser.service.ts:3"}, "properties": {"repobilityId": "55d9a234ef9d6883", "scanner": "scanner-primary", "fingerprint": "a1f85476e0d914f5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad48cc1d07a60503", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-common/src/lib/maple-cache/maple-cache.service.ts:3"}, "properties": {"repobilityId": "26f131e1bc6f89dd", "scanner": "scanner-primary", "fingerprint": "ad48cc1d07a60503", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-81360001c15a0422", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-syrup/src/app/app.ts:1"}, "properties": {"repobilityId": "14ab7a29b8274b18", "scanner": "scanner-primary", "fingerprint": "81360001c15a0422", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-92473b5add89b27c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/projects/maple-syrup/src/app/app.routes.ts:18"}, "properties": {"repobilityId": "8a7b9cf6edc940e3", "scanner": "scanner-primary", "fingerprint": "92473b5add89b27c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f6f7730b5d18754c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/_design-reference/lib/raw-wasm.jsx:3"}, "properties": {"repobilityId": "b935e6eda10f5218", "scanner": "scanner-primary", "fingerprint": "f6f7730b5d18754c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c8f65ad167671b4e", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/e2e/bottom-sheet.spec.ts:8"}, "properties": {"repobilityId": "7b453f533a36f739", "scanner": "scanner-primary", "fingerprint": "c8f65ad167671b4e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b9020bc4a4638caf", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/e2e/fonts.spec.ts:6"}, "properties": {"repobilityId": "15cbf68c0829bcd0", "scanner": "scanner-primary", "fingerprint": "b9020bc4a4638caf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7a511ef0564b39ff", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/e2e/search.spec.ts:3"}, "properties": {"repobilityId": "0a8466cce874faca", "scanner": "scanner-primary", "fingerprint": "7a511ef0564b39ff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-03e0059418101fe5", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/e2e/anchored-search.spec.ts:3"}, "properties": {"repobilityId": "70d34a0cef8915ad", "scanner": "scanner-primary", "fingerprint": "03e0059418101fe5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f5eb6e4a56616be9", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/web/e2e/source-picker-drawer.spec.ts:3"}, "properties": {"repobilityId": "6961a2dfdd717245", "scanner": "scanner-primary", "fingerprint": "f5eb6e4a56616be9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-db70822ae17489bf", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/web/e2e/raw-open.spec.ts:7"}, "properties": {"repobilityId": "4949d3bf8eda9852", "scanner": "scanner-primary", "fingerprint": "db70822ae17489bf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7de670297e14f2a1", "level": "note", "message": {"text": "41 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "1c11cebf17f19045", "scanner": "scanner-primary", "fingerprint": "7de670297e14f2a1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "1fa2f0f996007f75", "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": "162be4537ff2180e", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}]}]}