{"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-bbd3ac4654a1810f", "name": "TODO/FIXME marker in shipping code \u2014 functions/api/fftt-calendar.js:51", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 functions/api/fftt-calendar.js:51"}, "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-7fbdf2c97959a533", "name": "Stray `console.log` in TS/JS \u2014 tests/test_catalogue_integrity.js:16", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tests/test_catalogue_integrity.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-bac45ebe88fd2b47", "name": "Stray `console.log` in TS/JS \u2014 tests/test_scoring_golden.js:83", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tests/test_scoring_golden.js:83"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-80a25db3b765da41", "name": "Stray `console.log` in TS/JS \u2014 tests/test_marque_constraints.js:31", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tests/test_marque_constraints.js:31"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-edab7a9c5313e776", "name": "Stray `console.log` in TS/JS \u2014 tests/_gen_golden.js:72", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tests/_gen_golden.js:72"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fd59543370464b39", "name": "Stray `console.log` in TS/JS \u2014 tests/test_generated_pages.js:15", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tests/test_generated_pages.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-ddf76fc01a9a4319", "name": "Stray `console.log` in TS/JS \u2014 tests/test_labo.js:13", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tests/test_labo.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-f87f7c2789bc3a74", "name": "Stray `console.log` in TS/JS \u2014 tests/test_club_backup.js:43", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tests/test_club_backup.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-0aedecb5dbeedf20", "name": "Stray `console.log` in TS/JS \u2014 tests/test_scoring.js:75", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tests/test_scoring.js:75"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e5931c21ff297a50", "name": "Icon-only button without accessible name \u2014 js/club-theme.js:241", "shortDescription": {"text": "Icon-only button without accessible name \u2014 js/club-theme.js:241"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b7afeb84b39827aa", "name": "Icon-only button without accessible name \u2014 js/app-profil.js:438", "shortDescription": {"text": "Icon-only button without accessible name \u2014 js/app-profil.js:438"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-485a860eb4b1bff2", "name": "Icon-only button without accessible name \u2014 js/club-import.js:79", "shortDescription": {"text": "Icon-only button without accessible name \u2014 js/club-import.js:79"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f3a4deb3bc502151", "name": "Icon-only button without accessible name \u2014 js/app-catalogue.js:281", "shortDescription": {"text": "Icon-only button without accessible name \u2014 js/app-catalogue.js:281"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dee5795cec7930cd", "name": "Stray `console.log` in TS/JS \u2014 js/data-loader.js:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 js/data-loader.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-59085326f6376bad", "name": "Icon-only button without accessible name \u2014 js/app-scoring.js:1727", "shortDescription": {"text": "Icon-only button without accessible name \u2014 js/app-scoring.js:1727"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2cd02ef567326f70", "name": "Icon-only button without accessible name \u2014 js/firebase-auth.js:275", "shortDescription": {"text": "Icon-only button without accessible name \u2014 js/firebase-auth.js:275"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a71579322c9fd96a", "name": "Icon-only button without accessible name \u2014 js/ratings.js:131", "shortDescription": {"text": "Icon-only button without accessible name \u2014 js/ratings.js:131"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6f35ce0cad74db3f", "name": "Stray `console.log` in TS/JS \u2014 js/index-main.js:540", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 js/index-main.js:540"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a37915036a8dcb05", "name": "Icon-only button without accessible name \u2014 js/app-catalogue.min.js:1", "shortDescription": {"text": "Icon-only button without accessible name \u2014 js/app-catalogue.min.js:1"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fda07765e4bf697b", "name": "Icon-only button without accessible name \u2014 js/app-profil.min.js:1", "shortDescription": {"text": "Icon-only button without accessible name \u2014 js/app-profil.min.js:1"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5d645323627de9e9", "name": "Icon-only button without accessible name \u2014 js/app-scoring.min.js:1", "shortDescription": {"text": "Icon-only button without accessible name \u2014 js/app-scoring.min.js:1"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a778331bb6ad05f4", "name": "Stray `console.log` in TS/JS \u2014 scripts/generate-brand-pages.js:377", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-brand-pages.js:377"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b89ff74f37bd110c", "name": "Stray `console.log` in TS/JS \u2014 scripts/generate-sitemap.js:146", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-sitemap.js:146"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1f47c497ae021b7c", "name": "Stray `console.log` in TS/JS \u2014 scripts/_fftt-clubs-harvest.js:104", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/_fftt-clubs-harvest.js:104"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1d1f5f8309d9bf12", "name": "Stray `console.log` in TS/JS \u2014 scripts/add-bois-retailers.js:429", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/add-bois-retailers.js:429"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-db6b42ec8378e051", "name": "Stray `console.log` in TS/JS \u2014 scripts/enrich-marque-pages.js:115", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/enrich-marque-pages.js:115"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ae876fa84d54998e", "name": "Stray `console.log` in TS/JS \u2014 scripts/inject-og-image.js:57", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/inject-og-image.js:57"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e9447e81db073423", "name": "Stray `console.log` in TS/JS \u2014 scripts/scrape-prices.js:197", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/scrape-prices.js:197"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c21b07d8c9e66c9a", "name": "Stray `console.log` in TS/JS \u2014 scripts/search-prices.js:242", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/search-prices.js:242"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f61ada3873e90645", "name": "Stray `console.log` in TS/JS \u2014 scripts/resolve-pro-photos.js:48", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/resolve-pro-photos.js:48"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d4ac409f1fee9ba9", "name": "Stray `console.log` in TS/JS \u2014 scripts/generate-selections.js:704", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-selections.js:704"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e374ea6117c53605", "name": "Stray `console.log` in TS/JS \u2014 scripts/enrich-data.js:722", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/enrich-data.js:722"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-34320b978182c548", "name": "Stray `console.log` in TS/JS \u2014 scripts/inject-breadcrumbs.js:113", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/inject-breadcrumbs.js:113"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-44c69fea215bfd56", "name": "Stray `console.log` in TS/JS \u2014 scripts/feedback-report.js:59", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/feedback-report.js:59"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2db9c94c2b3aa967", "name": "Stray `console.log` in TS/JS \u2014 scripts/inject-reading-share.js:57", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/inject-reading-share.js:57"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-05becde5102ad41d", "name": "Stray `console.log` in TS/JS \u2014 scripts/generate-rss.js:68", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-rss.js:68"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bdb552f8df0a62c6", "name": "Stray `console.log` in TS/JS \u2014 scripts/generate-pro-pages.js:110", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-pro-pages.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-4e471a1f6bacd080", "name": "Stray `console.log` in TS/JS \u2014 scripts/stamp-versions.js:30", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/stamp-versions.js:30"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ae89eeb5293971cb", "name": "Stray `console.log` in TS/JS \u2014 scripts/check_images.js:33", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/check_images.js:33"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3c98bb90a68d6342", "name": "Stray `console.log` in TS/JS \u2014 scripts/audit-picots.js:56", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/audit-picots.js:56"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4428825d7b11d291", "name": "Stray `console.log` in TS/JS \u2014 scripts/build-all.js:37", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/build-all.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-b720a3918c00c33e", "name": "Stray `console.log` in TS/JS \u2014 scripts/enrich-revetements.js:156", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/enrich-revetements.js:156"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ab2f4450e608e4ba", "name": "Stray `console.log` in TS/JS \u2014 scripts/validate-prices.js:96", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/validate-prices.js:96"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d5144ad02b661de0", "name": "Stray `console.log` in TS/JS \u2014 scripts/generate-product-pages.js:559", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-product-pages.js:559"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-436010bd46b0cd21", "name": "Stray `console.log` in TS/JS \u2014 scripts/inject-ga.js:41", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/inject-ga.js: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-aeba69bf8ceccc17", "name": "Stray `console.log` in TS/JS \u2014 scripts/inject-og-meta.js:51", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/inject-og-meta.js:51"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-044875f17cf0711a", "name": "Stray `console.log` in TS/JS \u2014 scripts/generate-comparison-pages.js:825", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-comparison-pages.js:825"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-744465731aca2cfb", "name": "Stray `console.log` in TS/JS \u2014 scripts/enrich-articles-related.js:223", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/enrich-articles-related.js:223"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5d0cee70365b63d5", "name": "Stray `console.log` in TS/JS \u2014 scripts/inject-faq-schema.js:95", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/inject-faq-schema.js:95"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ff0d8965fddc38ee", "name": "Stray `console.log` in TS/JS \u2014 scripts/backup-firestore.js:74", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/backup-firestore.js:74"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2460d26fb57c4c26", "name": "Stray `console.log` in TS/JS \u2014 scripts/enrich-blog-index.js:64", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/enrich-blog-index.js:64"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-adbce8cc218c5e59", "name": "Stray `console.log` in TS/JS \u2014 scripts/add-new-products.js:110", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/add-new-products.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-ae74a558f56db1ba", "name": "Stray `console.log` in TS/JS \u2014 scripts/generate-setups.js:340", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-setups.js:340"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bd2d14fbeb5b2aac", "name": "Stray `console.log` in TS/JS \u2014 scripts/calibrage-scoring.js:289", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/calibrage-scoring.js:289"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-00082d7139638bbc", "name": "Stray `console.log` in TS/JS \u2014 scripts/seo-audit.js:102", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/seo-audit.js:102"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9d9ae456ea1c8ebc", "name": "Stray `console.log` in TS/JS \u2014 scripts/generate_placeholders.js:46", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate_placeholders.js:46"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-02f180bfaf57bcaf", "name": "Stray `console.log` in TS/JS \u2014 scripts/clean-urls.js:63", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/clean-urls.js:63"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d831f424d8cd0709", "name": "Stray `console.log` in TS/JS \u2014 scripts/fix-prices-and-duplicates.js:61", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/fix-prices-and-duplicates.js:61"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3d2ca2b09dd6213b", "name": "Stray `console.log` in TS/JS \u2014 scripts/validate_json.js:66", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/validate_json.js:66"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8209a549e3d72e9f", "name": "Stray `console.log` in TS/JS \u2014 scripts/add-famille-speciale.js:49", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/add-famille-speciale.js:49"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f6a2a5d4833682d9", "name": "Stray `console.log` in TS/JS \u2014 scripts/dedupe_bois.js:19", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/dedupe_bois.js:19"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cf4e783e3d6fe484", "name": "Stray `console.log` in TS/JS \u2014 scripts/append-mon-equipement.js:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/append-mon-equipement.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-cf069f947e3e55b8", "name": "Stray `console.log` in TS/JS \u2014 scripts/inject-maillage.js:146", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/inject-maillage.js:146"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7319615342dfca14", "name": "Stray `console.log` in TS/JS \u2014 scripts/_apply-found-images.js:31", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/_apply-found-images.js:31"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-941212e3d4f88c61", "name": "Stray `console.log` in TS/JS \u2014 scripts/generate-og-image.js:37", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-og-image.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-d8c0266dc1cd2452", "name": "Stray `console.log` in TS/JS \u2014 scripts/rewrite-diagnostic.js:463", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/rewrite-diagnostic.js:463"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-41c1844d6b188281", "name": "Stray `console.log` in TS/JS \u2014 scripts/check-min-sync.js:51", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/check-min-sync.js:51"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-11b18a03aa29c95c", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/_inject-edito-da.js:38", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_inject-edito-da.js:38"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-192389d06fbbd231", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/_migrate-image-webp.js:24", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_migrate-image-webp.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-5ccc1163c8d54d31", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/_download-images.js:26", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_download-images.js:26"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4f5a33305d15e676", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/_apply-da-pages.js:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_apply-da-pages.js:45"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a548d70f6b543b3f", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/_apply-edito-rating.js:86", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_apply-edito-rating.js:86"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8459783532ac406e", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/_repatriate-missing.js:61", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_repatriate-missing.js:61"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7680b4bbab79bea8", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/_fetch-cjping.js:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_fetch-cjping.js:45"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-01ed38ccea277b4c", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/enrich_data.js:274", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/enrich_data.js:274"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7711645cec9742b9", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/_apply-consent.js:46", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_apply-consent.js:46"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-da4f2316c1da6f22", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/_fetch-images.js:86", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_fetch-images.js:86"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-019d55d51092b33c", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/normalize_and_export.js:72", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/normalize_and_export.js:72"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e8df6013a5e18a21", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/enrich_data_v2.js:292", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/enrich_data_v2.js:292"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-968505d897f4deeb", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/remove_backups.js:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/remove_backups.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-830ea3d9863faaa5", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/_to-webp.js:33", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_to-webp.js:33"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2918198ed5d83252", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/_fetch-revspin.js:57", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_fetch-revspin.js:57"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4e43e44162bb3cc7", "name": "Stray `console.log` in TS/JS \u2014 scripts/archive/_resolve-pro-photos.js:31", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_resolve-pro-photos.js:31"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-58c1a4cd5652f354", "name": "Stray `console.log` in TS/JS \u2014 instagram/planning/tools/generate-instagram.js:493", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 instagram/planning/tools/generate-instagram.js:493"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-73249dc5b936f365", "name": "Stray `console.log` in TS/JS \u2014 instagram/planning/tools/sync-to-phone.js:157", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 instagram/planning/tools/sync-to-phone.js:157"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ec1ee56b397f1978", "name": "Stray `console.log` in TS/JS \u2014 instagram/planning/tools/generate-calendar.js:106", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 instagram/planning/tools/generate-calendar.js:106"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9710c8d059e53154", "name": "No frontend routes/components detected", "shortDescription": {"text": "No frontend routes/components detected"}, "fullDescription": {"text": "No React/Vue/Next routes were found. This is fine for backend-only repos."}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-43d5218bbbb50ea7", "name": "Insecure pattern 'direct_innerhtml_assignment' in convocations.html:225", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in convocations.html:225"}, "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-9f062cd67e4440d9", "name": "Insecure pattern 'direct_innerhtml_assignment' in finances.html:190", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in finances.html:190"}, "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-1399b2a82bcdf356", "name": "Insecure pattern 'direct_innerhtml_assignment' in ecole-ping.html:156", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in ecole-ping.html:156"}, "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-43830f14051511c9", "name": "Insecure pattern 'direct_innerhtml_assignment' in arbitrage.html:200", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in arbitrage.html:200"}, "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-f7cdd1dac5dc9a0b", "name": "Insecure pattern 'direct_innerhtml_assignment' in calendrier.html:170", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in calendrier.html:170"}, "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-d3f530ba849a3e3a", "name": "Possible secret in tableau-bord.html", "shortDescription": {"text": "Possible secret in tableau-bord.html"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-4654351ec434da43", "name": "Insecure pattern 'direct_innerhtml_assignment' in tableau-bord.html:188", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tableau-bord.html:188"}, "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-d5775d3f00a09097", "name": "Insecure pattern 'direct_innerhtml_assignment' in championnat.html:419", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in championnat.html:419"}, "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-28817cfcf2941b83", "name": "Insecure pattern 'direct_innerhtml_assignment' in wizard.html:503", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in wizard.html:503"}, "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-cb63384177ac1631", "name": "Insecure pattern 'direct_innerhtml_assignment' in rapport.html:153", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in rapport.html:153"}, "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-0c9b07240a79b287", "name": "Insecure pattern 'direct_innerhtml_assignment' in roles.html:135", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in roles.html:135"}, "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-0d780304083a71d4", "name": "Possible secret in dispo.html", "shortDescription": {"text": "Possible secret in dispo.html"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-0d8c14b8b68553b8", "name": "Insecure pattern 'direct_innerhtml_assignment' in dispo.html:201", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in dispo.html:201"}, "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-6e7084e82767a2ea", "name": "Insecure pattern 'direct_innerhtml_assignment' in club-pro.html:124", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in club-pro.html:124"}, "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-6946b5a1de90f7eb", "name": "Insecure pattern 'direct_innerhtml_assignment' in diplomes-jeunes.html:213", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diplomes-jeunes.html:213"}, "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-262a5ba1f944d673", "name": "Possible secret in inscription-club.html", "shortDescription": {"text": "Possible secret in inscription-club.html"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-89144debcee31645", "name": "Insecure pattern 'direct_innerhtml_assignment' in inscription-club.html:266", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in inscription-club.html:266"}, "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-2bc5ecba463fe685", "name": "Insecure pattern 'direct_innerhtml_assignment' in feuille-route.html:187", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in feuille-route.html:187"}, "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-012916660509ffac", "name": "Insecure pattern 'direct_innerhtml_assignment' in secretariat.html:300", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in secretariat.html:300"}, "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-3917af65681d2e98", "name": "Insecure pattern 'direct_innerhtml_assignment' in affiches.html:328", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in affiches.html:328"}, "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-9885387f5f803ee1", "name": "Insecure pattern 'direct_innerhtml_assignment' in ping-sante.html:328", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in ping-sante.html:328"}, "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-c9f89ef7e41c5fdb", "name": "Insecure pattern 'direct_innerhtml_assignment' in sponsoring.html:182", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in sponsoring.html:182"}, "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-7aef604a3851c474", "name": "Insecure pattern 'direct_innerhtml_assignment' in messages.html:185", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in messages.html:185"}, "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-f46ce151c446595d", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/ma-long.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/ma-long.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a7e5400a64798527", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lin-yun-ju.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lin-yun-ju.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4068efc6805ad01c", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/zhu-yuling.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/zhu-yuling.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0dc74181b356f197", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/jules-rolland.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/jules-rolland.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-82082822ff5641c4", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/margaryta-pesotska.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/margaryta-pesotska.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a8e7ce2ddbcc55a6", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/cheng-i-ching.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/cheng-i-ching.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-128a5fb184dda508", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/hugo-calderano.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/hugo-calderano.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c3884de7057fec5f", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/liam-pitchford.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/liam-pitchford.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e3e17fdf8b643876", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/miyuu-kihara.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/miyuu-kihara.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2b9b9d085c7cafe7", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/anton-kallberg.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/anton-kallberg.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2b48c94b5a098822", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/maharu-yoshimura.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/maharu-yoshimura.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d4a54a02ac0e661b", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/bernadette-szocs.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/bernadette-szocs.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b7a3418136b22b88", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/kim-nayeong.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/kim-nayeong.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1449acc15c3b1d28", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/doo-hoi-kem.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/doo-hoi-kem.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6822875219c97db3", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/dang-qiu.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/dang-qiu.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2719b5f97b7458f8", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/joe-seyfried.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/joe-seyfried.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1b05685470353ecf", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/simon-gauzy.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/simon-gauzy.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ff70f98c48fd9641", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/truls-moregard.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/truls-moregard.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-63d751aacd492897", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/wang-manyu.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/wang-manyu.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b52cbe78ef2c7a74", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sabine-winter.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sabine-winter.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-77be34666d56fca7", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/mima-ito.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/mima-ito.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d1393f99b3ef3671", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/an-jaehyun.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/an-jaehyun.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-979d4695e8261804", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/chen-yi.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/chen-yi.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7e0acf2b9aaccad7", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/he-zhuojia.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/he-zhuojia.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-77e0baf62088c32e", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/benedikt-duda.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/benedikt-duda.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-53d11d1d46f42fa2", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sun-yingsha.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sun-yingsha.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3b3a033582120950", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lim-jonghoon.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lim-jonghoon.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4240809607da3fa1", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/shin-yubin.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/shin-yubin.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3177f4192366e57e", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lubomir-jancarik.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lubomir-jancarik.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0f97f07c2960f579", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/kirill-gerassimenko.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/kirill-gerassimenko.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-502f0db3ca7f29b9", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/hitomi-sato.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/hitomi-sato.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2677b915da869b3e", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/hana-goda.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/hana-goda.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-98f9242c14954bf0", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lee-eunhye.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lee-eunhye.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c621117f64d9ed02", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/tomokazu-harimoto.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/tomokazu-harimoto.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b58f43544e834518", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sreeja-akula.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sreeja-akula.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d513f3b25128fae5", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/camille-lutz.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/camille-lutz.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8661314b3fe2f496", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/eduard-ionescu.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/eduard-ionescu.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e4958e6fd631f691", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/liang-jingkun.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/liang-jingkun.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1ba10cc00453c70a", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/felix-lebrun.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/felix-lebrun.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-bd75f1768ec5c80c", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/patrick-franziska.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/patrick-franziska.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9fce262859b29ad9", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/jang-woojin.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/jang-woojin.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-53614d0efa7e8957", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/tomislav-pucar.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/tomislav-pucar.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4e040b41d65d63ad", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/dimitrij-ovtcharov.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/dimitrij-ovtcharov.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c3859f5bf3d210d7", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/bruna-takahashi.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/bruna-takahashi.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-69e1189783545b75", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/joao-geraldo.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/joao-geraldo.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e659c22316ae1957", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/oh-junsung.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/oh-junsung.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e9f68d6cb73c4c42", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/jonathan-groth.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/jonathan-groth.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-281f6ee64d72eb5f", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/timo-boll.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/timo-boll.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d77b776da4d32017", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/chen-xingtong.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/chen-xingtong.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-359ba622394477b4", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lilian-bardet.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lilian-bardet.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-46aad746e87ced6d", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/chen-meng.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/chen-meng.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b64ebe0bc9cb1c47", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/vladimir-sidorenko.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/vladimir-sidorenko.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-006eb7d800c89479", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/kanak-jha.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/kanak-jha.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-93e5629a5a46923a", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/charlotte-lutz.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/charlotte-lutz.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-950843f780069c70", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/jia-nan-yuan.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/jia-nan-yuan.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cf8cc79cbe0112f0", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/hina-hayata.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/hina-hayata.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-685ae469b655327f", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/miu-hirano.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/miu-hirano.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4e2ee355473508c4", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/honoka-hashimoto.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/honoka-hashimoto.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4cf37130526b490f", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/miyu-nagasaki.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/miyu-nagasaki.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3d50b89c3620bd07", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sofia-polcanova.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sofia-polcanova.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-172fdacdfcc11c34", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/miwa-harimoto.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/miwa-harimoto.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3b2a520aca86875e", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/fan-zhendong.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/fan-zhendong.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-187c7967e3213366", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/wang-chuqin.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/wang-chuqin.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-db2255baf0549e28", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/elizabeta-samara.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/elizabeta-samara.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7d5eecb1cf7b5afe", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/nina-mittelham.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/nina-mittelham.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4449207bec2b82d5", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sathiyan-gnanasekaran.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sathiyan-gnanasekaran.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-47682fc68b209674", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/ying-han.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/ying-han.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-54eeedffa011ab48", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/satsuki-odo.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/satsuki-odo.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-19aab8c741bd3907", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/alexis-lebrun.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/alexis-lebrun.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-634d6e5b2e13abb1", "name": "Insecure pattern 'direct_outerhtml_assignment' in joueur/prithika-pavade.html:194", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/prithika-pavade.html:194"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-791389d5ba179770", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/club-theme.js:194", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/club-theme.js:194"}, "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-e16013506df0adae", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/app-labo.min.js:1", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-labo.min.js:1"}, "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-ff75adcf869033ef", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/app-profil.js:80", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-profil.js:80"}, "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-7bb59607a84a8112", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/app-pros.js:81", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-pros.js:81"}, "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-ef9da4e90198e77d", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/club-import.js:79", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/club-import.js:79"}, "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-1b97e5fcfc10ebb7", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/app-catalogue.js:271", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-catalogue.js:271"}, "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-95f526db68063dda", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/club-roles.js:59", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/club-roles.js:59"}, "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-89a63a7c8ab02a74", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/consent.js:62", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/consent.js:62"}, "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-0c1e925803c3f49a", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/app-diagnostic.min.js:1", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-diagnostic.min.js:1"}, "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-935de0531b9870ed", "name": "Insecure pattern 'local_storage_auth_token' in js/app-diagnostic.min.js:1", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in js/app-diagnostic.min.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b065013816c441dd", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/club-sync.js:73", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/club-sync.js:73"}, "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-96941f52046a94fe", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/app-labo.js:35", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-labo.js:35"}, "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-f182a5672485e183", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/app-scoring.js:441", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-scoring.js:441"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ebab932425557e5f", "name": "Insecure pattern 'direct_outerhtml_assignment' in js/app-scoring.js:1416", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in js/app-scoring.js:1416"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-44145789843e04b7", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/firebase-auth.js:213", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/firebase-auth.js:213"}, "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-53fc65554f63400d", "name": "Possible secret in js/firebase-config.js", "shortDescription": {"text": "Possible secret in js/firebase-config.js"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-f7575e096f6a71fd", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/ratings.js:53", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/ratings.js:53"}, "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-4becf5520a4dd23b", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/index-main.js:149", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/index-main.js:149"}, "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-be6325f2229a33f5", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/app-diagnostic.js:597", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-diagnostic.js:597"}, "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-e123967b829d4b3c", "name": "Insecure pattern 'local_storage_auth_token' in js/app-diagnostic.js:566", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in js/app-diagnostic.js:566"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2f7313ada3f908dc", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/app-catalogue.min.js:1", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-catalogue.min.js:1"}, "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-cc1bf5ca17e09099", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/app-profil.min.js:1", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-profil.min.js:1"}, "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-8fec1c93cc37ede0", "name": "Possible secret in js/club-access.js", "shortDescription": {"text": "Possible secret in js/club-access.js"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-8e2b7f8dfb4416ac", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/club-access.js:73", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/club-access.js:73"}, "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-3726cad3beb9f0a8", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/app-scoring.min.js:1", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-scoring.min.js:1"}, "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-fe1517136ea29e99", "name": "Insecure pattern 'direct_outerhtml_assignment' in js/app-scoring.min.js:1", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in js/app-scoring.min.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-af47cff4bccb72d7", "name": "Insecure pattern 'direct_innerhtml_assignment' in js/diag-feedback.js:48", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/diag-feedback.js:48"}, "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-f58d0cbde69bafde", "name": "Insecure pattern 'direct_outerhtml_assignment' in scripts/generate-pro-pages.js:52", "shortDescription": {"text": "Insecure pattern 'direct_outerhtml_assignment' in scripts/generate-pro-pages.js:52"}, "fullDescription": {"text": "Found a known-risky pattern (direct_outerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-91f9d1e70e27a769", "name": "Insecure pattern 'node_child_process' in scripts/build-all.js:18", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/build-all.js:18"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8e2af194570b3cdf", "name": "Insecure pattern 'direct_innerhtml_assignment' in scripts/append-mon-equipement.js:62", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in scripts/append-mon-equipement.js:62"}, "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-c8621bab76b280ab", "name": "Insecure pattern 'node_child_process' in scripts/check-min-sync.js:14", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/check-min-sync.js:14"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-076833f10dde6556", "name": "Insecure pattern 'node_child_process' in instagram/planning/tools/generate-instagram.js:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in instagram/planning/tools/generate-instagram.js:3"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-61f796b3c2e2d976", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e5b09dab12a4e2c0", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/checkout@v4 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-40ab3496629cd30f", "name": "Very large file: js/app-profil.js (906 lines)", "shortDescription": {"text": "Very large file: js/app-profil.js (906 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-d8ce1727abe0f2b1", "name": "Very large file: js/app-catalogue.js (816 lines)", "shortDescription": {"text": "Very large file: js/app-catalogue.js (816 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-d1af2aac2a65d29d", "name": "Very large file: js/app-labo.js (1729 lines)", "shortDescription": {"text": "Very large file: js/app-labo.js (1729 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-2604a68724e7a92f", "name": "Very large file: js/scoring-core.js (1010 lines)", "shortDescription": {"text": "Very large file: js/scoring-core.js (1010 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-cc30fcc55bd8d6fd", "name": "Very large file: js/app-scoring.js (1922 lines)", "shortDescription": {"text": "Very large file: js/app-scoring.js (1922 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-2f880b3bb349098c", "name": "Very large file: js/app-diagnostic.js (1230 lines)", "shortDescription": {"text": "Very large file: js/app-diagnostic.js (1230 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 107 source file(s) (ratio 0.07). 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-ca5f5e28a9234837", "name": "Node manifest has dependencies but no lockfile: functions/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: functions/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 224 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 32 placeholder/mock markers across 12 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b9088664ace7f748", "name": "Composite production-readiness gap", "shortDescription": {"text": "Composite production-readiness gap"}, "fullDescription": {"text": "Multiple low-cost hardening controls are missing together: license, lockfile. Opus verification showed these co-occurring gaps are a better readiness signal than reading each flag in isolation."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-749d4bc1bd66df5f", "name": "Agent instructions exist but release-hardening basics are missing", "shortDescription": {"text": "Agent instructions exist but release-hardening basics are missing"}, "fullDescription": {"text": "AI-coder instruction files were found, but the repo is missing license, lockfile. Treat this as a contract gap: the agent is guided, but the generated output is not yet guarded by the controls that make it repeatable."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ecb0d2c55ed6875d", "name": "Agent authority lacks a verifier contract: .claude/settings.local.json", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/settings.local.json"}, "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-46b38d7e1d2f995e", "name": "Commented-code block (6 lines) in functions/index.js:4", "shortDescription": {"text": "Commented-code block (6 lines) in functions/index.js:4"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fc0e59aa506b2c7f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 functions/api/club/checkout.js:30", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 functions/api/club/checkout.js:30"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-198d34197d1f8ee5", "name": "Commented-code block (5 lines) in tests/test_catalogue_integrity.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_catalogue_integrity.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-99faf97070c604e6", "name": "Legacy-named symbol `test_club_backup` in tests/test_club_backup.js:1", "shortDescription": {"text": "Legacy-named symbol `test_club_backup` in tests/test_club_backup.js:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1a6bc65d2b51d64d", "name": "Commented-code block (7 lines) in tests/test_scoring.js:5", "shortDescription": {"text": "Commented-code block (7 lines) in tests/test_scoring.js:5"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f4749448b1eaa97c", "name": "Legacy-named symbol `lp_clubtt_v1` in js/club-theme.js:10", "shortDescription": {"text": "Legacy-named symbol `lp_clubtt_v1` in js/club-theme.js:10"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-35453306b1b3619c", "name": "Legacy-named symbol `_scoreLaboSetupLegacy` in js/app-labo.min.js:1", "shortDescription": {"text": "Legacy-named symbol `_scoreLaboSetupLegacy` in js/app-labo.min.js:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3e08c70abf780fb1", "name": "Commented-code block (6 lines) in js/labo-engine.js:1", "shortDescription": {"text": "Commented-code block (6 lines) in js/labo-engine.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-928ff3dae7e93cfe", "name": "Legacy-named symbol `lp_clubtt_v1` in js/club-backup.js:7", "shortDescription": {"text": "Legacy-named symbol `lp_clubtt_v1` in js/club-backup.js:7"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e41cae8160a6efd7", "name": "Commented-code block (6 lines) in js/app-profil.js:18", "shortDescription": {"text": "Commented-code block (6 lines) in js/app-profil.js:18"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-30d1a2224fd91730", "name": "Legacy-named symbol `lp_clubtt_v1` in js/club-sync.js:22", "shortDescription": {"text": "Legacy-named symbol `lp_clubtt_v1` in js/club-sync.js:22"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0331cd869e4c44c7", "name": "Commented-code block (6 lines) in js/app-equivalents.js:24", "shortDescription": {"text": "Commented-code block (6 lines) in js/app-equivalents.js:24"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3edc6bee3d5d4364", "name": "Legacy-named symbol `_scoreLaboSetupLegacy` in js/app-labo.js:372", "shortDescription": {"text": "Legacy-named symbol `_scoreLaboSetupLegacy` in js/app-labo.js:372"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-110f878ed481bc64", "name": "`fetch()` without try/.catch or AbortSignal \u2014 js/app-labo.js:540", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 js/app-labo.js:540"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-aa6f0e82f07c22bd", "name": "Commented-code block (6 lines) in js/scoring-core.js:1", "shortDescription": {"text": "Commented-code block (6 lines) in js/scoring-core.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e657640e729a6ca9", "name": "Commented-code block (6 lines) in js/app-scoring.js:1", "shortDescription": {"text": "Commented-code block (6 lines) in js/app-scoring.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-00a71a775079a186", "name": "`fetch()` without try/.catch or AbortSignal \u2014 js/hero-3d.js:113", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 js/hero-3d.js:113"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-87fca5fa9acbcbd5", "name": "Commented-code block (5 lines) in js/ratings.js:211", "shortDescription": {"text": "Commented-code block (5 lines) in js/ratings.js:211"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6762c907f686a42b", "name": "Legacy-named symbol `rest_v1` in js/index-main.js:456", "shortDescription": {"text": "Legacy-named symbol `rest_v1` in js/index-main.js:456"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c1625b11e7cda6d6", "name": "Commented-code block (7 lines) in js/index-main.js:1", "shortDescription": {"text": "Commented-code block (7 lines) in js/index-main.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5cc148a375bc5154", "name": "`fetch()` without try/.catch or AbortSignal \u2014 js/index-main.js:452", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 js/index-main.js:452"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cd4f848d49e1fc0c", "name": "Commented-code block (6 lines) in js/app-diagnostic.js:433", "shortDescription": {"text": "Commented-code block (6 lines) in js/app-diagnostic.js:433"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d549611f6c59386f", "name": "Legacy-named symbol `lp_clubtt_v1` in js/club-access.js:116", "shortDescription": {"text": "Legacy-named symbol `lp_clubtt_v1` in js/club-access.js:116"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ce0b804bb9cbe0fd", "name": "`fetch()` without try/.catch or AbortSignal \u2014 js/club-access.js:153", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 js/club-access.js:153"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-10dd9e7160090909", "name": "Commented-code block (5 lines) in scripts/generate-sitemap.js:32", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/generate-sitemap.js:32"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f4f5a0830c625ea5", "name": "Legacy-named symbol `rest_v1` in scripts/resolve-pro-photos.js:26", "shortDescription": {"text": "Legacy-named symbol `rest_v1` in scripts/resolve-pro-photos.js:26"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f257c3237236bec9", "name": "Commented-code block (6 lines) in scripts/add-famille-speciale.js:5", "shortDescription": {"text": "Commented-code block (6 lines) in scripts/add-famille-speciale.js:5"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0a6a665823eabd73", "name": "Commented-code block (9 lines) in scripts/_page-styles.js:1", "shortDescription": {"text": "Commented-code block (9 lines) in scripts/_page-styles.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d00910daa29908ec", "name": "Commented-code block (5 lines) in scripts/_apply-found-images.js:3", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/_apply-found-images.js:3"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-84ae163842abcfc3", "name": "Legacy-named symbol `rest_v1` in scripts/archive/_resolve-pro-photos.js:15", "shortDescription": {"text": "Legacy-named symbol `rest_v1` in scripts/archive/_resolve-pro-photos.js:15"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/21319"}, "properties": {"repository": "TimoTTproject/spinadvisor", "repoUrl": "https://github.com/TimoTTproject/spinadvisor", "branch": "main"}, "results": [{"ruleId": "scanner-bbd3ac4654a1810f", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 functions/api/fftt-calendar.js:51"}, "properties": {"repobilityId": "682e1fecef880f3e", "scanner": "scanner-primary", "fingerprint": "bbd3ac4654a1810f", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-7fbdf2c97959a533", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tests/test_catalogue_integrity.js:16"}, "properties": {"repobilityId": "527c51effc19b60c", "scanner": "scanner-primary", "fingerprint": "7fbdf2c97959a533", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bac45ebe88fd2b47", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tests/test_scoring_golden.js:83"}, "properties": {"repobilityId": "0c3da4abdd063e38", "scanner": "scanner-primary", "fingerprint": "bac45ebe88fd2b47", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-80a25db3b765da41", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tests/test_marque_constraints.js:31"}, "properties": {"repobilityId": "6a39bb8569785e6a", "scanner": "scanner-primary", "fingerprint": "80a25db3b765da41", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-edab7a9c5313e776", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tests/_gen_golden.js:72"}, "properties": {"repobilityId": "dc2045ebd09befd3", "scanner": "scanner-primary", "fingerprint": "edab7a9c5313e776", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fd59543370464b39", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tests/test_generated_pages.js:15"}, "properties": {"repobilityId": "daf0c90cfa5575e4", "scanner": "scanner-primary", "fingerprint": "fd59543370464b39", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ddf76fc01a9a4319", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tests/test_labo.js:13"}, "properties": {"repobilityId": "4b85d2f5bfde73d7", "scanner": "scanner-primary", "fingerprint": "ddf76fc01a9a4319", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f87f7c2789bc3a74", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tests/test_club_backup.js:43"}, "properties": {"repobilityId": "d2024e047528e1ca", "scanner": "scanner-primary", "fingerprint": "f87f7c2789bc3a74", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0aedecb5dbeedf20", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tests/test_scoring.js:75"}, "properties": {"repobilityId": "e8e1173e525b63a0", "scanner": "scanner-primary", "fingerprint": "0aedecb5dbeedf20", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e5931c21ff297a50", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 js/club-theme.js:241"}, "properties": {"repobilityId": "8ad415c385b80538", "scanner": "scanner-primary", "fingerprint": "e5931c21ff297a50", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-b7afeb84b39827aa", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 js/app-profil.js:438"}, "properties": {"repobilityId": "f4cbe4f81ec31fa8", "scanner": "scanner-primary", "fingerprint": "b7afeb84b39827aa", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-485a860eb4b1bff2", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 js/club-import.js:79"}, "properties": {"repobilityId": "6e36f61c94f1898c", "scanner": "scanner-primary", "fingerprint": "485a860eb4b1bff2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-f3a4deb3bc502151", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 js/app-catalogue.js:281"}, "properties": {"repobilityId": "3a6364cc0e8c08bf", "scanner": "scanner-primary", "fingerprint": "f3a4deb3bc502151", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-dee5795cec7930cd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 js/data-loader.js:12"}, "properties": {"repobilityId": "5c8fdce520944519", "scanner": "scanner-primary", "fingerprint": "dee5795cec7930cd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-59085326f6376bad", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 js/app-scoring.js:1727"}, "properties": {"repobilityId": "68707003076eb643", "scanner": "scanner-primary", "fingerprint": "59085326f6376bad", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-2cd02ef567326f70", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 js/firebase-auth.js:275"}, "properties": {"repobilityId": "ea62052c65f8ceb0", "scanner": "scanner-primary", "fingerprint": "2cd02ef567326f70", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-a71579322c9fd96a", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 js/ratings.js:131"}, "properties": {"repobilityId": "9e25768a327b8463", "scanner": "scanner-primary", "fingerprint": "a71579322c9fd96a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-6f35ce0cad74db3f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 js/index-main.js:540"}, "properties": {"repobilityId": "f987cd05f6b9ec7a", "scanner": "scanner-primary", "fingerprint": "6f35ce0cad74db3f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a37915036a8dcb05", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 js/app-catalogue.min.js:1"}, "properties": {"repobilityId": "42731798cdf8d64b", "scanner": "scanner-primary", "fingerprint": "a37915036a8dcb05", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-fda07765e4bf697b", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 js/app-profil.min.js:1"}, "properties": {"repobilityId": "b525714ac0b49eb9", "scanner": "scanner-primary", "fingerprint": "fda07765e4bf697b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-5d645323627de9e9", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 js/app-scoring.min.js:1"}, "properties": {"repobilityId": "f991464fbb4c65e8", "scanner": "scanner-primary", "fingerprint": "5d645323627de9e9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-a778331bb6ad05f4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-brand-pages.js:377"}, "properties": {"repobilityId": "40f1d2212ed4b2b5", "scanner": "scanner-primary", "fingerprint": "a778331bb6ad05f4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b89ff74f37bd110c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-sitemap.js:146"}, "properties": {"repobilityId": "97c662424750e259", "scanner": "scanner-primary", "fingerprint": "b89ff74f37bd110c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1f47c497ae021b7c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/_fftt-clubs-harvest.js:104"}, "properties": {"repobilityId": "42661a2fc67a3261", "scanner": "scanner-primary", "fingerprint": "1f47c497ae021b7c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1d1f5f8309d9bf12", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/add-bois-retailers.js:429"}, "properties": {"repobilityId": "54a9af1c6a3c0460", "scanner": "scanner-primary", "fingerprint": "1d1f5f8309d9bf12", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-db6b42ec8378e051", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/enrich-marque-pages.js:115"}, "properties": {"repobilityId": "0bab4b76f601dd49", "scanner": "scanner-primary", "fingerprint": "db6b42ec8378e051", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ae876fa84d54998e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/inject-og-image.js:57"}, "properties": {"repobilityId": "b0c949976e367251", "scanner": "scanner-primary", "fingerprint": "ae876fa84d54998e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e9447e81db073423", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/scrape-prices.js:197"}, "properties": {"repobilityId": "fcc4f0334970a4b9", "scanner": "scanner-primary", "fingerprint": "e9447e81db073423", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c21b07d8c9e66c9a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/search-prices.js:242"}, "properties": {"repobilityId": "f6cc21c7d7ae875f", "scanner": "scanner-primary", "fingerprint": "c21b07d8c9e66c9a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f61ada3873e90645", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/resolve-pro-photos.js:48"}, "properties": {"repobilityId": "71a13adbcc7d94ec", "scanner": "scanner-primary", "fingerprint": "f61ada3873e90645", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d4ac409f1fee9ba9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-selections.js:704"}, "properties": {"repobilityId": "3c8fd6abb2ed345d", "scanner": "scanner-primary", "fingerprint": "d4ac409f1fee9ba9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e374ea6117c53605", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/enrich-data.js:722"}, "properties": {"repobilityId": "f451f663f45cdb24", "scanner": "scanner-primary", "fingerprint": "e374ea6117c53605", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-34320b978182c548", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/inject-breadcrumbs.js:113"}, "properties": {"repobilityId": "e3db663ba55c0e78", "scanner": "scanner-primary", "fingerprint": "34320b978182c548", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-44c69fea215bfd56", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/feedback-report.js:59"}, "properties": {"repobilityId": "4146ef9fa206bec3", "scanner": "scanner-primary", "fingerprint": "44c69fea215bfd56", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2db9c94c2b3aa967", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/inject-reading-share.js:57"}, "properties": {"repobilityId": "3f9efb0f630bab68", "scanner": "scanner-primary", "fingerprint": "2db9c94c2b3aa967", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-05becde5102ad41d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-rss.js:68"}, "properties": {"repobilityId": "fe892d29ce9fb916", "scanner": "scanner-primary", "fingerprint": "05becde5102ad41d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bdb552f8df0a62c6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-pro-pages.js:110"}, "properties": {"repobilityId": "78573b04c9a98fe8", "scanner": "scanner-primary", "fingerprint": "bdb552f8df0a62c6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4e471a1f6bacd080", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/stamp-versions.js:30"}, "properties": {"repobilityId": "83b6725a4bb9eaae", "scanner": "scanner-primary", "fingerprint": "4e471a1f6bacd080", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ae89eeb5293971cb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/check_images.js:33"}, "properties": {"repobilityId": "6941861c4718acf4", "scanner": "scanner-primary", "fingerprint": "ae89eeb5293971cb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3c98bb90a68d6342", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/audit-picots.js:56"}, "properties": {"repobilityId": "adff9b8dc6f3908b", "scanner": "scanner-primary", "fingerprint": "3c98bb90a68d6342", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4428825d7b11d291", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/build-all.js:37"}, "properties": {"repobilityId": "d538bc0998571bcb", "scanner": "scanner-primary", "fingerprint": "4428825d7b11d291", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b720a3918c00c33e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/enrich-revetements.js:156"}, "properties": {"repobilityId": "068e6eefc5e73c18", "scanner": "scanner-primary", "fingerprint": "b720a3918c00c33e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ab2f4450e608e4ba", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/validate-prices.js:96"}, "properties": {"repobilityId": "f24ed43efe7de636", "scanner": "scanner-primary", "fingerprint": "ab2f4450e608e4ba", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d5144ad02b661de0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-product-pages.js:559"}, "properties": {"repobilityId": "44ed2c5890f1d180", "scanner": "scanner-primary", "fingerprint": "d5144ad02b661de0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-436010bd46b0cd21", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/inject-ga.js:41"}, "properties": {"repobilityId": "397875ef585fccd4", "scanner": "scanner-primary", "fingerprint": "436010bd46b0cd21", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-aeba69bf8ceccc17", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/inject-og-meta.js:51"}, "properties": {"repobilityId": "c29da59e19787214", "scanner": "scanner-primary", "fingerprint": "aeba69bf8ceccc17", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-044875f17cf0711a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-comparison-pages.js:825"}, "properties": {"repobilityId": "241cb302198975b5", "scanner": "scanner-primary", "fingerprint": "044875f17cf0711a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-744465731aca2cfb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/enrich-articles-related.js:223"}, "properties": {"repobilityId": "95f6068cdc3eca17", "scanner": "scanner-primary", "fingerprint": "744465731aca2cfb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5d0cee70365b63d5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/inject-faq-schema.js:95"}, "properties": {"repobilityId": "bc4d2dca8c188fb6", "scanner": "scanner-primary", "fingerprint": "5d0cee70365b63d5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ff0d8965fddc38ee", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/backup-firestore.js:74"}, "properties": {"repobilityId": "34e7bc175a48f864", "scanner": "scanner-primary", "fingerprint": "ff0d8965fddc38ee", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2460d26fb57c4c26", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/enrich-blog-index.js:64"}, "properties": {"repobilityId": "f71bdf5dff95b0c1", "scanner": "scanner-primary", "fingerprint": "2460d26fb57c4c26", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-adbce8cc218c5e59", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/add-new-products.js:110"}, "properties": {"repobilityId": "3085f8aadd4ee642", "scanner": "scanner-primary", "fingerprint": "adbce8cc218c5e59", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ae74a558f56db1ba", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-setups.js:340"}, "properties": {"repobilityId": "2d1ae4d143f40401", "scanner": "scanner-primary", "fingerprint": "ae74a558f56db1ba", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bd2d14fbeb5b2aac", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/calibrage-scoring.js:289"}, "properties": {"repobilityId": "9e576e4be62de02a", "scanner": "scanner-primary", "fingerprint": "bd2d14fbeb5b2aac", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-00082d7139638bbc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/seo-audit.js:102"}, "properties": {"repobilityId": "322c60b6ac6a67b7", "scanner": "scanner-primary", "fingerprint": "00082d7139638bbc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9d9ae456ea1c8ebc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate_placeholders.js:46"}, "properties": {"repobilityId": "1c46f31c8f5c69ff", "scanner": "scanner-primary", "fingerprint": "9d9ae456ea1c8ebc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-02f180bfaf57bcaf", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/clean-urls.js:63"}, "properties": {"repobilityId": "4dc9fd153b13dd2a", "scanner": "scanner-primary", "fingerprint": "02f180bfaf57bcaf", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d831f424d8cd0709", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/fix-prices-and-duplicates.js:61"}, "properties": {"repobilityId": "f9a1d8566bb39856", "scanner": "scanner-primary", "fingerprint": "d831f424d8cd0709", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3d2ca2b09dd6213b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/validate_json.js:66"}, "properties": {"repobilityId": "edf448a06a5e19cd", "scanner": "scanner-primary", "fingerprint": "3d2ca2b09dd6213b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8209a549e3d72e9f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/add-famille-speciale.js:49"}, "properties": {"repobilityId": "9108264a51ddea89", "scanner": "scanner-primary", "fingerprint": "8209a549e3d72e9f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f6a2a5d4833682d9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/dedupe_bois.js:19"}, "properties": {"repobilityId": "873b026809715fa7", "scanner": "scanner-primary", "fingerprint": "f6a2a5d4833682d9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cf4e783e3d6fe484", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/append-mon-equipement.js:12"}, "properties": {"repobilityId": "c9155851d1469e5b", "scanner": "scanner-primary", "fingerprint": "cf4e783e3d6fe484", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cf069f947e3e55b8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/inject-maillage.js:146"}, "properties": {"repobilityId": "69936013d3eb99be", "scanner": "scanner-primary", "fingerprint": "cf069f947e3e55b8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7319615342dfca14", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/_apply-found-images.js:31"}, "properties": {"repobilityId": "38ffceaf3a185674", "scanner": "scanner-primary", "fingerprint": "7319615342dfca14", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-941212e3d4f88c61", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/generate-og-image.js:37"}, "properties": {"repobilityId": "ebc2babdeec6d659", "scanner": "scanner-primary", "fingerprint": "941212e3d4f88c61", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d8c0266dc1cd2452", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/rewrite-diagnostic.js:463"}, "properties": {"repobilityId": "06b629df2862a7f5", "scanner": "scanner-primary", "fingerprint": "d8c0266dc1cd2452", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-41c1844d6b188281", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/check-min-sync.js:51"}, "properties": {"repobilityId": "4ac5a8e2a2ed0abc", "scanner": "scanner-primary", "fingerprint": "41c1844d6b188281", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-11b18a03aa29c95c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_inject-edito-da.js:38"}, "properties": {"repobilityId": "b022bb362c94067d", "scanner": "scanner-primary", "fingerprint": "11b18a03aa29c95c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-192389d06fbbd231", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_migrate-image-webp.js:24"}, "properties": {"repobilityId": "30f8324098d810d7", "scanner": "scanner-primary", "fingerprint": "192389d06fbbd231", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5ccc1163c8d54d31", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_download-images.js:26"}, "properties": {"repobilityId": "d6abe54425ff130f", "scanner": "scanner-primary", "fingerprint": "5ccc1163c8d54d31", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4f5a33305d15e676", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_apply-da-pages.js:45"}, "properties": {"repobilityId": "fbb09069c18a61af", "scanner": "scanner-primary", "fingerprint": "4f5a33305d15e676", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a548d70f6b543b3f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_apply-edito-rating.js:86"}, "properties": {"repobilityId": "d62669b5125055fe", "scanner": "scanner-primary", "fingerprint": "a548d70f6b543b3f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8459783532ac406e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_repatriate-missing.js:61"}, "properties": {"repobilityId": "0ee2cbda30d59cd2", "scanner": "scanner-primary", "fingerprint": "8459783532ac406e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7680b4bbab79bea8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_fetch-cjping.js:45"}, "properties": {"repobilityId": "89068dc6e8829d17", "scanner": "scanner-primary", "fingerprint": "7680b4bbab79bea8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-01ed38ccea277b4c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/enrich_data.js:274"}, "properties": {"repobilityId": "aa8d587feefdf3be", "scanner": "scanner-primary", "fingerprint": "01ed38ccea277b4c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7711645cec9742b9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_apply-consent.js:46"}, "properties": {"repobilityId": "d38e8e19ff06b16d", "scanner": "scanner-primary", "fingerprint": "7711645cec9742b9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-da4f2316c1da6f22", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_fetch-images.js:86"}, "properties": {"repobilityId": "905e229141b93bfe", "scanner": "scanner-primary", "fingerprint": "da4f2316c1da6f22", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-019d55d51092b33c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/normalize_and_export.js:72"}, "properties": {"repobilityId": "67e3e8af55171dca", "scanner": "scanner-primary", "fingerprint": "019d55d51092b33c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e8df6013a5e18a21", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/enrich_data_v2.js:292"}, "properties": {"repobilityId": "6c40c4f0238e0dbc", "scanner": "scanner-primary", "fingerprint": "e8df6013a5e18a21", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-968505d897f4deeb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/remove_backups.js:12"}, "properties": {"repobilityId": "cdb31b299428f357", "scanner": "scanner-primary", "fingerprint": "968505d897f4deeb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-830ea3d9863faaa5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_to-webp.js:33"}, "properties": {"repobilityId": "65e4908f56f83146", "scanner": "scanner-primary", "fingerprint": "830ea3d9863faaa5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2918198ed5d83252", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_fetch-revspin.js:57"}, "properties": {"repobilityId": "bd474311652e12fa", "scanner": "scanner-primary", "fingerprint": "2918198ed5d83252", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4e43e44162bb3cc7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/archive/_resolve-pro-photos.js:31"}, "properties": {"repobilityId": "e740c557224a155c", "scanner": "scanner-primary", "fingerprint": "4e43e44162bb3cc7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-58c1a4cd5652f354", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 instagram/planning/tools/generate-instagram.js:493"}, "properties": {"repobilityId": "9ebd8df235f7ab97", "scanner": "scanner-primary", "fingerprint": "58c1a4cd5652f354", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-73249dc5b936f365", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 instagram/planning/tools/sync-to-phone.js:157"}, "properties": {"repobilityId": "62a49097df6b9c0f", "scanner": "scanner-primary", "fingerprint": "73249dc5b936f365", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ec1ee56b397f1978", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 instagram/planning/tools/generate-calendar.js:106"}, "properties": {"repobilityId": "9a4aea2a33f32260", "scanner": "scanner-primary", "fingerprint": "ec1ee56b397f1978", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9710c8d059e53154", "level": "none", "message": {"text": "No frontend routes/components detected"}, "properties": {"repobilityId": "44ca61485762e494", "scanner": "scanner-primary", "fingerprint": "9710c8d059e53154", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-43d5218bbbb50ea7", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in convocations.html:225"}, "properties": {"repobilityId": "bb2ca03715280839", "scanner": "scanner-primary", "fingerprint": "43d5218bbbb50ea7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "convocations.html"}, "region": {"startLine": 225}}}]}, {"ruleId": "scanner-9f062cd67e4440d9", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in finances.html:190"}, "properties": {"repobilityId": "f9b25b925f3727a8", "scanner": "scanner-primary", "fingerprint": "9f062cd67e4440d9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "finances.html"}, "region": {"startLine": 190}}}]}, {"ruleId": "scanner-1399b2a82bcdf356", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in ecole-ping.html:156"}, "properties": {"repobilityId": "d30f5f154ebe8638", "scanner": "scanner-primary", "fingerprint": "1399b2a82bcdf356", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "ecole-ping.html"}, "region": {"startLine": 156}}}]}, {"ruleId": "scanner-43830f14051511c9", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in arbitrage.html:200"}, "properties": {"repobilityId": "9aadb65578c2d87e", "scanner": "scanner-primary", "fingerprint": "43830f14051511c9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "arbitrage.html"}, "region": {"startLine": 200}}}]}, {"ruleId": "scanner-f7cdd1dac5dc9a0b", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in calendrier.html:170"}, "properties": {"repobilityId": "3c3857f8f4459ec5", "scanner": "scanner-primary", "fingerprint": "f7cdd1dac5dc9a0b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "calendrier.html"}, "region": {"startLine": 170}}}]}, {"ruleId": "scanner-d3f530ba849a3e3a", "level": "error", "message": {"text": "Possible secret in tableau-bord.html"}, "properties": {"repobilityId": "a914f7e40baf2949", "scanner": "scanner-primary", "fingerprint": "d3f530ba849a3e3a", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tableau-bord.html"}, "region": {"startLine": 276}}}]}, {"ruleId": "scanner-4654351ec434da43", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in tableau-bord.html:188"}, "properties": {"repobilityId": "d7977f361f7ab699", "scanner": "scanner-primary", "fingerprint": "4654351ec434da43", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tableau-bord.html"}, "region": {"startLine": 188}}}]}, {"ruleId": "scanner-d5775d3f00a09097", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in championnat.html:419"}, "properties": {"repobilityId": "aa6740e3139b8d59", "scanner": "scanner-primary", "fingerprint": "d5775d3f00a09097", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "championnat.html"}, "region": {"startLine": 419}}}]}, {"ruleId": "scanner-28817cfcf2941b83", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in wizard.html:503"}, "properties": {"repobilityId": "8e52b1a91c4d383e", "scanner": "scanner-primary", "fingerprint": "28817cfcf2941b83", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "wizard.html"}, "region": {"startLine": 503}}}]}, {"ruleId": "scanner-cb63384177ac1631", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in rapport.html:153"}, "properties": {"repobilityId": "010053a3ecb84c99", "scanner": "scanner-primary", "fingerprint": "cb63384177ac1631", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "rapport.html"}, "region": {"startLine": 153}}}]}, {"ruleId": "scanner-0c9b07240a79b287", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in roles.html:135"}, "properties": {"repobilityId": "9704ae38ee60dbb8", "scanner": "scanner-primary", "fingerprint": "0c9b07240a79b287", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "roles.html"}, "region": {"startLine": 135}}}]}, {"ruleId": "scanner-0d780304083a71d4", "level": "error", "message": {"text": "Possible secret in dispo.html"}, "properties": {"repobilityId": "77ff0d89ebd91a00", "scanner": "scanner-primary", "fingerprint": "0d780304083a71d4", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "dispo.html"}, "region": {"startLine": 174}}}]}, {"ruleId": "scanner-0d8c14b8b68553b8", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in dispo.html:201"}, "properties": {"repobilityId": "30dc5e086b6516a2", "scanner": "scanner-primary", "fingerprint": "0d8c14b8b68553b8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "dispo.html"}, "region": {"startLine": 201}}}]}, {"ruleId": "scanner-6e7084e82767a2ea", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in club-pro.html:124"}, "properties": {"repobilityId": "fabe110fc0c97ef1", "scanner": "scanner-primary", "fingerprint": "6e7084e82767a2ea", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "club-pro.html"}, "region": {"startLine": 124}}}]}, {"ruleId": "scanner-6946b5a1de90f7eb", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diplomes-jeunes.html:213"}, "properties": {"repobilityId": "79ea56d8dd128947", "scanner": "scanner-primary", "fingerprint": "6946b5a1de90f7eb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diplomes-jeunes.html"}, "region": {"startLine": 213}}}]}, {"ruleId": "scanner-262a5ba1f944d673", "level": "error", "message": {"text": "Possible secret in inscription-club.html"}, "properties": {"repobilityId": "2d48495a1ff37bb4", "scanner": "scanner-primary", "fingerprint": "262a5ba1f944d673", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "inscription-club.html"}, "region": {"startLine": 224}}}]}, {"ruleId": "scanner-89144debcee31645", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in inscription-club.html:266"}, "properties": {"repobilityId": "8781b164f4066537", "scanner": "scanner-primary", "fingerprint": "89144debcee31645", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "inscription-club.html"}, "region": {"startLine": 266}}}]}, {"ruleId": "scanner-2bc5ecba463fe685", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in feuille-route.html:187"}, "properties": {"repobilityId": "0b438581803075d5", "scanner": "scanner-primary", "fingerprint": "2bc5ecba463fe685", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "feuille-route.html"}, "region": {"startLine": 187}}}]}, {"ruleId": "scanner-012916660509ffac", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in secretariat.html:300"}, "properties": {"repobilityId": "c41137c9fb41247d", "scanner": "scanner-primary", "fingerprint": "012916660509ffac", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "secretariat.html"}, "region": {"startLine": 300}}}]}, {"ruleId": "scanner-3917af65681d2e98", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in affiches.html:328"}, "properties": {"repobilityId": "f35633fdf94a6b44", "scanner": "scanner-primary", "fingerprint": "3917af65681d2e98", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "affiches.html"}, "region": {"startLine": 328}}}]}, {"ruleId": "scanner-9885387f5f803ee1", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in ping-sante.html:328"}, "properties": {"repobilityId": "3150574c95041c38", "scanner": "scanner-primary", "fingerprint": "9885387f5f803ee1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "ping-sante.html"}, "region": {"startLine": 328}}}]}, {"ruleId": "scanner-c9f89ef7e41c5fdb", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in sponsoring.html:182"}, "properties": {"repobilityId": "fd19bc10e9d03f29", "scanner": "scanner-primary", "fingerprint": "c9f89ef7e41c5fdb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "sponsoring.html"}, "region": {"startLine": 182}}}]}, {"ruleId": "scanner-7aef604a3851c474", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in messages.html:185"}, "properties": {"repobilityId": "2a33845407336027", "scanner": "scanner-primary", "fingerprint": "7aef604a3851c474", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "messages.html"}, "region": {"startLine": 185}}}]}, {"ruleId": "scanner-f46ce151c446595d", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/ma-long.html:194"}, "properties": {"repobilityId": "0cb474fd392b6e76", "scanner": "scanner-primary", "fingerprint": "f46ce151c446595d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/ma-long.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-a7e5400a64798527", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lin-yun-ju.html:194"}, "properties": {"repobilityId": "a08410e5f3738d8b", "scanner": "scanner-primary", "fingerprint": "a7e5400a64798527", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/lin-yun-ju.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-4068efc6805ad01c", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/zhu-yuling.html:194"}, "properties": {"repobilityId": "30ddac8b142a9db0", "scanner": "scanner-primary", "fingerprint": "4068efc6805ad01c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/zhu-yuling.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-0dc74181b356f197", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/jules-rolland.html:194"}, "properties": {"repobilityId": "1d1beeac35689268", "scanner": "scanner-primary", "fingerprint": "0dc74181b356f197", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/jules-rolland.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-82082822ff5641c4", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/margaryta-pesotska.html:194"}, "properties": {"repobilityId": "d880da294036727e", "scanner": "scanner-primary", "fingerprint": "82082822ff5641c4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/margaryta-pesotska.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-a8e7ce2ddbcc55a6", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/cheng-i-ching.html:194"}, "properties": {"repobilityId": "0b881b782b13eca9", "scanner": "scanner-primary", "fingerprint": "a8e7ce2ddbcc55a6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/cheng-i-ching.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-128a5fb184dda508", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/hugo-calderano.html:194"}, "properties": {"repobilityId": "8b46f52a18abcde4", "scanner": "scanner-primary", "fingerprint": "128a5fb184dda508", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/hugo-calderano.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-c3884de7057fec5f", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/liam-pitchford.html:194"}, "properties": {"repobilityId": "ebce59b166142a8c", "scanner": "scanner-primary", "fingerprint": "c3884de7057fec5f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/liam-pitchford.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-e3e17fdf8b643876", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/miyuu-kihara.html:194"}, "properties": {"repobilityId": "8289c642944dc9b9", "scanner": "scanner-primary", "fingerprint": "e3e17fdf8b643876", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/miyuu-kihara.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-2b9b9d085c7cafe7", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/anton-kallberg.html:194"}, "properties": {"repobilityId": "505852448489346d", "scanner": "scanner-primary", "fingerprint": "2b9b9d085c7cafe7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/anton-kallberg.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-2b48c94b5a098822", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/maharu-yoshimura.html:194"}, "properties": {"repobilityId": "93750277c9dc98e9", "scanner": "scanner-primary", "fingerprint": "2b48c94b5a098822", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/maharu-yoshimura.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-d4a54a02ac0e661b", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/bernadette-szocs.html:194"}, "properties": {"repobilityId": "0f27e789593c3e66", "scanner": "scanner-primary", "fingerprint": "d4a54a02ac0e661b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/bernadette-szocs.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-b7a3418136b22b88", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/kim-nayeong.html:194"}, "properties": {"repobilityId": "aaa8962ab3797fb6", "scanner": "scanner-primary", "fingerprint": "b7a3418136b22b88", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/kim-nayeong.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-1449acc15c3b1d28", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/doo-hoi-kem.html:194"}, "properties": {"repobilityId": "e79e51a46b8dbcb9", "scanner": "scanner-primary", "fingerprint": "1449acc15c3b1d28", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/doo-hoi-kem.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-6822875219c97db3", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/dang-qiu.html:194"}, "properties": {"repobilityId": "c9caa70c91981cf5", "scanner": "scanner-primary", "fingerprint": "6822875219c97db3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/dang-qiu.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-2719b5f97b7458f8", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/joe-seyfried.html:194"}, "properties": {"repobilityId": "9cc6f526dad8c5b5", "scanner": "scanner-primary", "fingerprint": "2719b5f97b7458f8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/joe-seyfried.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-1b05685470353ecf", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/simon-gauzy.html:194"}, "properties": {"repobilityId": "300c15ee23d6ca2c", "scanner": "scanner-primary", "fingerprint": "1b05685470353ecf", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/simon-gauzy.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-ff70f98c48fd9641", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/truls-moregard.html:194"}, "properties": {"repobilityId": "7c5ff188c1e6b2f4", "scanner": "scanner-primary", "fingerprint": "ff70f98c48fd9641", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/truls-moregard.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-63d751aacd492897", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/wang-manyu.html:194"}, "properties": {"repobilityId": "9c57a16dcb0002d5", "scanner": "scanner-primary", "fingerprint": "63d751aacd492897", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/wang-manyu.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-b52cbe78ef2c7a74", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sabine-winter.html:194"}, "properties": {"repobilityId": "1198fda8894a0f0a", "scanner": "scanner-primary", "fingerprint": "b52cbe78ef2c7a74", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/sabine-winter.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-77be34666d56fca7", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/mima-ito.html:194"}, "properties": {"repobilityId": "1b75b8b231cff9a0", "scanner": "scanner-primary", "fingerprint": "77be34666d56fca7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/mima-ito.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-d1393f99b3ef3671", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/an-jaehyun.html:194"}, "properties": {"repobilityId": "7483d06571800cee", "scanner": "scanner-primary", "fingerprint": "d1393f99b3ef3671", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/an-jaehyun.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-979d4695e8261804", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/chen-yi.html:194"}, "properties": {"repobilityId": "9b1ac8c63a29d9ae", "scanner": "scanner-primary", "fingerprint": "979d4695e8261804", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/chen-yi.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-7e0acf2b9aaccad7", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/he-zhuojia.html:194"}, "properties": {"repobilityId": "5d20b6922fb22767", "scanner": "scanner-primary", "fingerprint": "7e0acf2b9aaccad7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/he-zhuojia.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-77e0baf62088c32e", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/benedikt-duda.html:194"}, "properties": {"repobilityId": "3a159f1fd6507b47", "scanner": "scanner-primary", "fingerprint": "77e0baf62088c32e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/benedikt-duda.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-53d11d1d46f42fa2", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sun-yingsha.html:194"}, "properties": {"repobilityId": "3b23c7a0ea020cb7", "scanner": "scanner-primary", "fingerprint": "53d11d1d46f42fa2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/sun-yingsha.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-3b3a033582120950", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lim-jonghoon.html:194"}, "properties": {"repobilityId": "08a698988484f39e", "scanner": "scanner-primary", "fingerprint": "3b3a033582120950", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/lim-jonghoon.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-4240809607da3fa1", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/shin-yubin.html:194"}, "properties": {"repobilityId": "db12239b870bb320", "scanner": "scanner-primary", "fingerprint": "4240809607da3fa1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/shin-yubin.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-3177f4192366e57e", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lubomir-jancarik.html:194"}, "properties": {"repobilityId": "c72936446a62b459", "scanner": "scanner-primary", "fingerprint": "3177f4192366e57e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/lubomir-jancarik.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-0f97f07c2960f579", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/kirill-gerassimenko.html:194"}, "properties": {"repobilityId": "000efdae0892ed65", "scanner": "scanner-primary", "fingerprint": "0f97f07c2960f579", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/kirill-gerassimenko.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-502f0db3ca7f29b9", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/hitomi-sato.html:194"}, "properties": {"repobilityId": "9b32ccb800462075", "scanner": "scanner-primary", "fingerprint": "502f0db3ca7f29b9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/hitomi-sato.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-2677b915da869b3e", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/hana-goda.html:194"}, "properties": {"repobilityId": "daac7cbdd1c1c9dd", "scanner": "scanner-primary", "fingerprint": "2677b915da869b3e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/hana-goda.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-98f9242c14954bf0", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lee-eunhye.html:194"}, "properties": {"repobilityId": "b736e1cff9e0fcfe", "scanner": "scanner-primary", "fingerprint": "98f9242c14954bf0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/lee-eunhye.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-c621117f64d9ed02", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/tomokazu-harimoto.html:194"}, "properties": {"repobilityId": "cbaa4a02029c67cc", "scanner": "scanner-primary", "fingerprint": "c621117f64d9ed02", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/tomokazu-harimoto.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-b58f43544e834518", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sreeja-akula.html:194"}, "properties": {"repobilityId": "9b782096c1807af1", "scanner": "scanner-primary", "fingerprint": "b58f43544e834518", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/sreeja-akula.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-d513f3b25128fae5", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/camille-lutz.html:194"}, "properties": {"repobilityId": "0c4e0abe76380b5b", "scanner": "scanner-primary", "fingerprint": "d513f3b25128fae5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/camille-lutz.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-8661314b3fe2f496", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/eduard-ionescu.html:194"}, "properties": {"repobilityId": "0df417bedcc15bb2", "scanner": "scanner-primary", "fingerprint": "8661314b3fe2f496", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/eduard-ionescu.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-e4958e6fd631f691", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/liang-jingkun.html:194"}, "properties": {"repobilityId": "2ddedbc380cf1dfe", "scanner": "scanner-primary", "fingerprint": "e4958e6fd631f691", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/liang-jingkun.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-1ba10cc00453c70a", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/felix-lebrun.html:194"}, "properties": {"repobilityId": "5bf3855491ad0499", "scanner": "scanner-primary", "fingerprint": "1ba10cc00453c70a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/felix-lebrun.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-bd75f1768ec5c80c", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/patrick-franziska.html:194"}, "properties": {"repobilityId": "bb78205e0964a88e", "scanner": "scanner-primary", "fingerprint": "bd75f1768ec5c80c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/patrick-franziska.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-9fce262859b29ad9", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/jang-woojin.html:194"}, "properties": {"repobilityId": "77b2d66c2ef537b7", "scanner": "scanner-primary", "fingerprint": "9fce262859b29ad9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/jang-woojin.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-53614d0efa7e8957", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/tomislav-pucar.html:194"}, "properties": {"repobilityId": "48d4eb5a753de86f", "scanner": "scanner-primary", "fingerprint": "53614d0efa7e8957", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/tomislav-pucar.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-4e040b41d65d63ad", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/dimitrij-ovtcharov.html:194"}, "properties": {"repobilityId": "594168c7eebcb157", "scanner": "scanner-primary", "fingerprint": "4e040b41d65d63ad", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/dimitrij-ovtcharov.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-c3859f5bf3d210d7", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/bruna-takahashi.html:194"}, "properties": {"repobilityId": "49cde7f714c60d0f", "scanner": "scanner-primary", "fingerprint": "c3859f5bf3d210d7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/bruna-takahashi.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-69e1189783545b75", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/joao-geraldo.html:194"}, "properties": {"repobilityId": "b3043d9b00ee82ff", "scanner": "scanner-primary", "fingerprint": "69e1189783545b75", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/joao-geraldo.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-e659c22316ae1957", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/oh-junsung.html:194"}, "properties": {"repobilityId": "62157c7b960b582b", "scanner": "scanner-primary", "fingerprint": "e659c22316ae1957", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/oh-junsung.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-e9f68d6cb73c4c42", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/jonathan-groth.html:194"}, "properties": {"repobilityId": "8a5878a13a8a1120", "scanner": "scanner-primary", "fingerprint": "e9f68d6cb73c4c42", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/jonathan-groth.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-281f6ee64d72eb5f", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/timo-boll.html:194"}, "properties": {"repobilityId": "3ed2bba00fcd59fc", "scanner": "scanner-primary", "fingerprint": "281f6ee64d72eb5f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/timo-boll.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-d77b776da4d32017", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/chen-xingtong.html:194"}, "properties": {"repobilityId": "690a188fc5fc6cf4", "scanner": "scanner-primary", "fingerprint": "d77b776da4d32017", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/chen-xingtong.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-359ba622394477b4", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/lilian-bardet.html:194"}, "properties": {"repobilityId": "4aa7a757bdd77e05", "scanner": "scanner-primary", "fingerprint": "359ba622394477b4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/lilian-bardet.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-46aad746e87ced6d", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/chen-meng.html:194"}, "properties": {"repobilityId": "19fd2e1b8296511c", "scanner": "scanner-primary", "fingerprint": "46aad746e87ced6d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/chen-meng.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-b64ebe0bc9cb1c47", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/vladimir-sidorenko.html:194"}, "properties": {"repobilityId": "0e00a736d48afa3e", "scanner": "scanner-primary", "fingerprint": "b64ebe0bc9cb1c47", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/vladimir-sidorenko.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-006eb7d800c89479", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/kanak-jha.html:194"}, "properties": {"repobilityId": "51c891f61fc14197", "scanner": "scanner-primary", "fingerprint": "006eb7d800c89479", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/kanak-jha.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-93e5629a5a46923a", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/charlotte-lutz.html:194"}, "properties": {"repobilityId": "8742764fad8c23ad", "scanner": "scanner-primary", "fingerprint": "93e5629a5a46923a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/charlotte-lutz.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-950843f780069c70", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/jia-nan-yuan.html:194"}, "properties": {"repobilityId": "897543eacd9ebb5e", "scanner": "scanner-primary", "fingerprint": "950843f780069c70", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/jia-nan-yuan.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-cf8cc79cbe0112f0", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/hina-hayata.html:194"}, "properties": {"repobilityId": "dbf5bdccd361eaaf", "scanner": "scanner-primary", "fingerprint": "cf8cc79cbe0112f0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/hina-hayata.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-685ae469b655327f", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/miu-hirano.html:194"}, "properties": {"repobilityId": "8e6afdcce46acdf6", "scanner": "scanner-primary", "fingerprint": "685ae469b655327f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/miu-hirano.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-4e2ee355473508c4", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/honoka-hashimoto.html:194"}, "properties": {"repobilityId": "8547502ed2eaf0a2", "scanner": "scanner-primary", "fingerprint": "4e2ee355473508c4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/honoka-hashimoto.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-4cf37130526b490f", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/miyu-nagasaki.html:194"}, "properties": {"repobilityId": "cdd89d1106164923", "scanner": "scanner-primary", "fingerprint": "4cf37130526b490f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/miyu-nagasaki.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-3d50b89c3620bd07", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sofia-polcanova.html:194"}, "properties": {"repobilityId": "935e4a25409f4f46", "scanner": "scanner-primary", "fingerprint": "3d50b89c3620bd07", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/sofia-polcanova.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-172fdacdfcc11c34", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/miwa-harimoto.html:194"}, "properties": {"repobilityId": "1d6bb3707f2539df", "scanner": "scanner-primary", "fingerprint": "172fdacdfcc11c34", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/miwa-harimoto.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-3b2a520aca86875e", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/fan-zhendong.html:194"}, "properties": {"repobilityId": "5962e2ff95d4db04", "scanner": "scanner-primary", "fingerprint": "3b2a520aca86875e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/fan-zhendong.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-187c7967e3213366", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/wang-chuqin.html:194"}, "properties": {"repobilityId": "7f1654d60c08e1b2", "scanner": "scanner-primary", "fingerprint": "187c7967e3213366", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/wang-chuqin.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-db2255baf0549e28", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/elizabeta-samara.html:194"}, "properties": {"repobilityId": "e753c16ec9d1e143", "scanner": "scanner-primary", "fingerprint": "db2255baf0549e28", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/elizabeta-samara.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-7d5eecb1cf7b5afe", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/nina-mittelham.html:194"}, "properties": {"repobilityId": "bab07e5f43e14f59", "scanner": "scanner-primary", "fingerprint": "7d5eecb1cf7b5afe", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/nina-mittelham.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-4449207bec2b82d5", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/sathiyan-gnanasekaran.html:194"}, "properties": {"repobilityId": "da05da0cfdc1bde3", "scanner": "scanner-primary", "fingerprint": "4449207bec2b82d5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/sathiyan-gnanasekaran.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-47682fc68b209674", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/ying-han.html:194"}, "properties": {"repobilityId": "31577d714e76f12d", "scanner": "scanner-primary", "fingerprint": "47682fc68b209674", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/ying-han.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-54eeedffa011ab48", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/satsuki-odo.html:194"}, "properties": {"repobilityId": "61c64f12223a7ce8", "scanner": "scanner-primary", "fingerprint": "54eeedffa011ab48", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/satsuki-odo.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-19aab8c741bd3907", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/alexis-lebrun.html:194"}, "properties": {"repobilityId": "df98d629a16fa404", "scanner": "scanner-primary", "fingerprint": "19aab8c741bd3907", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/alexis-lebrun.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-634d6e5b2e13abb1", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in joueur/prithika-pavade.html:194"}, "properties": {"repobilityId": "4bdef5b0754f3e33", "scanner": "scanner-primary", "fingerprint": "634d6e5b2e13abb1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "joueur/prithika-pavade.html"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-791389d5ba179770", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/club-theme.js:194"}, "properties": {"repobilityId": "32bd2286f9879aa0", "scanner": "scanner-primary", "fingerprint": "791389d5ba179770", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/club-theme.js"}, "region": {"startLine": 194}}}]}, {"ruleId": "scanner-e16013506df0adae", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-labo.min.js:1"}, "properties": {"repobilityId": "743c8d4fbade9022", "scanner": "scanner-primary", "fingerprint": "e16013506df0adae", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-labo.min.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ff75adcf869033ef", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-profil.js:80"}, "properties": {"repobilityId": "2f0b5406d9edfbfd", "scanner": "scanner-primary", "fingerprint": "ff75adcf869033ef", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-profil.js"}, "region": {"startLine": 80}}}]}, {"ruleId": "scanner-7bb59607a84a8112", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-pros.js:81"}, "properties": {"repobilityId": "926aaf188783b533", "scanner": "scanner-primary", "fingerprint": "7bb59607a84a8112", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-pros.js"}, "region": {"startLine": 81}}}]}, {"ruleId": "scanner-ef9da4e90198e77d", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/club-import.js:79"}, "properties": {"repobilityId": "6101056b4f145346", "scanner": "scanner-primary", "fingerprint": "ef9da4e90198e77d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/club-import.js"}, "region": {"startLine": 79}}}]}, {"ruleId": "scanner-1b97e5fcfc10ebb7", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-catalogue.js:271"}, "properties": {"repobilityId": "9a8e0550dc03f65f", "scanner": "scanner-primary", "fingerprint": "1b97e5fcfc10ebb7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-catalogue.js"}, "region": {"startLine": 271}}}]}, {"ruleId": "scanner-95f526db68063dda", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/club-roles.js:59"}, "properties": {"repobilityId": "a32f8932fc3ac86d", "scanner": "scanner-primary", "fingerprint": "95f526db68063dda", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/club-roles.js"}, "region": {"startLine": 59}}}]}, {"ruleId": "scanner-89a63a7c8ab02a74", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/consent.js:62"}, "properties": {"repobilityId": "5cd2ec676c3398cf", "scanner": "scanner-primary", "fingerprint": "89a63a7c8ab02a74", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/consent.js"}, "region": {"startLine": 62}}}]}, {"ruleId": "scanner-0c1e925803c3f49a", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-diagnostic.min.js:1"}, "properties": {"repobilityId": "5dd243ae45cd72b0", "scanner": "scanner-primary", "fingerprint": "0c1e925803c3f49a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-diagnostic.min.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-935de0531b9870ed", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in js/app-diagnostic.min.js:1"}, "properties": {"repobilityId": "1ca605d18a896581", "scanner": "scanner-primary", "fingerprint": "935de0531b9870ed", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-diagnostic.min.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b065013816c441dd", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/club-sync.js:73"}, "properties": {"repobilityId": "6cb9ae5945a5147c", "scanner": "scanner-primary", "fingerprint": "b065013816c441dd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/club-sync.js"}, "region": {"startLine": 73}}}]}, {"ruleId": "scanner-96941f52046a94fe", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-labo.js:35"}, "properties": {"repobilityId": "72a7960204a7584c", "scanner": "scanner-primary", "fingerprint": "96941f52046a94fe", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-labo.js"}, "region": {"startLine": 35}}}]}, {"ruleId": "scanner-f182a5672485e183", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-scoring.js:441"}, "properties": {"repobilityId": "b94e80bb7f3ced59", "scanner": "scanner-primary", "fingerprint": "f182a5672485e183", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-scoring.js"}, "region": {"startLine": 441}}}]}, {"ruleId": "scanner-ebab932425557e5f", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in js/app-scoring.js:1416"}, "properties": {"repobilityId": "48855f1dc9df05b5", "scanner": "scanner-primary", "fingerprint": "ebab932425557e5f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-scoring.js"}, "region": {"startLine": 1416}}}]}, {"ruleId": "scanner-44145789843e04b7", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/firebase-auth.js:213"}, "properties": {"repobilityId": "e98cf63396529a8f", "scanner": "scanner-primary", "fingerprint": "44145789843e04b7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/firebase-auth.js"}, "region": {"startLine": 213}}}]}, {"ruleId": "scanner-53fc65554f63400d", "level": "error", "message": {"text": "Possible secret in js/firebase-config.js"}, "properties": {"repobilityId": "64abd1e1859b1a9b", "scanner": "scanner-primary", "fingerprint": "53fc65554f63400d", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/firebase-config.js"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-f7575e096f6a71fd", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/ratings.js:53"}, "properties": {"repobilityId": "eb754c89495a5b21", "scanner": "scanner-primary", "fingerprint": "f7575e096f6a71fd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/ratings.js"}, "region": {"startLine": 53}}}]}, {"ruleId": "scanner-4becf5520a4dd23b", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/index-main.js:149"}, "properties": {"repobilityId": "55ac70feb76f8f64", "scanner": "scanner-primary", "fingerprint": "4becf5520a4dd23b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/index-main.js"}, "region": {"startLine": 149}}}]}, {"ruleId": "scanner-be6325f2229a33f5", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-diagnostic.js:597"}, "properties": {"repobilityId": "902c59d62d2f28fa", "scanner": "scanner-primary", "fingerprint": "be6325f2229a33f5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-diagnostic.js"}, "region": {"startLine": 597}}}]}, {"ruleId": "scanner-e123967b829d4b3c", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in js/app-diagnostic.js:566"}, "properties": {"repobilityId": "9411f236cdd3749d", "scanner": "scanner-primary", "fingerprint": "e123967b829d4b3c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-diagnostic.js"}, "region": {"startLine": 566}}}]}, {"ruleId": "scanner-2f7313ada3f908dc", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-catalogue.min.js:1"}, "properties": {"repobilityId": "d3eb9f21558ee4b0", "scanner": "scanner-primary", "fingerprint": "2f7313ada3f908dc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-catalogue.min.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-cc1bf5ca17e09099", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-profil.min.js:1"}, "properties": {"repobilityId": "b284f1d3b4ea2ba5", "scanner": "scanner-primary", "fingerprint": "cc1bf5ca17e09099", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-profil.min.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8fec1c93cc37ede0", "level": "error", "message": {"text": "Possible secret in js/club-access.js"}, "properties": {"repobilityId": "e0662f974b636c39", "scanner": "scanner-primary", "fingerprint": "8fec1c93cc37ede0", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/club-access.js"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-8e2b7f8dfb4416ac", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/club-access.js:73"}, "properties": {"repobilityId": "82e670e525121d37", "scanner": "scanner-primary", "fingerprint": "8e2b7f8dfb4416ac", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/club-access.js"}, "region": {"startLine": 73}}}]}, {"ruleId": "scanner-3726cad3beb9f0a8", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/app-scoring.min.js:1"}, "properties": {"repobilityId": "91f37dd55268087f", "scanner": "scanner-primary", "fingerprint": "3726cad3beb9f0a8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-scoring.min.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-fe1517136ea29e99", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in js/app-scoring.min.js:1"}, "properties": {"repobilityId": "0b86d986e5a11189", "scanner": "scanner-primary", "fingerprint": "fe1517136ea29e99", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/app-scoring.min.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-af47cff4bccb72d7", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in js/diag-feedback.js:48"}, "properties": {"repobilityId": "d95ae0264dbc3c8f", "scanner": "scanner-primary", "fingerprint": "af47cff4bccb72d7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "js/diag-feedback.js"}, "region": {"startLine": 48}}}]}, {"ruleId": "scanner-f58d0cbde69bafde", "level": "warning", "message": {"text": "Insecure pattern 'direct_outerhtml_assignment' in scripts/generate-pro-pages.js:52"}, "properties": {"repobilityId": "a07819da70a95194", "scanner": "scanner-primary", "fingerprint": "f58d0cbde69bafde", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_outerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/generate-pro-pages.js"}, "region": {"startLine": 52}}}]}, {"ruleId": "scanner-91f9d1e70e27a769", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/build-all.js:18"}, "properties": {"repobilityId": "efd7591967a086d6", "scanner": "scanner-primary", "fingerprint": "91f9d1e70e27a769", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/build-all.js"}, "region": {"startLine": 18}}}]}, {"ruleId": "scanner-8e2af194570b3cdf", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in scripts/append-mon-equipement.js:62"}, "properties": {"repobilityId": "9ea7af1bc1dad9bb", "scanner": "scanner-primary", "fingerprint": "8e2af194570b3cdf", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/append-mon-equipement.js"}, "region": {"startLine": 62}}}]}, {"ruleId": "scanner-c8621bab76b280ab", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/check-min-sync.js:14"}, "properties": {"repobilityId": "a17d0be3d1d1946e", "scanner": "scanner-primary", "fingerprint": "c8621bab76b280ab", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/check-min-sync.js"}, "region": {"startLine": 14}}}]}, {"ruleId": "scanner-076833f10dde6556", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in instagram/planning/tools/generate-instagram.js:3"}, "properties": {"repobilityId": "e6428db37b5d7a0d", "scanner": "scanner-primary", "fingerprint": "076833f10dde6556", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "instagram/planning/tools/generate-instagram.js"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-61f796b3c2e2d976", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "da8d177112401439", "scanner": "scanner-primary", "fingerprint": "61f796b3c2e2d976", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/scrape-prices.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e5b09dab12a4e2c0", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "2358fda99a16c0a0", "scanner": "scanner-primary", "fingerprint": "e5b09dab12a4e2c0", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/validate.yml"}, "region": {"startLine": 16}}}]}, {"ruleId": "scanner-e5b09dab12a4e2c0", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "27e2aaffd9d55086", "scanner": "scanner-primary", "fingerprint": "e5b09dab12a4e2c0", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/validate.yml"}, "region": {"startLine": 19}}}]}, {"ruleId": "scanner-40ab3496629cd30f", "level": "note", "message": {"text": "Very large file: js/app-profil.js (906 lines)"}, "properties": {"repobilityId": "1c84bd3193694e80", "scanner": "scanner-primary", "fingerprint": "40ab3496629cd30f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d8ce1727abe0f2b1", "level": "note", "message": {"text": "Very large file: js/app-catalogue.js (816 lines)"}, "properties": {"repobilityId": "15297bbc2e2e8f3d", "scanner": "scanner-primary", "fingerprint": "d8ce1727abe0f2b1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d1af2aac2a65d29d", "level": "note", "message": {"text": "Very large file: js/app-labo.js (1729 lines)"}, "properties": {"repobilityId": "6cbeeda3891758c4", "scanner": "scanner-primary", "fingerprint": "d1af2aac2a65d29d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2604a68724e7a92f", "level": "note", "message": {"text": "Very large file: js/scoring-core.js (1010 lines)"}, "properties": {"repobilityId": "f29cb2bc0dcab5d1", "scanner": "scanner-primary", "fingerprint": "2604a68724e7a92f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cc30fcc55bd8d6fd", "level": "note", "message": {"text": "Very large file: js/app-scoring.js (1922 lines)"}, "properties": {"repobilityId": "a2dba49e133f9701", "scanner": "scanner-primary", "fingerprint": "cc30fcc55bd8d6fd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2f880b3bb349098c", "level": "note", "message": {"text": "Very large file: js/app-diagnostic.js (1230 lines)"}, "properties": {"repobilityId": "7daa81c7d0eb5d5a", "scanner": "scanner-primary", "fingerprint": "2f880b3bb349098c", "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": "c9d75d84122799d3", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ca5f5e28a9234837", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: functions/package.json"}, "properties": {"repobilityId": "a4c8bb207b8ba2e2", "scanner": "scanner-primary", "fingerprint": "ca5f5e28a9234837", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "functions/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "849794313143cb9d", "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": "81d61ff328751780", "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": "f32c132ffa08e2c7", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "note", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "a0943e4f1d56bef3", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-749d4bc1bd66df5f", "level": "warning", "message": {"text": "Agent instructions exist but release-hardening basics are missing"}, "properties": {"repobilityId": "9b1e752d4753884f", "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": "56c638aca2ab5452", "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": "dcd462bc2ee7484a", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-ecb0d2c55ed6875d", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/settings.local.json"}, "properties": {"repobilityId": "d8bae33a6d517bf0", "scanner": "scanner-primary", "fingerprint": "ecb0d2c55ed6875d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/settings.local.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-46b38d7e1d2f995e", "level": "none", "message": {"text": "Commented-code block (6 lines) in functions/index.js:4"}, "properties": {"repobilityId": "0f394c7f1e11f01a", "scanner": "scanner-primary", "fingerprint": "46b38d7e1d2f995e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fc0e59aa506b2c7f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 functions/api/club/checkout.js:30"}, "properties": {"repobilityId": "b31e632e9a6168bf", "scanner": "scanner-primary", "fingerprint": "fc0e59aa506b2c7f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-198d34197d1f8ee5", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_catalogue_integrity.js:1"}, "properties": {"repobilityId": "ec0cf75469cc8a81", "scanner": "scanner-primary", "fingerprint": "198d34197d1f8ee5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-99faf97070c604e6", "level": "note", "message": {"text": "Legacy-named symbol `test_club_backup` in tests/test_club_backup.js:1"}, "properties": {"repobilityId": "883eca03cd2481a2", "scanner": "scanner-primary", "fingerprint": "99faf97070c604e6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-1a6bc65d2b51d64d", "level": "none", "message": {"text": "Commented-code block (7 lines) in tests/test_scoring.js:5"}, "properties": {"repobilityId": "c137bad88c44255f", "scanner": "scanner-primary", "fingerprint": "1a6bc65d2b51d64d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f4749448b1eaa97c", "level": "note", "message": {"text": "Legacy-named symbol `lp_clubtt_v1` in js/club-theme.js:10"}, "properties": {"repobilityId": "b6e2cd26f0e2daae", "scanner": "scanner-primary", "fingerprint": "f4749448b1eaa97c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-35453306b1b3619c", "level": "note", "message": {"text": "Legacy-named symbol `_scoreLaboSetupLegacy` in js/app-labo.min.js:1"}, "properties": {"repobilityId": "63cd7b4c0b20dd0d", "scanner": "scanner-primary", "fingerprint": "35453306b1b3619c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3e08c70abf780fb1", "level": "none", "message": {"text": "Commented-code block (6 lines) in js/labo-engine.js:1"}, "properties": {"repobilityId": "9fc78736f65436d5", "scanner": "scanner-primary", "fingerprint": "3e08c70abf780fb1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-928ff3dae7e93cfe", "level": "note", "message": {"text": "Legacy-named symbol `lp_clubtt_v1` in js/club-backup.js:7"}, "properties": {"repobilityId": "1eec9c167e803e79", "scanner": "scanner-primary", "fingerprint": "928ff3dae7e93cfe", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e41cae8160a6efd7", "level": "none", "message": {"text": "Commented-code block (6 lines) in js/app-profil.js:18"}, "properties": {"repobilityId": "33568b845cb28590", "scanner": "scanner-primary", "fingerprint": "e41cae8160a6efd7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-30d1a2224fd91730", "level": "note", "message": {"text": "Legacy-named symbol `lp_clubtt_v1` in js/club-sync.js:22"}, "properties": {"repobilityId": "aab3876e43b7438e", "scanner": "scanner-primary", "fingerprint": "30d1a2224fd91730", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0331cd869e4c44c7", "level": "none", "message": {"text": "Commented-code block (6 lines) in js/app-equivalents.js:24"}, "properties": {"repobilityId": "75e4f2e69557a92e", "scanner": "scanner-primary", "fingerprint": "0331cd869e4c44c7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3edc6bee3d5d4364", "level": "note", "message": {"text": "Legacy-named symbol `_scoreLaboSetupLegacy` in js/app-labo.js:372"}, "properties": {"repobilityId": "323ae922f76938b7", "scanner": "scanner-primary", "fingerprint": "3edc6bee3d5d4364", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-110f878ed481bc64", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 js/app-labo.js:540"}, "properties": {"repobilityId": "73a033baa9dc4c26", "scanner": "scanner-primary", "fingerprint": "110f878ed481bc64", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-aa6f0e82f07c22bd", "level": "none", "message": {"text": "Commented-code block (6 lines) in js/scoring-core.js:1"}, "properties": {"repobilityId": "7eafd7afeb0d073e", "scanner": "scanner-primary", "fingerprint": "aa6f0e82f07c22bd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e657640e729a6ca9", "level": "none", "message": {"text": "Commented-code block (6 lines) in js/app-scoring.js:1"}, "properties": {"repobilityId": "c0a7883f9bbc3ee9", "scanner": "scanner-primary", "fingerprint": "e657640e729a6ca9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-00a71a775079a186", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 js/hero-3d.js:113"}, "properties": {"repobilityId": "85200ab47fb76770", "scanner": "scanner-primary", "fingerprint": "00a71a775079a186", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-87fca5fa9acbcbd5", "level": "none", "message": {"text": "Commented-code block (5 lines) in js/ratings.js:211"}, "properties": {"repobilityId": "c709c64755571b77", "scanner": "scanner-primary", "fingerprint": "87fca5fa9acbcbd5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6762c907f686a42b", "level": "note", "message": {"text": "Legacy-named symbol `rest_v1` in js/index-main.js:456"}, "properties": {"repobilityId": "cd22c2e50c850e3b", "scanner": "scanner-primary", "fingerprint": "6762c907f686a42b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-c1625b11e7cda6d6", "level": "none", "message": {"text": "Commented-code block (7 lines) in js/index-main.js:1"}, "properties": {"repobilityId": "880661e56546e839", "scanner": "scanner-primary", "fingerprint": "c1625b11e7cda6d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5cc148a375bc5154", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 js/index-main.js:452"}, "properties": {"repobilityId": "2e1c340f95c3f406", "scanner": "scanner-primary", "fingerprint": "5cc148a375bc5154", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-cd4f848d49e1fc0c", "level": "none", "message": {"text": "Commented-code block (6 lines) in js/app-diagnostic.js:433"}, "properties": {"repobilityId": "0a0be79b10a76cb6", "scanner": "scanner-primary", "fingerprint": "cd4f848d49e1fc0c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d549611f6c59386f", "level": "note", "message": {"text": "Legacy-named symbol `lp_clubtt_v1` in js/club-access.js:116"}, "properties": {"repobilityId": "4bea8c86e254c438", "scanner": "scanner-primary", "fingerprint": "d549611f6c59386f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ce0b804bb9cbe0fd", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 js/club-access.js:153"}, "properties": {"repobilityId": "8b1af3be1fe0e77f", "scanner": "scanner-primary", "fingerprint": "ce0b804bb9cbe0fd", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-10dd9e7160090909", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/generate-sitemap.js:32"}, "properties": {"repobilityId": "710f424f9ef9e33e", "scanner": "scanner-primary", "fingerprint": "10dd9e7160090909", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f4f5a0830c625ea5", "level": "note", "message": {"text": "Legacy-named symbol `rest_v1` in scripts/resolve-pro-photos.js:26"}, "properties": {"repobilityId": "f53e1eb5a02b1827", "scanner": "scanner-primary", "fingerprint": "f4f5a0830c625ea5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f257c3237236bec9", "level": "none", "message": {"text": "Commented-code block (6 lines) in scripts/add-famille-speciale.js:5"}, "properties": {"repobilityId": "7fc0a6a88037d283", "scanner": "scanner-primary", "fingerprint": "f257c3237236bec9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0a6a665823eabd73", "level": "none", "message": {"text": "Commented-code block (9 lines) in scripts/_page-styles.js:1"}, "properties": {"repobilityId": "ffad28361b51df43", "scanner": "scanner-primary", "fingerprint": "0a6a665823eabd73", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d00910daa29908ec", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/_apply-found-images.js:3"}, "properties": {"repobilityId": "807b2fd300267387", "scanner": "scanner-primary", "fingerprint": "d00910daa29908ec", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-84ae163842abcfc3", "level": "note", "message": {"text": "Legacy-named symbol `rest_v1` in scripts/archive/_resolve-pro-photos.js:15"}, "properties": {"repobilityId": "1cebc6831752682a", "scanner": "scanner-primary", "fingerprint": "84ae163842abcfc3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}]}]}