{"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-4344cd9bc7d1ce1f", "name": "Possibly dead Python function: handle_new_rx_page", "shortDescription": {"text": "Possibly dead Python function: handle_new_rx_page"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bf977aef6121ca82", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_tables.js:14", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_tables.js:14"}, "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-f530b4629c404a5c", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/migrate_codigo_acesso.js:13", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/migrate_codigo_acesso.js:13"}, "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-0b4ea7ae693ad32e", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/search_apto_debts.js:23", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/search_apto_debts.js:23"}, "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-504cfcc6926c3adb", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/test_login.js:20", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/test_login.js:20"}, "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-bbbf5fd6d00d5f97", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/optimize_db.js:15", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/optimize_db.js:15"}, "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-89416b1195b38331", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/debug_mane.js:15", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/debug_mane.js:15"}, "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-4e777486bf20083d", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/test_inside.js:14", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/test_inside.js:14"}, "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-e91958b9c934e56a", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_all_condominios.js:14", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_all_condominios.js:14"}, "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-b61df6cdefdfbaed", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/verify_provider_sync.js:14", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/verify_provider_sync.js:14"}, "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-44bcbf3057c109d2", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/migrate_visitantes.js:5", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/migrate_visitantes.js:5"}, "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-45bf917fc9ed91b1", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/search_102.js:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/search_102.js:16"}, "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-9b64bde3ce5efff5", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/upgrade_financeiro.js:15", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/upgrade_financeiro.js:15"}, "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-ced9ae338c28b17c", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/test_ocorrencias.js:5", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/test_ocorrencias.js:5"}, "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-385bf06dfab221f8", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/debug_login.js:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/debug_login.js:16"}, "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-948d1693298de88f", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/list_all_financeiro.js:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/list_all_financeiro.js:16"}, "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-a73b35d597d85cba", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/link_user.js:15", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/link_user.js:15"}, "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-91d1320c1fb7909a", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_web_tables.js:15", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_web_tables.js:15"}, "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-a9e48fcbc48cb4a5", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/search_web_faturas.js:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/search_web_faturas.js:16"}, "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-7aacb4996111ba80", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/test_moradores_duplicados.js:13", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/test_moradores_duplicados.js:13"}, "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-38fdb98b8246ae84", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_columns.js:14", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_columns.js:14"}, "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-bfdbbb0181f6055b", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/verify_sync.js:14", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/verify_sync.js:14"}, "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-78f2b66e94f4c99b", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/add_provider_app.js:17", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/add_provider_app.js:17"}, "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-d74d3c13847dff30", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/create_final_user.js:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/create_final_user.js:16"}, "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-bd932e609e32c4b7", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/populate_railway.js:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/populate_railway.js:12"}, "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-9350f3953ae2b823", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_apartment_users.js:17", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_apartment_users.js:17"}, "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-ec892804ae652810", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_data.js:15", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_data.js:15"}, "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-eeca173698342650", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/create_user.js:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/create_user.js:16"}, "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-350c1f3230de1780", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/get_morador.js:22", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/get_morador.js:22"}, "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-82adbb062ab2e1c9", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_users.js:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_users.js:16"}, "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-a0f354907037571d", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/list_condominios.js:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/list_condominios.js:16"}, "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-e92a61caedd521af", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/add_visitor_app.js:17", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/add_visitor_app.js:17"}, "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-1db9a2ceeba5298f", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/fix_user.js:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/fix_user.js:16"}, "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-2d56549f69170c74", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/migrate_visitantes_direct.js:15", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/migrate_visitantes_direct.js:15"}, "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-fc0d583686575f67", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/create_sindico_railway.js:18", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/create_sindico_railway.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-1aaa496fb1b69643", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerFinanceiro.js:110", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerFinanceiro.js:110"}, "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-bc7d1212fbf1d84c", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerAreasSociais.js:73", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerAreasSociais.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-cb9554890492d0f6", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerOcorrencias.js:25", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerOcorrencias.js:25"}, "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-0811260ff223bd17", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerMoradores.js:28", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerMoradores.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-3de6e0771d0b1194", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerMudancas.js:87", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerMudancas.js:87"}, "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-579a055ae98ad97c", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/utils/saveToAWS.js:43", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/utils/saveToAWS.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-d2ce781e2975bc2a", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/utils/logger.js:15", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/utils/logger.js:15"}, "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-a7ce970b22782e2b", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Moradores.js:158", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Moradores.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-c2a10d17e60b7846", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Funcionarios.js:119", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Funcionarios.js:119"}, "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-d83ae5d08e5ee462", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Manutencoes.js:8", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Manutencoes.js:8"}, "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-f9b4c7de58c44592", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Ocorrencias.js:24", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Ocorrencias.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-cc45a053c78c7fd8", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Assembleias.js:13", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Assembleias.js:13"}, "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-63f2b19cabca0a46", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/MySQL.js:23", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/MySQL.js:23"}, "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-0bdb7807870c7f0d", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Mudancas.js:37", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Mudancas.js:37"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5d11d198d1460c84", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Visitantes.js:23", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Visitantes.js:23"}, "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-719597f0663036da", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Users.js:78", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Users.js:78"}, "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-edeaeb592dcb2af0", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Condominio.js:165", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Condominio.js:165"}, "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-89a7a8e22e92fe5f", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Apartamento.js:25", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Apartamento.js:25"}, "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-636a6acc0e6e8f89", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/validations/getYupErrrors.js:4", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/validations/getYupErrrors.js:4"}, "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-667be050571e909f", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/libs/fileStorage.js:39", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/libs/fileStorage.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-05911af456f416d6", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/libs/sequelize.js:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/libs/sequelize.js:16"}, "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-1db85ca3780fe334", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/services/Mails.js:34", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/services/Mails.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-38b08e7190602882", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/services/Notifications.js:24", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/services/Notifications.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-61d8c4e975f12d44", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/middlewares/schemaValidator.js:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/middlewares/schemaValidator.js:7"}, "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-6a83ee35a2c9d1b3", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/middlewares/idValidator.js:8", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/middlewares/idValidator.js:8"}, "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-c2cf244946ac28db", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/middlewares/jwtVerify.js:11", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/middlewares/jwtVerify.js:11"}, "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-aa63a26b50f2d7a8", "name": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/middlewares/queryParamsValidator.js:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/middlewares/queryParamsValidator.js:7"}, "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-c947a2ee5114469f", "name": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api/src/app/create_sindico.js:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api/src/app/create_sindico.js:12"}, "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-582ca64a92ce6467", "name": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api/src/app/apartamentos/apartamentos.service.ts:167", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api/src/app/apartamentos/apartamentos.service.ts:167"}, "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-252ddef8e89b86e6", "name": "TODO/FIXME marker in shipping code \u2014 click-cond-web/apps/api/src/app/financeiro/financeiro.service.ts:2206", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 click-cond-web/apps/api/src/app/financeiro/financeiro.service.ts:2206"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1f577534a243c92c", "name": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api/src/app/moradores/moradores.service.ts:1148", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api/src/app/moradores/moradores.service.ts:1148"}, "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-4c3dd76fb0be8cf2", "name": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api-e2e/src/support/global-teardown.ts:9", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api-e2e/src/support/global-teardown.ts:9"}, "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-155672f1e3e0db4f", "name": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api-e2e/src/support/global-setup.ts:8", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api-e2e/src/support/global-setup.ts:8"}, "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-10bb63dbffff582b", "name": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/portaria-web/src/app/encomendas/encomendas-page.component.ts:680", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/portaria-web/src/app/encomendas/encomendas-page.component.ts:680"}, "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-a43e5f2dadc49053", "name": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/create-sindico.ts:41", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/create-sindico.ts:41"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1cc2e8172eccae85", "name": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/sync-moradores.ts:6", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/sync-moradores.ts:6"}, "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-2fd030e30944050f", "name": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/clean-comunicados.ts:23", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/clean-comunicados.ts:23"}, "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-266b6c3b00983c6f", "name": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/criar-sindico-portaria.ts:8", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/criar-sindico-portaria.ts:8"}, "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-f05880d89092fd70", "name": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/seed-teste-banco.ts:114", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/seed-teste-banco.ts: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-c20ce4f1e80786d3", "name": "Stray `console.log` in TS/JS \u2014 click-cond-web/prisma/seed.ts:17", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/prisma/seed.ts:17"}, "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-73e5c12b661225c7", "name": "Stray `console.log` in TS/JS \u2014 click-cond-web/prisma/stress_test.ts:71", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/prisma/stress_test.ts:71"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-886a5605f1510f48", "name": "Privileged port 465 in use", "shortDescription": {"text": "Privileged port 465 in use"}, "fullDescription": {"text": "Port 465 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-aa5acaa49eb8315b", "name": "Containers defined but no K8s/orchestration manifest found", "shortDescription": {"text": "Containers defined but no K8s/orchestration manifest found"}, "fullDescription": {"text": "Repo has Dockerfiles/compose but no Kubernetes/Nomad manifests. If the target deployment is K8s, the manifests may live in a separate ops repo."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dcc48a195f95c928", "name": "Possible secret in click-cond-api/click-cond-api/debug_mane.js", "shortDescription": {"text": "Possible secret in click-cond-api/click-cond-api/debug_mane.js"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-535d01ba4a68f06b", "name": "Possible secret in click-cond-api/click-cond-api/verify_provider_sync.js", "shortDescription": {"text": "Possible secret in click-cond-api/click-cond-api/verify_provider_sync.js"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-0d77579a28375a2d", "name": "Possible secret in click-cond-api/click-cond-api/upgrade_financeiro.js", "shortDescription": {"text": "Possible secret in click-cond-api/click-cond-api/upgrade_financeiro.js"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-121fd1c38b8b533a", "name": "Possible secret in click-cond-api/click-cond-api/check_web_tables.js", "shortDescription": {"text": "Possible secret in click-cond-api/click-cond-api/check_web_tables.js"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-832dbbdea08bd5e5", "name": "Possible secret in click-cond-api/click-cond-api/verify_sync.js", "shortDescription": {"text": "Possible secret in click-cond-api/click-cond-api/verify_sync.js"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-5ca48089870a01fc", "name": "Possible secret in click-cond-api/click-cond-api/add_provider_app.js", "shortDescription": {"text": "Possible secret in click-cond-api/click-cond-api/add_provider_app.js"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-ff43958de837f248", "name": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/create_final_user.js:22", "shortDescription": {"text": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/create_final_user.js:22"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b10cefaeb07eb9fa", "name": "Possible secret in click-cond-api/click-cond-api/populate_railway.js", "shortDescription": {"text": "Possible secret in click-cond-api/click-cond-api/populate_railway.js"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-b50e23dc9640d92e", "name": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/populate_railway.js:48", "shortDescription": {"text": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/populate_railway.js:48"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5d88bbd4fea3b0e5", "name": "Insecure pattern 'cors_wildcard' in click-cond-api/click-cond-api/app.js:45", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in click-cond-api/click-cond-api/app.js:45"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e96fa68a70451868", "name": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/create_user.js:24", "shortDescription": {"text": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/create_user.js:24"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-147b0e46c5dac18c", "name": "Possible secret in click-cond-api/click-cond-api/add_visitor_app.js", "shortDescription": {"text": "Possible secret in click-cond-api/click-cond-api/add_visitor_app.js"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-8646888515e174be", "name": "Possible secret in click-cond-api/click-cond-api/create_sindico_railway.js", "shortDescription": {"text": "Possible secret in click-cond-api/click-cond-api/create_sindico_railway.js"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-29ccfb0bbb8a7503", "name": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/create_sindico_railway.js:28", "shortDescription": {"text": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/create_sindico_railway.js:28"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-085d8690a617eb3c", "name": "Possible secret in click-cond-api/click-cond-api/views/userResetPassword.html", "shortDescription": {"text": "Possible secret in click-cond-api/click-cond-api/views/userResetPassword.html"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-953164ccdf4ebe9b", "name": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/src/database/DB_Moradores.js:55", "shortDescription": {"text": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/src/database/DB_Moradores.js:55"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a0c425c06319d82d", "name": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/src/database/DB_Funcionarios.js:11", "shortDescription": {"text": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/src/database/DB_Funcionarios.js:11"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-00eabe1ac4db891b", "name": "Insecure pattern 'direct_innerhtml_assignment' in click-cond-web/apps/api/src/assets/simulator.html:517", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in click-cond-web/apps/api/src/assets/simulator.html:517"}, "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-447b94dd9077b892", "name": "Insecure pattern 'direct_innerhtml_assignment' in click-cond-web/apps/api/src/assets/simulador-acesso.html:260", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in click-cond-web/apps/api/src/assets/simulador-acesso.html:260"}, "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-d11bc1186de244e0", "name": "Insecure pattern 'document_write' in click-cond-web/apps/portaria-web/src/app/encomendas/encomendas-page.component.ts:40", "shortDescription": {"text": "Insecure pattern 'document_write' in click-cond-web/apps/portaria-web/src/app/encomendas/encomendas-page.component.ts:409"}, "fullDescription": {"text": "Found a known-risky pattern (document_write). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cb639d9a10a47b23", "name": "package.json defines install-time lifecycle scripts", "shortDescription": {"text": "package.json defines install-time lifecycle scripts"}, "fullDescription": {"text": "preinstall/install/postinstall/prepare scripts execute during dependency installation. Review them carefully for network calls, obfuscation, shell execution, or credential access."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3cfa2945ba6ed682", "name": "package.json defines install-time lifecycle scripts", "shortDescription": {"text": "package.json defines install-time lifecycle scripts"}, "fullDescription": {"text": "preinstall/install/postinstall/prepare scripts execute during dependency installation. Review them carefully for network calls, obfuscation, shell execution, or credential access."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-837ebb9e728fac36", "name": "Very large file: click-cond-web/apps/api/src/app/auth/mobile-auth.service.ts (2216 lines)", "shortDescription": {"text": "Very large file: click-cond-web/apps/api/src/app/auth/mobile-auth.service.ts (2216 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-d0ad66b8e3bec3cc", "name": "Very large file: click-cond-web/apps/api/src/app/facial/facial.service.ts (1471 lines)", "shortDescription": {"text": "Very large file: click-cond-web/apps/api/src/app/facial/facial.service.ts (1471 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-2e8d3487504884f5", "name": "Very large file: click-cond-web/apps/api/src/app/financeiro/financeiro.service.ts (3062 lines)", "shortDescription": {"text": "Very large file: click-cond-web/apps/api/src/app/financeiro/financeiro.service.ts (3062 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-4341268a60ebd3cc", "name": "Very large file: click-cond-web/apps/api/src/app/visitantes/visitantes.service.ts (1478 lines)", "shortDescription": {"text": "Very large file: click-cond-web/apps/api/src/app/visitantes/visitantes.service.ts (1478 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": "8 test file(s) for 295 source file(s) (ratio 0.03). 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-3dbff81177f1ca3a", "name": "Node manifest has dependencies but no lockfile: click-cond-web/apps/api/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: click-cond-web/apps/api/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 236 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 18 placeholder/mock markers across 7 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, lockfile. Opus verification showed these co-occurring gaps are a better readiness signal than reading each flag in isolation."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "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, lockfile. Treat this as a contract gap: the agent is guided, but the generated output is not yet guarded by the controls that make it repeatable."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6333ce4dfb5e1c54", "name": "Agent authority lacks a verifier contract: click-cond-web/.cursor/agents/ci-monitor-subagent.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: click-cond-web/.cursor/agents/ci-monitor-subagent.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f98f30143d664a42", "name": "Agent authority lacks a verifier contract: click-cond-web/.cursor/skills/nx-workspace/references/AFFECTED.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: click-cond-web/.cursor/skills/nx-workspace/references/AFFECTED.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-896737de973729a1", "name": "Commented-code block (6 lines) in click-cond-api/click-cond-api/src/controller/ControllerVisitantes.js:52", "shortDescription": {"text": "Commented-code block (6 lines) in click-cond-api/click-cond-api/src/controller/ControllerVisitantes.js:52"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f8dafd091947fc1c", "name": "Commented-code block (6 lines) in click-cond-api/click-cond-api/src/controller/ControllerFuncionarios.js:73", "shortDescription": {"text": "Commented-code block (6 lines) in click-cond-api/click-cond-api/src/controller/ControllerFuncionarios.js:73"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2f63b5a4fd7f6c80", "name": "Commented-code block (5 lines) in click-cond-api/click-cond-api/src/database/DB_Moradores.js:70", "shortDescription": {"text": "Commented-code block (5 lines) in click-cond-api/click-cond-api/src/database/DB_Moradores.js:70"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-869897a7eba89e91", "name": "Commented-code block (5 lines) in click-cond-api/click-cond-api/src/database/DB_Dashboard.js:109", "shortDescription": {"text": "Commented-code block (5 lines) in click-cond-api/click-cond-api/src/database/DB_Dashboard.js:109"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d5a50e91d38d98d6", "name": "Commented-code block (6 lines) in click-cond-api/click-cond-api/src/database/DB_Financeiro.js:475", "shortDescription": {"text": "Commented-code block (6 lines) in click-cond-api/click-cond-api/src/database/DB_Financeiro.js:475"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5f1609f760a0b6a8", "name": "Commented-code block (8 lines) in click-cond-api/click-cond-api/src/libs/fileStorage.js:39", "shortDescription": {"text": "Commented-code block (8 lines) in click-cond-api/click-cond-api/src/libs/fileStorage.js:39"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d3f8dea9a74a1871", "name": "Commented-code block (8 lines) in click-cond-api/click-cond-api/src/libs/sequelize.js:13", "shortDescription": {"text": "Commented-code block (8 lines) in click-cond-api/click-cond-api/src/libs/sequelize.js:13"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d32bb1644413c8c7", "name": "Commented-code block (6 lines) in click-cond-web/apps/api/src/main.ts:22", "shortDescription": {"text": "Commented-code block (6 lines) in click-cond-web/apps/api/src/main.ts:22"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d6a1b8840faeb874", "name": "Commented-code block (5 lines) in click-cond-web/apps/api/src/app/common/filters/all-exceptions.filter.ts:78", "shortDescription": {"text": "Commented-code block (5 lines) in click-cond-web/apps/api/src/app/common/filters/all-exceptions.filter.ts:78"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e0e208a3eac9a2cd", "name": "Commented-code block (5 lines) in click-cond-web/apps/api/src/app/facial/facial.service.ts:835", "shortDescription": {"text": "Commented-code block (5 lines) in click-cond-web/apps/api/src/app/facial/facial.service.ts:835"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-832c19f41402b116", "name": "Commented-code block (5 lines) in click-cond-web/apps/api/src/app/financeiro/financeiro.service.ts:1658", "shortDescription": {"text": "Commented-code block (5 lines) in click-cond-web/apps/api/src/app/financeiro/financeiro.service.ts:1658"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-84f34b090ee25c5f", "name": "Commented-code block (5 lines) in click-cond-web/apps/api/src/app/visitantes/visitantes.controller.ts:145", "shortDescription": {"text": "Commented-code block (5 lines) in click-cond-web/apps/api/src/app/visitantes/visitantes.controller.ts:145"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1763931d579b9e0e", "name": "Commented-code block (7 lines) in click-cond-web/apps/api/src/app/visitantes/visitantes.service.ts:1359", "shortDescription": {"text": "Commented-code block (7 lines) in click-cond-web/apps/api/src/app/visitantes/visitantes.service.ts:1359"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f866a11f28542064", "name": "Commented-code block (7 lines) in click-cond-web/apps/portaria-web/src/app/visitantes/visitantes-page.component.ts:189", "shortDescription": {"text": "Commented-code block (7 lines) in click-cond-web/apps/portaria-web/src/app/visitantes/visitantes-page.component.ts:189"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2312e4757171170f", "name": "Commented-code block (28 lines) in click-cond-web/.github/skills/monitor-ci/scripts/ci-poll-decide.mjs:149", "shortDescription": {"text": "Commented-code block (28 lines) in click-cond-web/.github/skills/monitor-ci/scripts/ci-poll-decide.mjs:149"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-59b992d62d86a65a", "name": "25 env vars used in code but missing from .env.example", "shortDescription": {"text": "25 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `ACCESS_COOLDOWN_MS`, `ANTI_PASSBACK_MODE`, `API_INTERNAL_URL`, `ASAAS_WEBHOOK_TOKEN`, `AUTH_FAILURE_WINDOW_MS`, `AUTH_LOCKOUT_MS`, `AUTH_MAX_FAILURES`, `AWS_S3_API_KEY` + 17 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-0aba9ab3d909375a", "name": "Dangling fetch: POST https://api.openpix.com.br/v1/charge (click-cond-web/apps/api/src/app/financeiro/openpix.service.ts", "shortDescription": {"text": "Dangling fetch: POST https://api.openpix.com.br/v1/charge (click-cond-web/apps/api/src/app/financeiro/openpix.service.ts:17)"}, "fullDescription": {"text": "`click-cond-web/apps/api/src/app/financeiro/openpix.service.ts:17` calls `POST https://api.openpix.com.br/v1/charge` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.openpix.com.br/v1/charge`\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-16a35c2e3552b1a1", "name": "Dangling fetch: GET /api (click-cond-web/apps/api-e2e/src/api/api.spec.ts:5)", "shortDescription": {"text": "Dangling fetch: GET /api (click-cond-web/apps/api-e2e/src/api/api.spec.ts:5)"}, "fullDescription": {"text": "`click-cond-web/apps/api-e2e/src/api/api.spec.ts:5` calls `GET /api` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: axios\nNormalized path used for matching: `/`\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-abaf006b48adf500", "name": "Unused endpoint: USE /condominio", "shortDescription": {"text": "Unused endpoint: USE /condominio"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /condominio` 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-b8bfa8a744c10218", "name": "Unused endpoint: USE /sindico", "shortDescription": {"text": "Unused endpoint: USE /sindico"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /sindico` 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-819a30d8b5a8668d", "name": "Unused endpoint: USE /documentos", "shortDescription": {"text": "Unused endpoint: USE /documentos"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /documentos` 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-2ada3fb93fbd315e", "name": "Unused endpoint: USE /comunicados", "shortDescription": {"text": "Unused endpoint: USE /comunicados"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /comunicados` 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-44be9aa9a76577ec", "name": "Unused endpoint: USE /agenda", "shortDescription": {"text": "Unused endpoint: USE /agenda"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /agenda` 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-aa576a4c0b68e1cd", "name": "Unused endpoint: USE /manutencoes", "shortDescription": {"text": "Unused endpoint: USE /manutencoes"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /manutencoes` 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-3938fb54eec6a6db", "name": "Unused endpoint: USE /ocorrencias", "shortDescription": {"text": "Unused endpoint: USE /ocorrencias"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /ocorrencias` 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-a9fc08fe5eb861ce", "name": "Unused endpoint: USE /prestadores", "shortDescription": {"text": "Unused endpoint: USE /prestadores"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /prestadores` 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-2c3bc3ed771d49c6", "name": "Unused endpoint: USE /mudancas", "shortDescription": {"text": "Unused endpoint: USE /mudancas"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /mudancas` 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-4e480cf1bc736555", "name": "Unused endpoint: USE /users", "shortDescription": {"text": "Unused endpoint: USE /users"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /users` 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-bf49874ce8caa591", "name": "Unused endpoint: USE /visitantes", "shortDescription": {"text": "Unused endpoint: USE /visitantes"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /visitantes` 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-234bbd1459b09541", "name": "Unused endpoint: USE /funcionarios", "shortDescription": {"text": "Unused endpoint: USE /funcionarios"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /funcionarios` 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-d40ff44d3b0d627e", "name": "Unused endpoint: USE /moradores", "shortDescription": {"text": "Unused endpoint: USE /moradores"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /moradores` 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-09e466842e24b077", "name": "Unused endpoint: USE /assembleias", "shortDescription": {"text": "Unused endpoint: USE /assembleias"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /assembleias` 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-fad9436847b9ba73", "name": "Unused endpoint: USE /areas-sociais", "shortDescription": {"text": "Unused endpoint: USE /areas-sociais"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /areas-sociais` 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-bdee31d09e333946", "name": "Unused endpoint: USE /financeiro", "shortDescription": {"text": "Unused endpoint: USE /financeiro"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /financeiro` 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-53fadaf1db7b18bf", "name": "Unused endpoint: USE /apartamentos", "shortDescription": {"text": "Unused endpoint: USE /apartamentos"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /apartamentos` 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-e5866e82cdb6707a", "name": "Unused endpoint: USE /dashboard", "shortDescription": {"text": "Unused endpoint: USE /dashboard"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /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-a29465ac68635599", "name": "Unused endpoint: USE /encomendas", "shortDescription": {"text": "Unused endpoint: USE /encomendas"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /encomendas` 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-66499e99feeb3f1c", "name": "Unused endpoint: USE /facial", "shortDescription": {"text": "Unused endpoint: USE /facial"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/app.js` declares `USE /facial` 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-76eb313eff5e662f", "name": "Unused endpoint: GET /acessos/visitante/:id", "shortDescription": {"text": "Unused endpoint: GET /acessos/visitante/:id"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/facial.js` declares `GET /acessos/visitante/:id` 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-47f483785c4d4f83", "name": "Unused endpoint: POST /insert", "shortDescription": {"text": "Unused endpoint: POST /insert"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/mudancas.js` declares `POST /insert` 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-30279efcb80e56c5", "name": "Unused endpoint: GET /get-all", "shortDescription": {"text": "Unused endpoint: GET /get-all"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/mudancas.js` declares `GET /get-all` 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-2015e3b7d4e9253e", "name": "Unused endpoint: POST /remove", "shortDescription": {"text": "Unused endpoint: POST /remove"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/mudancas.js` declares `POST /remove` 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-69d327318617f514", "name": "Unused endpoint: POST /update", "shortDescription": {"text": "Unused endpoint: POST /update"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/mudancas.js` declares `POST /update` 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-718c7ce1b146296e", "name": "Unused endpoint: GET /get", "shortDescription": {"text": "Unused endpoint: GET /get"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/mudancas.js` declares `GET /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-b0e857343ee6cb1c", "name": "Unused endpoint: POST /update-status", "shortDescription": {"text": "Unused endpoint: POST /update-status"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/mudancas.js` declares `POST /update-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-acb932c0ca6c8d73", "name": "Unused endpoint: POST /check-in", "shortDescription": {"text": "Unused endpoint: POST /check-in"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/visitantes.js` declares `POST /check-in` 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-3cd8065083dcc15f", "name": "Unused endpoint: POST /check-out", "shortDescription": {"text": "Unused endpoint: POST /check-out"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/visitantes.js` declares `POST /check-out` 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-3373494789e9eaa5", "name": "Unused endpoint: GET /validar/:codigo", "shortDescription": {"text": "Unused endpoint: GET /validar/:codigo"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/visitantes.js` declares `GET /validar/:codigo` 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-16f504ce284bb597", "name": "Unused endpoint: POST /retirar", "shortDescription": {"text": "Unused endpoint: POST /retirar"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/encomendas.js` declares `POST /retirar` 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-b973ad9c12f02b61", "name": "Unused endpoint: GET /recovery/userResetPassword", "shortDescription": {"text": "Unused endpoint: GET /recovery/userResetPassword"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/utils.js` declares `GET /recovery/userResetPassword` 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-b58caaae110d8b54", "name": "Unused endpoint: POST /recovery/userResetPassword", "shortDescription": {"text": "Unused endpoint: POST /recovery/userResetPassword"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/utils.js` declares `POST /recovery/userResetPassword` 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-618721b912bad1c2", "name": "Unused endpoint: POST /login", "shortDescription": {"text": "Unused endpoint: POST /login"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/dashboard.js` declares `POST /login` 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-a8043b35033ea81e", "name": "Unused endpoint: GET /condominios/get-all", "shortDescription": {"text": "Unused endpoint: GET /condominios/get-all"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/dashboard.js` declares `GET /condominios/get-all` 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-e1b7bee247ffc801", "name": "Unused endpoint: GET /summary", "shortDescription": {"text": "Unused endpoint: GET /summary"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/dashboard.js` declares `GET /summary` 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-3d7fc8243d8ff512", "name": "Unused endpoint: GET /get-moradores", "shortDescription": {"text": "Unused endpoint: GET /get-moradores"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/apartamentos.js` declares `GET /get-moradores` 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-3299b54bdbd4f421", "name": "Unused endpoint: POST /finish/insert", "shortDescription": {"text": "Unused endpoint: POST /finish/insert"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/assembleias.js` declares `POST /finish/insert` 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-05930682a45f6cbf", "name": "Unused endpoint: POST /votacoes/insert", "shortDescription": {"text": "Unused endpoint: POST /votacoes/insert"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/assembleias.js` declares `POST /votacoes/insert` 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-c5c8dcaf5a0a661a", "name": "Unused endpoint: POST /votacoes/remove", "shortDescription": {"text": "Unused endpoint: POST /votacoes/remove"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/assembleias.js` declares `POST /votacoes/remove` 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-f19fc568c0515c7f", "name": "Unused endpoint: POST /votacoes/finish", "shortDescription": {"text": "Unused endpoint: POST /votacoes/finish"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/assembleias.js` declares `POST /votacoes/finish` 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-f93adff97a82523d", "name": "Unused endpoint: POST /votacoes/voto/insert", "shortDescription": {"text": "Unused endpoint: POST /votacoes/voto/insert"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/assembleias.js` declares `POST /votacoes/voto/insert` 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-76616907dfc4b862", "name": "Unused endpoint: GET /votacoes/enquetes/get-all", "shortDescription": {"text": "Unused endpoint: GET /votacoes/enquetes/get-all"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/assembleias.js` declares `GET /votacoes/enquetes/get-all` 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-431350a43768b6d4", "name": "Unused endpoint: GET /votacoes/enquetes/get", "shortDescription": {"text": "Unused endpoint: GET /votacoes/enquetes/get"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/assembleias.js` declares `GET /votacoes/enquetes/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-988df217a388a821", "name": "Unused endpoint: POST /insert-familiar", "shortDescription": {"text": "Unused endpoint: POST /insert-familiar"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/moradores.js` declares `POST /insert-familiar` 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-1bec44c5a3dd311c", "name": "Unused endpoint: POST /recovery-password", "shortDescription": {"text": "Unused endpoint: POST /recovery-password"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/moradores.js` declares `POST /recovery-password` 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-c234cfbd62ea4e9c", "name": "Unused endpoint: POST /new-password", "shortDescription": {"text": "Unused endpoint: POST /new-password"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/moradores.js` declares `POST /new-password` 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-df8dbbda753b3876", "name": "Unused endpoint: POST /update-assinatura", "shortDescription": {"text": "Unused endpoint: POST /update-assinatura"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/moradores.js` declares `POST /update-assinatura` 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-7aac990317231431", "name": "Unused endpoint: GET /list-condominios", "shortDescription": {"text": "Unused endpoint: GET /list-condominios"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/moradores.js` declares `GET /list-condominios` 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-c7670ebbba66cd44", "name": "Unused endpoint: POST /send-credentials", "shortDescription": {"text": "Unused endpoint: POST /send-credentials"}, "fullDescription": {"text": "`click-cond-api/click-cond-api/src/routes/moradores.js` declares `POST /send-credentials` 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/22286"}, "properties": {"repository": "Viniciusvile/Click-Prestare", "repoUrl": "https://github.com/Viniciusvile/Click-Prestare", "branch": "main"}, "results": [{"ruleId": "scanner-4344cd9bc7d1ce1f", "level": "note", "message": {"text": "Possibly dead Python function: handle_new_rx_page"}, "properties": {"repobilityId": "06f67962cf9c7af5", "scanner": "scanner-primary", "fingerprint": "4344cd9bc7d1ce1f", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-app/click-cond-app/ios/Flutter/ephemeral/flutter_lldb_helper.py:7"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-bf977aef6121ca82", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_tables.js:14"}, "properties": {"repobilityId": "c3d970f02adda877", "scanner": "scanner-primary", "fingerprint": "bf977aef6121ca82", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f530b4629c404a5c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/migrate_codigo_acesso.js:13"}, "properties": {"repobilityId": "6d2b154fdac701ed", "scanner": "scanner-primary", "fingerprint": "f530b4629c404a5c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0b4ea7ae693ad32e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/search_apto_debts.js:23"}, "properties": {"repobilityId": "ff337280738b5bd1", "scanner": "scanner-primary", "fingerprint": "0b4ea7ae693ad32e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-504cfcc6926c3adb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/test_login.js:20"}, "properties": {"repobilityId": "e70b82d32615fae3", "scanner": "scanner-primary", "fingerprint": "504cfcc6926c3adb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bbbf5fd6d00d5f97", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/optimize_db.js:15"}, "properties": {"repobilityId": "f6bee002745dd709", "scanner": "scanner-primary", "fingerprint": "bbbf5fd6d00d5f97", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-89416b1195b38331", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/debug_mane.js:15"}, "properties": {"repobilityId": "cae4dfa38422714d", "scanner": "scanner-primary", "fingerprint": "89416b1195b38331", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4e777486bf20083d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/test_inside.js:14"}, "properties": {"repobilityId": "e1a03b78cceb0c67", "scanner": "scanner-primary", "fingerprint": "4e777486bf20083d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e91958b9c934e56a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_all_condominios.js:14"}, "properties": {"repobilityId": "ce848e11f1eb1358", "scanner": "scanner-primary", "fingerprint": "e91958b9c934e56a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b61df6cdefdfbaed", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/verify_provider_sync.js:14"}, "properties": {"repobilityId": "51d840c631e75207", "scanner": "scanner-primary", "fingerprint": "b61df6cdefdfbaed", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-44bcbf3057c109d2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/migrate_visitantes.js:5"}, "properties": {"repobilityId": "b9227641935d16c1", "scanner": "scanner-primary", "fingerprint": "44bcbf3057c109d2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-45bf917fc9ed91b1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/search_102.js:16"}, "properties": {"repobilityId": "33e7c77c136efbe5", "scanner": "scanner-primary", "fingerprint": "45bf917fc9ed91b1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9b64bde3ce5efff5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/upgrade_financeiro.js:15"}, "properties": {"repobilityId": "f70e25cba166dec8", "scanner": "scanner-primary", "fingerprint": "9b64bde3ce5efff5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ced9ae338c28b17c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/test_ocorrencias.js:5"}, "properties": {"repobilityId": "194bfa339b6e80f4", "scanner": "scanner-primary", "fingerprint": "ced9ae338c28b17c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-385bf06dfab221f8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/debug_login.js:16"}, "properties": {"repobilityId": "dbf0fb3607843ca2", "scanner": "scanner-primary", "fingerprint": "385bf06dfab221f8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-948d1693298de88f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/list_all_financeiro.js:16"}, "properties": {"repobilityId": "9416df1aad38d663", "scanner": "scanner-primary", "fingerprint": "948d1693298de88f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a73b35d597d85cba", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/link_user.js:15"}, "properties": {"repobilityId": "a40491f435f70c1f", "scanner": "scanner-primary", "fingerprint": "a73b35d597d85cba", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-91d1320c1fb7909a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_web_tables.js:15"}, "properties": {"repobilityId": "2bd05d42bff04132", "scanner": "scanner-primary", "fingerprint": "91d1320c1fb7909a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a9e48fcbc48cb4a5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/search_web_faturas.js:16"}, "properties": {"repobilityId": "e5f1a91007286e6f", "scanner": "scanner-primary", "fingerprint": "a9e48fcbc48cb4a5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7aacb4996111ba80", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/test_moradores_duplicados.js:13"}, "properties": {"repobilityId": "915f454b25474d23", "scanner": "scanner-primary", "fingerprint": "7aacb4996111ba80", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-38fdb98b8246ae84", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_columns.js:14"}, "properties": {"repobilityId": "4d7b129b21104831", "scanner": "scanner-primary", "fingerprint": "38fdb98b8246ae84", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bfdbbb0181f6055b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/verify_sync.js:14"}, "properties": {"repobilityId": "4387e948c293b406", "scanner": "scanner-primary", "fingerprint": "bfdbbb0181f6055b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-78f2b66e94f4c99b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/add_provider_app.js:17"}, "properties": {"repobilityId": "c380bcd1f2147348", "scanner": "scanner-primary", "fingerprint": "78f2b66e94f4c99b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d74d3c13847dff30", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/create_final_user.js:16"}, "properties": {"repobilityId": "d9bcf5c5fd417e3c", "scanner": "scanner-primary", "fingerprint": "d74d3c13847dff30", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bd932e609e32c4b7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/populate_railway.js:12"}, "properties": {"repobilityId": "c455a1ecf5197e58", "scanner": "scanner-primary", "fingerprint": "bd932e609e32c4b7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9350f3953ae2b823", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_apartment_users.js:17"}, "properties": {"repobilityId": "2453abfdf37625d6", "scanner": "scanner-primary", "fingerprint": "9350f3953ae2b823", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ec892804ae652810", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_data.js:15"}, "properties": {"repobilityId": "adac1ca89934e38b", "scanner": "scanner-primary", "fingerprint": "ec892804ae652810", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-eeca173698342650", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/create_user.js:16"}, "properties": {"repobilityId": "18ba79eee1c6d2f4", "scanner": "scanner-primary", "fingerprint": "eeca173698342650", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-350c1f3230de1780", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/get_morador.js:22"}, "properties": {"repobilityId": "b4f12a74bba775be", "scanner": "scanner-primary", "fingerprint": "350c1f3230de1780", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-82adbb062ab2e1c9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/check_users.js:16"}, "properties": {"repobilityId": "79964a603e694d21", "scanner": "scanner-primary", "fingerprint": "82adbb062ab2e1c9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a0f354907037571d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/list_condominios.js:16"}, "properties": {"repobilityId": "8edf4c4ea0f0d3ff", "scanner": "scanner-primary", "fingerprint": "a0f354907037571d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e92a61caedd521af", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/add_visitor_app.js:17"}, "properties": {"repobilityId": "136f89fbb991ab1b", "scanner": "scanner-primary", "fingerprint": "e92a61caedd521af", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1db9a2ceeba5298f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/fix_user.js:16"}, "properties": {"repobilityId": "c19a219b33d764ad", "scanner": "scanner-primary", "fingerprint": "1db9a2ceeba5298f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2d56549f69170c74", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/migrate_visitantes_direct.js:15"}, "properties": {"repobilityId": "5e2ebd9c9437827f", "scanner": "scanner-primary", "fingerprint": "2d56549f69170c74", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fc0d583686575f67", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/create_sindico_railway.js:18"}, "properties": {"repobilityId": "0b009480f6e2fff4", "scanner": "scanner-primary", "fingerprint": "fc0d583686575f67", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1aaa496fb1b69643", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerFinanceiro.js:110"}, "properties": {"repobilityId": "d973b2f5e397388a", "scanner": "scanner-primary", "fingerprint": "1aaa496fb1b69643", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bc7d1212fbf1d84c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerAreasSociais.js:73"}, "properties": {"repobilityId": "493a48c0f301c281", "scanner": "scanner-primary", "fingerprint": "bc7d1212fbf1d84c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cb9554890492d0f6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerOcorrencias.js:25"}, "properties": {"repobilityId": "a827844ca17440a2", "scanner": "scanner-primary", "fingerprint": "cb9554890492d0f6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0811260ff223bd17", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerMoradores.js:28"}, "properties": {"repobilityId": "1c33ce387ca3954c", "scanner": "scanner-primary", "fingerprint": "0811260ff223bd17", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3de6e0771d0b1194", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/controller/ControllerMudancas.js:87"}, "properties": {"repobilityId": "1077ff31970ed7ce", "scanner": "scanner-primary", "fingerprint": "3de6e0771d0b1194", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-579a055ae98ad97c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/utils/saveToAWS.js:43"}, "properties": {"repobilityId": "ae1757c40291ee2e", "scanner": "scanner-primary", "fingerprint": "579a055ae98ad97c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d2ce781e2975bc2a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/utils/logger.js:15"}, "properties": {"repobilityId": "d9be5d833995677f", "scanner": "scanner-primary", "fingerprint": "d2ce781e2975bc2a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a7ce970b22782e2b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Moradores.js:158"}, "properties": {"repobilityId": "6223b279bdb50417", "scanner": "scanner-primary", "fingerprint": "a7ce970b22782e2b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c2a10d17e60b7846", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Funcionarios.js:119"}, "properties": {"repobilityId": "74f5a621ec4270da", "scanner": "scanner-primary", "fingerprint": "c2a10d17e60b7846", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d83ae5d08e5ee462", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Manutencoes.js:8"}, "properties": {"repobilityId": "8df461be39b7cff1", "scanner": "scanner-primary", "fingerprint": "d83ae5d08e5ee462", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f9b4c7de58c44592", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Ocorrencias.js:24"}, "properties": {"repobilityId": "177007e547ae0c78", "scanner": "scanner-primary", "fingerprint": "f9b4c7de58c44592", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cc45a053c78c7fd8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Assembleias.js:13"}, "properties": {"repobilityId": "c9f0a71c7ecdbef6", "scanner": "scanner-primary", "fingerprint": "cc45a053c78c7fd8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-63f2b19cabca0a46", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/MySQL.js:23"}, "properties": {"repobilityId": "fcbcf75d7f419a13", "scanner": "scanner-primary", "fingerprint": "63f2b19cabca0a46", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0bdb7807870c7f0d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Mudancas.js:37"}, "properties": {"repobilityId": "633a10257d0dd605", "scanner": "scanner-primary", "fingerprint": "0bdb7807870c7f0d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5d11d198d1460c84", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Visitantes.js:23"}, "properties": {"repobilityId": "ba01b300d7c8efe9", "scanner": "scanner-primary", "fingerprint": "5d11d198d1460c84", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-719597f0663036da", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Users.js:78"}, "properties": {"repobilityId": "77a0f3ef8d9dea8d", "scanner": "scanner-primary", "fingerprint": "719597f0663036da", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-edeaeb592dcb2af0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Condominio.js:165"}, "properties": {"repobilityId": "2b3c68120e281876", "scanner": "scanner-primary", "fingerprint": "edeaeb592dcb2af0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-89a7a8e22e92fe5f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/database/DB_Apartamento.js:25"}, "properties": {"repobilityId": "c3e254325fdac8a6", "scanner": "scanner-primary", "fingerprint": "89a7a8e22e92fe5f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-636a6acc0e6e8f89", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/validations/getYupErrrors.js:4"}, "properties": {"repobilityId": "aa46d0819c068927", "scanner": "scanner-primary", "fingerprint": "636a6acc0e6e8f89", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-667be050571e909f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/libs/fileStorage.js:39"}, "properties": {"repobilityId": "ad71ed3f6cf91d18", "scanner": "scanner-primary", "fingerprint": "667be050571e909f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-05911af456f416d6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/libs/sequelize.js:16"}, "properties": {"repobilityId": "4a392aa9884c0a32", "scanner": "scanner-primary", "fingerprint": "05911af456f416d6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1db85ca3780fe334", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/services/Mails.js:34"}, "properties": {"repobilityId": "44b09f5ed99baee7", "scanner": "scanner-primary", "fingerprint": "1db85ca3780fe334", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-38b08e7190602882", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/services/Notifications.js:24"}, "properties": {"repobilityId": "15e1c482f3a18d3f", "scanner": "scanner-primary", "fingerprint": "38b08e7190602882", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-61d8c4e975f12d44", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/middlewares/schemaValidator.js:7"}, "properties": {"repobilityId": "167b48fa2298b1cf", "scanner": "scanner-primary", "fingerprint": "61d8c4e975f12d44", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6a83ee35a2c9d1b3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/middlewares/idValidator.js:8"}, "properties": {"repobilityId": "9c2c87d00bbd7c05", "scanner": "scanner-primary", "fingerprint": "6a83ee35a2c9d1b3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c2cf244946ac28db", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/middlewares/jwtVerify.js:11"}, "properties": {"repobilityId": "59c8c094ee88636e", "scanner": "scanner-primary", "fingerprint": "c2cf244946ac28db", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-aa63a26b50f2d7a8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-api/click-cond-api/src/middlewares/queryParamsValidator.js:7"}, "properties": {"repobilityId": "1178bade7785874f", "scanner": "scanner-primary", "fingerprint": "aa63a26b50f2d7a8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c947a2ee5114469f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api/src/app/create_sindico.js:12"}, "properties": {"repobilityId": "da3068c8c8d0c98d", "scanner": "scanner-primary", "fingerprint": "c947a2ee5114469f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-582ca64a92ce6467", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api/src/app/apartamentos/apartamentos.service.ts:167"}, "properties": {"repobilityId": "7445845ab7931a2b", "scanner": "scanner-primary", "fingerprint": "582ca64a92ce6467", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-252ddef8e89b86e6", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 click-cond-web/apps/api/src/app/financeiro/financeiro.service.ts:2206"}, "properties": {"repobilityId": "72f91f406c15376d", "scanner": "scanner-primary", "fingerprint": "252ddef8e89b86e6", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-1f577534a243c92c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api/src/app/moradores/moradores.service.ts:1148"}, "properties": {"repobilityId": "8d5011baa70273e3", "scanner": "scanner-primary", "fingerprint": "1f577534a243c92c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4c3dd76fb0be8cf2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api-e2e/src/support/global-teardown.ts:9"}, "properties": {"repobilityId": "3e62c3b989a4e584", "scanner": "scanner-primary", "fingerprint": "4c3dd76fb0be8cf2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-155672f1e3e0db4f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/api-e2e/src/support/global-setup.ts:8"}, "properties": {"repobilityId": "33d79dc94149b90c", "scanner": "scanner-primary", "fingerprint": "155672f1e3e0db4f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-10bb63dbffff582b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/apps/portaria-web/src/app/encomendas/encomendas-page.component.ts:680"}, "properties": {"repobilityId": "22c5bf432a57832e", "scanner": "scanner-primary", "fingerprint": "10bb63dbffff582b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a43e5f2dadc49053", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/create-sindico.ts:41"}, "properties": {"repobilityId": "50e9eb142b177099", "scanner": "scanner-primary", "fingerprint": "a43e5f2dadc49053", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1cc2e8172eccae85", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/sync-moradores.ts:6"}, "properties": {"repobilityId": "296b67d117d47c8f", "scanner": "scanner-primary", "fingerprint": "1cc2e8172eccae85", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2fd030e30944050f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/clean-comunicados.ts:23"}, "properties": {"repobilityId": "2d9c341f3492e8fc", "scanner": "scanner-primary", "fingerprint": "2fd030e30944050f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-266b6c3b00983c6f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/criar-sindico-portaria.ts:8"}, "properties": {"repobilityId": "c1baf9087863d9a4", "scanner": "scanner-primary", "fingerprint": "266b6c3b00983c6f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f05880d89092fd70", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/scripts/seed-teste-banco.ts:114"}, "properties": {"repobilityId": "0c217a1d5833f576", "scanner": "scanner-primary", "fingerprint": "f05880d89092fd70", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c20ce4f1e80786d3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/prisma/seed.ts:17"}, "properties": {"repobilityId": "2056d659bc74f397", "scanner": "scanner-primary", "fingerprint": "c20ce4f1e80786d3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-73e5c12b661225c7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 click-cond-web/prisma/stress_test.ts:71"}, "properties": {"repobilityId": "c931764eccef2cab", "scanner": "scanner-primary", "fingerprint": "73e5c12b661225c7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-886a5605f1510f48", "level": "warning", "message": {"text": "Privileged port 465 in use"}, "properties": {"repobilityId": "bcd1f06b60a2b6bc", "scanner": "scanner-primary", "fingerprint": "886a5605f1510f48", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/src/services/Mails.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-aa5acaa49eb8315b", "level": "note", "message": {"text": "Containers defined but no K8s/orchestration manifest found"}, "properties": {"repobilityId": "b230ea9b68736081", "scanner": "scanner-primary", "fingerprint": "aa5acaa49eb8315b", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["coverage", "deployment"]}}, {"ruleId": "scanner-dcc48a195f95c928", "level": "error", "message": {"text": "Possible secret in click-cond-api/click-cond-api/debug_mane.js"}, "properties": {"repobilityId": "bb9eb77144837587", "scanner": "scanner-primary", "fingerprint": "dcc48a195f95c928", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/debug_mane.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-535d01ba4a68f06b", "level": "error", "message": {"text": "Possible secret in click-cond-api/click-cond-api/verify_provider_sync.js"}, "properties": {"repobilityId": "5db0d4da73805ad3", "scanner": "scanner-primary", "fingerprint": "535d01ba4a68f06b", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/verify_provider_sync.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-0d77579a28375a2d", "level": "error", "message": {"text": "Possible secret in click-cond-api/click-cond-api/upgrade_financeiro.js"}, "properties": {"repobilityId": "a9241ac5d030d025", "scanner": "scanner-primary", "fingerprint": "0d77579a28375a2d", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/upgrade_financeiro.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-121fd1c38b8b533a", "level": "error", "message": {"text": "Possible secret in click-cond-api/click-cond-api/check_web_tables.js"}, "properties": {"repobilityId": "1c0c0de62c9efc2b", "scanner": "scanner-primary", "fingerprint": "121fd1c38b8b533a", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/check_web_tables.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-832dbbdea08bd5e5", "level": "error", "message": {"text": "Possible secret in click-cond-api/click-cond-api/verify_sync.js"}, "properties": {"repobilityId": "e8c99935281255b6", "scanner": "scanner-primary", "fingerprint": "832dbbdea08bd5e5", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/verify_sync.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-5ca48089870a01fc", "level": "error", "message": {"text": "Possible secret in click-cond-api/click-cond-api/add_provider_app.js"}, "properties": {"repobilityId": "0f01e8319d7155cb", "scanner": "scanner-primary", "fingerprint": "5ca48089870a01fc", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/add_provider_app.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-ff43958de837f248", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/create_final_user.js:22"}, "properties": {"repobilityId": "32b5f445ecdf2a74", "scanner": "scanner-primary", "fingerprint": "ff43958de837f248", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/create_final_user.js"}, "region": {"startLine": 22}}}]}, {"ruleId": "scanner-b10cefaeb07eb9fa", "level": "error", "message": {"text": "Possible secret in click-cond-api/click-cond-api/populate_railway.js"}, "properties": {"repobilityId": "c5c356358a7070a3", "scanner": "scanner-primary", "fingerprint": "b10cefaeb07eb9fa", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/populate_railway.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-b50e23dc9640d92e", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/populate_railway.js:48"}, "properties": {"repobilityId": "516de9316c9d1a02", "scanner": "scanner-primary", "fingerprint": "b50e23dc9640d92e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/populate_railway.js"}, "region": {"startLine": 48}}}]}, {"ruleId": "scanner-5d88bbd4fea3b0e5", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in click-cond-api/click-cond-api/app.js:45"}, "properties": {"repobilityId": "5e2a30c92f411a3a", "scanner": "scanner-primary", "fingerprint": "5d88bbd4fea3b0e5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/app.js"}, "region": {"startLine": 45}}}]}, {"ruleId": "scanner-e96fa68a70451868", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/create_user.js:24"}, "properties": {"repobilityId": "5a1184d15d53882a", "scanner": "scanner-primary", "fingerprint": "e96fa68a70451868", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/create_user.js"}, "region": {"startLine": 24}}}]}, {"ruleId": "scanner-147b0e46c5dac18c", "level": "error", "message": {"text": "Possible secret in click-cond-api/click-cond-api/add_visitor_app.js"}, "properties": {"repobilityId": "bd18a988c61bf3b3", "scanner": "scanner-primary", "fingerprint": "147b0e46c5dac18c", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/add_visitor_app.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-8646888515e174be", "level": "error", "message": {"text": "Possible secret in click-cond-api/click-cond-api/create_sindico_railway.js"}, "properties": {"repobilityId": "88e7d3cb47c405eb", "scanner": "scanner-primary", "fingerprint": "8646888515e174be", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/create_sindico_railway.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-29ccfb0bbb8a7503", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/create_sindico_railway.js:28"}, "properties": {"repobilityId": "502710ec1e47dabb", "scanner": "scanner-primary", "fingerprint": "29ccfb0bbb8a7503", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/create_sindico_railway.js"}, "region": {"startLine": 28}}}]}, {"ruleId": "scanner-085d8690a617eb3c", "level": "error", "message": {"text": "Possible secret in click-cond-api/click-cond-api/views/userResetPassword.html"}, "properties": {"repobilityId": "7f0d7efeec87164b", "scanner": "scanner-primary", "fingerprint": "085d8690a617eb3c", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/views/userResetPassword.html"}, "region": {"startLine": 26}}}]}, {"ruleId": "scanner-085d8690a617eb3c", "level": "error", "message": {"text": "Possible secret in click-cond-api/click-cond-api/views/userResetPassword.html"}, "properties": {"repobilityId": "7f0d7efeec87164b", "scanner": "scanner-primary", "fingerprint": "085d8690a617eb3c", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/views/userResetPassword.html"}, "region": {"startLine": 26}}}]}, {"ruleId": "scanner-953164ccdf4ebe9b", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/src/database/DB_Moradores.js:55"}, "properties": {"repobilityId": "e495890bd7d500bc", "scanner": "scanner-primary", "fingerprint": "953164ccdf4ebe9b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/src/database/DB_Moradores.js"}, "region": {"startLine": 55}}}]}, {"ruleId": "scanner-a0c425c06319d82d", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in click-cond-api/click-cond-api/src/database/DB_Funcionarios.js:11"}, "properties": {"repobilityId": "716fb92c2ab0af52", "scanner": "scanner-primary", "fingerprint": "a0c425c06319d82d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-api/click-cond-api/src/database/DB_Funcionarios.js"}, "region": {"startLine": 11}}}]}, {"ruleId": "scanner-00eabe1ac4db891b", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in click-cond-web/apps/api/src/assets/simulator.html:517"}, "properties": {"repobilityId": "d2e80b73348045d2", "scanner": "scanner-primary", "fingerprint": "00eabe1ac4db891b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-web/apps/api/src/assets/simulator.html"}, "region": {"startLine": 517}}}]}, {"ruleId": "scanner-447b94dd9077b892", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in click-cond-web/apps/api/src/assets/simulador-acesso.html:260"}, "properties": {"repobilityId": "f83f99c65afeb6bb", "scanner": "scanner-primary", "fingerprint": "447b94dd9077b892", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-web/apps/api/src/assets/simulador-acesso.html"}, "region": {"startLine": 260}}}]}, {"ruleId": "scanner-d11bc1186de244e0", "level": "note", "message": {"text": "Insecure pattern 'document_write' in click-cond-web/apps/portaria-web/src/app/encomendas/encomendas-page.component.ts:409"}, "properties": {"repobilityId": "a39e659095db5e7b", "scanner": "scanner-primary", "fingerprint": "d11bc1186de244e0", "layer": "security", "severity": "low", "confidence": 1.0, "tags": ["owasp", "document_write"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-web/apps/portaria-web/src/app/encomendas/encomendas-page.component.ts"}, "region": {"startLine": 409}}}]}, {"ruleId": "scanner-cb639d9a10a47b23", "level": "note", "message": {"text": "package.json defines install-time lifecycle scripts"}, "properties": {"repobilityId": "52481c6ca35c8360", "scanner": "scanner-primary", "fingerprint": "cb639d9a10a47b23", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "npm", "install-scripts"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3cfa2945ba6ed682", "level": "note", "message": {"text": "package.json defines install-time lifecycle scripts"}, "properties": {"repobilityId": "86e493121a603c73", "scanner": "scanner-primary", "fingerprint": "3cfa2945ba6ed682", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "npm", "install-scripts"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-web/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-837ebb9e728fac36", "level": "note", "message": {"text": "Very large file: click-cond-web/apps/api/src/app/auth/mobile-auth.service.ts (2216 lines)"}, "properties": {"repobilityId": "cd03cf5b6e64b93f", "scanner": "scanner-primary", "fingerprint": "837ebb9e728fac36", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d0ad66b8e3bec3cc", "level": "note", "message": {"text": "Very large file: click-cond-web/apps/api/src/app/facial/facial.service.ts (1471 lines)"}, "properties": {"repobilityId": "4846713c88934512", "scanner": "scanner-primary", "fingerprint": "d0ad66b8e3bec3cc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2e8d3487504884f5", "level": "note", "message": {"text": "Very large file: click-cond-web/apps/api/src/app/financeiro/financeiro.service.ts (3062 lines)"}, "properties": {"repobilityId": "77cadac09b6ccd99", "scanner": "scanner-primary", "fingerprint": "2e8d3487504884f5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-4341268a60ebd3cc", "level": "note", "message": {"text": "Very large file: click-cond-web/apps/api/src/app/visitantes/visitantes.service.ts (1478 lines)"}, "properties": {"repobilityId": "c05138990b09ea08", "scanner": "scanner-primary", "fingerprint": "4341268a60ebd3cc", "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": "c45de992f1603dcf", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-3dbff81177f1ca3a", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: click-cond-web/apps/api/package.json"}, "properties": {"repobilityId": "12162d037292743a", "scanner": "scanner-primary", "fingerprint": "3dbff81177f1ca3a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-web/apps/api/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "592d67d11bf6b107", "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": "75f0ed01fbf7e82c", "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": "5487fdd3a6cf0ba7", "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": "warning", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "23599f4b6066bfcb", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "medium", "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": "11341a50979c35bd", "scanner": "scanner-primary", "fingerprint": "749d4bc1bd66df5f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "e24935ec949b1f65", "scanner": "scanner-primary", "fingerprint": "ea8f3013f588db25", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-8424db9c75e04ba4", "level": "none", "message": {"text": "Very short observed git history"}, "properties": {"repobilityId": "74294ca6d59896d4", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-6333ce4dfb5e1c54", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: click-cond-web/.cursor/agents/ci-monitor-subagent.md"}, "properties": {"repobilityId": "07b6033b62cc9379", "scanner": "scanner-primary", "fingerprint": "6333ce4dfb5e1c54", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "cursor_rule"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-web/.cursor/agents/ci-monitor-subagent.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f98f30143d664a42", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: click-cond-web/.cursor/skills/nx-workspace/references/AFFECTED.md"}, "properties": {"repobilityId": "e59bdb7bc344de5d", "scanner": "scanner-primary", "fingerprint": "f98f30143d664a42", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "cursor_rule"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "click-cond-web/.cursor/skills/nx-workspace/references/AFFECTED.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-896737de973729a1", "level": "none", "message": {"text": "Commented-code block (6 lines) in click-cond-api/click-cond-api/src/controller/ControllerVisitantes.js:52"}, "properties": {"repobilityId": "68d63db84fd08336", "scanner": "scanner-primary", "fingerprint": "896737de973729a1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f8dafd091947fc1c", "level": "none", "message": {"text": "Commented-code block (6 lines) in click-cond-api/click-cond-api/src/controller/ControllerFuncionarios.js:73"}, "properties": {"repobilityId": "f7ea53983dfb81b5", "scanner": "scanner-primary", "fingerprint": "f8dafd091947fc1c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2f63b5a4fd7f6c80", "level": "none", "message": {"text": "Commented-code block (5 lines) in click-cond-api/click-cond-api/src/database/DB_Moradores.js:70"}, "properties": {"repobilityId": "6e1444b208166781", "scanner": "scanner-primary", "fingerprint": "2f63b5a4fd7f6c80", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-869897a7eba89e91", "level": "none", "message": {"text": "Commented-code block (5 lines) in click-cond-api/click-cond-api/src/database/DB_Dashboard.js:109"}, "properties": {"repobilityId": "66e83bd7d1ae673d", "scanner": "scanner-primary", "fingerprint": "869897a7eba89e91", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d5a50e91d38d98d6", "level": "none", "message": {"text": "Commented-code block (6 lines) in click-cond-api/click-cond-api/src/database/DB_Financeiro.js:475"}, "properties": {"repobilityId": "82ae14c913369fe7", "scanner": "scanner-primary", "fingerprint": "d5a50e91d38d98d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5f1609f760a0b6a8", "level": "none", "message": {"text": "Commented-code block (8 lines) in click-cond-api/click-cond-api/src/libs/fileStorage.js:39"}, "properties": {"repobilityId": "e1703668e248daf5", "scanner": "scanner-primary", "fingerprint": "5f1609f760a0b6a8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d3f8dea9a74a1871", "level": "none", "message": {"text": "Commented-code block (8 lines) in click-cond-api/click-cond-api/src/libs/sequelize.js:13"}, "properties": {"repobilityId": "03a53b3f280635c7", "scanner": "scanner-primary", "fingerprint": "d3f8dea9a74a1871", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d32bb1644413c8c7", "level": "none", "message": {"text": "Commented-code block (6 lines) in click-cond-web/apps/api/src/main.ts:22"}, "properties": {"repobilityId": "38401328766c5587", "scanner": "scanner-primary", "fingerprint": "d32bb1644413c8c7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d6a1b8840faeb874", "level": "none", "message": {"text": "Commented-code block (5 lines) in click-cond-web/apps/api/src/app/common/filters/all-exceptions.filter.ts:78"}, "properties": {"repobilityId": "b625066d116d6c44", "scanner": "scanner-primary", "fingerprint": "d6a1b8840faeb874", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e0e208a3eac9a2cd", "level": "none", "message": {"text": "Commented-code block (5 lines) in click-cond-web/apps/api/src/app/facial/facial.service.ts:835"}, "properties": {"repobilityId": "81238cf95577f17a", "scanner": "scanner-primary", "fingerprint": "e0e208a3eac9a2cd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-832c19f41402b116", "level": "none", "message": {"text": "Commented-code block (5 lines) in click-cond-web/apps/api/src/app/financeiro/financeiro.service.ts:1658"}, "properties": {"repobilityId": "dadfec34e3d47954", "scanner": "scanner-primary", "fingerprint": "832c19f41402b116", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-84f34b090ee25c5f", "level": "none", "message": {"text": "Commented-code block (5 lines) in click-cond-web/apps/api/src/app/visitantes/visitantes.controller.ts:145"}, "properties": {"repobilityId": "7088a5dfb9e84029", "scanner": "scanner-primary", "fingerprint": "84f34b090ee25c5f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1763931d579b9e0e", "level": "none", "message": {"text": "Commented-code block (7 lines) in click-cond-web/apps/api/src/app/visitantes/visitantes.service.ts:1359"}, "properties": {"repobilityId": "162ffd6481107b6d", "scanner": "scanner-primary", "fingerprint": "1763931d579b9e0e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f866a11f28542064", "level": "none", "message": {"text": "Commented-code block (7 lines) in click-cond-web/apps/portaria-web/src/app/visitantes/visitantes-page.component.ts:189"}, "properties": {"repobilityId": "531117bf00764f3a", "scanner": "scanner-primary", "fingerprint": "f866a11f28542064", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2312e4757171170f", "level": "none", "message": {"text": "Commented-code block (28 lines) in click-cond-web/.github/skills/monitor-ci/scripts/ci-poll-decide.mjs:149"}, "properties": {"repobilityId": "8bce42a632eb82b6", "scanner": "scanner-primary", "fingerprint": "2312e4757171170f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-59b992d62d86a65a", "level": "note", "message": {"text": "25 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "58b9516d72ffa8ba", "scanner": "scanner-primary", "fingerprint": "59b992d62d86a65a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}, {"ruleId": "scanner-0aba9ab3d909375a", "level": "error", "message": {"text": "Dangling fetch: POST https://api.openpix.com.br/v1/charge (click-cond-web/apps/api/src/app/financeiro/openpix.service.ts:17)"}, "properties": {"repobilityId": "5c0887c90c651fe3", "scanner": "scanner-primary", "fingerprint": "0aba9ab3d909375a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-16a35c2e3552b1a1", "level": "error", "message": {"text": "Dangling fetch: GET /api (click-cond-web/apps/api-e2e/src/api/api.spec.ts:5)"}, "properties": {"repobilityId": "847782fc3cb33391", "scanner": "scanner-primary", "fingerprint": "16a35c2e3552b1a1", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "axios"]}}, {"ruleId": "scanner-abaf006b48adf500", "level": "note", "message": {"text": "Unused endpoint: USE /condominio"}, "properties": {"repobilityId": "a7f0d7c750a9ca20", "scanner": "scanner-primary", "fingerprint": "abaf006b48adf500", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b8bfa8a744c10218", "level": "note", "message": {"text": "Unused endpoint: USE /sindico"}, "properties": {"repobilityId": "e1d89d7caed1f14d", "scanner": "scanner-primary", "fingerprint": "b8bfa8a744c10218", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-819a30d8b5a8668d", "level": "note", "message": {"text": "Unused endpoint: USE /documentos"}, "properties": {"repobilityId": "0e546fc8613d4eb1", "scanner": "scanner-primary", "fingerprint": "819a30d8b5a8668d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-2ada3fb93fbd315e", "level": "note", "message": {"text": "Unused endpoint: USE /comunicados"}, "properties": {"repobilityId": "0600e5bc5fa3e836", "scanner": "scanner-primary", "fingerprint": "2ada3fb93fbd315e", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-44be9aa9a76577ec", "level": "note", "message": {"text": "Unused endpoint: USE /agenda"}, "properties": {"repobilityId": "b4a54fd923bca12d", "scanner": "scanner-primary", "fingerprint": "44be9aa9a76577ec", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-aa576a4c0b68e1cd", "level": "note", "message": {"text": "Unused endpoint: USE /manutencoes"}, "properties": {"repobilityId": "6453a8d0c26b1197", "scanner": "scanner-primary", "fingerprint": "aa576a4c0b68e1cd", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-3938fb54eec6a6db", "level": "note", "message": {"text": "Unused endpoint: USE /ocorrencias"}, "properties": {"repobilityId": "b7f1cae358fa18c1", "scanner": "scanner-primary", "fingerprint": "3938fb54eec6a6db", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a9fc08fe5eb861ce", "level": "note", "message": {"text": "Unused endpoint: USE /prestadores"}, "properties": {"repobilityId": "6b4b7b32219b9d84", "scanner": "scanner-primary", "fingerprint": "a9fc08fe5eb861ce", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-2c3bc3ed771d49c6", "level": "note", "message": {"text": "Unused endpoint: USE /mudancas"}, "properties": {"repobilityId": "c01a4d066c35b5df", "scanner": "scanner-primary", "fingerprint": "2c3bc3ed771d49c6", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-4e480cf1bc736555", "level": "note", "message": {"text": "Unused endpoint: USE /users"}, "properties": {"repobilityId": "15905d8fe2327fb2", "scanner": "scanner-primary", "fingerprint": "4e480cf1bc736555", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-bf49874ce8caa591", "level": "note", "message": {"text": "Unused endpoint: USE /visitantes"}, "properties": {"repobilityId": "24999aeb5bf3bb1b", "scanner": "scanner-primary", "fingerprint": "bf49874ce8caa591", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-234bbd1459b09541", "level": "note", "message": {"text": "Unused endpoint: USE /funcionarios"}, "properties": {"repobilityId": "1e39227800063859", "scanner": "scanner-primary", "fingerprint": "234bbd1459b09541", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-d40ff44d3b0d627e", "level": "note", "message": {"text": "Unused endpoint: USE /moradores"}, "properties": {"repobilityId": "f005ae27dc3c95e2", "scanner": "scanner-primary", "fingerprint": "d40ff44d3b0d627e", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-09e466842e24b077", "level": "note", "message": {"text": "Unused endpoint: USE /assembleias"}, "properties": {"repobilityId": "6b6986b654c69344", "scanner": "scanner-primary", "fingerprint": "09e466842e24b077", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-fad9436847b9ba73", "level": "note", "message": {"text": "Unused endpoint: USE /areas-sociais"}, "properties": {"repobilityId": "8b6148952be6332a", "scanner": "scanner-primary", "fingerprint": "fad9436847b9ba73", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-bdee31d09e333946", "level": "note", "message": {"text": "Unused endpoint: USE /financeiro"}, "properties": {"repobilityId": "3abb37e5c3544c69", "scanner": "scanner-primary", "fingerprint": "bdee31d09e333946", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-53fadaf1db7b18bf", "level": "note", "message": {"text": "Unused endpoint: USE /apartamentos"}, "properties": {"repobilityId": "ec99ada98b32cf8d", "scanner": "scanner-primary", "fingerprint": "53fadaf1db7b18bf", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e5866e82cdb6707a", "level": "note", "message": {"text": "Unused endpoint: USE /dashboard"}, "properties": {"repobilityId": "084f750500d532d4", "scanner": "scanner-primary", "fingerprint": "e5866e82cdb6707a", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a29465ac68635599", "level": "note", "message": {"text": "Unused endpoint: USE /encomendas"}, "properties": {"repobilityId": "1687c77086de5301", "scanner": "scanner-primary", "fingerprint": "a29465ac68635599", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-66499e99feeb3f1c", "level": "note", "message": {"text": "Unused endpoint: USE /facial"}, "properties": {"repobilityId": "544a585c185f0464", "scanner": "scanner-primary", "fingerprint": "66499e99feeb3f1c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-76eb313eff5e662f", "level": "note", "message": {"text": "Unused endpoint: GET /acessos/visitante/:id"}, "properties": {"repobilityId": "2281fddd61b9a5e9", "scanner": "scanner-primary", "fingerprint": "76eb313eff5e662f", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-47f483785c4d4f83", "level": "note", "message": {"text": "Unused endpoint: POST /insert"}, "properties": {"repobilityId": "1f4f2ec74d000dfb", "scanner": "scanner-primary", "fingerprint": "47f483785c4d4f83", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-30279efcb80e56c5", "level": "note", "message": {"text": "Unused endpoint: GET /get-all"}, "properties": {"repobilityId": "7d7a7e22b1f9ff26", "scanner": "scanner-primary", "fingerprint": "30279efcb80e56c5", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-2015e3b7d4e9253e", "level": "note", "message": {"text": "Unused endpoint: POST /remove"}, "properties": {"repobilityId": "4e236835a0f16fb6", "scanner": "scanner-primary", "fingerprint": "2015e3b7d4e9253e", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-69d327318617f514", "level": "note", "message": {"text": "Unused endpoint: POST /update"}, "properties": {"repobilityId": "dd48a1c1e2ed59b1", "scanner": "scanner-primary", "fingerprint": "69d327318617f514", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-718c7ce1b146296e", "level": "note", "message": {"text": "Unused endpoint: GET /get"}, "properties": {"repobilityId": "29f1f850e29078e0", "scanner": "scanner-primary", "fingerprint": "718c7ce1b146296e", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b0e857343ee6cb1c", "level": "note", "message": {"text": "Unused endpoint: POST /update-status"}, "properties": {"repobilityId": "e7d22d1990f9c08c", "scanner": "scanner-primary", "fingerprint": "b0e857343ee6cb1c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-acb932c0ca6c8d73", "level": "note", "message": {"text": "Unused endpoint: POST /check-in"}, "properties": {"repobilityId": "fefd39893514d0dd", "scanner": "scanner-primary", "fingerprint": "acb932c0ca6c8d73", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-3cd8065083dcc15f", "level": "note", "message": {"text": "Unused endpoint: POST /check-out"}, "properties": {"repobilityId": "bc0d4e071f73d1a1", "scanner": "scanner-primary", "fingerprint": "3cd8065083dcc15f", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-3373494789e9eaa5", "level": "note", "message": {"text": "Unused endpoint: GET /validar/:codigo"}, "properties": {"repobilityId": "3b130119639b3495", "scanner": "scanner-primary", "fingerprint": "3373494789e9eaa5", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-16f504ce284bb597", "level": "note", "message": {"text": "Unused endpoint: POST /retirar"}, "properties": {"repobilityId": "4c9ebf24230687c7", "scanner": "scanner-primary", "fingerprint": "16f504ce284bb597", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b973ad9c12f02b61", "level": "note", "message": {"text": "Unused endpoint: GET /recovery/userResetPassword"}, "properties": {"repobilityId": "d963236a8843b3c0", "scanner": "scanner-primary", "fingerprint": "b973ad9c12f02b61", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b58caaae110d8b54", "level": "note", "message": {"text": "Unused endpoint: POST /recovery/userResetPassword"}, "properties": {"repobilityId": "6c9f3b2c596b5462", "scanner": "scanner-primary", "fingerprint": "b58caaae110d8b54", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-618721b912bad1c2", "level": "note", "message": {"text": "Unused endpoint: POST /login"}, "properties": {"repobilityId": "3618e593d10dd9a1", "scanner": "scanner-primary", "fingerprint": "618721b912bad1c2", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a8043b35033ea81e", "level": "note", "message": {"text": "Unused endpoint: GET /condominios/get-all"}, "properties": {"repobilityId": "490446c318e56c71", "scanner": "scanner-primary", "fingerprint": "a8043b35033ea81e", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e1b7bee247ffc801", "level": "note", "message": {"text": "Unused endpoint: GET /summary"}, "properties": {"repobilityId": "fb6538abe6df45f2", "scanner": "scanner-primary", "fingerprint": "e1b7bee247ffc801", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-3d7fc8243d8ff512", "level": "note", "message": {"text": "Unused endpoint: GET /get-moradores"}, "properties": {"repobilityId": "337952a73353df15", "scanner": "scanner-primary", "fingerprint": "3d7fc8243d8ff512", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-3299b54bdbd4f421", "level": "note", "message": {"text": "Unused endpoint: POST /finish/insert"}, "properties": {"repobilityId": "945a0a4cd50eef63", "scanner": "scanner-primary", "fingerprint": "3299b54bdbd4f421", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-05930682a45f6cbf", "level": "note", "message": {"text": "Unused endpoint: POST /votacoes/insert"}, "properties": {"repobilityId": "4feaedb5f022f00c", "scanner": "scanner-primary", "fingerprint": "05930682a45f6cbf", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-c5c8dcaf5a0a661a", "level": "note", "message": {"text": "Unused endpoint: POST /votacoes/remove"}, "properties": {"repobilityId": "353811157082a680", "scanner": "scanner-primary", "fingerprint": "c5c8dcaf5a0a661a", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-f19fc568c0515c7f", "level": "note", "message": {"text": "Unused endpoint: POST /votacoes/finish"}, "properties": {"repobilityId": "b9a1b22d08a4c966", "scanner": "scanner-primary", "fingerprint": "f19fc568c0515c7f", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-f93adff97a82523d", "level": "note", "message": {"text": "Unused endpoint: POST /votacoes/voto/insert"}, "properties": {"repobilityId": "86d1d1001eea8ba2", "scanner": "scanner-primary", "fingerprint": "f93adff97a82523d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-76616907dfc4b862", "level": "note", "message": {"text": "Unused endpoint: GET /votacoes/enquetes/get-all"}, "properties": {"repobilityId": "7829370cfb723448", "scanner": "scanner-primary", "fingerprint": "76616907dfc4b862", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-431350a43768b6d4", "level": "note", "message": {"text": "Unused endpoint: GET /votacoes/enquetes/get"}, "properties": {"repobilityId": "9a126ee8d7d59dca", "scanner": "scanner-primary", "fingerprint": "431350a43768b6d4", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-988df217a388a821", "level": "note", "message": {"text": "Unused endpoint: POST /insert-familiar"}, "properties": {"repobilityId": "cf12d47bfef8578a", "scanner": "scanner-primary", "fingerprint": "988df217a388a821", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-1bec44c5a3dd311c", "level": "note", "message": {"text": "Unused endpoint: POST /recovery-password"}, "properties": {"repobilityId": "395158d12ecf14cc", "scanner": "scanner-primary", "fingerprint": "1bec44c5a3dd311c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-c234cfbd62ea4e9c", "level": "note", "message": {"text": "Unused endpoint: POST /new-password"}, "properties": {"repobilityId": "5f6339232ca8f38b", "scanner": "scanner-primary", "fingerprint": "c234cfbd62ea4e9c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-df8dbbda753b3876", "level": "note", "message": {"text": "Unused endpoint: POST /update-assinatura"}, "properties": {"repobilityId": "d385daed97a0f292", "scanner": "scanner-primary", "fingerprint": "df8dbbda753b3876", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-7aac990317231431", "level": "note", "message": {"text": "Unused endpoint: GET /list-condominios"}, "properties": {"repobilityId": "243f6fd72177dcfa", "scanner": "scanner-primary", "fingerprint": "7aac990317231431", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-c7670ebbba66cd44", "level": "note", "message": {"text": "Unused endpoint: POST /send-credentials"}, "properties": {"repobilityId": "210dc5efbb0630bb", "scanner": "scanner-primary", "fingerprint": "c7670ebbba66cd44", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}]}]}