{"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-0f6815951889a101", "name": "Stray `console.log` in TS/JS \u2014 scripts/register-lead-webhook.js:28", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/register-lead-webhook.js:28"}, "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-0f530134dad958d3", "name": "Stray `console.log` in TS/JS \u2014 scripts/audit-cec021-execution-rows.js:65", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/audit-cec021-execution-rows.js:65"}, "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-4151d71fdc7757a8", "name": "Stray `console.log` in TS/JS \u2014 scripts/verify-execution-seeder.js:47", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/verify-execution-seeder.js: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-eb73f9dfff5084c8", "name": "Stray `console.log` in TS/JS \u2014 scripts/backfill-portal-links.js:73", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/backfill-portal-links.js:73"}, "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-ccd9e10a1916d1cf", "name": "Stray `console.log` in TS/JS \u2014 scripts/backfill-folder-links.js:34", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/backfill-folder-links.js:34"}, "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-6b794cebf6e19fb8", "name": "Stray `console.log` in TS/JS \u2014 scripts/diagnose-questionnaire.js:101", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/diagnose-questionnaire.js:101"}, "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-a1bad89e4332d8dc", "name": "Stray `console.log` in TS/JS \u2014 scripts/audit-templates-vs-pdfs.js:419", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/audit-templates-vs-pdfs.js:419"}, "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-96c75b757e83a36b", "name": "Stray `console.log` in TS/JS \u2014 scripts/e2e-test.js:72", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/e2e-test.js: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-a2964d06c246ae69", "name": "Stray `console.log` in TS/JS \u2014 scripts/backfill-q-completion-status.js:111", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/backfill-q-completion-status.js: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-69626343f5b41d27", "name": "Stray `console.log` in TS/JS \u2014 scripts/canary-supervisa-parents.js:100", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/canary-supervisa-parents.js:100"}, "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-0a9ef938d2d2cf57", "name": "Stray `console.log` in TS/JS \u2014 scripts/cleanup-stale-subtype-rows.js:102", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/cleanup-stale-subtype-rows.js:102"}, "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-60c9b5b199845a9e", "name": "Stray `console.log` in TS/JS \u2014 scripts/audit-template-duplicates.js:129", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/audit-template-duplicates.js:129"}, "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-2d37c35638962c53", "name": "Stray `console.log` in TS/JS \u2014 scripts/verify-reseed.js:64", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/verify-reseed.js:64"}, "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-8ef22d42301828f5", "name": "Stray `console.log` in TS/JS \u2014 scripts/fix-sv-002-sponsor-rows.js:71", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/fix-sv-002-sponsor-rows.js: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-33ff83026ad127b0", "name": "Stray `console.log` in TS/JS \u2014 scripts/verify-composition-pipeline.js:49", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/verify-composition-pipeline.js: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-1ac65e85644dc9bb", "name": "Stray `console.log` in TS/JS \u2014 scripts/generate-schemas-from-pdfs.js:132", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-schemas-from-pdfs.js:132"}, "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-b505666427104942", "name": "Stray `console.log` in TS/JS \u2014 scripts/create-leads-board-columns.js:92", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/create-leads-board-columns.js:92"}, "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-6ff72a43206256fc", "name": "Stray `console.log` in TS/JS \u2014 scripts/migrate-execution-keys.js:114", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/migrate-execution-keys.js:114"}, "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-065e29270ada270a", "name": "Stray `console.log` in TS/JS \u2014 scripts/create-family-members-board.js:51", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/create-family-members-board.js:51"}, "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-2642ff02eae019db", "name": "Stray `console.log` in TS/JS \u2014 scripts/cleanup-cec021-stale-rows.js:74", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/cleanup-cec021-stale-rows.js: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-ba48e9debd2a76a8", "name": "Stray `console.log` in TS/JS \u2014 src/server.js:285", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/server.js:285"}, "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-7a17f5741a679503", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/auditAllColumns.js:74", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/auditAllColumns.js: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-3b402b3922d272c0", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/cleanupStaleExecutionItems.js:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/cleanupStaleExecutionItems.js: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-2e1d07bba2476842", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/importVisitorVisaOutsideQuestionnaire.js:212", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importVisitorVisaOutsideQuestionnaire.js:212"}, "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-b185ee1ab557ff73", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/importSpousalSponsorshipQuestionnaire.js:340", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importSpousalSponsorshipQuestionnaire.js:340"}, "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-989c20b05d20011e", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/importExpressEntryQuestionnaire.js:334", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importExpressEntryQuestionnaire.js:334"}, "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-4a3dbcd7433d07ac", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/importPRCardQuestionnaire.js:127", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importPRCardQuestionnaire.js:127"}, "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-23c7333be72e6567", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/fillEditableDocument.js:89", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fillEditableDocument.js: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-3e9c87f0b6e91fc3", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/deleteGroupItems.js:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/deleteGroupItems.js: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-49dea3f495735c44", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/updateInstructionsFromPdfs.js:79", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/updateInstructionsFromPdfs.js:79"}, "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-cb06a4ced63affc2", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/backfillVisitorVisaExecutionItems.js:83", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/backfillVisitorVisaExecutionItems.js: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-205bc43c7cad61f2", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/backfillRemainingGroupExecutionItems.js:104", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/backfillRemainingGroupExecutionItems.js:104"}, "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-5883bb314680073c", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/registerWebhook.js:18", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/registerWebhook.js:18"}, "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-dd0b03ba8a8be163", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/backfillExecutionColumns.js:181", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/backfillExecutionColumns.js:181"}, "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-b4149613b3f39eed", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/fillCountsTowardReadiness.js:66", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fillCountsTowardReadiness.js:66"}, "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-90c3081b3a268e51", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/backfillBoardRelation.js:43", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/backfillBoardRelation.js: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-9f6789c0953e37e0", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/auditAllGroupApplicantTypes.js:121", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/auditAllGroupApplicantTypes.js:121"}, "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-7f9db64783a51aa2", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/fixBrokenUrls.js:313", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fixBrokenUrls.js:313"}, "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-dd7975568ecb1802", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/extractDisclaimers.js:285", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/extractDisclaimers.js:285"}, "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-9098828222c752f1", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/fillSampleRequired.js:69", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fillSampleRequired.js: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-1820072e013084ce", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/clearAllBoards.js:81", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/clearAllBoards.js: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-39fb055ff69a9965", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/importWorkPermitOutsideCanadaQuestionnaire.js:216", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importWorkPermitOutsideCanadaQuestionnaire.js:216"}, "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-513a31621a8163ae", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/extractPdfInstructions.js:125", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/extractPdfInstructions.js:125"}, "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-c7f0854546587710", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/importSuperVisaQuestionnaire.js:189", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importSuperVisaQuestionnaire.js:189"}, "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-87e966b603504389", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/importStudyPermitQuestionnaire.js:172", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importStudyPermitQuestionnaire.js:172"}, "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-1d9ea883194bb65e", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/importCitizenshipQuestionnaire.js:162", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importCitizenshipQuestionnaire.js:162"}, "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-7a5855b2d72a0957", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/rebuildQBoardV2.js:419", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/rebuildQBoardV2.js:419"}, "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-efca6de44d6091dd", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/importStudyPermitExtensionQuestionnaire.js:138", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importStudyPermitExtensionQuestionnaire.js:138"}, "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-5513b94dfaa45e36", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/auditTemplateEmptyColumns.js:68", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/auditTemplateEmptyColumns.js: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-10ec2bb0038564dd", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/auditSubTypeMix.js:50", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/auditSubTypeMix.js: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-26d31a6e9712f012", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/patchOutsideCanadaFamilyItems.js:94", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/patchOutsideCanadaFamilyItems.js:94"}, "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-0a62c0ac29b0fefc", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/importWorkPermitQuestionnaire.js:150", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importWorkPermitQuestionnaire.js:150"}, "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-c4a0a2837d0ebbf6", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/importQuestionnaireTemplate.js:158", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importQuestionnaireTemplate.js:158"}, "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-efce91c95107c711", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/importUSAVisaQuestionnaire.js:118", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importUSAVisaQuestionnaire.js:118"}, "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-dfc282eac8d14856", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/populateClientInstructions.js:164", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/populateClientInstructions.js:164"}, "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-3150015b76ebf132", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/rebuildTemplateBoards.js:453", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/rebuildTemplateBoards.js:453"}, "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-a221dcec8abd40c0", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/fixRemainingGroupApplicantTypes.js:64", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fixRemainingGroupApplicantTypes.js:64"}, "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-7645d0e7cee6d202", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/fixAllGroupApplicantTypes.js:86", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fixAllGroupApplicantTypes.js:86"}, "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-188fa8f1f06b1e9b", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/importProfileCreationChecklist.js:132", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importProfileCreationChecklist.js:132"}, "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-0bc84f4235225599", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/fillActiveTemplate.js:47", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fillActiveTemplate.js: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-8691dabddb15b1f6", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/dedupeTemplateBoard.js:57", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/dedupeTemplateBoard.js:57"}, "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-78a3996868ddec5d", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/importTRVQuestionnaire.js:151", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importTRVQuestionnaire.js:151"}, "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-095ba019b9f24f0b", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/fixDuplicatePassportTemplateItems.js:61", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fixDuplicatePassportTemplateItems.js:61"}, "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-727239f9a421f24b", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/updateHelpText.js:156", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/updateHelpText.js:156"}, "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-2ae6f0f0ab0a9659", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/updateCaseTypeDropdowns.js:126", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/updateCaseTypeDropdowns.js:126"}, "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-bc898c72d078ef53", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/fixVisitorVisaApplicantTypes.js:59", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fixVisitorVisaApplicantTypes.js:59"}, "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-9f44bbb22fd9c0db", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/rebuildQBoard.js:172", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/rebuildQBoard.js:172"}, "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-7c1e9ffffab4fa78", "name": "Stray `console.log` in TS/JS \u2014 src/scripts/generateDocumentCodes.js:332", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/generateDocumentCodes.js:332"}, "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-505d7f8578170d61", "name": "Stray `console.log` in TS/JS \u2014 src/_backup_20260407_103520/documentFormService.js:232", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/_backup_20260407_103520/documentFormService.js:232"}, "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-f59af7b1345f0007", "name": "Stray `console.log` in TS/JS \u2014 src/_backup_20260407_103520/oneDriveService.js:106", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/_backup_20260407_103520/oneDriveService.js:106"}, "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-16cd2d1a53facc6a", "name": "Stray `console.log` in TS/JS \u2014 src/services/documentFormService.js:356", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/documentFormService.js:356"}, "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-aacae107d9b0fdb0", "name": "Stray `console.log` in TS/JS \u2014 src/services/questionnaireService.js:24", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/questionnaireService.js:24"}, "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-6aa1fd23930860e9", "name": "Stray `console.log` in TS/JS \u2014 src/services/caseSchemaService.js:76", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/caseSchemaService.js:76"}, "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-a6dfc15c869d988c", "name": "Stray `console.log` in TS/JS \u2014 src/services/accessTokenService.js:36", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/accessTokenService.js: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-2dba9fbb1e854093", "name": "Stray `console.log` in TS/JS \u2014 src/services/paymentReconciler.js:83", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/paymentReconciler.js: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-79e5eaab0fc333be", "name": "Stray `console.log` in TS/JS \u2014 src/services/webhookManager.js:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/webhookManager.js: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-de67089c5c7d80b8", "name": "Stray `console.log` in TS/JS \u2014 src/services/postConsultService.js:106", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/postConsultService.js:106"}, "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-25ced02d0c6df4bd", "name": "Stray `console.log` in TS/JS \u2014 src/services/retainerService2.js:39", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/retainerService2.js:39"}, "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-c98fd7192e50177d", "name": "Stray `console.log` in TS/JS \u2014 src/services/emailService.js:184", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/emailService.js:184"}, "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-cbd7312a644e35ed", "name": "Stray `console.log` in TS/JS \u2014 src/services/slaRiskEngine.js:150", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/slaRiskEngine.js:150"}, "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-fe0538fffefd5bfe", "name": "Stray `console.log` in TS/JS \u2014 src/services/bookingService.js:187", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/bookingService.js:187"}, "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-840edbf83d287f5f", "name": "Stray `console.log` in TS/JS \u2014 src/services/leadPriorityService.js:178", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/leadPriorityService.js:178"}, "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-6677403d4c90362a", "name": "Stray `console.log` in TS/JS \u2014 src/services/checklistService.js:65", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/checklistService.js:65"}, "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-8208b6e5e9daf225", "name": "Stray `console.log` in TS/JS \u2014 src/services/htmlQuestionnaireService.js:207", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/htmlQuestionnaireService.js:207"}, "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-5fbcdb4715586c35", "name": "Stray `console.log` in TS/JS \u2014 src/services/handoffService.js:66", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/handoffService.js:66"}, "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-37d54b44b5e4051f", "name": "Stray `console.log` in TS/JS \u2014 src/services/scheduler.js:54", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/scheduler.js: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-b061aee71fb58f51", "name": "Stray `console.log` in TS/JS \u2014 src/services/reseedButtonService.js:73", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/reseedButtonService.js:73"}, "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-bf2e2715242675f0", "name": "Stray `console.log` in TS/JS \u2014 src/services/clientMasterService.js:144", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/clientMasterService.js:144"}, "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-61f7d64d130e4c2f", "name": "Stray `console.log` in TS/JS \u2014 src/services/stageGateService.js:109", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/stageGateService.js:109"}, "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-a7178cc57d46abe3", "name": "Stray `console.log` in TS/JS \u2014 src/services/htmlQuestionnaireReviewService.js:74", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/htmlQuestionnaireReviewService.js: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-3bdd785ee4915655", "name": "Stray `console.log` in TS/JS \u2014 src/services/paymentService.js:73", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/paymentService.js:73"}, "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-3b2d9722cec06299", "name": "Stray `console.log` in TS/JS \u2014 src/services/retainerService.js:100", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/retainerService.js:100"}, "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-effa0f26d16d8c62", "name": "Stray `console.log` in TS/JS \u2014 src/services/mondayNotificationService.js:233", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/mondayNotificationService.js:233"}, "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-da1a11db010f87d0", "name": "Stray `console.log` in TS/JS \u2014 src/services/documentReviewService.js:74", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/documentReviewService.js: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-b82b6f431af38010", "name": "Stray `console.log` in TS/JS \u2014 src/services/caseTypeRegistryService.js:140", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/caseTypeRegistryService.js:140"}, "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-32bf345e3de45420", "name": "Stray `console.log` in TS/JS \u2014 src/services/oneDriveService.js:34", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/oneDriveService.js:34"}, "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-3d7316440f8c7493", "name": "Stray `console.log` in TS/JS \u2014 src/services/missingFieldsEmailService.js:213", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/missingFieldsEmailService.js:213"}, "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-4a9c3c4fa6c8f20e", "name": "Stray `console.log` in TS/JS \u2014 src/services/caseReadinessService.js:200", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/caseReadinessService.js:200"}, "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-b012217d1a704084", "name": "Stray `console.log` in TS/JS \u2014 src/services/zoomWebhookService.js:116", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/zoomWebhookService.js:116"}, "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-ac4a51924448e908", "name": "Stray `console.log` in TS/JS \u2014 src/services/questionnairePdfService.js:343", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/questionnairePdfService.js:343"}, "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-011cd50a52c1a9c7", "name": "Stray `console.log` in TS/JS \u2014 src/services/executionService.js:183", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/executionService.js: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-a800d68c501af5c6", "name": "Stray `console.log` in TS/JS \u2014 src/services/chasingLoopService.js:85", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/chasingLoopService.js:85"}, "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-169f618e16ce3309", "name": "Stray `console.log` in TS/JS \u2014 src/services/escalationRoutingService.js:255", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/escalationRoutingService.js:255"}, "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-d775c2c11af74140", "name": "Stray `console.log` in TS/JS \u2014 src/services/questionnaireReviewService.js:73", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/questionnaireReviewService.js:73"}, "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-11d4065203ac492b", "name": "Stray `console.log` in TS/JS \u2014 src/services/questionnaireExecutionService.js:109", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/questionnaireExecutionService.js:109"}, "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-2214415e2890a5f4", "name": "Stray `console.log` in TS/JS \u2014 src/services/caseHealthEngine.js:254", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/caseHealthEngine.js:254"}, "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-d0ddd8c82a266956", "name": "Stray `console.log` in TS/JS \u2014 src/services/leadService.js:89", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/leadService.js: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-6560d3d6c49628dc", "name": "Stray `console.log` in TS/JS \u2014 src/services/familyCompositionService.js:71", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/familyCompositionService.js: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-06921cd5776cc00d", "name": "Stray `console.log` in TS/JS \u2014 src/services/expiryRiskEngine.js:201", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/expiryRiskEngine.js:201"}, "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-69bd15d02e263536", "name": "Stray `console.log` in TS/JS \u2014 src/services/leadTokenService.js:43", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/leadTokenService.js: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-ee72a0b8eb104be7", "name": "Stray `console.log` in TS/JS \u2014 src/services/caseRefService.js:170", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/caseRefService.js:170"}, "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-8974775b57a912f3", "name": "Stray `console.log` in TS/JS \u2014 src/services/consultationService.js:34", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/consultationService.js:34"}, "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-973cccc8d5b96985", "name": "Stray `console.log` in TS/JS \u2014 src/services/revisionNotificationService.js:54", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/revisionNotificationService.js: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-d8c0c2e2a83356cb", "name": "Stray `console.log` in TS/JS \u2014 src/services/executionSeederService.js:132", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/executionSeederService.js:132"}, "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-3e0c62d016e54789", "name": "Stray `console.log` in TS/JS \u2014 src/routes/mondayWebhook.js:91", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/routes/mondayWebhook.js: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-a25264b2460dc330", "name": "Stray `console.log` in TS/JS \u2014 src/routes/documentUploadForm.js:1358", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/routes/documentUploadForm.js:1358"}, "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-3a439c1b3ab9a283", "name": "Stray `console.log` in TS/JS \u2014 src/routes/documentReviewForm.js:116", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/routes/documentReviewForm.js:116"}, "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-a567a73eecd6ed03", "name": "Stray `console.log` in TS/JS \u2014 src/routes/phase2.js:366", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/routes/phase2.js:366"}, "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-80bca0246c6efd40", "name": "Stray `console.log` in TS/JS \u2014 src/routes/htmlQuestionnaireForm.js:192", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/routes/htmlQuestionnaireForm.js:192"}, "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-14ea250a903b78f1", "name": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/2. Work Permit Application Inside Canada (PGWP ", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/2. Work Permit Application Inside Canada (PGWP -SOWP- BOWP -LMIA - EXTENSION  - Questionnair - April 2025.html:530"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a00aef25ac041dc0", "name": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/7. Study Permit - Inside and Outside  - Questio", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/7. Study Permit - Inside and Outside  - Questionnaires - April 2025.html:511"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-062a27149fd0ae1c", "name": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/9. Lost PR Card - PR Card Renewal - PR TD   - Q", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/9. Lost PR Card - PR Card Renewal - PR TD   - Questionnair - April 2025.html:341"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a2ee983686638700", "name": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/11. Super Visa - Outside  - Questionnaires - Ap", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/11. Super Visa - Outside  - Questionnaires - April 2025.html:534"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-935e6e1705657ab6", "name": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/4. Citizenship - Questionnaires - April 2025.ht", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/4. Citizenship - Questionnaires - April 2025.html:531"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ef7d7c047b090791", "name": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/3. Work Permit Outside Canada (SOWP - LMIA )- Q", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/3. Work Permit Outside Canada (SOWP - LMIA )- Questionnaires - April 2025.html:1069"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7f4009023773ec4f", "name": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/10. Spousal Sponsorship Quetsionaires - Inside ", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/10. Spousal Sponsorship Quetsionaires - Inside and Outside - April 2025.html:903"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-695e29158db2fb84", "name": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/8. VisItor Visa - Outside  - Questionnaires - A", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/8. VisItor Visa - Outside  - Questionnaires - April 2025.html:981"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7786cf78c3edc674", "name": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/6. Express Entry Profile - PNP Profile Creation", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/6. Express Entry Profile - PNP Profile Creation - Questionnair - July 2025.html:612"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e3ca582f5fc19d9b", "name": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/1. Express Entry - PNP - PR Application -  Ques", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/1. Express Entry - PNP - PR Application -  Questionnaire - April 2025.html:1038"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fec91a2c3e256145", "name": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/5. Study Permit Extension - Questionnaires - Ap", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/5. Study Permit Extension - Questionnaires - April 2025.html:504"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d331957ab2d6660b", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/_backup_20260407_103520/documentUploadForm.js:441", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/_backup_20260407_103520/documentUploadForm.js:441"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5798e621f7c67f63", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/services/intakeFormService.js:717", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/services/intakeFormService.js:717"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d82b6f5fb4874d36", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/services/htmlQuestionnaireService.js:1602", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/services/htmlQuestionnaireService.js:1602"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b6638c950ac24ddd", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/services/htmlQuestionnaireReviewService.js:861", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/services/htmlQuestionnaireReviewService.js:861"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e7deb71d53e8bbba", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/services/documentReviewFormService.js:654", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/services/documentReviewFormService.js:654"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-33c17effd0687598", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/services/consultationService.js:165", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/services/consultationService.js:165"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9b7fd3c4a89b374b", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/adminEngines.js:990", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/adminEngines.js:990"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-194666607aa27fb9", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/adminDashboard.js:1262", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/adminDashboard.js:1262"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-da8dc94098f7830d", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/documentUploadForm.js:1058", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/documentUploadForm.js:1058"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-04f7f65026224b9f", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/questionnaireForm.js:535", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/questionnaireForm.js:535"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a68a169a2023304d", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/adminPanel.js:1172", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/adminPanel.js:1172"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-df0000ee82374c3f", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/adminCase.js:286", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/adminCase.js:286"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-12bf192ce9d1cc49", "name": "Very large file: src/services/htmlQuestionnaireService.js (4553 lines)", "shortDescription": {"text": "Very large file: src/services/htmlQuestionnaireService.js (4553 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-72b9a4809f2dacae", "name": "Very large file: src/routes/adminDashboard.js (1642 lines)", "shortDescription": {"text": "Very large file: src/routes/adminDashboard.js (1642 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-9339001bf877003e", "name": "Very large file: src/routes/documentUploadForm.js (1373 lines)", "shortDescription": {"text": "Very large file: src/routes/documentUploadForm.js (1373 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-6893a6c8b0861585", "name": "Very low test-to-source ratio", "shortDescription": {"text": "Very low test-to-source ratio"}, "fullDescription": {"text": "6 test file(s) for 149 source file(s) (ratio 0.04). Consider adding integration or unit tests for critical paths."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "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-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 996 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 44 placeholder/mock markers across 17 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, ci. 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, ci. 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-36ab407529e349d4", "name": "Commented-code block (7 lines) in scripts/migrate-execution-keys.js:247", "shortDescription": {"text": "Commented-code block (7 lines) in scripts/migrate-execution-keys.js:247"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c88c125a965e918e", "name": "Commented-code block (5 lines) in src/server.js:95", "shortDescription": {"text": "Commented-code block (5 lines) in src/server.js: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-50eaa0d6234a0ec3", "name": "Commented-code block (6 lines) in src/scripts/importExpressEntryQuestionnaire.js:158", "shortDescription": {"text": "Commented-code block (6 lines) in src/scripts/importExpressEntryQuestionnaire.js:158"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4474d759720c4c86", "name": "Commented-code block (5 lines) in src/scripts/fixBrokenUrls.js:71", "shortDescription": {"text": "Commented-code block (5 lines) in src/scripts/fixBrokenUrls.js:71"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3b77599ce53191e8", "name": "Commented-code block (5 lines) in src/scripts/patchOutsideCanadaFamilyItems.js:61", "shortDescription": {"text": "Commented-code block (5 lines) in src/scripts/patchOutsideCanadaFamilyItems.js: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-5018268956e7ca26", "name": "Commented-code block (7 lines) in src/services/retainerService2.js:125", "shortDescription": {"text": "Commented-code block (7 lines) in src/services/retainerService2.js:125"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0eac6a4d9224be89", "name": "Commented-code block (5 lines) in src/services/emailService.js:15", "shortDescription": {"text": "Commented-code block (5 lines) in src/services/emailService.js: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-5be4b1705e296e50", "name": "Commented-code block (5 lines) in src/services/checklistService.js:158", "shortDescription": {"text": "Commented-code block (5 lines) in src/services/checklistService.js:158"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-50fe1bc3f4d74d67", "name": "Legacy-named symbol `parseCsvLegacy` in src/services/htmlQuestionnaireService.js:85", "shortDescription": {"text": "Legacy-named symbol `parseCsvLegacy` in src/services/htmlQuestionnaireService.js:85"}, "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-bc4dd9afa5ca9148", "name": "Commented-code block (6 lines) in src/services/htmlQuestionnaireService.js:32", "shortDescription": {"text": "Commented-code block (6 lines) in src/services/htmlQuestionnaireService.js: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-2970413e6d5bb7d1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/services/htmlQuestionnaireService.js:1444", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/services/htmlQuestionnaireService.js:1444"}, "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-440c2eb40f197b32", "name": "Commented-code block (9 lines) in src/services/retainerService.js:18", "shortDescription": {"text": "Commented-code block (9 lines) in src/services/retainerService.js: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-b1245370ffa9ff68", "name": "Commented-code block (5 lines) in src/services/caseReadinessService.js:35", "shortDescription": {"text": "Commented-code block (5 lines) in src/services/caseReadinessService.js: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-47d4bc6c83fba15e", "name": "Commented-code block (5 lines) in src/services/caseRefService.js:216", "shortDescription": {"text": "Commented-code block (5 lines) in src/services/caseRefService.js:216"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3cd1d19ac7864ea2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminEngines.js:821", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminEngines.js:821"}, "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-ad1b843f0c9cd23f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminLogin.js:288", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminLogin.js:288"}, "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-a808cdfde056c640", "name": "Commented-code block (8 lines) in src/routes/mondayWebhook.js:207", "shortDescription": {"text": "Commented-code block (8 lines) in src/routes/mondayWebhook.js:207"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-31aedf86e45dbaaf", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminDashboard.js:853", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminDashboard.js:853"}, "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-9d229b08edfbcf83", "name": "Commented-code block (6 lines) in src/routes/documentUploadForm.js:466", "shortDescription": {"text": "Commented-code block (6 lines) in src/routes/documentUploadForm.js:466"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-20c06f3f4f54818a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminPanel.js:906", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminPanel.js:906"}, "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-934c0f9a67a43a4b", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminCase.js:354", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminCase.js:354"}, "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-9526a5716961d311", "name": "Commented-code block (6 lines) in src/routes/phase2.js:147", "shortDescription": {"text": "Commented-code block (6 lines) in src/routes/phase2.js:147"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-be86451593132c40", "name": "Commented-code block (5 lines) in src/routes/htmlQuestionnaireForm.js:666", "shortDescription": {"text": "Commented-code block (5 lines) in src/routes/htmlQuestionnaireForm.js:666"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e166b6d04647debd", "name": "Commented-code block (6 lines) in src/routes/clientPortal.js:45", "shortDescription": {"text": "Commented-code block (6 lines) in src/routes/clientPortal.js: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-bddda3d5a14c7401", "name": "29 env vars used in code but missing from .env.example", "shortDescription": {"text": "29 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `ADMIN_API_KEY`, `ANTHROPIC_MODEL`, `EMAIL_REPLY_TO`, `LEAD_ALERT_EMAIL`, `MEETING_ORGANIZER_EMAIL`, `MEETING_PROVIDER`, `MONDAY_CM_HANDOFF_GROUP_ID`, `MONDAY_ESCALATION_MATRIX_BOARD_ID` + 21 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-958c4e3b79830a4d", "name": "Dangling fetch: POST https://api.monday.com/v2/file (src/_backup_20260407_103520/documentFormService.js:161)", "shortDescription": {"text": "Dangling fetch: POST https://api.monday.com/v2/file (src/_backup_20260407_103520/documentFormService.js:161)"}, "fullDescription": {"text": "`src/_backup_20260407_103520/documentFormService.js:161` calls `POST https://api.monday.com/v2/file` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: axios\nNormalized path used for matching: `/https:/api.monday.com/v2/file`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e0a6a4e82c0d89a5", "name": "Dangling fetch: GET https://graph.microsoft.com/v1.0/users/${encodeURIComponent(user)}/drive/root:/Recordings:/children?", "shortDescription": {"text": "Dangling fetch: GET https://graph.microsoft.com/v1.0/users/${encodeURIComponent(user)}/drive/root:/Recordings:/children?$top=50&$orderby=createdDateTime desc (src/services/postConsultService.js:124)"}, "fullDescription": {"text": "`src/services/postConsultService.js:124` calls `GET https://graph.microsoft.com/v1.0/users/${encodeURIComponent(user)}/drive/root:/Recordings:/children?$top=50&$orderby=createdDateTime desc` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: axios\nNormalized path used for matching: `/https:/graph.microsoft.com/v1.0/users/<p>/drive/root:/recordings:/children`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f03a5e61317181ca", "name": "Dangling fetch: POST https://graph.microsoft.com/v1.0/drives/${file.driveId}/items/${file.id}/createLink (src/services/p", "shortDescription": {"text": "Dangling fetch: POST https://graph.microsoft.com/v1.0/drives/${file.driveId}/items/${file.id}/createLink (src/services/postConsultService.js:163)"}, "fullDescription": {"text": "`src/services/postConsultService.js:163` calls `POST https://graph.microsoft.com/v1.0/drives/${file.driveId}/items/${file.id}/createLink` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: axios\nNormalized path used for matching: `/https:/graph.microsoft.com/v1.0/drives/<p>/items/<p>/createlink`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-17b2e2bd0e35cc8a", "name": "Dangling fetch: POST https://login.microsoftonline.com/${tenantId}/oauth2/v2.0/token (src/services/microsoftMailService.", "shortDescription": {"text": "Dangling fetch: POST https://login.microsoftonline.com/${tenantId}/oauth2/v2.0/token (src/services/microsoftMailService.js:50)"}, "fullDescription": {"text": "`src/services/microsoftMailService.js:50` calls `POST https://login.microsoftonline.com/${tenantId}/oauth2/v2.0/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: axios\nNormalized path used for matching: `/https:/login.microsoftonline.com/<p>/oauth2/v2.0/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-76e742d3601bc1b5", "name": "Dangling fetch: POST https://graph.microsoft.com/v1.0/users/${encodeURIComponent(fromEmail)}/sendMail (src/services/micr", "shortDescription": {"text": "Dangling fetch: POST https://graph.microsoft.com/v1.0/users/${encodeURIComponent(fromEmail)}/sendMail (src/services/microsoftMailService.js:100)"}, "fullDescription": {"text": "`src/services/microsoftMailService.js:100` calls `POST https://graph.microsoft.com/v1.0/users/${encodeURIComponent(fromEmail)}/sendMail` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: axios\nNormalized path used for matching: `/https:/graph.microsoft.com/v1.0/users/<p>/sendmail`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-8d0cd3f1692898be", "name": "Dangling fetch: POST https://zoom.us/oauth/token (src/services/meetingService.js:38)", "shortDescription": {"text": "Dangling fetch: POST https://zoom.us/oauth/token (src/services/meetingService.js:38)"}, "fullDescription": {"text": "`src/services/meetingService.js:38` calls `POST https://zoom.us/oauth/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: axios\nNormalized path used for matching: `/https:/zoom.us/oauth/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9972d57797a404c3", "name": "Dangling fetch: POST https://api.zoom.us/v2/users/me/meetings (src/services/meetingService.js:67)", "shortDescription": {"text": "Dangling fetch: POST https://api.zoom.us/v2/users/me/meetings (src/services/meetingService.js:67)"}, "fullDescription": {"text": "`src/services/meetingService.js:67` calls `POST https://api.zoom.us/v2/users/me/meetings` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: axios\nNormalized path used for matching: `/https:/api.zoom.us/v2/users/me/meetings`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-299dd1b7598c6dd2", "name": "Dangling fetch: POST https://graph.microsoft.com/v1.0/users/${encodeURIComponent(organizer)}/events (src/services/meetin", "shortDescription": {"text": "Dangling fetch: POST https://graph.microsoft.com/v1.0/users/${encodeURIComponent(organizer)}/events (src/services/meetingService.js:143)"}, "fullDescription": {"text": "`src/services/meetingService.js:143` calls `POST https://graph.microsoft.com/v1.0/users/${encodeURIComponent(organizer)}/events` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: axios\nNormalized path used for matching: `/https:/graph.microsoft.com/v1.0/users/<p>/events`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-fc0bc27cc164872f", "name": "Dangling fetch: POST https://graph.microsoft.com/v1.0/users/${encodeURIComponent(organizer)}/events (src/services/meetin", "shortDescription": {"text": "Dangling fetch: POST https://graph.microsoft.com/v1.0/users/${encodeURIComponent(organizer)}/events (src/services/meetingService.js:183)"}, "fullDescription": {"text": "`src/services/meetingService.js:183` calls `POST https://graph.microsoft.com/v1.0/users/${encodeURIComponent(organizer)}/events` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: axios\nNormalized path used for matching: `/https:/graph.microsoft.com/v1.0/users/<p>/events`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2e4afd84305a58fc", "name": "Dangling fetch: DELETE https://graph.microsoft.com/v1.0/users/${encodeURIComponent(organizer)}/events/${event.id} (src/s", "shortDescription": {"text": "Dangling fetch: DELETE https://graph.microsoft.com/v1.0/users/${encodeURIComponent(organizer)}/events/${event.id} (src/services/meetingService.js:196)"}, "fullDescription": {"text": "`src/services/meetingService.js:196` calls `DELETE https://graph.microsoft.com/v1.0/users/${encodeURIComponent(organizer)}/events/${event.id}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: axios\nNormalized path used for matching: `/https:/graph.microsoft.com/v1.0/users/<p>/events/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-33dd818142d745b9", "name": "Dangling fetch: POST https://auth.monday.com/oauth2/token (src/routes/htmlQuestionnaireForm.js:133)", "shortDescription": {"text": "Dangling fetch: POST https://auth.monday.com/oauth2/token (src/routes/htmlQuestionnaireForm.js:133)"}, "fullDescription": {"text": "`src/routes/htmlQuestionnaireForm.js:133` calls `POST https://auth.monday.com/oauth2/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: axios\nNormalized path used for matching: `/https:/auth.monday.com/oauth2/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7a248fc08cd9f1e6", "name": "Dangling fetch: POST https://api.monday.com/v2 (src/routes/htmlQuestionnaireForm.js:155)", "shortDescription": {"text": "Dangling fetch: POST https://api.monday.com/v2 (src/routes/htmlQuestionnaireForm.js:155)"}, "fullDescription": {"text": "`src/routes/htmlQuestionnaireForm.js:155` calls `POST https://api.monday.com/v2` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: axios\nNormalized path used for matching: `/https:/api.monday.com/v2`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4b9a3120841d5d01", "name": "Unused endpoint: USE /webhook/monday", "shortDescription": {"text": "Unused endpoint: USE /webhook/monday"}, "fullDescription": {"text": "`src/server.js` declares `USE /webhook/monday` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-705ce9ec7ea4c7d7", "name": "Unused endpoint: USE /questionnaire", "shortDescription": {"text": "Unused endpoint: USE /questionnaire"}, "fullDescription": {"text": "`src/server.js` declares `USE /questionnaire` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-428d7ebee5918103", "name": "Unused endpoint: USE /documents", "shortDescription": {"text": "Unused endpoint: USE /documents"}, "fullDescription": {"text": "`src/server.js` declares `USE /documents` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c022c4f799e31531", "name": "Unused endpoint: USE /q", "shortDescription": {"text": "Unused endpoint: USE /q"}, "fullDescription": {"text": "`src/server.js` declares `USE /q` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cc25db52848b8c97", "name": "Unused endpoint: USE /d", "shortDescription": {"text": "Unused endpoint: USE /d"}, "fullDescription": {"text": "`src/server.js` declares `USE /d` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-520546e90f7fd2b2", "name": "Unused endpoint: USE /client", "shortDescription": {"text": "Unused endpoint: USE /client"}, "fullDescription": {"text": "`src/server.js` declares `USE /client` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-93a420ac58e019cf", "name": "Unused endpoint: USE /admin/dashboard", "shortDescription": {"text": "Unused endpoint: USE /admin/dashboard"}, "fullDescription": {"text": "`src/server.js` declares `USE /admin/dashboard` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c5f35c8917a896c6", "name": "Unused endpoint: USE /admin/engines", "shortDescription": {"text": "Unused endpoint: USE /admin/engines"}, "fullDescription": {"text": "`src/server.js` declares `USE /admin/engines` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-51af2ae94e0f55a8", "name": "Unused endpoint: USE /admin/case", "shortDescription": {"text": "Unused endpoint: USE /admin/case"}, "fullDescription": {"text": "`src/server.js` declares `USE /admin/case` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b2d8849fb6b1ac47", "name": "Unused endpoint: USE /admin", "shortDescription": {"text": "Unused endpoint: USE /admin"}, "fullDescription": {"text": "`src/server.js` declares `USE /admin` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b82f2c3c8954bf1c", "name": "Unused endpoint: USE /docs", "shortDescription": {"text": "Unused endpoint: USE /docs"}, "fullDescription": {"text": "`src/server.js` declares `USE /docs` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f02a079c69b52f2d", "name": "Unused endpoint: USE /", "shortDescription": {"text": "Unused endpoint: USE /"}, "fullDescription": {"text": "`src/server.js` declares `USE /` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5baa8971ebe192a1", "name": "Unused endpoint: GET /", "shortDescription": {"text": "Unused endpoint: GET /"}, "fullDescription": {"text": "`src/server.js` declares `GET /` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dde3adb27bf7eebe", "name": "Unused endpoint: USE /api", "shortDescription": {"text": "Unused endpoint: USE /api"}, "fullDescription": {"text": "`src/server.js` declares `USE /api` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-567df6b106f9206a", "name": "Unused endpoint: POST /api/resend-intake/:itemId", "shortDescription": {"text": "Unused endpoint: POST /api/resend-intake/:itemId"}, "fullDescription": {"text": "`src/server.js` declares `POST /api/resend-intake/:itemId` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2b8f4f092427fba7", "name": "Unused endpoint: POST /api/checklist/reseed/:caseRef", "shortDescription": {"text": "Unused endpoint: POST /api/checklist/reseed/:caseRef"}, "fullDescription": {"text": "`src/server.js` declares `POST /api/checklist/reseed/:caseRef` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d986b087688ad6ad", "name": "Unused endpoint: POST /api/meeting-preflight", "shortDescription": {"text": "Unused endpoint: POST /api/meeting-preflight"}, "fullDescription": {"text": "`src/server.js` declares `POST /api/meeting-preflight` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0787b4888bb966a8", "name": "Unused endpoint: GET /api/client-master/document-collection-started", "shortDescription": {"text": "Unused endpoint: GET /api/client-master/document-collection-started"}, "fullDescription": {"text": "`src/server.js` declares `GET /api/client-master/document-collection-started` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-42ad032b379cbf2d", "name": "Unused endpoint: GET /api/boards/template", "shortDescription": {"text": "Unused endpoint: GET /api/boards/template"}, "fullDescription": {"text": "`src/server.js` declares `GET /api/boards/template` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b8bb31c867aedc09", "name": "Unused endpoint: GET /api/boards/execution", "shortDescription": {"text": "Unused endpoint: GET /api/boards/execution"}, "fullDescription": {"text": "`src/server.js` declares `GET /api/boards/execution` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8e1192040a974432", "name": "Unused endpoint: POST /api/readiness/run", "shortDescription": {"text": "Unused endpoint: POST /api/readiness/run"}, "fullDescription": {"text": "`src/server.js` declares `POST /api/readiness/run` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bab867696c84208f", "name": "Unused endpoint: POST /api/sla/run", "shortDescription": {"text": "Unused endpoint: POST /api/sla/run"}, "fullDescription": {"text": "`src/server.js` declares `POST /api/sla/run` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e6da5c6b958a8fa3", "name": "Unused endpoint: POST /api/health/run", "shortDescription": {"text": "Unused endpoint: POST /api/health/run"}, "fullDescription": {"text": "`src/server.js` declares `POST /api/health/run` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e35a46af0b43a8ee", "name": "Unused endpoint: POST /api/expiry/run", "shortDescription": {"text": "Unused endpoint: POST /api/expiry/run"}, "fullDescription": {"text": "`src/server.js` declares `POST /api/expiry/run` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6ebea146257e5d0b", "name": "Unused endpoint: POST /api/escalation/run", "shortDescription": {"text": "Unused endpoint: POST /api/escalation/run"}, "fullDescription": {"text": "`src/server.js` declares `POST /api/escalation/run` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6a8a58e366789354", "name": "Unused endpoint: POST /api/chasing/run", "shortDescription": {"text": "Unused endpoint: POST /api/chasing/run"}, "fullDescription": {"text": "`src/server.js` declares `POST /api/chasing/run` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-80a3b87b26773f94", "name": "Unused endpoint: GET /api/boards/client-master", "shortDescription": {"text": "Unused endpoint: GET /api/boards/client-master"}, "fullDescription": {"text": "`src/server.js` declares `GET /api/boards/client-master` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-32aa0c771a901e57", "name": "Unused endpoint: GET /api/case/:caseRef", "shortDescription": {"text": "Unused endpoint: GET /api/case/:caseRef"}, "fullDescription": {"text": "`src/server.js` declares `GET /api/case/:caseRef` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4f31cffbed8e4db8", "name": "Unused endpoint: GET /:caseRef", "shortDescription": {"text": "Unused endpoint: GET /:caseRef"}, "fullDescription": {"text": "`src/_backup_20260407_103520/documentUploadForm.js` declares `GET /:caseRef` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a3ee916b6e4e718c", "name": "Unused endpoint: POST /:caseRef/upload/:itemId", "shortDescription": {"text": "Unused endpoint: POST /:caseRef/upload/:itemId"}, "fullDescription": {"text": "`src/_backup_20260407_103520/documentUploadForm.js` declares `POST /:caseRef/upload/:itemId` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1b943fcbbf453175", "name": "Unused endpoint: GET /some-staff-route", "shortDescription": {"text": "Unused endpoint: GET /some-staff-route"}, "fullDescription": {"text": "`src/middleware/staffAuth.js` declares `GET /some-staff-route` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7a009b1a56794f45", "name": "Unused endpoint: POST /", "shortDescription": {"text": "Unused endpoint: POST /"}, "fullDescription": {"text": "`src/routes/mondayWebhook.js` declares `POST /` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a0425eb24bedfb26", "name": "Unused endpoint: POST /:caseRef/reply-note", "shortDescription": {"text": "Unused endpoint: POST /:caseRef/reply-note"}, "fullDescription": {"text": "`src/routes/documentUploadForm.js` declares `POST /:caseRef/reply-note` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-33d78b686d79e9dc", "name": "Unused endpoint: POST /:caseRef/complete", "shortDescription": {"text": "Unused endpoint: POST /:caseRef/complete"}, "fullDescription": {"text": "`src/routes/documentUploadForm.js` declares `POST /:caseRef/complete` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c8704faf41c30c6d", "name": "Unused endpoint: GET /:caseRef/review", "shortDescription": {"text": "Unused endpoint: GET /:caseRef/review"}, "fullDescription": {"text": "`src/routes/documentReviewForm.js` declares `GET /:caseRef/review` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e96787c3cf1b0cb8", "name": "Unused endpoint: GET /:caseRef/review/updates", "shortDescription": {"text": "Unused endpoint: GET /:caseRef/review/updates"}, "fullDescription": {"text": "`src/routes/documentReviewForm.js` declares `GET /:caseRef/review/updates` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-311e6c4ce9bf8829", "name": "Unused endpoint: POST /:caseRef/review/:itemId/status", "shortDescription": {"text": "Unused endpoint: POST /:caseRef/review/:itemId/status"}, "fullDescription": {"text": "`src/routes/documentReviewForm.js` declares `POST /:caseRef/review/:itemId/status` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9106dae5bcff7ba6", "name": "Unused endpoint: POST /:caseRef/save", "shortDescription": {"text": "Unused endpoint: POST /:caseRef/save"}, "fullDescription": {"text": "`src/routes/questionnaireForm.js` declares `POST /:caseRef/save` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-683c3e250d56d143", "name": "Unused endpoint: POST /:caseRef/submit", "shortDescription": {"text": "Unused endpoint: POST /:caseRef/submit"}, "fullDescription": {"text": "`src/routes/questionnaireForm.js` declares `POST /:caseRef/submit` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-36235eab6a2d7ecf", "name": "Unused endpoint: GET /phase2/health", "shortDescription": {"text": "Unused endpoint: GET /phase2/health"}, "fullDescription": {"text": "`src/routes/phase2.js` declares `GET /phase2/health` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dbdbf939c1964c9b", "name": "Unused endpoint: GET /lead/new", "shortDescription": {"text": "Unused endpoint: GET /lead/new"}, "fullDescription": {"text": "`src/routes/phase2.js` declares `GET /lead/new` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3e479caa7a37a677", "name": "Unused endpoint: POST /lead/new", "shortDescription": {"text": "Unused endpoint: POST /lead/new"}, "fullDescription": {"text": "`src/routes/phase2.js` declares `POST /lead/new` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dad33d17e9838782", "name": "Unused endpoint: GET /book/:leadId", "shortDescription": {"text": "Unused endpoint: GET /book/:leadId"}, "fullDescription": {"text": "`src/routes/phase2.js` declares `GET /book/:leadId` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a9d4940f9522d11e", "name": "Unused endpoint: POST /book/:leadId", "shortDescription": {"text": "Unused endpoint: POST /book/:leadId"}, "fullDescription": {"text": "`src/routes/phase2.js` declares `POST /book/:leadId` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fc04cd4bfb6da3f9", "name": "Unused endpoint: POST /webhook/square", "shortDescription": {"text": "Unused endpoint: POST /webhook/square"}, "fullDescription": {"text": "`src/routes/phase2.js` declares `POST /webhook/square` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fb902864ba0818bf", "name": "Unused endpoint: GET /consult/:leadId", "shortDescription": {"text": "Unused endpoint: GET /consult/:leadId"}, "fullDescription": {"text": "`src/routes/phase2.js` declares `GET /consult/:leadId` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b549a83927fe2bd9", "name": "Unused endpoint: POST /consult/:leadId", "shortDescription": {"text": "Unused endpoint: POST /consult/:leadId"}, "fullDescription": {"text": "`src/routes/phase2.js` declares `POST /consult/:leadId` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-561ae141908d7de1", "name": "Unused endpoint: GET /consult/:leadId/thanks", "shortDescription": {"text": "Unused endpoint: GET /consult/:leadId/thanks"}, "fullDescription": {"text": "`src/routes/phase2.js` declares `GET /consult/:leadId/thanks` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c5793a400d797cf6", "name": "Unused endpoint: GET /retainer/:leadId", "shortDescription": {"text": "Unused endpoint: GET /retainer/:leadId"}, "fullDescription": {"text": "`src/routes/phase2.js` declares `GET /retainer/:leadId` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-96ec9ab57cc4eb29", "name": "Unused endpoint: POST /webhook/zoom", "shortDescription": {"text": "Unused endpoint: POST /webhook/zoom"}, "fullDescription": {"text": "`src/routes/phase2.js` declares `POST /webhook/zoom` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/24487"}, "properties": {"repository": "barranaai/TDOT-Automations", "repoUrl": "https://github.com/barranaai/TDOT-Automations", "branch": "main"}, "results": [{"ruleId": "scanner-0f6815951889a101", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/register-lead-webhook.js:28"}, "properties": {"repobilityId": "d6a97ba5f1b58fcb", "scanner": "scanner-primary", "fingerprint": "0f6815951889a101", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0f530134dad958d3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/audit-cec021-execution-rows.js:65"}, "properties": {"repobilityId": "c35ce0eed8b0a4ae", "scanner": "scanner-primary", "fingerprint": "0f530134dad958d3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4151d71fdc7757a8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/verify-execution-seeder.js:47"}, "properties": {"repobilityId": "2baa9861bf51cf9b", "scanner": "scanner-primary", "fingerprint": "4151d71fdc7757a8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-eb73f9dfff5084c8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/backfill-portal-links.js:73"}, "properties": {"repobilityId": "4d65ba375f6ecf45", "scanner": "scanner-primary", "fingerprint": "eb73f9dfff5084c8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ccd9e10a1916d1cf", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/backfill-folder-links.js:34"}, "properties": {"repobilityId": "d7b3237eb34b3cc9", "scanner": "scanner-primary", "fingerprint": "ccd9e10a1916d1cf", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6b794cebf6e19fb8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/diagnose-questionnaire.js:101"}, "properties": {"repobilityId": "31b4dc798a51f807", "scanner": "scanner-primary", "fingerprint": "6b794cebf6e19fb8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a1bad89e4332d8dc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/audit-templates-vs-pdfs.js:419"}, "properties": {"repobilityId": "94a64b70304b41dc", "scanner": "scanner-primary", "fingerprint": "a1bad89e4332d8dc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-96c75b757e83a36b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/e2e-test.js:72"}, "properties": {"repobilityId": "9f74ffa09bfc0e6d", "scanner": "scanner-primary", "fingerprint": "96c75b757e83a36b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a2964d06c246ae69", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/backfill-q-completion-status.js:111"}, "properties": {"repobilityId": "a7473be691c6eb0f", "scanner": "scanner-primary", "fingerprint": "a2964d06c246ae69", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-69626343f5b41d27", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/canary-supervisa-parents.js:100"}, "properties": {"repobilityId": "2309215754c797e2", "scanner": "scanner-primary", "fingerprint": "69626343f5b41d27", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0a9ef938d2d2cf57", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/cleanup-stale-subtype-rows.js:102"}, "properties": {"repobilityId": "90ab10ee9ae5fc9c", "scanner": "scanner-primary", "fingerprint": "0a9ef938d2d2cf57", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-60c9b5b199845a9e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/audit-template-duplicates.js:129"}, "properties": {"repobilityId": "11d4405ad01c6e3e", "scanner": "scanner-primary", "fingerprint": "60c9b5b199845a9e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2d37c35638962c53", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/verify-reseed.js:64"}, "properties": {"repobilityId": "725e2d2aee0ed9eb", "scanner": "scanner-primary", "fingerprint": "2d37c35638962c53", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8ef22d42301828f5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/fix-sv-002-sponsor-rows.js:71"}, "properties": {"repobilityId": "eb70b83a1edc1251", "scanner": "scanner-primary", "fingerprint": "8ef22d42301828f5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-33ff83026ad127b0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/verify-composition-pipeline.js:49"}, "properties": {"repobilityId": "c1c4750dbbf0f7f0", "scanner": "scanner-primary", "fingerprint": "33ff83026ad127b0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1ac65e85644dc9bb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-schemas-from-pdfs.js:132"}, "properties": {"repobilityId": "678ca363e49248cf", "scanner": "scanner-primary", "fingerprint": "1ac65e85644dc9bb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b505666427104942", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/create-leads-board-columns.js:92"}, "properties": {"repobilityId": "d29cde15567aaff6", "scanner": "scanner-primary", "fingerprint": "b505666427104942", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6ff72a43206256fc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/migrate-execution-keys.js:114"}, "properties": {"repobilityId": "15dc35552813bd9c", "scanner": "scanner-primary", "fingerprint": "6ff72a43206256fc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-065e29270ada270a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/create-family-members-board.js:51"}, "properties": {"repobilityId": "160310be3fdfd693", "scanner": "scanner-primary", "fingerprint": "065e29270ada270a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2642ff02eae019db", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/cleanup-cec021-stale-rows.js:74"}, "properties": {"repobilityId": "ecfc82d2db33241a", "scanner": "scanner-primary", "fingerprint": "2642ff02eae019db", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ba48e9debd2a76a8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/server.js:285"}, "properties": {"repobilityId": "51ec0d6adae748e2", "scanner": "scanner-primary", "fingerprint": "ba48e9debd2a76a8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7a17f5741a679503", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/auditAllColumns.js:74"}, "properties": {"repobilityId": "bc572b857b55dafc", "scanner": "scanner-primary", "fingerprint": "7a17f5741a679503", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3b402b3922d272c0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/cleanupStaleExecutionItems.js:45"}, "properties": {"repobilityId": "88ff8ec5af468ec4", "scanner": "scanner-primary", "fingerprint": "3b402b3922d272c0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2e1d07bba2476842", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importVisitorVisaOutsideQuestionnaire.js:212"}, "properties": {"repobilityId": "732106e5acdc5b22", "scanner": "scanner-primary", "fingerprint": "2e1d07bba2476842", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b185ee1ab557ff73", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importSpousalSponsorshipQuestionnaire.js:340"}, "properties": {"repobilityId": "6e4533e3d60cfcdf", "scanner": "scanner-primary", "fingerprint": "b185ee1ab557ff73", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-989c20b05d20011e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importExpressEntryQuestionnaire.js:334"}, "properties": {"repobilityId": "59182d178fed1d77", "scanner": "scanner-primary", "fingerprint": "989c20b05d20011e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4a3dbcd7433d07ac", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importPRCardQuestionnaire.js:127"}, "properties": {"repobilityId": "2bffa72b743947ba", "scanner": "scanner-primary", "fingerprint": "4a3dbcd7433d07ac", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-23c7333be72e6567", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fillEditableDocument.js:89"}, "properties": {"repobilityId": "364b81478ef46f80", "scanner": "scanner-primary", "fingerprint": "23c7333be72e6567", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3e9c87f0b6e91fc3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/deleteGroupItems.js:45"}, "properties": {"repobilityId": "0d43bb944b64c772", "scanner": "scanner-primary", "fingerprint": "3e9c87f0b6e91fc3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-49dea3f495735c44", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/updateInstructionsFromPdfs.js:79"}, "properties": {"repobilityId": "cdff498c9196fa8d", "scanner": "scanner-primary", "fingerprint": "49dea3f495735c44", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cb06a4ced63affc2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/backfillVisitorVisaExecutionItems.js:83"}, "properties": {"repobilityId": "2d9fe6632b25293c", "scanner": "scanner-primary", "fingerprint": "cb06a4ced63affc2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-205bc43c7cad61f2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/backfillRemainingGroupExecutionItems.js:104"}, "properties": {"repobilityId": "48460264583a97d2", "scanner": "scanner-primary", "fingerprint": "205bc43c7cad61f2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5883bb314680073c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/registerWebhook.js:18"}, "properties": {"repobilityId": "9776a85c1aa72512", "scanner": "scanner-primary", "fingerprint": "5883bb314680073c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-dd0b03ba8a8be163", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/backfillExecutionColumns.js:181"}, "properties": {"repobilityId": "a2c59273d73e5e32", "scanner": "scanner-primary", "fingerprint": "dd0b03ba8a8be163", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b4149613b3f39eed", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fillCountsTowardReadiness.js:66"}, "properties": {"repobilityId": "a2c70e7f4c626efb", "scanner": "scanner-primary", "fingerprint": "b4149613b3f39eed", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-90c3081b3a268e51", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/backfillBoardRelation.js:43"}, "properties": {"repobilityId": "cbed5828f5f3d38f", "scanner": "scanner-primary", "fingerprint": "90c3081b3a268e51", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9f6789c0953e37e0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/auditAllGroupApplicantTypes.js:121"}, "properties": {"repobilityId": "c8f79cc7285f7ddd", "scanner": "scanner-primary", "fingerprint": "9f6789c0953e37e0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7f9db64783a51aa2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fixBrokenUrls.js:313"}, "properties": {"repobilityId": "b96251c9781e471d", "scanner": "scanner-primary", "fingerprint": "7f9db64783a51aa2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-dd7975568ecb1802", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/extractDisclaimers.js:285"}, "properties": {"repobilityId": "e831ba4b7de301c5", "scanner": "scanner-primary", "fingerprint": "dd7975568ecb1802", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9098828222c752f1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fillSampleRequired.js:69"}, "properties": {"repobilityId": "6b1a7dec3211e360", "scanner": "scanner-primary", "fingerprint": "9098828222c752f1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1820072e013084ce", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/clearAllBoards.js:81"}, "properties": {"repobilityId": "b209083a80f41220", "scanner": "scanner-primary", "fingerprint": "1820072e013084ce", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-39fb055ff69a9965", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importWorkPermitOutsideCanadaQuestionnaire.js:216"}, "properties": {"repobilityId": "302ce5c6f9fe413c", "scanner": "scanner-primary", "fingerprint": "39fb055ff69a9965", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-513a31621a8163ae", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/extractPdfInstructions.js:125"}, "properties": {"repobilityId": "fb4fc7c0470ecf94", "scanner": "scanner-primary", "fingerprint": "513a31621a8163ae", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c7f0854546587710", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importSuperVisaQuestionnaire.js:189"}, "properties": {"repobilityId": "35d77f760f3c4df5", "scanner": "scanner-primary", "fingerprint": "c7f0854546587710", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-87e966b603504389", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importStudyPermitQuestionnaire.js:172"}, "properties": {"repobilityId": "5d063f42dc2088a5", "scanner": "scanner-primary", "fingerprint": "87e966b603504389", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1d9ea883194bb65e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importCitizenshipQuestionnaire.js:162"}, "properties": {"repobilityId": "fc70857078970199", "scanner": "scanner-primary", "fingerprint": "1d9ea883194bb65e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7a5855b2d72a0957", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/rebuildQBoardV2.js:419"}, "properties": {"repobilityId": "f1d4f355a72640d8", "scanner": "scanner-primary", "fingerprint": "7a5855b2d72a0957", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-efca6de44d6091dd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importStudyPermitExtensionQuestionnaire.js:138"}, "properties": {"repobilityId": "86c2ca82cf6ef9dd", "scanner": "scanner-primary", "fingerprint": "efca6de44d6091dd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5513b94dfaa45e36", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/auditTemplateEmptyColumns.js:68"}, "properties": {"repobilityId": "e0f74994880f409f", "scanner": "scanner-primary", "fingerprint": "5513b94dfaa45e36", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-10ec2bb0038564dd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/auditSubTypeMix.js:50"}, "properties": {"repobilityId": "e052d91d32505bc1", "scanner": "scanner-primary", "fingerprint": "10ec2bb0038564dd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-26d31a6e9712f012", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/patchOutsideCanadaFamilyItems.js:94"}, "properties": {"repobilityId": "1fab6b6dfe855881", "scanner": "scanner-primary", "fingerprint": "26d31a6e9712f012", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0a62c0ac29b0fefc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importWorkPermitQuestionnaire.js:150"}, "properties": {"repobilityId": "7915d22950ebcc90", "scanner": "scanner-primary", "fingerprint": "0a62c0ac29b0fefc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c4a0a2837d0ebbf6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importQuestionnaireTemplate.js:158"}, "properties": {"repobilityId": "85c89c70eb33fb47", "scanner": "scanner-primary", "fingerprint": "c4a0a2837d0ebbf6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-efce91c95107c711", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importUSAVisaQuestionnaire.js:118"}, "properties": {"repobilityId": "ea08b070ea8f6880", "scanner": "scanner-primary", "fingerprint": "efce91c95107c711", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-dfc282eac8d14856", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/populateClientInstructions.js:164"}, "properties": {"repobilityId": "bf323cb404d44244", "scanner": "scanner-primary", "fingerprint": "dfc282eac8d14856", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3150015b76ebf132", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/rebuildTemplateBoards.js:453"}, "properties": {"repobilityId": "ffa9d42766bc6c23", "scanner": "scanner-primary", "fingerprint": "3150015b76ebf132", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a221dcec8abd40c0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fixRemainingGroupApplicantTypes.js:64"}, "properties": {"repobilityId": "d82b0b37e3776b43", "scanner": "scanner-primary", "fingerprint": "a221dcec8abd40c0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7645d0e7cee6d202", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fixAllGroupApplicantTypes.js:86"}, "properties": {"repobilityId": "e1509acbacfd3eb4", "scanner": "scanner-primary", "fingerprint": "7645d0e7cee6d202", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-188fa8f1f06b1e9b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importProfileCreationChecklist.js:132"}, "properties": {"repobilityId": "46f5eb2b8519a3db", "scanner": "scanner-primary", "fingerprint": "188fa8f1f06b1e9b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0bc84f4235225599", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fillActiveTemplate.js:47"}, "properties": {"repobilityId": "6a7aa55506b8e053", "scanner": "scanner-primary", "fingerprint": "0bc84f4235225599", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8691dabddb15b1f6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/dedupeTemplateBoard.js:57"}, "properties": {"repobilityId": "4058b943ff013db1", "scanner": "scanner-primary", "fingerprint": "8691dabddb15b1f6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-78a3996868ddec5d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/importTRVQuestionnaire.js:151"}, "properties": {"repobilityId": "1384a26fa4a6b251", "scanner": "scanner-primary", "fingerprint": "78a3996868ddec5d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-095ba019b9f24f0b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fixDuplicatePassportTemplateItems.js:61"}, "properties": {"repobilityId": "dac92b2713a1e23a", "scanner": "scanner-primary", "fingerprint": "095ba019b9f24f0b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-727239f9a421f24b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/updateHelpText.js:156"}, "properties": {"repobilityId": "dbbe32963009cd27", "scanner": "scanner-primary", "fingerprint": "727239f9a421f24b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2ae6f0f0ab0a9659", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/updateCaseTypeDropdowns.js:126"}, "properties": {"repobilityId": "ee1774798c5c78ce", "scanner": "scanner-primary", "fingerprint": "2ae6f0f0ab0a9659", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bc898c72d078ef53", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/fixVisitorVisaApplicantTypes.js:59"}, "properties": {"repobilityId": "042b86ab5ee3fe01", "scanner": "scanner-primary", "fingerprint": "bc898c72d078ef53", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9f44bbb22fd9c0db", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/rebuildQBoard.js:172"}, "properties": {"repobilityId": "156ace1650ce28ed", "scanner": "scanner-primary", "fingerprint": "9f44bbb22fd9c0db", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7c1e9ffffab4fa78", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scripts/generateDocumentCodes.js:332"}, "properties": {"repobilityId": "0ec8fe7b75bb54d5", "scanner": "scanner-primary", "fingerprint": "7c1e9ffffab4fa78", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-505d7f8578170d61", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/_backup_20260407_103520/documentFormService.js:232"}, "properties": {"repobilityId": "20c7fdbb550fe693", "scanner": "scanner-primary", "fingerprint": "505d7f8578170d61", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f59af7b1345f0007", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/_backup_20260407_103520/oneDriveService.js:106"}, "properties": {"repobilityId": "083c266a851d1510", "scanner": "scanner-primary", "fingerprint": "f59af7b1345f0007", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-16cd2d1a53facc6a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/documentFormService.js:356"}, "properties": {"repobilityId": "aab778a3388118da", "scanner": "scanner-primary", "fingerprint": "16cd2d1a53facc6a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-aacae107d9b0fdb0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/questionnaireService.js:24"}, "properties": {"repobilityId": "b19c845d3911d8dd", "scanner": "scanner-primary", "fingerprint": "aacae107d9b0fdb0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6aa1fd23930860e9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/caseSchemaService.js:76"}, "properties": {"repobilityId": "f976659a9867aaa4", "scanner": "scanner-primary", "fingerprint": "6aa1fd23930860e9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a6dfc15c869d988c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/accessTokenService.js:36"}, "properties": {"repobilityId": "183117a8d7c17757", "scanner": "scanner-primary", "fingerprint": "a6dfc15c869d988c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2dba9fbb1e854093", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/paymentReconciler.js:83"}, "properties": {"repobilityId": "56c5d73f490087f2", "scanner": "scanner-primary", "fingerprint": "2dba9fbb1e854093", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-79e5eaab0fc333be", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/webhookManager.js:45"}, "properties": {"repobilityId": "b41d340443a3f159", "scanner": "scanner-primary", "fingerprint": "79e5eaab0fc333be", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-de67089c5c7d80b8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/postConsultService.js:106"}, "properties": {"repobilityId": "aca58bec574104b2", "scanner": "scanner-primary", "fingerprint": "de67089c5c7d80b8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-25ced02d0c6df4bd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/retainerService2.js:39"}, "properties": {"repobilityId": "e608bbfbee88bbd9", "scanner": "scanner-primary", "fingerprint": "25ced02d0c6df4bd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c98fd7192e50177d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/emailService.js:184"}, "properties": {"repobilityId": "52b3418b5b745c80", "scanner": "scanner-primary", "fingerprint": "c98fd7192e50177d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cbd7312a644e35ed", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/slaRiskEngine.js:150"}, "properties": {"repobilityId": "c8107afb22310906", "scanner": "scanner-primary", "fingerprint": "cbd7312a644e35ed", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fe0538fffefd5bfe", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/bookingService.js:187"}, "properties": {"repobilityId": "f9c49ad836c972ad", "scanner": "scanner-primary", "fingerprint": "fe0538fffefd5bfe", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-840edbf83d287f5f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/leadPriorityService.js:178"}, "properties": {"repobilityId": "123ae9d3ce0ee7d9", "scanner": "scanner-primary", "fingerprint": "840edbf83d287f5f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6677403d4c90362a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/checklistService.js:65"}, "properties": {"repobilityId": "349e1cef099506b3", "scanner": "scanner-primary", "fingerprint": "6677403d4c90362a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8208b6e5e9daf225", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/htmlQuestionnaireService.js:207"}, "properties": {"repobilityId": "837325fa08395804", "scanner": "scanner-primary", "fingerprint": "8208b6e5e9daf225", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5fbcdb4715586c35", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/handoffService.js:66"}, "properties": {"repobilityId": "e7b607c969eab8fd", "scanner": "scanner-primary", "fingerprint": "5fbcdb4715586c35", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-37d54b44b5e4051f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/scheduler.js:54"}, "properties": {"repobilityId": "e155dc6b9f8caf08", "scanner": "scanner-primary", "fingerprint": "37d54b44b5e4051f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b061aee71fb58f51", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/reseedButtonService.js:73"}, "properties": {"repobilityId": "2cdf10d5b94f84c1", "scanner": "scanner-primary", "fingerprint": "b061aee71fb58f51", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bf2e2715242675f0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/clientMasterService.js:144"}, "properties": {"repobilityId": "3daa7673e7aa768e", "scanner": "scanner-primary", "fingerprint": "bf2e2715242675f0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-61f7d64d130e4c2f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/stageGateService.js:109"}, "properties": {"repobilityId": "2a0393078ba10e85", "scanner": "scanner-primary", "fingerprint": "61f7d64d130e4c2f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a7178cc57d46abe3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/htmlQuestionnaireReviewService.js:74"}, "properties": {"repobilityId": "4410b5ab7ba65a43", "scanner": "scanner-primary", "fingerprint": "a7178cc57d46abe3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3bdd785ee4915655", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/paymentService.js:73"}, "properties": {"repobilityId": "94926caa20d6ed18", "scanner": "scanner-primary", "fingerprint": "3bdd785ee4915655", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3b2d9722cec06299", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/retainerService.js:100"}, "properties": {"repobilityId": "792899332e400b42", "scanner": "scanner-primary", "fingerprint": "3b2d9722cec06299", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-effa0f26d16d8c62", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/mondayNotificationService.js:233"}, "properties": {"repobilityId": "160d3c3091caa186", "scanner": "scanner-primary", "fingerprint": "effa0f26d16d8c62", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-da1a11db010f87d0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/documentReviewService.js:74"}, "properties": {"repobilityId": "8e4d60a24b61765f", "scanner": "scanner-primary", "fingerprint": "da1a11db010f87d0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b82b6f431af38010", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/caseTypeRegistryService.js:140"}, "properties": {"repobilityId": "f82efe25f8c1af0c", "scanner": "scanner-primary", "fingerprint": "b82b6f431af38010", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-32bf345e3de45420", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/oneDriveService.js:34"}, "properties": {"repobilityId": "26fb2b1a2eddd454", "scanner": "scanner-primary", "fingerprint": "32bf345e3de45420", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3d7316440f8c7493", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/missingFieldsEmailService.js:213"}, "properties": {"repobilityId": "d92cc768f57d4672", "scanner": "scanner-primary", "fingerprint": "3d7316440f8c7493", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4a9c3c4fa6c8f20e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/caseReadinessService.js:200"}, "properties": {"repobilityId": "12824abdc71ba7e8", "scanner": "scanner-primary", "fingerprint": "4a9c3c4fa6c8f20e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b012217d1a704084", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/zoomWebhookService.js:116"}, "properties": {"repobilityId": "32aecd59dcce719b", "scanner": "scanner-primary", "fingerprint": "b012217d1a704084", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ac4a51924448e908", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/questionnairePdfService.js:343"}, "properties": {"repobilityId": "ed7ea8c4963ad703", "scanner": "scanner-primary", "fingerprint": "ac4a51924448e908", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-011cd50a52c1a9c7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/executionService.js:183"}, "properties": {"repobilityId": "c14c2c1719c28822", "scanner": "scanner-primary", "fingerprint": "011cd50a52c1a9c7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a800d68c501af5c6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/chasingLoopService.js:85"}, "properties": {"repobilityId": "88b9bada57787de0", "scanner": "scanner-primary", "fingerprint": "a800d68c501af5c6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-169f618e16ce3309", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/escalationRoutingService.js:255"}, "properties": {"repobilityId": "168358ba4bf19102", "scanner": "scanner-primary", "fingerprint": "169f618e16ce3309", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d775c2c11af74140", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/questionnaireReviewService.js:73"}, "properties": {"repobilityId": "5b23e72d8e740946", "scanner": "scanner-primary", "fingerprint": "d775c2c11af74140", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-11d4065203ac492b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/questionnaireExecutionService.js:109"}, "properties": {"repobilityId": "6b464732bfb71378", "scanner": "scanner-primary", "fingerprint": "11d4065203ac492b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2214415e2890a5f4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/caseHealthEngine.js:254"}, "properties": {"repobilityId": "f8f1cfe8b28dbc7f", "scanner": "scanner-primary", "fingerprint": "2214415e2890a5f4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d0ddd8c82a266956", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/leadService.js:89"}, "properties": {"repobilityId": "925a097477df960c", "scanner": "scanner-primary", "fingerprint": "d0ddd8c82a266956", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6560d3d6c49628dc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/familyCompositionService.js:71"}, "properties": {"repobilityId": "4780a2280517eb34", "scanner": "scanner-primary", "fingerprint": "6560d3d6c49628dc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-06921cd5776cc00d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/expiryRiskEngine.js:201"}, "properties": {"repobilityId": "e90ffb24d94f7dc5", "scanner": "scanner-primary", "fingerprint": "06921cd5776cc00d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-69bd15d02e263536", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/leadTokenService.js:43"}, "properties": {"repobilityId": "75b74c9af41c424d", "scanner": "scanner-primary", "fingerprint": "69bd15d02e263536", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ee72a0b8eb104be7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/caseRefService.js:170"}, "properties": {"repobilityId": "d80568415cea8fa6", "scanner": "scanner-primary", "fingerprint": "ee72a0b8eb104be7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8974775b57a912f3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/consultationService.js:34"}, "properties": {"repobilityId": "37e2a021644a2946", "scanner": "scanner-primary", "fingerprint": "8974775b57a912f3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-973cccc8d5b96985", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/revisionNotificationService.js:54"}, "properties": {"repobilityId": "ac78e74e9d91b7f8", "scanner": "scanner-primary", "fingerprint": "973cccc8d5b96985", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d8c0c2e2a83356cb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/executionSeederService.js:132"}, "properties": {"repobilityId": "b0aa938adc188544", "scanner": "scanner-primary", "fingerprint": "d8c0c2e2a83356cb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3e0c62d016e54789", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/routes/mondayWebhook.js:91"}, "properties": {"repobilityId": "6ea6fea77e9885d3", "scanner": "scanner-primary", "fingerprint": "3e0c62d016e54789", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a25264b2460dc330", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/routes/documentUploadForm.js:1358"}, "properties": {"repobilityId": "03d18d666fa46465", "scanner": "scanner-primary", "fingerprint": "a25264b2460dc330", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3a439c1b3ab9a283", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/routes/documentReviewForm.js:116"}, "properties": {"repobilityId": "491a33661d414c9a", "scanner": "scanner-primary", "fingerprint": "3a439c1b3ab9a283", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a567a73eecd6ed03", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/routes/phase2.js:366"}, "properties": {"repobilityId": "6bc740a00cf9d67d", "scanner": "scanner-primary", "fingerprint": "a567a73eecd6ed03", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-80bca0246c6efd40", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/routes/htmlQuestionnaireForm.js:192"}, "properties": {"repobilityId": "419365edd6f91c3c", "scanner": "scanner-primary", "fingerprint": "80bca0246c6efd40", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-14ea250a903b78f1", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/2. Work Permit Application Inside Canada (PGWP -SOWP- BOWP -LMIA - EXTENSION  - Questionnair - April 2025.html:530"}, "properties": {"repobilityId": "6c58e56ff730bb8d", "scanner": "scanner-primary", "fingerprint": "14ea250a903b78f1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Questionnair Documents/2. Work Permit Application Inside Canada (PGWP -SOWP- BOWP -LMIA - EXTENSION  - Questionnair - April 2025.html"}, "region": {"startLine": 530}}}]}, {"ruleId": "scanner-a00aef25ac041dc0", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/7. Study Permit - Inside and Outside  - Questionnaires - April 2025.html:511"}, "properties": {"repobilityId": "bbe425d984744fd4", "scanner": "scanner-primary", "fingerprint": "a00aef25ac041dc0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Questionnair Documents/7. Study Permit - Inside and Outside  - Questionnaires - April 2025.html"}, "region": {"startLine": 511}}}]}, {"ruleId": "scanner-062a27149fd0ae1c", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/9. Lost PR Card - PR Card Renewal - PR TD   - Questionnair - April 2025.html:341"}, "properties": {"repobilityId": "b02f408bf8a5b2dc", "scanner": "scanner-primary", "fingerprint": "062a27149fd0ae1c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Questionnair Documents/9. Lost PR Card - PR Card Renewal - PR TD   - Questionnair - April 2025.html"}, "region": {"startLine": 341}}}]}, {"ruleId": "scanner-a2ee983686638700", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/11. Super Visa - Outside  - Questionnaires - April 2025.html:534"}, "properties": {"repobilityId": "1c4680f6aea73689", "scanner": "scanner-primary", "fingerprint": "a2ee983686638700", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Questionnair Documents/11. Super Visa - Outside  - Questionnaires - April 2025.html"}, "region": {"startLine": 534}}}]}, {"ruleId": "scanner-935e6e1705657ab6", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/4. Citizenship - Questionnaires - April 2025.html:531"}, "properties": {"repobilityId": "0e88f89784f3fae9", "scanner": "scanner-primary", "fingerprint": "935e6e1705657ab6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Questionnair Documents/4. Citizenship - Questionnaires - April 2025.html"}, "region": {"startLine": 531}}}]}, {"ruleId": "scanner-ef7d7c047b090791", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/3. Work Permit Outside Canada (SOWP - LMIA )- Questionnaires - April 2025.html:1069"}, "properties": {"repobilityId": "2f712a3cb75393b8", "scanner": "scanner-primary", "fingerprint": "ef7d7c047b090791", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Questionnair Documents/3. Work Permit Outside Canada (SOWP - LMIA )- Questionnaires - April 2025.html"}, "region": {"startLine": 1069}}}]}, {"ruleId": "scanner-7f4009023773ec4f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/10. Spousal Sponsorship Quetsionaires - Inside and Outside - April 2025.html:903"}, "properties": {"repobilityId": "383a247d893bcd97", "scanner": "scanner-primary", "fingerprint": "7f4009023773ec4f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Questionnair Documents/10. Spousal Sponsorship Quetsionaires - Inside and Outside - April 2025.html"}, "region": {"startLine": 903}}}]}, {"ruleId": "scanner-695e29158db2fb84", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/8. VisItor Visa - Outside  - Questionnaires - April 2025.html:981"}, "properties": {"repobilityId": "760f8c7210037467", "scanner": "scanner-primary", "fingerprint": "695e29158db2fb84", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Questionnair Documents/8. VisItor Visa - Outside  - Questionnaires - April 2025.html"}, "region": {"startLine": 981}}}]}, {"ruleId": "scanner-7786cf78c3edc674", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/6. Express Entry Profile - PNP Profile Creation - Questionnair - July 2025.html:612"}, "properties": {"repobilityId": "dc9468c836b7a9dd", "scanner": "scanner-primary", "fingerprint": "7786cf78c3edc674", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Questionnair Documents/6. Express Entry Profile - PNP Profile Creation - Questionnair - July 2025.html"}, "region": {"startLine": 612}}}]}, {"ruleId": "scanner-e3ca582f5fc19d9b", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/1. Express Entry - PNP - PR Application -  Questionnaire - April 2025.html:1038"}, "properties": {"repobilityId": "7fe041baa4bd3edf", "scanner": "scanner-primary", "fingerprint": "e3ca582f5fc19d9b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Questionnair Documents/1. Express Entry - PNP - PR Application -  Questionnaire - April 2025.html"}, "region": {"startLine": 1038}}}]}, {"ruleId": "scanner-fec91a2c3e256145", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in Questionnair Documents/5. Study Permit Extension - Questionnaires - April 2025.html:504"}, "properties": {"repobilityId": "61c0509659d22d86", "scanner": "scanner-primary", "fingerprint": "fec91a2c3e256145", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "Questionnair Documents/5. Study Permit Extension - Questionnaires - April 2025.html"}, "region": {"startLine": 504}}}]}, {"ruleId": "scanner-d331957ab2d6660b", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/_backup_20260407_103520/documentUploadForm.js:441"}, "properties": {"repobilityId": "3aef8fa8b978ecc9", "scanner": "scanner-primary", "fingerprint": "d331957ab2d6660b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/_backup_20260407_103520/documentUploadForm.js"}, "region": {"startLine": 441}}}]}, {"ruleId": "scanner-5798e621f7c67f63", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/services/intakeFormService.js:717"}, "properties": {"repobilityId": "d976668df3142e5c", "scanner": "scanner-primary", "fingerprint": "5798e621f7c67f63", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/services/intakeFormService.js"}, "region": {"startLine": 717}}}]}, {"ruleId": "scanner-d82b6f5fb4874d36", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/services/htmlQuestionnaireService.js:1602"}, "properties": {"repobilityId": "62056e6de92cd123", "scanner": "scanner-primary", "fingerprint": "d82b6f5fb4874d36", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/services/htmlQuestionnaireService.js"}, "region": {"startLine": 1602}}}]}, {"ruleId": "scanner-b6638c950ac24ddd", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/services/htmlQuestionnaireReviewService.js:861"}, "properties": {"repobilityId": "d0abf9e4dc0bf753", "scanner": "scanner-primary", "fingerprint": "b6638c950ac24ddd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/services/htmlQuestionnaireReviewService.js"}, "region": {"startLine": 861}}}]}, {"ruleId": "scanner-e7deb71d53e8bbba", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/services/documentReviewFormService.js:654"}, "properties": {"repobilityId": "504b4cf88a2e63f6", "scanner": "scanner-primary", "fingerprint": "e7deb71d53e8bbba", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/services/documentReviewFormService.js"}, "region": {"startLine": 654}}}]}, {"ruleId": "scanner-33c17effd0687598", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/services/consultationService.js:165"}, "properties": {"repobilityId": "d4a0af3acd944c87", "scanner": "scanner-primary", "fingerprint": "33c17effd0687598", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/services/consultationService.js"}, "region": {"startLine": 165}}}]}, {"ruleId": "scanner-9b7fd3c4a89b374b", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/adminEngines.js:990"}, "properties": {"repobilityId": "e6c8f52bf925bd00", "scanner": "scanner-primary", "fingerprint": "9b7fd3c4a89b374b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/routes/adminEngines.js"}, "region": {"startLine": 990}}}]}, {"ruleId": "scanner-194666607aa27fb9", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/adminDashboard.js:1262"}, "properties": {"repobilityId": "cde16d3b7567c24d", "scanner": "scanner-primary", "fingerprint": "194666607aa27fb9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/routes/adminDashboard.js"}, "region": {"startLine": 1262}}}]}, {"ruleId": "scanner-da8dc94098f7830d", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/documentUploadForm.js:1058"}, "properties": {"repobilityId": "2ea05fef51218647", "scanner": "scanner-primary", "fingerprint": "da8dc94098f7830d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/routes/documentUploadForm.js"}, "region": {"startLine": 1058}}}]}, {"ruleId": "scanner-04f7f65026224b9f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/questionnaireForm.js:535"}, "properties": {"repobilityId": "4bcba6cd3cb65e2a", "scanner": "scanner-primary", "fingerprint": "04f7f65026224b9f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/routes/questionnaireForm.js"}, "region": {"startLine": 535}}}]}, {"ruleId": "scanner-a68a169a2023304d", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/adminPanel.js:1172"}, "properties": {"repobilityId": "02ade0cdae0bc4e0", "scanner": "scanner-primary", "fingerprint": "a68a169a2023304d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/routes/adminPanel.js"}, "region": {"startLine": 1172}}}]}, {"ruleId": "scanner-df0000ee82374c3f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/routes/adminCase.js:286"}, "properties": {"repobilityId": "87098f290fa036af", "scanner": "scanner-primary", "fingerprint": "df0000ee82374c3f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/routes/adminCase.js"}, "region": {"startLine": 286}}}]}, {"ruleId": "scanner-12bf192ce9d1cc49", "level": "note", "message": {"text": "Very large file: src/services/htmlQuestionnaireService.js (4553 lines)"}, "properties": {"repobilityId": "b2dc1205d64b1bac", "scanner": "scanner-primary", "fingerprint": "12bf192ce9d1cc49", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-72b9a4809f2dacae", "level": "note", "message": {"text": "Very large file: src/routes/adminDashboard.js (1642 lines)"}, "properties": {"repobilityId": "2fd246b490f6d098", "scanner": "scanner-primary", "fingerprint": "72b9a4809f2dacae", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9339001bf877003e", "level": "note", "message": {"text": "Very large file: src/routes/documentUploadForm.js (1373 lines)"}, "properties": {"repobilityId": "d96e7884113ab4d0", "scanner": "scanner-primary", "fingerprint": "9339001bf877003e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6893a6c8b0861585", "level": "warning", "message": {"text": "Very low test-to-source ratio"}, "properties": {"repobilityId": "54a7de3f06314bf0", "scanner": "scanner-primary", "fingerprint": "6893a6c8b0861585", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["tests", "coverage"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "7d6ea5b1ba416ed4", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "62332f12f2314df8", "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": "16ed9d43b297e8b7", "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": "887d2e4966cab26d", "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": "c2c5915db15f4bd7", "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": "a8a6013ada9a0325", "scanner": "scanner-primary", "fingerprint": "749d4bc1bd66df5f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-36ab407529e349d4", "level": "none", "message": {"text": "Commented-code block (7 lines) in scripts/migrate-execution-keys.js:247"}, "properties": {"repobilityId": "3be4c3d6e19bde88", "scanner": "scanner-primary", "fingerprint": "36ab407529e349d4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c88c125a965e918e", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/server.js:95"}, "properties": {"repobilityId": "d463416d1ed28298", "scanner": "scanner-primary", "fingerprint": "c88c125a965e918e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-50eaa0d6234a0ec3", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/scripts/importExpressEntryQuestionnaire.js:158"}, "properties": {"repobilityId": "ac722c9a5ddf68af", "scanner": "scanner-primary", "fingerprint": "50eaa0d6234a0ec3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4474d759720c4c86", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/scripts/fixBrokenUrls.js:71"}, "properties": {"repobilityId": "0a4791c2e73854fd", "scanner": "scanner-primary", "fingerprint": "4474d759720c4c86", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3b77599ce53191e8", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/scripts/patchOutsideCanadaFamilyItems.js:61"}, "properties": {"repobilityId": "b7215598044b9483", "scanner": "scanner-primary", "fingerprint": "3b77599ce53191e8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5018268956e7ca26", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/services/retainerService2.js:125"}, "properties": {"repobilityId": "0fe34a28fb904c28", "scanner": "scanner-primary", "fingerprint": "5018268956e7ca26", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0eac6a4d9224be89", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/services/emailService.js:15"}, "properties": {"repobilityId": "29fbcbc237e17e7d", "scanner": "scanner-primary", "fingerprint": "0eac6a4d9224be89", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5be4b1705e296e50", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/services/checklistService.js:158"}, "properties": {"repobilityId": "89b37fe1b7f55392", "scanner": "scanner-primary", "fingerprint": "5be4b1705e296e50", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-50fe1bc3f4d74d67", "level": "note", "message": {"text": "Legacy-named symbol `parseCsvLegacy` in src/services/htmlQuestionnaireService.js:85"}, "properties": {"repobilityId": "4eb4569baa5ace87", "scanner": "scanner-primary", "fingerprint": "50fe1bc3f4d74d67", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bc4dd9afa5ca9148", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/services/htmlQuestionnaireService.js:32"}, "properties": {"repobilityId": "6a828611f1c8e93b", "scanner": "scanner-primary", "fingerprint": "bc4dd9afa5ca9148", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2970413e6d5bb7d1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/services/htmlQuestionnaireService.js:1444"}, "properties": {"repobilityId": "b38f99a73d9615b7", "scanner": "scanner-primary", "fingerprint": "2970413e6d5bb7d1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-440c2eb40f197b32", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/services/retainerService.js:18"}, "properties": {"repobilityId": "abef353110b3c7ad", "scanner": "scanner-primary", "fingerprint": "440c2eb40f197b32", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b1245370ffa9ff68", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/services/caseReadinessService.js:35"}, "properties": {"repobilityId": "fdeefbf2d8040821", "scanner": "scanner-primary", "fingerprint": "b1245370ffa9ff68", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-47d4bc6c83fba15e", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/services/caseRefService.js:216"}, "properties": {"repobilityId": "b9e861818051c251", "scanner": "scanner-primary", "fingerprint": "47d4bc6c83fba15e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3cd1d19ac7864ea2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminEngines.js:821"}, "properties": {"repobilityId": "75e1a4e491b36529", "scanner": "scanner-primary", "fingerprint": "3cd1d19ac7864ea2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ad1b843f0c9cd23f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminLogin.js:288"}, "properties": {"repobilityId": "855669e14dfed286", "scanner": "scanner-primary", "fingerprint": "ad1b843f0c9cd23f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a808cdfde056c640", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/routes/mondayWebhook.js:207"}, "properties": {"repobilityId": "58135095140b3591", "scanner": "scanner-primary", "fingerprint": "a808cdfde056c640", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-31aedf86e45dbaaf", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminDashboard.js:853"}, "properties": {"repobilityId": "c48214d375099ba5", "scanner": "scanner-primary", "fingerprint": "31aedf86e45dbaaf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9d229b08edfbcf83", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/routes/documentUploadForm.js:466"}, "properties": {"repobilityId": "fabab08fd96fd13a", "scanner": "scanner-primary", "fingerprint": "9d229b08edfbcf83", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-20c06f3f4f54818a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminPanel.js:906"}, "properties": {"repobilityId": "142916edb82007c9", "scanner": "scanner-primary", "fingerprint": "20c06f3f4f54818a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-934c0f9a67a43a4b", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/routes/adminCase.js:354"}, "properties": {"repobilityId": "efcfef5a5219d7a8", "scanner": "scanner-primary", "fingerprint": "934c0f9a67a43a4b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9526a5716961d311", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/routes/phase2.js:147"}, "properties": {"repobilityId": "f5fc875892cfe418", "scanner": "scanner-primary", "fingerprint": "9526a5716961d311", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-be86451593132c40", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/routes/htmlQuestionnaireForm.js:666"}, "properties": {"repobilityId": "69b209c382ad0f98", "scanner": "scanner-primary", "fingerprint": "be86451593132c40", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e166b6d04647debd", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/routes/clientPortal.js:45"}, "properties": {"repobilityId": "a124f9e762f324dd", "scanner": "scanner-primary", "fingerprint": "e166b6d04647debd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bddda3d5a14c7401", "level": "note", "message": {"text": "29 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "3519a6b4ac1d4f19", "scanner": "scanner-primary", "fingerprint": "bddda3d5a14c7401", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}, {"ruleId": "scanner-958c4e3b79830a4d", "level": "error", "message": {"text": "Dangling fetch: POST https://api.monday.com/v2/file (src/_backup_20260407_103520/documentFormService.js:161)"}, "properties": {"repobilityId": "f6cdfb9b2be578f8", "scanner": "scanner-primary", "fingerprint": "958c4e3b79830a4d", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "axios"]}}, {"ruleId": "scanner-e0a6a4e82c0d89a5", "level": "error", "message": {"text": "Dangling fetch: GET https://graph.microsoft.com/v1.0/users/${encodeURIComponent(user)}/drive/root:/Recordings:/children?$top=50&$orderby=createdDateTime desc (src/services/postConsultService.js:124)"}, "properties": {"repobilityId": "d641bc75d5e69930", "scanner": "scanner-primary", "fingerprint": "e0a6a4e82c0d89a5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "axios"]}}, {"ruleId": "scanner-f03a5e61317181ca", "level": "error", "message": {"text": "Dangling fetch: POST https://graph.microsoft.com/v1.0/drives/${file.driveId}/items/${file.id}/createLink (src/services/postConsultService.js:163)"}, "properties": {"repobilityId": "419047fc1c398c42", "scanner": "scanner-primary", "fingerprint": "f03a5e61317181ca", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "axios"]}}, {"ruleId": "scanner-17b2e2bd0e35cc8a", "level": "error", "message": {"text": "Dangling fetch: POST https://login.microsoftonline.com/${tenantId}/oauth2/v2.0/token (src/services/microsoftMailService.js:50)"}, "properties": {"repobilityId": "fb268cca33029969", "scanner": "scanner-primary", "fingerprint": "17b2e2bd0e35cc8a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "axios"]}}, {"ruleId": "scanner-76e742d3601bc1b5", "level": "error", "message": {"text": "Dangling fetch: POST https://graph.microsoft.com/v1.0/users/${encodeURIComponent(fromEmail)}/sendMail (src/services/microsoftMailService.js:100)"}, "properties": {"repobilityId": "f4494ae105f04c5e", "scanner": "scanner-primary", "fingerprint": "76e742d3601bc1b5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "axios"]}}, {"ruleId": "scanner-8d0cd3f1692898be", "level": "error", "message": {"text": "Dangling fetch: POST https://zoom.us/oauth/token (src/services/meetingService.js:38)"}, "properties": {"repobilityId": "a32e1a76935c66a3", "scanner": "scanner-primary", "fingerprint": "8d0cd3f1692898be", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "axios"]}}, {"ruleId": "scanner-9972d57797a404c3", "level": "error", "message": {"text": "Dangling fetch: POST https://api.zoom.us/v2/users/me/meetings (src/services/meetingService.js:67)"}, "properties": {"repobilityId": "6b501e0482665d16", "scanner": "scanner-primary", "fingerprint": "9972d57797a404c3", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "axios"]}}, {"ruleId": "scanner-299dd1b7598c6dd2", "level": "error", "message": {"text": "Dangling fetch: POST https://graph.microsoft.com/v1.0/users/${encodeURIComponent(organizer)}/events (src/services/meetingService.js:143)"}, "properties": {"repobilityId": "6fe3a71f8f73d7f0", "scanner": "scanner-primary", "fingerprint": "299dd1b7598c6dd2", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "axios"]}}, {"ruleId": "scanner-fc0bc27cc164872f", "level": "error", "message": {"text": "Dangling fetch: POST https://graph.microsoft.com/v1.0/users/${encodeURIComponent(organizer)}/events (src/services/meetingService.js:183)"}, "properties": {"repobilityId": "639554943036e60f", "scanner": "scanner-primary", "fingerprint": "fc0bc27cc164872f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "axios"]}}, {"ruleId": "scanner-2e4afd84305a58fc", "level": "error", "message": {"text": "Dangling fetch: DELETE https://graph.microsoft.com/v1.0/users/${encodeURIComponent(organizer)}/events/${event.id} (src/services/meetingService.js:196)"}, "properties": {"repobilityId": "19cb86457bb6927d", "scanner": "scanner-primary", "fingerprint": "2e4afd84305a58fc", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "axios"]}}, {"ruleId": "scanner-33dd818142d745b9", "level": "error", "message": {"text": "Dangling fetch: POST https://auth.monday.com/oauth2/token (src/routes/htmlQuestionnaireForm.js:133)"}, "properties": {"repobilityId": "d0530d2618d24b26", "scanner": "scanner-primary", "fingerprint": "33dd818142d745b9", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "axios"]}}, {"ruleId": "scanner-7a248fc08cd9f1e6", "level": "error", "message": {"text": "Dangling fetch: POST https://api.monday.com/v2 (src/routes/htmlQuestionnaireForm.js:155)"}, "properties": {"repobilityId": "bc041bd7a70588a1", "scanner": "scanner-primary", "fingerprint": "7a248fc08cd9f1e6", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "axios"]}}, {"ruleId": "scanner-4b9a3120841d5d01", "level": "note", "message": {"text": "Unused endpoint: USE /webhook/monday"}, "properties": {"repobilityId": "5106e21796f77527", "scanner": "scanner-primary", "fingerprint": "4b9a3120841d5d01", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-705ce9ec7ea4c7d7", "level": "note", "message": {"text": "Unused endpoint: USE /questionnaire"}, "properties": {"repobilityId": "597fc10772df281a", "scanner": "scanner-primary", "fingerprint": "705ce9ec7ea4c7d7", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-428d7ebee5918103", "level": "note", "message": {"text": "Unused endpoint: USE /documents"}, "properties": {"repobilityId": "2c6da86453ea2f47", "scanner": "scanner-primary", "fingerprint": "428d7ebee5918103", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-c022c4f799e31531", "level": "note", "message": {"text": "Unused endpoint: USE /q"}, "properties": {"repobilityId": "2d4facc73dd60fb7", "scanner": "scanner-primary", "fingerprint": "c022c4f799e31531", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-cc25db52848b8c97", "level": "note", "message": {"text": "Unused endpoint: USE /d"}, "properties": {"repobilityId": "a81df0cfcaa95f22", "scanner": "scanner-primary", "fingerprint": "cc25db52848b8c97", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-520546e90f7fd2b2", "level": "note", "message": {"text": "Unused endpoint: USE /client"}, "properties": {"repobilityId": "116af684dc9d3849", "scanner": "scanner-primary", "fingerprint": "520546e90f7fd2b2", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-93a420ac58e019cf", "level": "note", "message": {"text": "Unused endpoint: USE /admin/dashboard"}, "properties": {"repobilityId": "9df34da1a3498abf", "scanner": "scanner-primary", "fingerprint": "93a420ac58e019cf", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-c5f35c8917a896c6", "level": "note", "message": {"text": "Unused endpoint: USE /admin/engines"}, "properties": {"repobilityId": "b6bfafaff3018688", "scanner": "scanner-primary", "fingerprint": "c5f35c8917a896c6", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-51af2ae94e0f55a8", "level": "note", "message": {"text": "Unused endpoint: USE /admin/case"}, "properties": {"repobilityId": "0156dd88a34efb9c", "scanner": "scanner-primary", "fingerprint": "51af2ae94e0f55a8", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b2d8849fb6b1ac47", "level": "note", "message": {"text": "Unused endpoint: USE /admin"}, "properties": {"repobilityId": "1c5050a09c48fd7d", "scanner": "scanner-primary", "fingerprint": "b2d8849fb6b1ac47", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b82f2c3c8954bf1c", "level": "note", "message": {"text": "Unused endpoint: USE /docs"}, "properties": {"repobilityId": "c467b20dd79c23ce", "scanner": "scanner-primary", "fingerprint": "b82f2c3c8954bf1c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-f02a079c69b52f2d", "level": "note", "message": {"text": "Unused endpoint: USE /"}, "properties": {"repobilityId": "7dce26e39bc23e8f", "scanner": "scanner-primary", "fingerprint": "f02a079c69b52f2d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-5baa8971ebe192a1", "level": "note", "message": {"text": "Unused endpoint: GET /"}, "properties": {"repobilityId": "c6cc29b21f64b855", "scanner": "scanner-primary", "fingerprint": "5baa8971ebe192a1", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-dde3adb27bf7eebe", "level": "note", "message": {"text": "Unused endpoint: USE /api"}, "properties": {"repobilityId": "16b96459ef28b05c", "scanner": "scanner-primary", "fingerprint": "dde3adb27bf7eebe", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-567df6b106f9206a", "level": "note", "message": {"text": "Unused endpoint: POST /api/resend-intake/:itemId"}, "properties": {"repobilityId": "f255705e9b545dc9", "scanner": "scanner-primary", "fingerprint": "567df6b106f9206a", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-2b8f4f092427fba7", "level": "note", "message": {"text": "Unused endpoint: POST /api/checklist/reseed/:caseRef"}, "properties": {"repobilityId": "e6252c0a887bd2ee", "scanner": "scanner-primary", "fingerprint": "2b8f4f092427fba7", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-d986b087688ad6ad", "level": "note", "message": {"text": "Unused endpoint: POST /api/meeting-preflight"}, "properties": {"repobilityId": "11802fb98e9309c5", "scanner": "scanner-primary", "fingerprint": "d986b087688ad6ad", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-0787b4888bb966a8", "level": "note", "message": {"text": "Unused endpoint: GET /api/client-master/document-collection-started"}, "properties": {"repobilityId": "fbee55d9298d2f85", "scanner": "scanner-primary", "fingerprint": "0787b4888bb966a8", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-42ad032b379cbf2d", "level": "note", "message": {"text": "Unused endpoint: GET /api/boards/template"}, "properties": {"repobilityId": "bc73f524a081e1bd", "scanner": "scanner-primary", "fingerprint": "42ad032b379cbf2d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b8bb31c867aedc09", "level": "note", "message": {"text": "Unused endpoint: GET /api/boards/execution"}, "properties": {"repobilityId": "26b62bdcdc496621", "scanner": "scanner-primary", "fingerprint": "b8bb31c867aedc09", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-8e1192040a974432", "level": "note", "message": {"text": "Unused endpoint: POST /api/readiness/run"}, "properties": {"repobilityId": "47750235c1d8bef1", "scanner": "scanner-primary", "fingerprint": "8e1192040a974432", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-bab867696c84208f", "level": "note", "message": {"text": "Unused endpoint: POST /api/sla/run"}, "properties": {"repobilityId": "5e2beb88641bd5f7", "scanner": "scanner-primary", "fingerprint": "bab867696c84208f", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e6da5c6b958a8fa3", "level": "note", "message": {"text": "Unused endpoint: POST /api/health/run"}, "properties": {"repobilityId": "224cd2e78ac80252", "scanner": "scanner-primary", "fingerprint": "e6da5c6b958a8fa3", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e35a46af0b43a8ee", "level": "note", "message": {"text": "Unused endpoint: POST /api/expiry/run"}, "properties": {"repobilityId": "c1f8c7543d350ab7", "scanner": "scanner-primary", "fingerprint": "e35a46af0b43a8ee", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-6ebea146257e5d0b", "level": "note", "message": {"text": "Unused endpoint: POST /api/escalation/run"}, "properties": {"repobilityId": "c2cd99c4b295e343", "scanner": "scanner-primary", "fingerprint": "6ebea146257e5d0b", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-6a8a58e366789354", "level": "note", "message": {"text": "Unused endpoint: POST /api/chasing/run"}, "properties": {"repobilityId": "593b1c23a84bc9af", "scanner": "scanner-primary", "fingerprint": "6a8a58e366789354", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-80a3b87b26773f94", "level": "note", "message": {"text": "Unused endpoint: GET /api/boards/client-master"}, "properties": {"repobilityId": "6df054094a8f9b53", "scanner": "scanner-primary", "fingerprint": "80a3b87b26773f94", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-32aa0c771a901e57", "level": "note", "message": {"text": "Unused endpoint: GET /api/case/:caseRef"}, "properties": {"repobilityId": "9de791f0662e3607", "scanner": "scanner-primary", "fingerprint": "32aa0c771a901e57", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-4f31cffbed8e4db8", "level": "note", "message": {"text": "Unused endpoint: GET /:caseRef"}, "properties": {"repobilityId": "1ef8c1a862bcbdba", "scanner": "scanner-primary", "fingerprint": "4f31cffbed8e4db8", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a3ee916b6e4e718c", "level": "note", "message": {"text": "Unused endpoint: POST /:caseRef/upload/:itemId"}, "properties": {"repobilityId": "816a9641fbfbd7aa", "scanner": "scanner-primary", "fingerprint": "a3ee916b6e4e718c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-1b943fcbbf453175", "level": "note", "message": {"text": "Unused endpoint: GET /some-staff-route"}, "properties": {"repobilityId": "7a47d169f92f5e36", "scanner": "scanner-primary", "fingerprint": "1b943fcbbf453175", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-7a009b1a56794f45", "level": "note", "message": {"text": "Unused endpoint: POST /"}, "properties": {"repobilityId": "ba89b614e1193765", "scanner": "scanner-primary", "fingerprint": "7a009b1a56794f45", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a0425eb24bedfb26", "level": "note", "message": {"text": "Unused endpoint: POST /:caseRef/reply-note"}, "properties": {"repobilityId": "2dcd3f1b55fe4863", "scanner": "scanner-primary", "fingerprint": "a0425eb24bedfb26", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-33d78b686d79e9dc", "level": "note", "message": {"text": "Unused endpoint: POST /:caseRef/complete"}, "properties": {"repobilityId": "93709a8c3a4d54ed", "scanner": "scanner-primary", "fingerprint": "33d78b686d79e9dc", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-c8704faf41c30c6d", "level": "note", "message": {"text": "Unused endpoint: GET /:caseRef/review"}, "properties": {"repobilityId": "5b74ad9cdfac7d0a", "scanner": "scanner-primary", "fingerprint": "c8704faf41c30c6d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e96787c3cf1b0cb8", "level": "note", "message": {"text": "Unused endpoint: GET /:caseRef/review/updates"}, "properties": {"repobilityId": "ee81a1320375859e", "scanner": "scanner-primary", "fingerprint": "e96787c3cf1b0cb8", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-311e6c4ce9bf8829", "level": "note", "message": {"text": "Unused endpoint: POST /:caseRef/review/:itemId/status"}, "properties": {"repobilityId": "a6d6938acb10bfb4", "scanner": "scanner-primary", "fingerprint": "311e6c4ce9bf8829", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-9106dae5bcff7ba6", "level": "note", "message": {"text": "Unused endpoint: POST /:caseRef/save"}, "properties": {"repobilityId": "89f113975ca20a23", "scanner": "scanner-primary", "fingerprint": "9106dae5bcff7ba6", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-683c3e250d56d143", "level": "note", "message": {"text": "Unused endpoint: POST /:caseRef/submit"}, "properties": {"repobilityId": "20ee6ad02fdb8620", "scanner": "scanner-primary", "fingerprint": "683c3e250d56d143", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-36235eab6a2d7ecf", "level": "note", "message": {"text": "Unused endpoint: GET /phase2/health"}, "properties": {"repobilityId": "3d1e4b6ed98b7c2a", "scanner": "scanner-primary", "fingerprint": "36235eab6a2d7ecf", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-dbdbf939c1964c9b", "level": "note", "message": {"text": "Unused endpoint: GET /lead/new"}, "properties": {"repobilityId": "62752ffc0d766a30", "scanner": "scanner-primary", "fingerprint": "dbdbf939c1964c9b", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-3e479caa7a37a677", "level": "note", "message": {"text": "Unused endpoint: POST /lead/new"}, "properties": {"repobilityId": "3b5ff793f089d0e5", "scanner": "scanner-primary", "fingerprint": "3e479caa7a37a677", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-dad33d17e9838782", "level": "note", "message": {"text": "Unused endpoint: GET /book/:leadId"}, "properties": {"repobilityId": "3cf4c621e9ba9706", "scanner": "scanner-primary", "fingerprint": "dad33d17e9838782", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a9d4940f9522d11e", "level": "note", "message": {"text": "Unused endpoint: POST /book/:leadId"}, "properties": {"repobilityId": "11c001a86aae1c26", "scanner": "scanner-primary", "fingerprint": "a9d4940f9522d11e", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-fc04cd4bfb6da3f9", "level": "note", "message": {"text": "Unused endpoint: POST /webhook/square"}, "properties": {"repobilityId": "58fa0164af94da7e", "scanner": "scanner-primary", "fingerprint": "fc04cd4bfb6da3f9", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-fb902864ba0818bf", "level": "note", "message": {"text": "Unused endpoint: GET /consult/:leadId"}, "properties": {"repobilityId": "ff48a4e9d7752fea", "scanner": "scanner-primary", "fingerprint": "fb902864ba0818bf", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b549a83927fe2bd9", "level": "note", "message": {"text": "Unused endpoint: POST /consult/:leadId"}, "properties": {"repobilityId": "b86d8f5a77989aab", "scanner": "scanner-primary", "fingerprint": "b549a83927fe2bd9", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-561ae141908d7de1", "level": "note", "message": {"text": "Unused endpoint: GET /consult/:leadId/thanks"}, "properties": {"repobilityId": "e32b814f420636d2", "scanner": "scanner-primary", "fingerprint": "561ae141908d7de1", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-c5793a400d797cf6", "level": "note", "message": {"text": "Unused endpoint: GET /retainer/:leadId"}, "properties": {"repobilityId": "bb8739a5b116e655", "scanner": "scanner-primary", "fingerprint": "c5793a400d797cf6", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-96ec9ab57cc4eb29", "level": "note", "message": {"text": "Unused endpoint: POST /webhook/zoom"}, "properties": {"repobilityId": "8a6f91b3a9632888", "scanner": "scanner-primary", "fingerprint": "96ec9ab57cc4eb29", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}]}]}