{"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-db82afe3777930b4", "name": "Stray `console.log` in TS/JS \u2014 dbml/index.js:14", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 dbml/index.js:14"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-44ed2a88f6e69be2", "name": "Stray `console.log` in TS/JS \u2014 nomnoml/index.js:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 nomnoml/index.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-a2908d335d3f9637", "name": "TODO/FIXME marker in shipping code \u2014 excalidraw/src/index.js:46", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 excalidraw/src/index.js:46"}, "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-f754a8d35b2848ed", "name": "TODO/FIXME marker in shipping code \u2014 mermaid/src/index.js:22", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 mermaid/src/index.js:22"}, "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-b6a12aae461dc0db", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/mxPartitionLayout.js:100", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/mxPartitionLayout.js:100"}, "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-edaf64c7cd191510", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/mxGraphLayout.js:399", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/mxGraphLayout.js:399"}, "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-855abb4097913c27", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/mxSwimlaneLayout.js:233", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/mxSwimlaneLayout.js:233"}, "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-f239be1fb30aed9d", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/mxHierarchicalLayout.js:241", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/mxHierarchicalLayout.js:241"}, "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-acc42df66a835cc8", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/stage/mxMedianHybridCrossingRed", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/stage/mxMedianHybridCrossingReduction.js:315"}, "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-ef6d6c409848a86a", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/model/mxSwimlaneModel.js:435", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/model/mxSwimlaneModel.js:435"}, "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-b36ca3d3ac86d8b5", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/model/mxGraphHierarchyModel.js:", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/model/mxGraphHierarchyModel.js:389"}, "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-412d423a92ab44c0", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxXmlCanvas2D.js:187", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxXmlCanvas2D.js:187"}, "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-f261abeb8a4c7ea7", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxXmlRequest.js:285", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxXmlRequest.js:285"}, "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-ec570a67e3270fca", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxUtils.js:398", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxUtils.js:398"}, "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-13c9311f6fe9faf5", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxMorphing.js:221", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxMorphing.js:221"}, "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-ee2abcd524b457af", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxSvgCanvas2D.js:720", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxSvgCanvas2D.js:720"}, "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-bf49f6d7dcff3a51", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxPanningManager.js:69", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxPanningManager.js:69"}, "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-bb499e80041ccd7f", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/handler/mxConnectionHandler.js:1524", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/handler/mxConnectionHandler.js:1524"}, "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-de90b6d92399ce9a", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/handler/mxVertexHandler.js:1177", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/handler/mxVertexHandler.js:1177"}, "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-f3dae096fcc3fac5", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/shape/mxStencil.js:419", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/shape/mxStencil.js:419"}, "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-2ca7f81a179bc243", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/shape/mxText.js:1235", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/shape/mxText.js:1235"}, "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-b9ee2fc97f51c0b6", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/shape/mxDoubleEllipse.js:86", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/shape/mxDoubleEllipse.js:86"}, "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-4559bcf075e71cfd", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/shape/mxShape.js:696", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/shape/mxShape.js:696"}, "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-c29e45041b4c14ad", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/view/mxEdgeStyle.js:809", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/view/mxEdgeStyle.js:809"}, "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-34dc954b0ac16e93", "name": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/mxgraph/src/view/mxEdgeStyle.js:1091", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/mxgraph/src/view/mxEdgeStyle.js:1091"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-37b7c9dffdd3d456", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/view/mxGraphView.js:1389", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/view/mxGraphView.js:1389"}, "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-ff42ecb32eb1e8be", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/view/mxCellRenderer.js:526", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/view/mxCellRenderer.js:526"}, "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-c8dbc668fa3cb968", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/view/mxGraph.js:4875", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/view/mxGraph.js:4875"}, "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-bbb0bb0a1ed14e0b", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/shapes/er/mxER.js:5", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/shapes/er/mxER.js:5"}, "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-207f912b14183088", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/shapes/emoji/mxEmoji.js:1909", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/shapes/emoji/mxEmoji.js:1909"}, "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-8ed182839d732405", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/shapes/mockup/mxMockupContainers.js:1221", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/shapes/mockup/mxMockupContainers.js:1221"}, "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-943e978fec056fc0", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/js/export.js:6", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/js/export.js:6"}, "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-344cc2ba220017de", "name": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/js/export.js:90", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/js/export.js:90"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6ec2f101fb82b8ae", "name": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/math4/es5/startup.js:1", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/math4/es5/startup.js:1"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8960d2de02174631", "name": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/math4/es5/input/tex.js:1", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/math4/es5/input/tex.js:1"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a60abfb9d5c5f0bc", "name": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/math4/es5/input/asciimath.js:1", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/math4/es5/input/asciimath.js:1"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0d811c53e72cac5d", "name": "TODO/FIXME marker in shipping code \u2014 diagrams.net/src/index.js:24", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/src/index.js:24"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7738d84c67219563", "name": "Stray `console.log` in TS/JS \u2014 vega/src/main.ts:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 vega/src/main.ts:45"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a7e193053539bd0b", "name": "TODO/FIXME marker in shipping code \u2014 bpmn/src/index.js:17", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 bpmn/src/index.js:17"}, "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-4699209336b8efdf", "name": "Stray `console.log` in TS/JS \u2014 ci/tests/smoke.js:104", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 ci/tests/smoke.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-9d186072d9172682", "name": "Stray `console.log` in TS/JS \u2014 ci/tasks/update-versions.js:245", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 ci/tasks/update-versions.js:245"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3d3fea86626c6ea6", "name": "Stray `console.log` in TS/JS \u2014 bytefield/index.js:18", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 bytefield/index.js:18"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fa89cd572fbaf246", "name": "Stray `console.log` in TS/JS \u2014 wavedrom/index.js:13", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 wavedrom/index.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-78b28d0b64654790", "name": "Docker base image is tag-pinned but not digest-pinned: node:24.16-alpine3.23", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-alpine3.23"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-095411a25f9182b9", "name": "Docker base image is tag-pinned but not digest-pinned: node:24.16-alpine3.23", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-alpine3.23"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-951c5f3ed1cd237e", "name": "Docker base image is tag-pinned but not digest-pinned: node:24.16-alpine3.23", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-alpine3.23"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bdc3072c3e5a9727", "name": "Docker base image is tag-pinned but not digest-pinned: node:24.16-bookworm-slim", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-bookworm-slim"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3a7dee70b6739044", "name": "Docker base image is tag-pinned but not digest-pinned: ubuntu:noble", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: ubuntu:noble"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-28b870b37358d6e6", "name": "Docker base image is tag-pinned but not digest-pinned: rust:1.96-slim-bullseye", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: rust:1.96-slim-bullseye"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5b69f217e695d9ba", "name": "Docker base image is tag-pinned but not digest-pinned: ghcr.io/yuzutech/erd:v0.2.3", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: ghcr.io/yuzutech/erd:v0.2.3"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b8db9d37d9b5c664", "name": "Docker base image is tag-pinned but not digest-pinned: golang:1.26.4-alpine", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: golang:1.26.4-alpine"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9921b6687e6ab020", "name": "Docker base image is tag-pinned but not digest-pinned: eclipse-temurin:21.0.9_10-jre-noble", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: eclipse-temurin:21.0.9_10-jre-noble"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-27c4262657c5cbe6", "name": "Dockerfile pipes a remote installer into a shell", "shortDescription": {"text": "Dockerfile pipes a remote installer into a shell"}, "fullDescription": {"text": "Executing downloaded code during image build gives the remote endpoint build-time code execution. Prefer pinned packages or verify downloaded installers by checksum/signature."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "high", "confidence": 1.0}}, {"id": "scanner-17503e36bff38498", "name": "Docker base image is tag-pinned but not digest-pinned: node:24.16-alpine3.23", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-alpine3.23"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-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-7a76bbed342b366c", "name": "Insecure pattern 'direct_innerhtml_assignment' in mermaid/assets/mermaid/mermaid.esm.min.mjs:8", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mermaid/assets/mermaid/mermaid.esm.min.mjs:8"}, "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-345e57f467bf739e", "name": "Insecure pattern 'direct_innerhtml_assignment' in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-7W6UQGC5.mjs:1", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-7W6UQGC5.mjs: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-a6543b41100b058e", "name": "Insecure pattern 'direct_innerhtml_assignment' in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-67TQ5CYL.mjs:2", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-67TQ5CYL.mjs:2"}, "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-31f78a7336f5b9ab", "name": "Insecure pattern 'direct_innerhtml_assignment' in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-QA3QBVWF.mjs:2", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-QA3QBVWF.mjs:2"}, "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-881c528bb4ba65f9", "name": "Insecure pattern 'eval_used' in diagrams.net/assets/mxgraph/mxClient.js:36", "shortDescription": {"text": "Insecure pattern 'eval_used' in diagrams.net/assets/mxgraph/mxClient.js:36"}, "fullDescription": {"text": "Found a known-risky pattern (eval_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-c9dc30fef4e6e7d8", "name": "Insecure pattern 'document_write' in diagrams.net/assets/mxgraph/mxClient.js:7", "shortDescription": {"text": "Insecure pattern 'document_write' in diagrams.net/assets/mxgraph/mxClient.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (document_write). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f66ff59af73f8d5f", "name": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/mxClient.js:45", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/mxClient.js:45"}, "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-189ed0363c5ed9a3", "name": "Insecure pattern 'domparser_html_parse' in diagrams.net/assets/mxgraph/mxClient.js:319", "shortDescription": {"text": "Insecure pattern 'domparser_html_parse' in diagrams.net/assets/mxgraph/mxClient.js:319"}, "fullDescription": {"text": "Found a known-risky pattern (domparser_html_parse). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c97b66ec0538ff13", "name": "Insecure pattern 'document_write' in diagrams.net/assets/mxgraph/src/mxClient.js:347", "shortDescription": {"text": "Insecure pattern 'document_write' in diagrams.net/assets/mxgraph/src/mxClient.js:347"}, "fullDescription": {"text": "Found a known-risky pattern (document_write). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5228e3fec0b791a8", "name": "Insecure pattern 'eval_used' in diagrams.net/assets/mxgraph/src/util/mxUtils.js:396", "shortDescription": {"text": "Insecure pattern 'eval_used' in diagrams.net/assets/mxgraph/src/util/mxUtils.js:396"}, "fullDescription": {"text": "Found a known-risky pattern (eval_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-343fe85fe9ee33f9", "name": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/util/mxUtils.js:1056", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/util/mxUtils.js:1056"}, "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-8b7ac97c0aa147ed", "name": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/util/mxSvgCanvas2D.js:1575", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/util/mxSvgCanvas2D.js:1575"}, "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-d5ce01b2bf10e86e", "name": "Insecure pattern 'domparser_html_parse' in diagrams.net/assets/mxgraph/src/util/mxSvgCanvas2D.js:180", "shortDescription": {"text": "Insecure pattern 'domparser_html_parse' in diagrams.net/assets/mxgraph/src/util/mxSvgCanvas2D.js:180"}, "fullDescription": {"text": "Found a known-risky pattern (domparser_html_parse). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-155397d93b5fc7c5", "name": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/handler/mxTooltipHandler.js:321", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/handler/mxTooltipHandler.js:321"}, "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-4f73e21a4efb27ab", "name": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/shape/mxText.js:889", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/shape/mxText.js:889"}, "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-76eef3bfe1bf5262", "name": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/view/mxCellEditor.js:402", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/view/mxCellEditor.js:402"}, "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-46fb73859d37607c", "name": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/js/export.js:19", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/js/export.js:19"}, "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-ed066801ce55d706", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/core.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/core.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-64b50e3fc3a62909", "name": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/math4/es5/core.js:1", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/math4/es5/core.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-f38f568525cc459c", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/startup.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/startup.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3a56241c7644f4ee", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9490a9f458a70f29", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/asciimath.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/asciimath.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-537cb00bad309961", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/enclose.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/enclose.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-c18104d28bf901ae", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/bussproofs.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/bussproofs.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ea160feb0c399a76", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/physics.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/physics.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-31d89a40c28c948d", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/bbox.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/bbox.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a0a5daa33d90b25d", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/mathtools.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/mathtools.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4557cbcef6e55197", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/mhchem.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/mhchem.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-5419d547a3abc5b6", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/cases.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/cases.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2272aa24207a7390", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/amscd.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/amscd.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7aaf333bc7221e4e", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/extpfeil.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/extpfeil.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7321aa4876bc62a7", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/dsfont.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/dsfont.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-36bd4da254fe20a0", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/centernot.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/centernot.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-687162a1a98b79b3", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/units.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/units.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-74cc513ed3dd600e", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/verb.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/verb.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ad63e3c2b2daf0f0", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/begingroup.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/begingroup.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b68c6d27d57cffd8", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/bboldx.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/bboldx.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-82364e2eae709c20", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/unicode.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/unicode.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-20c058795ef26019", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/color.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/color.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-13c87c634b381fe4", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/braket.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/braket.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a5d4b7643a857dfe", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/boldsymbol.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/boldsymbol.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-54c11d2187f56f44", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/html.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/html.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-edd7fe31445fbbbc", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/upgreek.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/upgreek.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ad198e665af6f86e", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/empheq.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/empheq.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e58ee3a9b57c0c2a", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/textcomp.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/textcomp.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-680611ae35845762", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/cancel.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/cancel.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-62597989820528de", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/gensymb.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/gensymb.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b66ef7027811cd3b", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/action.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/action.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-bacb56a5b953b624", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/bbm.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/bbm.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2ade82907e7f659f", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/colortbl.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/colortbl.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2800ded0fd1130a9", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/ui/safe.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/ui/safe.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3826a6a02af3628a", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-mhchem-font-extension/svg.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-mhchem-font-extension/svg.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d49d85039485475f", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-mhchem-font-extension/chtml.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-mhchem-font-extension/chtml.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9dd0a12dc9b0d48d", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-bboldx-font-extension/svg.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-bboldx-font-extension/svg.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-8b328b79fb19ef56", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-bboldx-font-extension/chtml.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-bboldx-font-extension/chtml.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-76ae10466328559f", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-tex-font/chtml.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-tex-font/chtml.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4da2423c919551a0", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-dsfont-font-extension/svg.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-dsfont-font-extension/svg.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-90bfe82ccffa8b2e", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-dsfont-font-extension/chtml.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-dsfont-font-extension/chtml.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-97299774886b8a8d", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-bbm-font-extension/svg.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-bbm-font-extension/svg.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1fa39e7084738419", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-bbm-font-extension/chtml.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-bbm-font-extension/chtml.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-907e3f94fd343478", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/output/svg.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/output/svg.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-da4392d19214fa10", "name": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/output/chtml.js:1", "shortDescription": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/output/chtml.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4f4c2d3aaa32a2dc", "name": "Insecure pattern 'weak_hash' in server/src/main/java/io/kroki/server/response/Caching.java:67", "shortDescription": {"text": "Insecure pattern 'weak_hash' in server/src/main/java/io/kroki/server/response/Caching.java:67"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-96d41c5a0d458967", "name": "Insecure pattern 'direct_innerhtml_assignment' in bpmn/assets/bpmn-viewer.production.min.js:2", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in bpmn/assets/bpmn-viewer.production.min.js:2"}, "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-1adb9f56a2d61373", "name": "Insecure pattern 'direct_innerhtml_assignment' in bpmn/src/worker.js:47", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in bpmn/src/worker.js:47"}, "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-ec0da1cb5f9757fc", "name": "Insecure pattern 'node_child_process' in ci/tasks/update-versions.js:7", "shortDescription": {"text": "Insecure pattern 'node_child_process' in ci/tasks/update-versions.js:7"}, "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-69a60de0ebfa004d", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "peter-evans/dockerhub-description@v5.0.0 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": "medium", "confidence": 1.0}}, {"id": "scanner-304286c285429eb0", "name": "GitHub Action tracks a moving branch", "shortDescription": {"text": "GitHub Action tracks a moving branch"}, "fullDescription": {"text": "aquasecurity/trivy-action@master can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b4c1620aecd8a426", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/setup-java@v5 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-6724b12aea6ce71f", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "peter-evans/repository-dispatch@v4.0.1 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": "medium", "confidence": 1.0}}, {"id": "scanner-46c644c6227e4d4a", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/setup-java@v5 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-d2e21a5997014053", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/setup-node@v6 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-d6aa5f2a1f8fa4ab", "name": "Very large file: diagrams.net/assets/mxgraph/mxClient.js (1864 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/mxgraph/mxClient.js (1864 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-97cc2c5bc021b865", "name": "Very large file: diagrams.net/assets/mxgraph/src/util/mxConstants.js (2501 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/mxgraph/src/util/mxConstants.js (2501 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-0a4b64a7897da48b", "name": "Very large file: diagrams.net/assets/mxgraph/src/util/mxUtils.js (5453 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/mxgraph/src/util/mxUtils.js (5453 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-9f737927d4af6989", "name": "Very large file: diagrams.net/assets/mxgraph/src/util/mxSvgCanvas2D.js (2894 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/mxgraph/src/util/mxSvgCanvas2D.js (2894 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-9523dcfeb2e47906", "name": "Very large file: diagrams.net/assets/mxgraph/src/handler/mxConnectionHandler.js (2285 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/mxgraph/src/handler/mxConnectionHandler.js (2285 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-84578e57abd79b5b", "name": "Very large file: diagrams.net/assets/mxgraph/src/handler/mxEdgeHandler.js (2700 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/mxgraph/src/handler/mxEdgeHandler.js (2700 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-a2ea8b1ba7e6b7f8", "name": "Very large file: diagrams.net/assets/mxgraph/src/handler/mxVertexHandler.js (2383 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/mxgraph/src/handler/mxVertexHandler.js (2383 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-3f1bb0e860a7d449", "name": "Very large file: diagrams.net/assets/mxgraph/src/model/mxGraphModel.js (2755 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/mxgraph/src/model/mxGraphModel.js (2755 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-43229488b5347ef4", "name": "Very large file: diagrams.net/assets/mxgraph/src/view/mxGraphView.js (2983 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/mxgraph/src/view/mxGraphView.js (2983 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-7959cb44d7d7b2a8", "name": "Very large file: diagrams.net/assets/mxgraph/src/view/mxGraph.js (13607 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/mxgraph/src/view/mxGraph.js (13607 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-457b8ba64779885b", "name": "Very large file: diagrams.net/assets/shapes/mxArrows.js (2882 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/mxArrows.js (2882 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-18ad310634ab61a7", "name": "Very large file: diagrams.net/assets/shapes/mxInfographic.js (2667 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/mxInfographic.js (2667 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-1731c504ce3aa7e8", "name": "Very large file: diagrams.net/assets/shapes/mxAWS3D.js (9658 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/mxAWS3D.js (9658 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-55147a005d974043", "name": "Very large file: diagrams.net/assets/shapes/mxElectrical.js (5686 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/mxElectrical.js (5686 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-530aa0769512ce2f", "name": "Very large file: diagrams.net/assets/shapes/mxLeanMap.js (2228 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/mxLeanMap.js (2228 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-74a12af197425d49", "name": "Very large file: diagrams.net/assets/shapes/mxBasic.js (3735 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/mxBasic.js (3735 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-6ef7982901661279", "name": "Very large file: diagrams.net/assets/shapes/mxArchiMate3.js (4353 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/mxArchiMate3.js (4353 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-5e07a5bc9c637882", "name": "Very large file: diagrams.net/assets/shapes/mxSysML.js (3268 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/mxSysML.js (3268 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-ce29df128a2b9901", "name": "Very large file: diagrams.net/assets/shapes/er/mxER.js (1497 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/er/mxER.js (1497 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-d9ef34370508245a", "name": "Very large file: diagrams.net/assets/shapes/emoji/mxEmoji.js (1972 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/emoji/mxEmoji.js (1972 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-3df73217d061332f", "name": "Very large file: diagrams.net/assets/shapes/mockup/mxMockupContainers.js (2118 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/mockup/mxMockupContainers.js (2118 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-7b6f85c29f1df1d5", "name": "Very large file: diagrams.net/assets/shapes/mockup/mxMockupiOS.js (6693 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/mockup/mxMockupiOS.js (6693 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-105d6cb132e9bf15", "name": "Very large file: diagrams.net/assets/shapes/mockup/mxMockupForms.js (2502 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/mockup/mxMockupForms.js (2502 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-8228d8183413dc93", "name": "Very large file: diagrams.net/assets/shapes/mockup/mxMockupMisc.js (1685 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/mockup/mxMockupMisc.js (1685 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-6c807e792a3807cc", "name": "Very large file: diagrams.net/assets/shapes/bpmn/mxBpmnShape2.js (2603 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/bpmn/mxBpmnShape2.js (2603 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-64697a83aa356177", "name": "Very large file: diagrams.net/assets/shapes/ios7/mxIOS7Ui.js (1718 lines)", "shortDescription": {"text": "Very large file: diagrams.net/assets/shapes/ios7/mxIOS7Ui.js (1718 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": "5 test file(s) for 351 source file(s) (ratio 0.01). Consider adding integration or unit tests for critical paths."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-097f397fee304667", "name": "65 TODO/FIXME markers", "shortDescription": {"text": "65 TODO/FIXME markers"}, "fullDescription": {"text": "High count of TODO/FIXME/HACK markers \u2014 track them as issues so they're not forgotten."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-01f96f71d9907a8c", "name": "README lacks setup or run instructions", "shortDescription": {"text": "README lacks setup or run instructions"}, "fullDescription": {"text": "A README exists, but it does not contain common install/setup/run markers. This matches a frequent generated-code pattern: UI is present, operational handoff is thin."}, "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 47 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 99 placeholder/mock markers across 37 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-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-cec7e4a2725cdde7", "name": "Commented-code block (6 lines) in lib/browser-instance/index.js:49", "shortDescription": {"text": "Commented-code block (6 lines) in lib/browser-instance/index.js:49"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c289140ce43fd316", "name": "Legacy-named symbol `AsOld` in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-4R4BOZG6.mjs:5", "shortDescription": {"text": "Legacy-named symbol `AsOld` in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-4R4BOZG6.mjs:5"}, "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-9ed97345b40b69dd", "name": "`fetch()` without try/.catch or AbortSignal \u2014 mermaid/assets/mermaid/chunks/mermaid.esm.min/katex-K3KEBU37.mjs:256", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 mermaid/assets/mermaid/chunks/mermaid.esm.min/katex-K3KEBU37.mjs:256"}, "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-f781865a6edaa668", "name": "Legacy-named symbol `node_copy` in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-7W6UQGC5.mjs:1", "shortDescription": {"text": "Legacy-named symbol `node_copy` in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-7W6UQGC5.mjs: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-83e06a3de67a4300", "name": "Commented-code block (6 lines) in diagrams.net/assets/mxgraph/src/layout/hierarchical/model/mxSwimlaneModel.js:232", "shortDescription": {"text": "Commented-code block (6 lines) in diagrams.net/assets/mxgraph/src/layout/hierarchical/model/mxSwimlaneModel.js:232"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-54147dcc585db161", "name": "Commented-code block (6 lines) in diagrams.net/assets/mxgraph/src/layout/hierarchical/model/mxGraphHierarchyModel.js:214", "shortDescription": {"text": "Commented-code block (6 lines) in diagrams.net/assets/mxgraph/src/layout/hierarchical/model/mxGraphHierarchyModel.js:214"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f6cc496273c4aeb2", "name": "Commented-code block (5 lines) in diagrams.net/assets/mxgraph/src/io/mxChildChangeCodec.js:112", "shortDescription": {"text": "Commented-code block (5 lines) in diagrams.net/assets/mxgraph/src/io/mxChildChangeCodec.js:112"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7d7fec4fdc8adabb", "name": "Commented-code block (5 lines) in diagrams.net/assets/mxgraph/src/shape/mxMarker.js:220", "shortDescription": {"text": "Commented-code block (5 lines) in diagrams.net/assets/mxgraph/src/shape/mxMarker.js:220"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f1fa89c9d7540c26", "name": "Commented-code block (6 lines) in diagrams.net/assets/mxgraph/src/shape/mxStencil.js:419", "shortDescription": {"text": "Commented-code block (6 lines) in diagrams.net/assets/mxgraph/src/shape/mxStencil.js:419"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8514e6da586268af", "name": "Commented-code block (7 lines) in diagrams.net/assets/mxgraph/src/view/mxEdgeStyle.js:1599", "shortDescription": {"text": "Commented-code block (7 lines) in diagrams.net/assets/mxgraph/src/view/mxEdgeStyle.js:1599"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5da1034efda2d514", "name": "Commented-code block (5 lines) in diagrams.net/assets/mxgraph/src/view/mxCellRenderer.js:501", "shortDescription": {"text": "Commented-code block (5 lines) in diagrams.net/assets/mxgraph/src/view/mxCellRenderer.js:501"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-77f96a692fdc5a8c", "name": "Commented-code block (5 lines) in diagrams.net/assets/mxgraph/src/view/mxGraph.js:13297", "shortDescription": {"text": "Commented-code block (5 lines) in diagrams.net/assets/mxgraph/src/view/mxGraph.js:13297"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-997d81f562a665b5", "name": "Commented-code block (5 lines) in diagrams.net/assets/shapes/mxAWS4.js:309", "shortDescription": {"text": "Commented-code block (5 lines) in diagrams.net/assets/shapes/mxAWS4.js:309"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4cf8516cfce34de5", "name": "Commented-code block (5 lines) in diagrams.net/assets/shapes/mxAWS3D.js:8987", "shortDescription": {"text": "Commented-code block (5 lines) in diagrams.net/assets/shapes/mxAWS3D.js:8987"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-32acf9bda808da61", "name": "Legacy-named symbol `mxShapeElectricalDCSource3_v2` in diagrams.net/assets/shapes/mxElectrical.js:1786", "shortDescription": {"text": "Legacy-named symbol `mxShapeElectricalDCSource3_v2` in diagrams.net/assets/shapes/mxElectrical.js:1786"}, "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-eeb5286f15ba8074", "name": "Commented-code block (5 lines) in diagrams.net/assets/shapes/mxFloorplan.js:471", "shortDescription": {"text": "Commented-code block (5 lines) in diagrams.net/assets/shapes/mxFloorplan.js:471"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-82697f314301c139", "name": "Legacy-named symbol `xOld` in diagrams.net/assets/shapes/mockup/mxMockupiOS.js:186", "shortDescription": {"text": "Legacy-named symbol `xOld` in diagrams.net/assets/shapes/mockup/mxMockupiOS.js:186"}, "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-e295f04551a95bcb", "name": "`fetch()` without try/.catch or AbortSignal \u2014 diagrams.net/src/worker.js:79", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 diagrams.net/src/worker.js:79"}, "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}}]}}, "automationDetails": {"id": "repobility/23513"}, "properties": {"repository": "yuzutech/kroki", "repoUrl": "https://github.com/yuzutech/kroki", "branch": "main"}, "results": [{"ruleId": "scanner-db82afe3777930b4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 dbml/index.js:14"}, "properties": {"repobilityId": "7a5dedb9f5c757cb", "scanner": "scanner-primary", "fingerprint": "db82afe3777930b4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-44ed2a88f6e69be2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 nomnoml/index.js:12"}, "properties": {"repobilityId": "d6ea764da1b4d4f9", "scanner": "scanner-primary", "fingerprint": "44ed2a88f6e69be2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a2908d335d3f9637", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 excalidraw/src/index.js:46"}, "properties": {"repobilityId": "1a2892adcf6ceebb", "scanner": "scanner-primary", "fingerprint": "a2908d335d3f9637", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-f754a8d35b2848ed", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 mermaid/src/index.js:22"}, "properties": {"repobilityId": "bb3a26f88c7e1cbf", "scanner": "scanner-primary", "fingerprint": "f754a8d35b2848ed", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-b6a12aae461dc0db", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/mxPartitionLayout.js:100"}, "properties": {"repobilityId": "6ec9c5e85924a861", "scanner": "scanner-primary", "fingerprint": "b6a12aae461dc0db", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-edaf64c7cd191510", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/mxGraphLayout.js:399"}, "properties": {"repobilityId": "23b5acc6ca4829a9", "scanner": "scanner-primary", "fingerprint": "edaf64c7cd191510", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-855abb4097913c27", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/mxSwimlaneLayout.js:233"}, "properties": {"repobilityId": "073409f80d90fc24", "scanner": "scanner-primary", "fingerprint": "855abb4097913c27", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-f239be1fb30aed9d", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/mxHierarchicalLayout.js:241"}, "properties": {"repobilityId": "4fc773d2d87438d3", "scanner": "scanner-primary", "fingerprint": "f239be1fb30aed9d", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-acc42df66a835cc8", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/stage/mxMedianHybridCrossingReduction.js:315"}, "properties": {"repobilityId": "af1cdbba31904efe", "scanner": "scanner-primary", "fingerprint": "acc42df66a835cc8", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-ef6d6c409848a86a", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/model/mxSwimlaneModel.js:435"}, "properties": {"repobilityId": "80dce75df6c8b58e", "scanner": "scanner-primary", "fingerprint": "ef6d6c409848a86a", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-b36ca3d3ac86d8b5", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/layout/hierarchical/model/mxGraphHierarchyModel.js:389"}, "properties": {"repobilityId": "7eba7d0d07601121", "scanner": "scanner-primary", "fingerprint": "b36ca3d3ac86d8b5", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-412d423a92ab44c0", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxXmlCanvas2D.js:187"}, "properties": {"repobilityId": "6cc977acdc94ab58", "scanner": "scanner-primary", "fingerprint": "412d423a92ab44c0", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-f261abeb8a4c7ea7", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxXmlRequest.js:285"}, "properties": {"repobilityId": "a21896dc214438ca", "scanner": "scanner-primary", "fingerprint": "f261abeb8a4c7ea7", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-ec570a67e3270fca", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxUtils.js:398"}, "properties": {"repobilityId": "2b879c60f0c2c40e", "scanner": "scanner-primary", "fingerprint": "ec570a67e3270fca", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-13c9311f6fe9faf5", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxMorphing.js:221"}, "properties": {"repobilityId": "f7bca445b9590e9b", "scanner": "scanner-primary", "fingerprint": "13c9311f6fe9faf5", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-ee2abcd524b457af", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxSvgCanvas2D.js:720"}, "properties": {"repobilityId": "c75c9d4cc4407121", "scanner": "scanner-primary", "fingerprint": "ee2abcd524b457af", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-bf49f6d7dcff3a51", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/util/mxPanningManager.js:69"}, "properties": {"repobilityId": "391418730bf374d0", "scanner": "scanner-primary", "fingerprint": "bf49f6d7dcff3a51", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-bb499e80041ccd7f", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/handler/mxConnectionHandler.js:1524"}, "properties": {"repobilityId": "980c37296b576f3f", "scanner": "scanner-primary", "fingerprint": "bb499e80041ccd7f", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-de90b6d92399ce9a", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/handler/mxVertexHandler.js:1177"}, "properties": {"repobilityId": "a21178258822c005", "scanner": "scanner-primary", "fingerprint": "de90b6d92399ce9a", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-f3dae096fcc3fac5", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/shape/mxStencil.js:419"}, "properties": {"repobilityId": "f2ed506a963d1b35", "scanner": "scanner-primary", "fingerprint": "f3dae096fcc3fac5", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-2ca7f81a179bc243", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/shape/mxText.js:1235"}, "properties": {"repobilityId": "5636900ddb5a11ae", "scanner": "scanner-primary", "fingerprint": "2ca7f81a179bc243", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-b9ee2fc97f51c0b6", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/shape/mxDoubleEllipse.js:86"}, "properties": {"repobilityId": "4ef458cfb286b9ee", "scanner": "scanner-primary", "fingerprint": "b9ee2fc97f51c0b6", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-4559bcf075e71cfd", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/shape/mxShape.js:696"}, "properties": {"repobilityId": "a382933cca7798cf", "scanner": "scanner-primary", "fingerprint": "4559bcf075e71cfd", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-c29e45041b4c14ad", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/view/mxEdgeStyle.js:809"}, "properties": {"repobilityId": "29ddcb5384384d4d", "scanner": "scanner-primary", "fingerprint": "c29e45041b4c14ad", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-34dc954b0ac16e93", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/mxgraph/src/view/mxEdgeStyle.js:1091"}, "properties": {"repobilityId": "4dce8c1a89ac0a4c", "scanner": "scanner-primary", "fingerprint": "34dc954b0ac16e93", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-37b7c9dffdd3d456", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/view/mxGraphView.js:1389"}, "properties": {"repobilityId": "58b86089d9ebdac4", "scanner": "scanner-primary", "fingerprint": "37b7c9dffdd3d456", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-ff42ecb32eb1e8be", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/view/mxCellRenderer.js:526"}, "properties": {"repobilityId": "9eee8fe9cbb3f647", "scanner": "scanner-primary", "fingerprint": "ff42ecb32eb1e8be", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-c8dbc668fa3cb968", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/mxgraph/src/view/mxGraph.js:4875"}, "properties": {"repobilityId": "030275318685e747", "scanner": "scanner-primary", "fingerprint": "c8dbc668fa3cb968", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-bbb0bb0a1ed14e0b", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/shapes/er/mxER.js:5"}, "properties": {"repobilityId": "20e8280b7d96bfc2", "scanner": "scanner-primary", "fingerprint": "bbb0bb0a1ed14e0b", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-207f912b14183088", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/shapes/emoji/mxEmoji.js:1909"}, "properties": {"repobilityId": "b59223eef7255120", "scanner": "scanner-primary", "fingerprint": "207f912b14183088", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-8ed182839d732405", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/shapes/mockup/mxMockupContainers.js:1221"}, "properties": {"repobilityId": "ee23e2b6da49c96e", "scanner": "scanner-primary", "fingerprint": "8ed182839d732405", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-943e978fec056fc0", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/assets/js/export.js:6"}, "properties": {"repobilityId": "bf6e74a078459e2b", "scanner": "scanner-primary", "fingerprint": "943e978fec056fc0", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-344cc2ba220017de", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/js/export.js:90"}, "properties": {"repobilityId": "8c879d30c02a428d", "scanner": "scanner-primary", "fingerprint": "344cc2ba220017de", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6ec2f101fb82b8ae", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/math4/es5/startup.js:1"}, "properties": {"repobilityId": "51b934b322a6a1e6", "scanner": "scanner-primary", "fingerprint": "6ec2f101fb82b8ae", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8960d2de02174631", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/math4/es5/input/tex.js:1"}, "properties": {"repobilityId": "600070c458dbbfa0", "scanner": "scanner-primary", "fingerprint": "8960d2de02174631", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a60abfb9d5c5f0bc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 diagrams.net/assets/math4/es5/input/asciimath.js:1"}, "properties": {"repobilityId": "abdf0302612eaac9", "scanner": "scanner-primary", "fingerprint": "a60abfb9d5c5f0bc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0d811c53e72cac5d", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 diagrams.net/src/index.js:24"}, "properties": {"repobilityId": "ab559454c187ec1b", "scanner": "scanner-primary", "fingerprint": "0d811c53e72cac5d", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-7738d84c67219563", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 vega/src/main.ts:45"}, "properties": {"repobilityId": "7514ef660fec7a21", "scanner": "scanner-primary", "fingerprint": "7738d84c67219563", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a7e193053539bd0b", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 bpmn/src/index.js:17"}, "properties": {"repobilityId": "e1f7e4cee690a53d", "scanner": "scanner-primary", "fingerprint": "a7e193053539bd0b", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-4699209336b8efdf", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 ci/tests/smoke.js:104"}, "properties": {"repobilityId": "f7084c30d0672b6d", "scanner": "scanner-primary", "fingerprint": "4699209336b8efdf", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9d186072d9172682", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 ci/tasks/update-versions.js:245"}, "properties": {"repobilityId": "1d0f03e2f9a9c402", "scanner": "scanner-primary", "fingerprint": "9d186072d9172682", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3d3fea86626c6ea6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 bytefield/index.js:18"}, "properties": {"repobilityId": "e168a4ab8c080529", "scanner": "scanner-primary", "fingerprint": "3d3fea86626c6ea6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fa89cd572fbaf246", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 wavedrom/index.js:13"}, "properties": {"repobilityId": "9dedc4de9552568a", "scanner": "scanner-primary", "fingerprint": "fa89cd572fbaf246", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-78b28d0b64654790", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-alpine3.23"}, "properties": {"repobilityId": "d2ec7f86f60e695a", "scanner": "scanner-primary", "fingerprint": "78b28d0b64654790", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "excalidraw/Dockerfile"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-78b28d0b64654790", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-alpine3.23"}, "properties": {"repobilityId": "b54952813ae5e473", "scanner": "scanner-primary", "fingerprint": "78b28d0b64654790", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "excalidraw/Dockerfile"}, "region": {"startLine": 14}}}]}, {"ruleId": "scanner-095411a25f9182b9", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-alpine3.23"}, "properties": {"repobilityId": "3c0ad6ebc30c3faf", "scanner": "scanner-primary", "fingerprint": "095411a25f9182b9", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mermaid/Dockerfile"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-951c5f3ed1cd237e", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-alpine3.23"}, "properties": {"repobilityId": "b53fead783c6ce9c", "scanner": "scanner-primary", "fingerprint": "951c5f3ed1cd237e", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/Dockerfile"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-bdc3072c3e5a9727", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-bookworm-slim"}, "properties": {"repobilityId": "ca7ca54d7c8eee97", "scanner": "scanner-primary", "fingerprint": "bdc3072c3e5a9727", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "server/ops/docker/Dockerfile"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-bdc3072c3e5a9727", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-bookworm-slim"}, "properties": {"repobilityId": "e085120315ea6c84", "scanner": "scanner-primary", "fingerprint": "bdc3072c3e5a9727", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "server/ops/docker/Dockerfile"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-3a7dee70b6739044", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: ubuntu:noble"}, "properties": {"repobilityId": "fe4bc2ecf53a76ab", "scanner": "scanner-primary", "fingerprint": "3a7dee70b6739044", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "server/ops/docker/Dockerfile"}, "region": {"startLine": 18}}}]}, {"ruleId": "scanner-bdc3072c3e5a9727", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-bookworm-slim"}, "properties": {"repobilityId": "d2986260064662c9", "scanner": "scanner-primary", "fingerprint": "bdc3072c3e5a9727", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "server/ops/docker/Dockerfile"}, "region": {"startLine": 43}}}]}, {"ruleId": "scanner-bdc3072c3e5a9727", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-bookworm-slim"}, "properties": {"repobilityId": "891a09baee3e7e37", "scanner": "scanner-primary", "fingerprint": "bdc3072c3e5a9727", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "server/ops/docker/Dockerfile"}, "region": {"startLine": 54}}}]}, {"ruleId": "scanner-bdc3072c3e5a9727", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-bookworm-slim"}, "properties": {"repobilityId": "0cb90eecb4b74d14", "scanner": "scanner-primary", "fingerprint": "bdc3072c3e5a9727", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "server/ops/docker/Dockerfile"}, "region": {"startLine": 65}}}]}, {"ruleId": "scanner-3a7dee70b6739044", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: ubuntu:noble"}, "properties": {"repobilityId": "b79cafa5e524d09c", "scanner": "scanner-primary", "fingerprint": "3a7dee70b6739044", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "server/ops/docker/Dockerfile"}, "region": {"startLine": 76}}}]}, {"ruleId": "scanner-3a7dee70b6739044", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: ubuntu:noble"}, "properties": {"repobilityId": "e20fd7c350ea7c42", "scanner": "scanner-primary", "fingerprint": "3a7dee70b6739044", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "server/ops/docker/Dockerfile"}, "region": {"startLine": 104}}}]}, {"ruleId": "scanner-28b870b37358d6e6", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: rust:1.96-slim-bullseye"}, "properties": {"repobilityId": "d7189894d3368a96", "scanner": "scanner-primary", "fingerprint": "28b870b37358d6e6", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "server/ops/docker/Dockerfile"}, "region": {"startLine": 122}}}]}, {"ruleId": "scanner-5b69f217e695d9ba", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: ghcr.io/yuzutech/erd:v0.2.3"}, "properties": {"repobilityId": "ba7054a86856dfce", "scanner": "scanner-primary", "fingerprint": "5b69f217e695d9ba", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "server/ops/docker/Dockerfile"}, "region": {"startLine": 147}}}]}, {"ruleId": "scanner-b8db9d37d9b5c664", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: golang:1.26.4-alpine"}, "properties": {"repobilityId": "c8a1c6625ae7b67b", "scanner": "scanner-primary", "fingerprint": "b8db9d37d9b5c664", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "server/ops/docker/Dockerfile"}, "region": {"startLine": 150}}}]}, {"ruleId": "scanner-9921b6687e6ab020", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: eclipse-temurin:21.0.9_10-jre-noble"}, "properties": {"repobilityId": "e044870071949328", "scanner": "scanner-primary", "fingerprint": "9921b6687e6ab020", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "server/ops/docker/Dockerfile"}, "region": {"startLine": 158}}}]}, {"ruleId": "scanner-27c4262657c5cbe6", "level": "error", "message": {"text": "Dockerfile pipes a remote installer into a shell"}, "properties": {"repobilityId": "1bd696f70e035548", "scanner": "scanner-primary", "fingerprint": "27c4262657c5cbe6", "layer": "hardware", "severity": "high", "confidence": 1.0, "tags": ["supply-chain", "docker", "remote-installer"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "server/ops/docker/Dockerfile"}, "region": {"startLine": 25}}}]}, {"ruleId": "scanner-17503e36bff38498", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: node:24.16-alpine3.23"}, "properties": {"repobilityId": "6a2d6ab45bd7a703", "scanner": "scanner-primary", "fingerprint": "17503e36bff38498", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "bpmn/Dockerfile"}, "region": {"startLine": 1}}}]}, {"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-7a76bbed342b366c", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mermaid/assets/mermaid/mermaid.esm.min.mjs:8"}, "properties": {"repobilityId": "91408d616a84ef5a", "scanner": "scanner-primary", "fingerprint": "7a76bbed342b366c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mermaid/assets/mermaid/mermaid.esm.min.mjs"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-345e57f467bf739e", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-7W6UQGC5.mjs:1"}, "properties": {"repobilityId": "6872b6da3f56d325", "scanner": "scanner-primary", "fingerprint": "345e57f467bf739e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-7W6UQGC5.mjs"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a6543b41100b058e", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-67TQ5CYL.mjs:2"}, "properties": {"repobilityId": "6185ba860b0c529a", "scanner": "scanner-primary", "fingerprint": "a6543b41100b058e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-67TQ5CYL.mjs"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-31f78a7336f5b9ab", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-QA3QBVWF.mjs:2"}, "properties": {"repobilityId": "c87a47dc09c591b4", "scanner": "scanner-primary", "fingerprint": "31f78a7336f5b9ab", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-QA3QBVWF.mjs"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-881c528bb4ba65f9", "level": "error", "message": {"text": "Insecure pattern 'eval_used' in diagrams.net/assets/mxgraph/mxClient.js:36"}, "properties": {"repobilityId": "c0551bf9e82a65fe", "scanner": "scanner-primary", "fingerprint": "881c528bb4ba65f9", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "eval_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/mxgraph/mxClient.js"}, "region": {"startLine": 36}}}]}, {"ruleId": "scanner-c9dc30fef4e6e7d8", "level": "note", "message": {"text": "Insecure pattern 'document_write' in diagrams.net/assets/mxgraph/mxClient.js:7"}, "properties": {"repobilityId": "b78dd705106da291", "scanner": "scanner-primary", "fingerprint": "c9dc30fef4e6e7d8", "layer": "security", "severity": "low", "confidence": 1.0, "tags": ["owasp", "document_write"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/mxgraph/mxClient.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-f66ff59af73f8d5f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/mxClient.js:45"}, "properties": {"repobilityId": "62408fda6cb3a81b", "scanner": "scanner-primary", "fingerprint": "f66ff59af73f8d5f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/mxgraph/mxClient.js"}, "region": {"startLine": 45}}}]}, {"ruleId": "scanner-189ed0363c5ed9a3", "level": "warning", "message": {"text": "Insecure pattern 'domparser_html_parse' in diagrams.net/assets/mxgraph/mxClient.js:319"}, "properties": {"repobilityId": "134dd87eda9252bb", "scanner": "scanner-primary", "fingerprint": "189ed0363c5ed9a3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "domparser_html_parse"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/mxgraph/mxClient.js"}, "region": {"startLine": 319}}}]}, {"ruleId": "scanner-c97b66ec0538ff13", "level": "note", "message": {"text": "Insecure pattern 'document_write' in diagrams.net/assets/mxgraph/src/mxClient.js:347"}, "properties": {"repobilityId": "c421130c8db9a2cf", "scanner": "scanner-primary", "fingerprint": "c97b66ec0538ff13", "layer": "security", "severity": "low", "confidence": 1.0, "tags": ["owasp", "document_write"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/mxgraph/src/mxClient.js"}, "region": {"startLine": 347}}}]}, {"ruleId": "scanner-5228e3fec0b791a8", "level": "error", "message": {"text": "Insecure pattern 'eval_used' in diagrams.net/assets/mxgraph/src/util/mxUtils.js:396"}, "properties": {"repobilityId": "9fa6315ead77c753", "scanner": "scanner-primary", "fingerprint": "5228e3fec0b791a8", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "eval_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/mxgraph/src/util/mxUtils.js"}, "region": {"startLine": 396}}}]}, {"ruleId": "scanner-343fe85fe9ee33f9", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/util/mxUtils.js:1056"}, "properties": {"repobilityId": "970e9a7c79d5c7a8", "scanner": "scanner-primary", "fingerprint": "343fe85fe9ee33f9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/mxgraph/src/util/mxUtils.js"}, "region": {"startLine": 1056}}}]}, {"ruleId": "scanner-8b7ac97c0aa147ed", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/util/mxSvgCanvas2D.js:1575"}, "properties": {"repobilityId": "5f1be6f5d949d9ff", "scanner": "scanner-primary", "fingerprint": "8b7ac97c0aa147ed", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/mxgraph/src/util/mxSvgCanvas2D.js"}, "region": {"startLine": 1575}}}]}, {"ruleId": "scanner-d5ce01b2bf10e86e", "level": "warning", "message": {"text": "Insecure pattern 'domparser_html_parse' in diagrams.net/assets/mxgraph/src/util/mxSvgCanvas2D.js:180"}, "properties": {"repobilityId": "96e03c2b681ca087", "scanner": "scanner-primary", "fingerprint": "d5ce01b2bf10e86e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "domparser_html_parse"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/mxgraph/src/util/mxSvgCanvas2D.js"}, "region": {"startLine": 180}}}]}, {"ruleId": "scanner-155397d93b5fc7c5", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/handler/mxTooltipHandler.js:321"}, "properties": {"repobilityId": "0be6ce4aee227194", "scanner": "scanner-primary", "fingerprint": "155397d93b5fc7c5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/mxgraph/src/handler/mxTooltipHandler.js"}, "region": {"startLine": 321}}}]}, {"ruleId": "scanner-4f73e21a4efb27ab", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/shape/mxText.js:889"}, "properties": {"repobilityId": "5761caa4a8c84c7f", "scanner": "scanner-primary", "fingerprint": "4f73e21a4efb27ab", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/mxgraph/src/shape/mxText.js"}, "region": {"startLine": 889}}}]}, {"ruleId": "scanner-76eef3bfe1bf5262", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/mxgraph/src/view/mxCellEditor.js:402"}, "properties": {"repobilityId": "d2f5428b6987d785", "scanner": "scanner-primary", "fingerprint": "76eef3bfe1bf5262", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/mxgraph/src/view/mxCellEditor.js"}, "region": {"startLine": 402}}}]}, {"ruleId": "scanner-46fb73859d37607c", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/js/export.js:19"}, "properties": {"repobilityId": "d372181353b2d305", "scanner": "scanner-primary", "fingerprint": "46fb73859d37607c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/js/export.js"}, "region": {"startLine": 19}}}]}, {"ruleId": "scanner-ed066801ce55d706", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/core.js:1"}, "properties": {"repobilityId": "c612d1893bf06518", "scanner": "scanner-primary", "fingerprint": "ed066801ce55d706", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/core.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-64b50e3fc3a62909", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in diagrams.net/assets/math4/es5/core.js:1"}, "properties": {"repobilityId": "e884123c375f3b13", "scanner": "scanner-primary", "fingerprint": "64b50e3fc3a62909", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/core.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f38f568525cc459c", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/startup.js:1"}, "properties": {"repobilityId": "f530bd867015f21c", "scanner": "scanner-primary", "fingerprint": "f38f568525cc459c", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/startup.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3a56241c7644f4ee", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex.js:1"}, "properties": {"repobilityId": "c6f309e68ee9afab", "scanner": "scanner-primary", "fingerprint": "3a56241c7644f4ee", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9490a9f458a70f29", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/asciimath.js:1"}, "properties": {"repobilityId": "3c29b411b4a1de2d", "scanner": "scanner-primary", "fingerprint": "9490a9f458a70f29", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/asciimath.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-537cb00bad309961", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/enclose.js:1"}, "properties": {"repobilityId": "cadbb16038f49130", "scanner": "scanner-primary", "fingerprint": "537cb00bad309961", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/enclose.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c18104d28bf901ae", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/bussproofs.js:1"}, "properties": {"repobilityId": "58a5628a45d9cf2c", "scanner": "scanner-primary", "fingerprint": "c18104d28bf901ae", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/bussproofs.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ea160feb0c399a76", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/physics.js:1"}, "properties": {"repobilityId": "2874c9eb586b621f", "scanner": "scanner-primary", "fingerprint": "ea160feb0c399a76", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/physics.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-31d89a40c28c948d", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/bbox.js:1"}, "properties": {"repobilityId": "b761a58f52600267", "scanner": "scanner-primary", "fingerprint": "31d89a40c28c948d", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/bbox.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a0a5daa33d90b25d", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/mathtools.js:1"}, "properties": {"repobilityId": "997a64239d3b2a16", "scanner": "scanner-primary", "fingerprint": "a0a5daa33d90b25d", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/mathtools.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4557cbcef6e55197", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/mhchem.js:1"}, "properties": {"repobilityId": "074d17170306371c", "scanner": "scanner-primary", "fingerprint": "4557cbcef6e55197", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/mhchem.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5419d547a3abc5b6", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/cases.js:1"}, "properties": {"repobilityId": "429fe0823dd227c8", "scanner": "scanner-primary", "fingerprint": "5419d547a3abc5b6", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/cases.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2272aa24207a7390", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/amscd.js:1"}, "properties": {"repobilityId": "f73302c1ec063cd6", "scanner": "scanner-primary", "fingerprint": "2272aa24207a7390", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/amscd.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7aaf333bc7221e4e", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/extpfeil.js:1"}, "properties": {"repobilityId": "eff4336c04d7c94b", "scanner": "scanner-primary", "fingerprint": "7aaf333bc7221e4e", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/extpfeil.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7321aa4876bc62a7", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/dsfont.js:1"}, "properties": {"repobilityId": "4c09ace6c164eb76", "scanner": "scanner-primary", "fingerprint": "7321aa4876bc62a7", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/dsfont.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-36bd4da254fe20a0", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/centernot.js:1"}, "properties": {"repobilityId": "6eec2c046a1c17ec", "scanner": "scanner-primary", "fingerprint": "36bd4da254fe20a0", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/centernot.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-687162a1a98b79b3", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/units.js:1"}, "properties": {"repobilityId": "570988ff1607f347", "scanner": "scanner-primary", "fingerprint": "687162a1a98b79b3", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/units.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-74cc513ed3dd600e", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/verb.js:1"}, "properties": {"repobilityId": "a2c6ba91ef3ec67b", "scanner": "scanner-primary", "fingerprint": "74cc513ed3dd600e", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/verb.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ad63e3c2b2daf0f0", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/begingroup.js:1"}, "properties": {"repobilityId": "327ef4b603d068cb", "scanner": "scanner-primary", "fingerprint": "ad63e3c2b2daf0f0", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/begingroup.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b68c6d27d57cffd8", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/bboldx.js:1"}, "properties": {"repobilityId": "8c5a66ad87f491b7", "scanner": "scanner-primary", "fingerprint": "b68c6d27d57cffd8", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/bboldx.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-82364e2eae709c20", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/unicode.js:1"}, "properties": {"repobilityId": "41041c3d1c48fd88", "scanner": "scanner-primary", "fingerprint": "82364e2eae709c20", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/unicode.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-20c058795ef26019", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/color.js:1"}, "properties": {"repobilityId": "68027dc9ba0d657e", "scanner": "scanner-primary", "fingerprint": "20c058795ef26019", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/color.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-13c87c634b381fe4", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/braket.js:1"}, "properties": {"repobilityId": "a6c4ade51d53c86b", "scanner": "scanner-primary", "fingerprint": "13c87c634b381fe4", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/braket.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a5d4b7643a857dfe", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/boldsymbol.js:1"}, "properties": {"repobilityId": "9e2f4a806a71fe56", "scanner": "scanner-primary", "fingerprint": "a5d4b7643a857dfe", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/boldsymbol.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-54c11d2187f56f44", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/html.js:1"}, "properties": {"repobilityId": "ad79fb9bf5250bb3", "scanner": "scanner-primary", "fingerprint": "54c11d2187f56f44", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/html.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-edd7fe31445fbbbc", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/upgreek.js:1"}, "properties": {"repobilityId": "631b7b083e768a24", "scanner": "scanner-primary", "fingerprint": "edd7fe31445fbbbc", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/upgreek.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ad198e665af6f86e", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/empheq.js:1"}, "properties": {"repobilityId": "557e1a7cb96ed109", "scanner": "scanner-primary", "fingerprint": "ad198e665af6f86e", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/empheq.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e58ee3a9b57c0c2a", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/textcomp.js:1"}, "properties": {"repobilityId": "3836bc7f2520f28b", "scanner": "scanner-primary", "fingerprint": "e58ee3a9b57c0c2a", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/textcomp.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-680611ae35845762", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/cancel.js:1"}, "properties": {"repobilityId": "353f5dede6dd2290", "scanner": "scanner-primary", "fingerprint": "680611ae35845762", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/cancel.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-62597989820528de", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/gensymb.js:1"}, "properties": {"repobilityId": "e324930dd56afef7", "scanner": "scanner-primary", "fingerprint": "62597989820528de", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/gensymb.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b66ef7027811cd3b", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/action.js:1"}, "properties": {"repobilityId": "bcf8d43ad8e11913", "scanner": "scanner-primary", "fingerprint": "b66ef7027811cd3b", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/action.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-bacb56a5b953b624", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/bbm.js:1"}, "properties": {"repobilityId": "0e37ac9ca3001a40", "scanner": "scanner-primary", "fingerprint": "bacb56a5b953b624", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/bbm.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2ade82907e7f659f", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/input/tex/extensions/colortbl.js:1"}, "properties": {"repobilityId": "b94b5436ee9af8e3", "scanner": "scanner-primary", "fingerprint": "2ade82907e7f659f", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/input/tex/extensions/colortbl.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2800ded0fd1130a9", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/ui/safe.js:1"}, "properties": {"repobilityId": "538b55273ad056d7", "scanner": "scanner-primary", "fingerprint": "2800ded0fd1130a9", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/ui/safe.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3826a6a02af3628a", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-mhchem-font-extension/svg.js:1"}, "properties": {"repobilityId": "51b5047ae10a197c", "scanner": "scanner-primary", "fingerprint": "3826a6a02af3628a", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/fonts/mathjax-mhchem-font-extension/svg.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d49d85039485475f", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-mhchem-font-extension/chtml.js:1"}, "properties": {"repobilityId": "d01f43c2a5a7999f", "scanner": "scanner-primary", "fingerprint": "d49d85039485475f", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/fonts/mathjax-mhchem-font-extension/chtml.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9dd0a12dc9b0d48d", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-bboldx-font-extension/svg.js:1"}, "properties": {"repobilityId": "664cca0d633bc7db", "scanner": "scanner-primary", "fingerprint": "9dd0a12dc9b0d48d", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/fonts/mathjax-bboldx-font-extension/svg.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8b328b79fb19ef56", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-bboldx-font-extension/chtml.js:1"}, "properties": {"repobilityId": "3d96d4a7eba9a665", "scanner": "scanner-primary", "fingerprint": "8b328b79fb19ef56", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/fonts/mathjax-bboldx-font-extension/chtml.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-76ae10466328559f", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-tex-font/chtml.js:1"}, "properties": {"repobilityId": "a8d1a268b01edf1d", "scanner": "scanner-primary", "fingerprint": "76ae10466328559f", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/fonts/mathjax-tex-font/chtml.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4da2423c919551a0", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-dsfont-font-extension/svg.js:1"}, "properties": {"repobilityId": "e4b9363c37628e9a", "scanner": "scanner-primary", "fingerprint": "4da2423c919551a0", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/fonts/mathjax-dsfont-font-extension/svg.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-90bfe82ccffa8b2e", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-dsfont-font-extension/chtml.js:1"}, "properties": {"repobilityId": "144d81280537187f", "scanner": "scanner-primary", "fingerprint": "90bfe82ccffa8b2e", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/fonts/mathjax-dsfont-font-extension/chtml.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-97299774886b8a8d", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-bbm-font-extension/svg.js:1"}, "properties": {"repobilityId": "fcd17608694b7c71", "scanner": "scanner-primary", "fingerprint": "97299774886b8a8d", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/fonts/mathjax-bbm-font-extension/svg.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1fa39e7084738419", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/fonts/mathjax-bbm-font-extension/chtml.js:1"}, "properties": {"repobilityId": "e46a65c39ee7dd2e", "scanner": "scanner-primary", "fingerprint": "1fa39e7084738419", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/fonts/mathjax-bbm-font-extension/chtml.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-907e3f94fd343478", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/output/svg.js:1"}, "properties": {"repobilityId": "8ec7db8f021c9c74", "scanner": "scanner-primary", "fingerprint": "907e3f94fd343478", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/output/svg.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-da4392d19214fa10", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in diagrams.net/assets/math4/es5/output/chtml.js:1"}, "properties": {"repobilityId": "f38086222dad11d9", "scanner": "scanner-primary", "fingerprint": "da4392d19214fa10", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "diagrams.net/assets/math4/es5/output/chtml.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4f4c2d3aaa32a2dc", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in server/src/main/java/io/kroki/server/response/Caching.java:67"}, "properties": {"repobilityId": "be2d0a7bf3b2d9dc", "scanner": "scanner-primary", "fingerprint": "4f4c2d3aaa32a2dc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "server/src/main/java/io/kroki/server/response/Caching.java"}, "region": {"startLine": 67}}}]}, {"ruleId": "scanner-96d41c5a0d458967", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in bpmn/assets/bpmn-viewer.production.min.js:2"}, "properties": {"repobilityId": "e4d85aa36ee5d60a", "scanner": "scanner-primary", "fingerprint": "96d41c5a0d458967", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "bpmn/assets/bpmn-viewer.production.min.js"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-1adb9f56a2d61373", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in bpmn/src/worker.js:47"}, "properties": {"repobilityId": "1a919bc63027085c", "scanner": "scanner-primary", "fingerprint": "1adb9f56a2d61373", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "bpmn/src/worker.js"}, "region": {"startLine": 47}}}]}, {"ruleId": "scanner-ec0da1cb5f9757fc", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in ci/tasks/update-versions.js:7"}, "properties": {"repobilityId": "047e370686abef99", "scanner": "scanner-primary", "fingerprint": "ec0da1cb5f9757fc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "ci/tasks/update-versions.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-69a60de0ebfa004d", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "d95729e41ca51864", "scanner": "scanner-primary", "fingerprint": "69a60de0ebfa004d", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/dockerhub-description.yml"}, "region": {"startLine": 15}}}]}, {"ruleId": "scanner-69a60de0ebfa004d", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "d95729e41ca51864", "scanner": "scanner-primary", "fingerprint": "69a60de0ebfa004d", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/dockerhub-description.yml"}, "region": {"startLine": 24}}}]}, {"ruleId": "scanner-69a60de0ebfa004d", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "d95729e41ca51864", "scanner": "scanner-primary", "fingerprint": "69a60de0ebfa004d", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/dockerhub-description.yml"}, "region": {"startLine": 33}}}]}, {"ruleId": "scanner-69a60de0ebfa004d", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "d95729e41ca51864", "scanner": "scanner-primary", "fingerprint": "69a60de0ebfa004d", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/dockerhub-description.yml"}, "region": {"startLine": 42}}}]}, {"ruleId": "scanner-69a60de0ebfa004d", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "d95729e41ca51864", "scanner": "scanner-primary", "fingerprint": "69a60de0ebfa004d", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/dockerhub-description.yml"}, "region": {"startLine": 51}}}]}, {"ruleId": "scanner-304286c285429eb0", "level": "error", "message": {"text": "GitHub Action tracks a moving branch"}, "properties": {"repobilityId": "370f2499e70bc5f7", "scanner": "scanner-primary", "fingerprint": "304286c285429eb0", "layer": "cicd", "severity": "high", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/cve-scan.yml"}, "region": {"startLine": 17}}}]}, {"ruleId": "scanner-b4c1620aecd8a426", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "984ed3c95d176ca4", "scanner": "scanner-primary", "fingerprint": "b4c1620aecd8a426", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/main.yaml"}, "region": {"startLine": 193}}}]}, {"ruleId": "scanner-b4c1620aecd8a426", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "e91f6fbbbcdcf950", "scanner": "scanner-primary", "fingerprint": "b4c1620aecd8a426", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/main.yaml"}, "region": {"startLine": 199}}}]}, {"ruleId": "scanner-b4c1620aecd8a426", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "49238e79cc6d8f2f", "scanner": "scanner-primary", "fingerprint": "b4c1620aecd8a426", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/main.yaml"}, "region": {"startLine": 209}}}]}, {"ruleId": "scanner-b4c1620aecd8a426", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "a8395fbd0f0b8fc2", "scanner": "scanner-primary", "fingerprint": "b4c1620aecd8a426", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/main.yaml"}, "region": {"startLine": 212}}}]}, {"ruleId": "scanner-b4c1620aecd8a426", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "5661122e68237372", "scanner": "scanner-primary", "fingerprint": "b4c1620aecd8a426", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/main.yaml"}, "region": {"startLine": 220}}}]}, {"ruleId": "scanner-b4c1620aecd8a426", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "7810b1fdb0a2a6ed", "scanner": "scanner-primary", "fingerprint": "b4c1620aecd8a426", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/main.yaml"}, "region": {"startLine": 236}}}]}, {"ruleId": "scanner-6724b12aea6ce71f", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "51deb118e68bd35f", "scanner": "scanner-primary", "fingerprint": "6724b12aea6ce71f", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/docs-notify.yml"}, "region": {"startLine": 16}}}]}, {"ruleId": "scanner-46c644c6227e4d4a", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "cc21d7ce607b082d", "scanner": "scanner-primary", "fingerprint": "46c644c6227e4d4a", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/release.yml"}, "region": {"startLine": 44}}}]}, {"ruleId": "scanner-46c644c6227e4d4a", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "ef030d532832afac", "scanner": "scanner-primary", "fingerprint": "46c644c6227e4d4a", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/release.yml"}, "region": {"startLine": 49}}}]}, {"ruleId": "scanner-46c644c6227e4d4a", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "cc21d7ce607b082d", "scanner": "scanner-primary", "fingerprint": "46c644c6227e4d4a", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/release.yml"}, "region": {"startLine": 268}}}]}, {"ruleId": "scanner-46c644c6227e4d4a", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "ef030d532832afac", "scanner": "scanner-primary", "fingerprint": "46c644c6227e4d4a", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/release.yml"}, "region": {"startLine": 273}}}]}, {"ruleId": "scanner-46c644c6227e4d4a", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "d23ec816d11b45e5", "scanner": "scanner-primary", "fingerprint": "46c644c6227e4d4a", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/release.yml"}, "region": {"startLine": 280}}}]}, {"ruleId": "scanner-46c644c6227e4d4a", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "242206db1caa02bb", "scanner": "scanner-primary", "fingerprint": "46c644c6227e4d4a", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/release.yml"}, "region": {"startLine": 282}}}]}, {"ruleId": "scanner-d2e21a5997014053", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "bee619f8c0bcdf41", "scanner": "scanner-primary", "fingerprint": "d2e21a5997014053", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/mermaid-ci.yaml"}, "region": {"startLine": 23}}}]}, {"ruleId": "scanner-d6aa5f2a1f8fa4ab", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/mxgraph/mxClient.js (1864 lines)"}, "properties": {"repobilityId": "96ade92b92ce1713", "scanner": "scanner-primary", "fingerprint": "d6aa5f2a1f8fa4ab", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-97cc2c5bc021b865", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/mxgraph/src/util/mxConstants.js (2501 lines)"}, "properties": {"repobilityId": "e510defab868fcda", "scanner": "scanner-primary", "fingerprint": "97cc2c5bc021b865", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0a4b64a7897da48b", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/mxgraph/src/util/mxUtils.js (5453 lines)"}, "properties": {"repobilityId": "dceb583a22b6701e", "scanner": "scanner-primary", "fingerprint": "0a4b64a7897da48b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9f737927d4af6989", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/mxgraph/src/util/mxSvgCanvas2D.js (2894 lines)"}, "properties": {"repobilityId": "8ec6b9b4f4fe5168", "scanner": "scanner-primary", "fingerprint": "9f737927d4af6989", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9523dcfeb2e47906", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/mxgraph/src/handler/mxConnectionHandler.js (2285 lines)"}, "properties": {"repobilityId": "7f1a853ec1acacf9", "scanner": "scanner-primary", "fingerprint": "9523dcfeb2e47906", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-84578e57abd79b5b", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/mxgraph/src/handler/mxEdgeHandler.js (2700 lines)"}, "properties": {"repobilityId": "697a9388006e3d61", "scanner": "scanner-primary", "fingerprint": "84578e57abd79b5b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a2ea8b1ba7e6b7f8", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/mxgraph/src/handler/mxVertexHandler.js (2383 lines)"}, "properties": {"repobilityId": "97aeec99403b3b67", "scanner": "scanner-primary", "fingerprint": "a2ea8b1ba7e6b7f8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3f1bb0e860a7d449", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/mxgraph/src/model/mxGraphModel.js (2755 lines)"}, "properties": {"repobilityId": "114aac17dd528057", "scanner": "scanner-primary", "fingerprint": "3f1bb0e860a7d449", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-43229488b5347ef4", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/mxgraph/src/view/mxGraphView.js (2983 lines)"}, "properties": {"repobilityId": "90d9e6e21b2f8eda", "scanner": "scanner-primary", "fingerprint": "43229488b5347ef4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7959cb44d7d7b2a8", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/mxgraph/src/view/mxGraph.js (13607 lines)"}, "properties": {"repobilityId": "6ade9c0cfa9aa863", "scanner": "scanner-primary", "fingerprint": "7959cb44d7d7b2a8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-457b8ba64779885b", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/mxArrows.js (2882 lines)"}, "properties": {"repobilityId": "df84f7371d91e0d0", "scanner": "scanner-primary", "fingerprint": "457b8ba64779885b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-18ad310634ab61a7", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/mxInfographic.js (2667 lines)"}, "properties": {"repobilityId": "d76a6079b7710c3c", "scanner": "scanner-primary", "fingerprint": "18ad310634ab61a7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-1731c504ce3aa7e8", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/mxAWS3D.js (9658 lines)"}, "properties": {"repobilityId": "34d288ea650671f1", "scanner": "scanner-primary", "fingerprint": "1731c504ce3aa7e8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-55147a005d974043", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/mxElectrical.js (5686 lines)"}, "properties": {"repobilityId": "f74b9460743e781c", "scanner": "scanner-primary", "fingerprint": "55147a005d974043", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-530aa0769512ce2f", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/mxLeanMap.js (2228 lines)"}, "properties": {"repobilityId": "9505c3536b52dcee", "scanner": "scanner-primary", "fingerprint": "530aa0769512ce2f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-74a12af197425d49", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/mxBasic.js (3735 lines)"}, "properties": {"repobilityId": "846c8c961dcfe53a", "scanner": "scanner-primary", "fingerprint": "74a12af197425d49", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6ef7982901661279", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/mxArchiMate3.js (4353 lines)"}, "properties": {"repobilityId": "e456ea87d8eb359d", "scanner": "scanner-primary", "fingerprint": "6ef7982901661279", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5e07a5bc9c637882", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/mxSysML.js (3268 lines)"}, "properties": {"repobilityId": "6b922805856afa5a", "scanner": "scanner-primary", "fingerprint": "5e07a5bc9c637882", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ce29df128a2b9901", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/er/mxER.js (1497 lines)"}, "properties": {"repobilityId": "439dad1790400ae3", "scanner": "scanner-primary", "fingerprint": "ce29df128a2b9901", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d9ef34370508245a", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/emoji/mxEmoji.js (1972 lines)"}, "properties": {"repobilityId": "af3fc1dd3b743e13", "scanner": "scanner-primary", "fingerprint": "d9ef34370508245a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3df73217d061332f", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/mockup/mxMockupContainers.js (2118 lines)"}, "properties": {"repobilityId": "98b2ef4c04b154e4", "scanner": "scanner-primary", "fingerprint": "3df73217d061332f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7b6f85c29f1df1d5", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/mockup/mxMockupiOS.js (6693 lines)"}, "properties": {"repobilityId": "157df82dff084e96", "scanner": "scanner-primary", "fingerprint": "7b6f85c29f1df1d5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-105d6cb132e9bf15", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/mockup/mxMockupForms.js (2502 lines)"}, "properties": {"repobilityId": "8f7f24d71c0c20c4", "scanner": "scanner-primary", "fingerprint": "105d6cb132e9bf15", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8228d8183413dc93", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/mockup/mxMockupMisc.js (1685 lines)"}, "properties": {"repobilityId": "d12f923daebf4012", "scanner": "scanner-primary", "fingerprint": "8228d8183413dc93", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6c807e792a3807cc", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/bpmn/mxBpmnShape2.js (2603 lines)"}, "properties": {"repobilityId": "f278a88329c5e506", "scanner": "scanner-primary", "fingerprint": "6c807e792a3807cc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-64697a83aa356177", "level": "note", "message": {"text": "Very large file: diagrams.net/assets/shapes/ios7/mxIOS7Ui.js (1718 lines)"}, "properties": {"repobilityId": "701c1bff891ef108", "scanner": "scanner-primary", "fingerprint": "64697a83aa356177", "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-097f397fee304667", "level": "note", "message": {"text": "65 TODO/FIXME markers"}, "properties": {"repobilityId": "4b38c118003e07d2", "scanner": "scanner-primary", "fingerprint": "097f397fee304667", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["maintenance"]}}, {"ruleId": "scanner-01f96f71d9907a8c", "level": "note", "message": {"text": "README lacks setup or run instructions"}, "properties": {"repobilityId": "eb04ac6465b41b5f", "scanner": "scanner-primary", "fingerprint": "01f96f71d9907a8c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["docs", "readme", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "22baa1d0afea24f1", "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": "01b7863aa508353d", "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": "22f15ae63588c826", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "655b375d3605ce11", "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": "17e199481bd32b7f", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-cec7e4a2725cdde7", "level": "none", "message": {"text": "Commented-code block (6 lines) in lib/browser-instance/index.js:49"}, "properties": {"repobilityId": "64e51148f4fa1e48", "scanner": "scanner-primary", "fingerprint": "cec7e4a2725cdde7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c289140ce43fd316", "level": "note", "message": {"text": "Legacy-named symbol `AsOld` in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-4R4BOZG6.mjs:5"}, "properties": {"repobilityId": "61873de67b33c074", "scanner": "scanner-primary", "fingerprint": "c289140ce43fd316", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9ed97345b40b69dd", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 mermaid/assets/mermaid/chunks/mermaid.esm.min/katex-K3KEBU37.mjs:256"}, "properties": {"repobilityId": "c5ae9b63aa0b01bc", "scanner": "scanner-primary", "fingerprint": "9ed97345b40b69dd", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f781865a6edaa668", "level": "note", "message": {"text": "Legacy-named symbol `node_copy` in mermaid/assets/mermaid/chunks/mermaid.esm.min/chunk-7W6UQGC5.mjs:1"}, "properties": {"repobilityId": "48e1c43dbebc09b7", "scanner": "scanner-primary", "fingerprint": "f781865a6edaa668", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-83e06a3de67a4300", "level": "none", "message": {"text": "Commented-code block (6 lines) in diagrams.net/assets/mxgraph/src/layout/hierarchical/model/mxSwimlaneModel.js:232"}, "properties": {"repobilityId": "06e23cd4c3756969", "scanner": "scanner-primary", "fingerprint": "83e06a3de67a4300", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-54147dcc585db161", "level": "none", "message": {"text": "Commented-code block (6 lines) in diagrams.net/assets/mxgraph/src/layout/hierarchical/model/mxGraphHierarchyModel.js:214"}, "properties": {"repobilityId": "bc2e2b83479988b7", "scanner": "scanner-primary", "fingerprint": "54147dcc585db161", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f6cc496273c4aeb2", "level": "none", "message": {"text": "Commented-code block (5 lines) in diagrams.net/assets/mxgraph/src/io/mxChildChangeCodec.js:112"}, "properties": {"repobilityId": "ffcaebfd308eb842", "scanner": "scanner-primary", "fingerprint": "f6cc496273c4aeb2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7d7fec4fdc8adabb", "level": "none", "message": {"text": "Commented-code block (5 lines) in diagrams.net/assets/mxgraph/src/shape/mxMarker.js:220"}, "properties": {"repobilityId": "92050cbbecd6f8a4", "scanner": "scanner-primary", "fingerprint": "7d7fec4fdc8adabb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f1fa89c9d7540c26", "level": "none", "message": {"text": "Commented-code block (6 lines) in diagrams.net/assets/mxgraph/src/shape/mxStencil.js:419"}, "properties": {"repobilityId": "68952d09644eb7b0", "scanner": "scanner-primary", "fingerprint": "f1fa89c9d7540c26", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8514e6da586268af", "level": "none", "message": {"text": "Commented-code block (7 lines) in diagrams.net/assets/mxgraph/src/view/mxEdgeStyle.js:1599"}, "properties": {"repobilityId": "285f4a5cc960e34f", "scanner": "scanner-primary", "fingerprint": "8514e6da586268af", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5da1034efda2d514", "level": "none", "message": {"text": "Commented-code block (5 lines) in diagrams.net/assets/mxgraph/src/view/mxCellRenderer.js:501"}, "properties": {"repobilityId": "9c5da7ba56753dcd", "scanner": "scanner-primary", "fingerprint": "5da1034efda2d514", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-77f96a692fdc5a8c", "level": "none", "message": {"text": "Commented-code block (5 lines) in diagrams.net/assets/mxgraph/src/view/mxGraph.js:13297"}, "properties": {"repobilityId": "aef096b486729b35", "scanner": "scanner-primary", "fingerprint": "77f96a692fdc5a8c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-997d81f562a665b5", "level": "none", "message": {"text": "Commented-code block (5 lines) in diagrams.net/assets/shapes/mxAWS4.js:309"}, "properties": {"repobilityId": "c9f305176f303066", "scanner": "scanner-primary", "fingerprint": "997d81f562a665b5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4cf8516cfce34de5", "level": "none", "message": {"text": "Commented-code block (5 lines) in diagrams.net/assets/shapes/mxAWS3D.js:8987"}, "properties": {"repobilityId": "aff12c168217d3a7", "scanner": "scanner-primary", "fingerprint": "4cf8516cfce34de5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-32acf9bda808da61", "level": "note", "message": {"text": "Legacy-named symbol `mxShapeElectricalDCSource3_v2` in diagrams.net/assets/shapes/mxElectrical.js:1786"}, "properties": {"repobilityId": "2bd1ffbf396a5efa", "scanner": "scanner-primary", "fingerprint": "32acf9bda808da61", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-eeb5286f15ba8074", "level": "none", "message": {"text": "Commented-code block (5 lines) in diagrams.net/assets/shapes/mxFloorplan.js:471"}, "properties": {"repobilityId": "af0b955a2f58981f", "scanner": "scanner-primary", "fingerprint": "eeb5286f15ba8074", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-82697f314301c139", "level": "note", "message": {"text": "Legacy-named symbol `xOld` in diagrams.net/assets/shapes/mockup/mxMockupiOS.js:186"}, "properties": {"repobilityId": "3f79bd422bc089d0", "scanner": "scanner-primary", "fingerprint": "82697f314301c139", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-e295f04551a95bcb", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 diagrams.net/src/worker.js:79"}, "properties": {"repobilityId": "c072850f3f0ac77b", "scanner": "scanner-primary", "fingerprint": "e295f04551a95bcb", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}]}]}