{"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-9031436bc7b47dba", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/main.js:43", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/main.js:43"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-20004e0913886555", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/tiptap.js:58"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-76ab1fe26edca9a8", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/lib/velt.js:106", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/lib/velt.js:106"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ad16c728f4cb514d", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/main.js:44", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/main.js:44"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ef704a423bbc1d29", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/lib/velt.js:108", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/lib/velt.js:108"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-af0cf39924973fc7", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/main.js:41", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/main.js:41"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-53f9aa33f328a813", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/components/docum", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/components/document/core-editor/core-editor.js:323"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-abe85f8a24d2ff91", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/lib/velt.js:106", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/lib/velt.js:106"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-02579edf43d83914", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/main.js:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/main.js:45"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9b01e1520016d263", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/components/docu", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/components/document/task-list/task-list-editor.js:130"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-12de96df8e563e1d", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/lib/velt.js:107", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/lib/velt.js:107"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-54d8d3ce8c695ff4", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/main.js:41", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/main.js:41"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-82446d5f66c42eeb", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/components/docume", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/components/document/map-store/map-store-editor.js:128"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-db44c2065faa2b6d", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/lib/velt.js:106", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/lib/velt.js:106"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-26f4059f0ea07c37", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/main.js:43", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/main.js:43"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4f0948a0cb955a6a", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/document", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/document/codemirror.js:165"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b1d8bf3c99613190", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/lib/velt.js:106", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/lib/velt.js:106"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-85d38cc5bfe327b1", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/main.js:43", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/main.js:43"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9373fb92b067e610", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/document/b", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/document/blocknote/blocknote.js:98"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7950300822f93644", "name": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/lib/velt.js:106", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/lib/velt.js:106"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0842af19296b4f31", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/react/recorder/document/custom/recorder-demo/components/record", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/recorder/document/custom/recorder-demo/components/recordings/RecordingsPanel.tsx:52"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-03f84d09f08ff9b7", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/recorder/document/custom/recorder-demo/app/layout.tsx:4", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/recorder/document/custom/recorder-demo/app/layout.tsx:41"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-108fbccd40588a9f", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/activity/document/custom/activity-log-demo/app/layout.t", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/activity/document/custom/activity-log-demo/app/layout.tsx:41"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-05dac327cd58d2bf", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-bc6b974e91fdfe31", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/canvas/reactflow/reactflow-demo/app/layout.tsx:20", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/canvas/reactflow/reactflow-demo/app/layout.tsx:20"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-75e7eee0371131c2", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/layout.ts", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/layout.tsx:20"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1a1e814f53108277", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/layout.", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/layout.tsx:20"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-abaf815943361c8a", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/react/crdt/text-editors/core/core-react-map-crdt-demo/componen", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/crdt/text-editors/core/core-react-map-crdt-demo/components/document/MapStoreEditor/MapCommentsModal.tsx:28"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-317e138dbc221ca9", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/lay", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ba18b5e1197032f6", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/react/crdt/text-editors/core/core-react-array-crdt-demo/compon", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/crdt/text-editors/core/core-react-array-crdt-demo/components/document/TaskListEditor/TaskCommentsModal.tsx:28"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e3db85b7f33d877a", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/l", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-39b53b77af47ddec", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/la", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/layout.tsx:20"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7e978fdaf9929cbe", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/componen", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/components/document/MindMapEditor/MindMapCommentsModal.tsx:27"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-15305b7242833f33", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/lay", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e8cd71594533d957", "name": "Stray `console.log` in TS/JS \u2014 apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/document/CodeMirr", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx:44"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7dca85e83e0a45a1", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/l", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/layout.tsx:18"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-00d8e19e55f433ae", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/react/crdt/text-editors/blocknote/blocknote-demo/components/si", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/crdt/text-editors/blocknote/blocknote-demo/components/sidebar/sidebar.tsx:187"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2d91fd86a33184f3", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/blocknote/blocknote-demo/app/layout.t", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/blocknote/blocknote-demo/app/layout.tsx:20"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-16261b9a9eb78a16", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/JobsTable.tsx:112"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8c936fe063f2098b", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/Jo", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/JobsTable.tsx:25"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-62288bf50e75b863", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/Ac", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/ActionModal.tsx:193"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-25d14a55d0431039", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/No", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/NotificationsPanel.tsx: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-64cfb206cd66a580", "name": "TODO/FIXME marker in shipping code \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/docum", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/JobDetail.tsx:257"}, "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-24aff2819659e971", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/Jo", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/JobDetail.tsx:256"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-024642cc47971c74", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/velt/VeltIn", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/velt/VeltInitializeUser.tsx:30"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-03ab5b629b8eef21", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/velt/VeltDa", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/velt/VeltDataProviders.ts:29"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4e61e867430c3113", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/store.ts:", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/store.ts:138"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-eba1b781907279c5", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/users/get", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/users/get/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-47d5b227ca738f01", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/users/sav", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/users/save/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-32b249a5ecd1f022", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/reactions", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/reactions/get/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-67927c65f563cb9d", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/reactions", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/reactions/save/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b2a6e11d564fd08e", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/reactions", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/reactions/delete/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-98ce1efaa32605fc", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/attachmen", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/attachments/get/[attachmentId]/route.ts:24"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fc332748250a5552", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/attachmen", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/attachments/save/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ed786eef3b2c9840", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/attachmen", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/attachments/delete/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5b13373071341a80", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/comments/", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/comments/get/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8bbba7f8da5a5516", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/comments/", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/comments/save/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8744ecc7746d1736", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/comments/", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/comments/delete/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-15cb034001a2ce2d", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/document/JobsTable.tsx:112"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bdbb5e3a9fde357b", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/document/Jo", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/document/JobsTable.tsx:25"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cfae383fb98118c0", "name": "TODO/FIXME marker in shipping code \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/docum", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/document/JobDetail.tsx:203"}, "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-ec3be4d147371d60", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/document/Jo", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/document/JobDetail.tsx:202"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-60c93bf29d91349e", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/velt/VeltIn", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/velt/VeltInitializeUser.tsx:30"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f345e86a6ab118c8", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/velt/VeltDa", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/velt/VeltDataProviders.ts:29"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8fdcad05396be1c1", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/store.ts:", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/store.ts:95"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-288c6576fd23eeb0", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/users/get", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/users/get/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-49779e7781a0b8bf", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/users/sav", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/users/save/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cb3160dcd1e7e93e", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/reactions", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/reactions/get/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2df1849260049417", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/reactions", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/reactions/save/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c71f34d4aa16c402", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/reactions", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/reactions/delete/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6723298d6b5ff7aa", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/attachmen", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/attachments/get/[attachmentId]/route.ts:24"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9f43c49779d7fb00", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/attachmen", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/attachments/save/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a4c44135468c2ae5", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/attachmen", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/attachments/delete/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6622321fb0807d30", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/comments/", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/comments/get/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-804b295095b0ce7c", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/comments/", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/comments/save/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2717c58b18b51343", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/comments/", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/comments/delete/route.ts:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fc9714ce2163e94a", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/forms/page-mode-demo/components/velt/useVeltEventHandlers.ts:45", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/forms/page-mode-demo/components/velt/useVeltEventHandlers.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-2af74b34c91dafd1", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/forms/page-mode-demo/components/velt/VeltCollaboration.tsx:28", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/forms/page-mode-demo/components/velt/VeltCollaboration.tsx:28"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-357d07ee58179285", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/forms/page-mode-demo/app/userAuth/AppUserContext.tsx:76", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/forms/page-mode-demo/app/userAuth/AppUserContext.tsx:76"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-796cc07126a9fc1c", "name": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/forms/page-mode-demo/app/inline-comments/inline-section.tsx:9", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/forms/page-mode-demo/app/inline-comments/inline-section.tsx:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f82a191ed58dc639", "name": "\"active\" state uses light bg in a dark theme \u2014 apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/component", "shortDescription": {"text": "\"active\" state uses light bg in a dark theme \u2014 apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/components/document/TipTapComponent/ui/ToolbarButton.tsx:8"}, "fullDescription": {"text": "A ternary like `active ? 'bg-white' : '...'` (or bg-gray-100/200) on a dark theme produces jarring white pills. Use a dark-emphasized active state instead \u2014 border + ring or slightly brighter dark bg. Example: `active ? 'bg-gray-800 border-gray-500 ring-1 ring-blue-500/30' : '\u2026'`.\n\nWhy: P-E in CHECKLIST.md \u2014 light bg in a dark theme is a class of regression.\nRule id: fq.active-light-bg"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5b29944a2164beae", "name": "\"active\" state uses light bg in a dark theme \u2014 apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/component", "shortDescription": {"text": "\"active\" state uses light bg in a dark theme \u2014 apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/components/document/TipTapComponent/ui/FormattingToolbar.tsx:40"}, "fullDescription": {"text": "A ternary like `active ? 'bg-white' : '...'` (or bg-gray-100/200) on a dark theme produces jarring white pills. Use a dark-emphasized active state instead \u2014 border + ring or slightly brighter dark bg. Example: `active ? 'bg-gray-800 border-gray-500 ring-1 ring-blue-500/30' : '\u2026'`.\n\nWhy: P-E in CHECKLIST.md \u2014 light bg in a dark theme is a class of regression.\nRule id: fq.active-light-bg"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-698471c2d02b17bd", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/ap", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/layout.tsx:20"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6a024279cf8da588", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/video-player/lottie/lottie-comments-demo/app/l", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/video-player/lottie/lottie-comments-demo/app/layout.tsx:41"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6589620496e7fef6", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/charts/chartjs/chartjs-comments-demo/app/layou", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/charts/chartjs/chartjs-comments-demo/app/layout.tsx:41"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9fec8b9f91d0f4b5", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/charts/highcharts/highcharts-comments-demo/app", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/charts/highcharts/highcharts-comments-demo/app/layout.tsx:41"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d624b36f1900fce0", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/charts/nivo/nivo-comments-demo/app/layout.tsx:", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/charts/nivo/nivo-comments-demo/app/layout.tsx:41"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-06a6fb666fdb54a6", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/dashboard/custom/dashboard-demo/app/layout.tsx", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/dashboard/custom/dashboard-demo/app/layout.tsx:41"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-792abf51f48fcb9b", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/react/comments/dashboard/inline-comments/dashboard-inline-comm", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/components/document/JobDetailModal.tsx:31"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-378c01f8454047c7", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/react/comments/dashboard/inline-comments/dashboard-inline-comm", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/components/document/JobsTable.tsx:86"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1177f42a7cc783a9", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/dashboard/inline-comments/dashboard-inline-com", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/layout.tsx:20"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2ace42eb414259e9", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/tanstack/single-tool/app/layout.tsx:28", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/tanstack/single-tool/app/layout.tsx:28"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-859d9acc1b7a9421", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/tanstack/multiple-tools/app/layout.tsx:", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/tanstack/multiple-tools/app/layout.tsx:28"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9d8d5c2e2e924466", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/tanstack/comment-aggregation/app/layout", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/tanstack/comment-aggregation/app/layout.tsx:28"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fbbff037d6766a59", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/ag-grid/single-tool/app/layout.tsx:28", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/ag-grid/single-tool/app/layout.tsx:28"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1128667685349ab5", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/ag-grid/multiple-tools/app/layout.tsx:2", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/ag-grid/multiple-tools/app/layout.tsx:28"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-99fe3b7aaaa7d508", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/ag-grid/comment-aggregation/app/layout.", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/ag-grid/comment-aggregation/app/layout.tsx:28"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-96a6ff5444f24157", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/website-builder/freestyle-comments/freestyle-c", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4bc486e6f0669f82", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/react/comments/image-editor/freestyle-comments/freestyle-comme", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/components/document/FreestyleCanvas/FreestyleCanvas.tsx:492"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-82a2a4680629a5f9", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/image-editor/freestyle-comments/freestyle-comm", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-02a335360bd3fe8f", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/l", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1e45d53ff3218ceb", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/apryse/apryse-comments-demo/app/l", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/apryse/apryse-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5b81b0928081fd23", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4bdb0cdabc8707f6", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/ace/ace-comments-demo/app/layout.", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/ace/ace-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-96d4106ef31d231c", "name": "Stray `console.log` in TS/JS \u2014 apps/react/comments/text-editors/codemirror/codemirror-comments-demo/components/document/", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/comments/text-editors/codemirror/codemirror-comments-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx:42"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fc388cd41f81041e", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/codemirror/codemirror-comments-de", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-83207ea5d86ff033", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/quill/quill-comments-demo/app/lay", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/quill/quill-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2f476c8520bb3633", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/lexical/lexical-comments-demo/app", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/lexical/lexical-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4c38abb79644b956", "name": "Stray `console.log` in TS/JS \u2014 apps/master-sample-app/scripts/generate-code-files.js:32", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/master-sample-app/scripts/generate-code-files.js:32"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-af785a04c646b484", "name": "`truncate` class without `title=` for hover reveal \u2014 apps/master-sample-app/components/header-bar.tsx:140", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/master-sample-app/components/header-bar.tsx:140"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-151278257d6224ca", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/master-sample-app/components/ui/chart.tsx:83", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/master-sample-app/components/ui/chart.tsx:83"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-bf000fecbfe054e7", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/master-sample-app/components/viewer/code-display.tsx:295", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/master-sample-app/components/viewer/code-display.tsx:295"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ae312f25c76361fa", "name": "Stray `console.log` in TS/JS \u2014 scripts/update-velt-versions.js:128", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/update-velt-versions.js:128"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be07bd64c92f4798", "name": "Stray `console.log` in TS/JS \u2014 scripts/list-apps.js:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/list-apps.js:7"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-412ae1d1e7d40cb1", "name": "Stray `console.log` in TS/JS \u2014 scripts/new-demo.ts:85", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/new-demo.ts:85"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-32821ac1a60a0160", "name": "Runtime dotenv file present in repo: apps/react/self-hosting/forms/page-mode-demo/.env", "shortDescription": {"text": "Runtime dotenv file present in repo: apps/react/self-hosting/forms/page-mode-demo/.env"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/.env` looks like a runtime dotenv file. It contains secret-looking assignments for DJANGO_SECRET_KEY, NEXT_PUBLIC_VELT_API_KEY, VELT_AUTH_TOKEN. Move real values to a secret manager and keep only `.env.example` style templates in source control."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-abbe4bd9cc91adda", "name": "Possible secret in outreach/lib/auth.ts", "shortDescription": {"text": "Possible secret in outreach/lib/auth.ts"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-9d0c8d4aaad97733", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/main.js:", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/main.js:81"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-56fc4c5e80962510", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/componen", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/tiptap.js:28"}, "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-aaaff8e505014e57", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/componen", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/ui/toolbar-divider.js:14"}, "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-a40c8159a92dd136", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/componen", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/ui/toolbar-button.js:22"}, "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-e02f228ab6f3c31b", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/componen", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/ui/bubble-menu-toolbar.js:28"}, "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-56dd19a770cc9262", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/componen", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/sidebar/sidebar.js:42"}, "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-404895682f8d0402", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/componen", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/header/theme-toggle.js:64"}, "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-f0e81dba3034733e", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/componen", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/header/header.js:22"}, "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-45d7b4716e593326", "name": "Possible secret in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/lib/velt.js", "shortDescription": {"text": "Possible secret in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/lib/velt.js"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-916dd9e80a1f32a0", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/sr", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/main.js:80"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fb247ed577378c0a", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/sr", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/components/document/mind-map/mind-map-editor.js:152"}, "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-c178041c4e7886c8", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/sr", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/components/document/mind-map/mind-map-sidebar.js:42"}, "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-ca90adf974662ef1", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/sr", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/components/header/theme-toggle.js:66"}, "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-62478406bb6f4f5d", "name": "Possible secret in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/lib/velt.js", "shortDescription": {"text": "Possible secret in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/lib/velt.js"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-f5d9ec272bbc89a6", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/s", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/main.js:77"}, "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-753324c2b4c7df8e", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/s", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/components/document/core-editor/core-editor.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-5cf3ba9df54ab059", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/s", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/components/sidebar/sidebar.js:38"}, "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-df589fe960de1a8b", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/s", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/components/header/theme-toggle.js:66"}, "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-c11ebcc167423ba9", "name": "Possible secret in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/lib/velt.js", "shortDescription": {"text": "Possible secret in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/lib/velt.js"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-421ff9957e93cbf5", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/main.js:81"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-71ed96ce47c2259a", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/components/document/task-list/task-list-sidebar.js:17"}, "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-fa53c4ae59f2a206", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/components/document/task-list/task-list-editor.js:223"}, "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-6e45b75bfd2b7a50", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/components/header/theme-toggle.js:64"}, "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-55ad53a706eb3f08", "name": "Possible secret in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/lib/velt.js", "shortDescription": {"text": "Possible secret in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/lib/velt.js"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-b6e59a6c3f85af70", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/sr", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/main.js:77"}, "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-f612186e9f7fc61d", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/sr", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/components/document/map-store/map-store-editor.js:118"}, "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-8a02eee4e665972e", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/sr", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/components/document/map-store/map-store-sidebar.js:21"}, "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-cefe094294051699", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/sr", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/components/header/theme-toggle.js:66"}, "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-a042f4ebe1e7df2e", "name": "Possible secret in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/lib/velt.js", "shortDescription": {"text": "Possible secret in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/lib/velt.js"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-8b53e35a20b1476d", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/main.js:85"}, "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-fd5184f8e12936ee", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/document/codemirror.js:133"}, "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-5ef9438e31ed975d", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/document/document-canvas.js:96"}, "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-6db3de9135dc6d2f", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/theme/theme-toggle.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-e489f96307174337", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/sidebar/sidebar.js:33"}, "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-3748213c5e2f84dd", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/header/header.js:28"}, "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-ba83bacd993420e1", "name": "Possible secret in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/lib/velt.js", "shortDescription": {"text": "Possible secret in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/lib/velt.js"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-e041ff9a33f5cbd1", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/ma", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/main.js:81"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4cb6b8f609f575c6", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/co", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/document/blocknote/blocknote.js:23"}, "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-dcbe6c13345bdb85", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/co", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/sidebar/sidebar.js:114"}, "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-b547e51a615df41a", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/co", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/header/theme-toggle.js:64"}, "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-3d2ab0ca81f49f08", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/co", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/header/header.js:20"}, "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-fbc08f79455ea0fb", "name": "Possible secret in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/lib/velt.js", "shortDescription": {"text": "Possible secret in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/lib/velt.js"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-9cb5b973c60874a4", "name": "Possible secret in apps/react/recorder/document/custom/recorder-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/recorder/document/custom/recorder-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-7c6c8dc9a56d8f9a", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/recorder/document/custom/recorder-demo/app/layout.tsx:41", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/recorder/document/custom/recorder-demo/app/layout.tsx:41"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea5c7b6b292c23b0", "name": "Possible secret in apps/react/recorder/document/custom/recorder-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/recorder/document/custom/recorder-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-a160971f723c0d90", "name": "Possible secret in apps/react/activity/document/custom/activity-log-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/activity/document/custom/activity-log-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-51f4209a32024fb5", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/activity/document/custom/activity-log-demo/app/layout.tsx:41", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/activity/document/custom/activity-log-demo/app/layout.tsx:41"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-337205688242c8fb", "name": "Possible secret in apps/react/activity/document/custom/activity-log-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/activity/document/custom/activity-log-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-d05b1de99d6a62b1", "name": "Possible secret in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-babb48d8cea0a076", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/layout.", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-99e7fff9c9ccbd12", "name": "Possible secret in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-4c19e348774ca09a", "name": "Possible secret in apps/react/crdt/canvas/reactflow/reactflow-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/crdt/canvas/reactflow/reactflow-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-06829f70dc46a315", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/canvas/reactflow/reactflow-demo/app/layout.tsx:20", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/canvas/reactflow/reactflow-demo/app/layout.tsx:20"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-123c3258d94f887c", "name": "Possible secret in apps/react/crdt/canvas/reactflow/reactflow-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/crdt/canvas/reactflow/reactflow-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-45ab6eac2379a9e2", "name": "Possible secret in apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-c61984b0a7444a02", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/layout.tsx:20", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/layout.tsx:20"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c99e923224840735", "name": "Possible secret in apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-69f382e7217941eb", "name": "Possible secret in apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-cdcc766471beaf88", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/layout.tsx:20", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/layout.tsx:20"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4609757dbc8c6789", "name": "Possible secret in apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-4b5577dccc049405", "name": "Possible secret in apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-37b9ba195bc2ff7d", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/layout.tsx:21", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fc79a93e2a1a1d34", "name": "Possible secret in apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-ace55162082f5e0c", "name": "Possible secret in apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-91aa3f6a21ce5a0e", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/layout.tsx:21", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0d192055becc620f", "name": "Possible secret in apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-e6f13b5b19196d72", "name": "Insecure pattern 'direct_innerhtml_assignment' in apps/react/crdt/text-editors/core/core-react-text-crdt-demo/components", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/react/crdt/text-editors/core/core-react-text-crdt-demo/components/document/CoreEditor/RemoteCursors.tsx:35"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-960554d3e7fdf629", "name": "Possible secret in apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-7296bba8c5a8cf7c", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/layout.tsx:20", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/layout.tsx:20"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5e0c69c5a997981c", "name": "Possible secret in apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-ae838fe47c37625e", "name": "Possible secret in apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-53c7917976fbb605", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/layout.tsx:21", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a399c72526ece375", "name": "Possible secret in apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-35b3e198ccd2f366", "name": "Insecure pattern 'cors_wildcard' in apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/document/Cod", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx:25"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a2e141ca5fa5aca7", "name": "Possible secret in apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-96603f0bc046d9b6", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/layout.tsx:18", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/layout.tsx:18"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d7dc43401d39232a", "name": "Possible secret in apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-44870f1f35f23f87", "name": "Possible secret in apps/react/crdt/text-editors/blocknote/blocknote-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/blocknote/blocknote-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-aeb4f414e61f64f5", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/blocknote/blocknote-demo/app/layout.tsx:20", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/blocknote/blocknote-demo/app/layout.tsx:20"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-bdc5794584944cb7", "name": "Possible secret in apps/react/crdt/text-editors/blocknote/blocknote-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/crdt/text-editors/blocknote/blocknote-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-31daddfbfc72d7be", "name": "Possible secret in apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-cffdb1a562440fd3", "name": "Possible secret in apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-36509896f425e113", "name": "Possible secret in apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-ab15df00accd9443", "name": "Possible secret in apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-c00745354ca92cd2", "name": "Possible secret in apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-cfe82bef3c644930", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/layout.tsx", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/layout.tsx:20"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-73c2009ce9ab7496", "name": "Possible secret in apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-c937a6a9514c8e53", "name": "Possible secret in apps/react/comments/video-player/lottie/lottie-comments-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/video-player/lottie/lottie-comments-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-d23a9997193bb6c8", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/video-player/lottie/lottie-comments-demo/app/layout.tsx:41", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/video-player/lottie/lottie-comments-demo/app/layout.tsx:41"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-023bfc08712a92f4", "name": "Possible secret in apps/react/comments/video-player/lottie/lottie-comments-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/video-player/lottie/lottie-comments-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-3750b4fa056e867a", "name": "Possible secret in apps/react/comments/charts/chartjs/chartjs-comments-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/charts/chartjs/chartjs-comments-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-546e12b1517ebee6", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/charts/chartjs/chartjs-comments-demo/app/layout.tsx:41", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/charts/chartjs/chartjs-comments-demo/app/layout.tsx:41"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6cdfadeb30406dfe", "name": "Possible secret in apps/react/comments/charts/chartjs/chartjs-comments-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/charts/chartjs/chartjs-comments-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-8e501db3ccf58823", "name": "Possible secret in apps/react/comments/charts/highcharts/highcharts-comments-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/charts/highcharts/highcharts-comments-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-08fc5ca9b3d59edc", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/charts/highcharts/highcharts-comments-demo/app/layout.tsx:", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/charts/highcharts/highcharts-comments-demo/app/layout.tsx:41"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-02055d66fcd94203", "name": "Possible secret in apps/react/comments/charts/highcharts/highcharts-comments-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/charts/highcharts/highcharts-comments-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-e0afa180bf2c3cc5", "name": "Possible secret in apps/react/comments/charts/nivo/nivo-comments-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/charts/nivo/nivo-comments-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-0baac00116fa844a", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/charts/nivo/nivo-comments-demo/app/layout.tsx:41", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/charts/nivo/nivo-comments-demo/app/layout.tsx:41"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c0a6fb773865dc62", "name": "Possible secret in apps/react/comments/charts/nivo/nivo-comments-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/charts/nivo/nivo-comments-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-de16ea19bfb8a541", "name": "Possible secret in apps/react/comments/dashboard/custom/dashboard-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/dashboard/custom/dashboard-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-5938a025f0b83e15", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/dashboard/custom/dashboard-demo/app/layout.tsx:41", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/dashboard/custom/dashboard-demo/app/layout.tsx:41"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5a738ea52deaf190", "name": "Possible secret in apps/react/comments/dashboard/custom/dashboard-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/dashboard/custom/dashboard-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-aa2cd04733f88dc3", "name": "Possible secret in apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-084774530b09da33", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/a", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/layout.tsx:20"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-53d8f26217c6fc56", "name": "Possible secret in apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/api/velt/token/route", "shortDescription": {"text": "Possible secret in apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-8b6cd4d169ffe6d7", "name": "Possible secret in apps/react/comments/tables/tanstack/single-tool/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/tables/tanstack/single-tool/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-2d983fa630f8c473", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/tanstack/single-tool/app/layout.tsx:28", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/tanstack/single-tool/app/layout.tsx:28"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-68446cbae763f206", "name": "Possible secret in apps/react/comments/tables/tanstack/single-tool/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/tables/tanstack/single-tool/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-13dce623fd4ca4eb", "name": "Possible secret in apps/react/comments/tables/tanstack/multiple-tools/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/tables/tanstack/multiple-tools/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-6edd9c45ff666ab0", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/tanstack/multiple-tools/app/layout.tsx:28", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/tanstack/multiple-tools/app/layout.tsx:28"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f0d848d0010dfd98", "name": "Possible secret in apps/react/comments/tables/tanstack/multiple-tools/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/tables/tanstack/multiple-tools/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-cb7507cdcde5dc23", "name": "Possible secret in apps/react/comments/tables/tanstack/comment-aggregation/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/tables/tanstack/comment-aggregation/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-1a3c107cf850542d", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/tanstack/comment-aggregation/app/layout.tsx:28", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/tanstack/comment-aggregation/app/layout.tsx:28"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fca02e031253a992", "name": "Possible secret in apps/react/comments/tables/tanstack/comment-aggregation/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/tables/tanstack/comment-aggregation/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-b354edc97cd06f6f", "name": "Possible secret in apps/react/comments/tables/ag-grid/single-tool/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/tables/ag-grid/single-tool/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-819dd22e37c1728f", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/ag-grid/single-tool/app/layout.tsx:28", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/ag-grid/single-tool/app/layout.tsx:28"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a488b3876d0c3cd0", "name": "Possible secret in apps/react/comments/tables/ag-grid/single-tool/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/tables/ag-grid/single-tool/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-df03ead924a47c6e", "name": "Possible secret in apps/react/comments/tables/ag-grid/multiple-tools/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/tables/ag-grid/multiple-tools/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-498db4033585e94a", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/ag-grid/multiple-tools/app/layout.tsx:28", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/ag-grid/multiple-tools/app/layout.tsx:28"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-39e7fd8e1207feda", "name": "Possible secret in apps/react/comments/tables/ag-grid/multiple-tools/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/tables/ag-grid/multiple-tools/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-80b35e49f4351aa2", "name": "Possible secret in apps/react/comments/tables/ag-grid/comment-aggregation/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/tables/ag-grid/comment-aggregation/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-d1d270c70c7b9619", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/ag-grid/comment-aggregation/app/layout.tsx:28", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/ag-grid/comment-aggregation/app/layout.tsx:28"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5fd3d3b0cd2ad5c7", "name": "Possible secret in apps/react/comments/tables/ag-grid/comment-aggregation/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/tables/ag-grid/comment-aggregation/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-212b164e07162e5c", "name": "Possible secret in apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-a87543bf8d27d645", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-52ad02de5dae051d", "name": "Possible secret in apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/api/velt/token/rou", "shortDescription": {"text": "Possible secret in apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-9decb0d59af692f2", "name": "Possible secret in apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-1bed85502b41b83f", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/ap", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-08bbf91643f2eda7", "name": "Possible secret in apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.", "shortDescription": {"text": "Possible secret in apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-ba787a5e295018ca", "name": "Possible secret in apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-e9256c82ea5e024c", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/layout.tsx:21", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e982354604792c2f", "name": "Possible secret in apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-e08e169d5ce2bee2", "name": "Possible secret in apps/react/comments/text-editors/apryse/apryse-comments-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/text-editors/apryse/apryse-comments-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-096276330134e3b3", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/apryse/apryse-comments-demo/app/layout.tsx:21", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/apryse/apryse-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a306e666a0f4f0d9", "name": "Possible secret in apps/react/comments/text-editors/apryse/apryse-comments-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/text-editors/apryse/apryse-comments-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-2a0b381e128f7580", "name": "Possible secret in apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-a97f3a763af5dac5", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/layout.tsx:", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b7f1a5061677a767", "name": "Possible secret in apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-664f7d811ad392c3", "name": "Possible secret in apps/react/comments/text-editors/ace/ace-comments-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/text-editors/ace/ace-comments-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-d21ea444874de525", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/ace/ace-comments-demo/app/layout.tsx:21", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/ace/ace-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-33b886000aa9eb5d", "name": "Possible secret in apps/react/comments/text-editors/ace/ace-comments-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/text-editors/ace/ace-comments-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-685892ac7214927c", "name": "Insecure pattern 'cors_wildcard' in apps/react/comments/text-editors/codemirror/codemirror-comments-demo/components/docu", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in apps/react/comments/text-editors/codemirror/codemirror-comments-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx:23"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fc58fa8919c530be", "name": "Possible secret in apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-7f8dae97eb50e39a", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/layou", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-54c873bf607a64c8", "name": "Possible secret in apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-30fd99f073cf38f6", "name": "Possible secret in apps/react/comments/text-editors/quill/quill-comments-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/text-editors/quill/quill-comments-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-6dcfcbee24c15edc", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/quill/quill-comments-demo/app/layout.tsx:21", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/quill/quill-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5fdb1a2eee7d4f05", "name": "Possible secret in apps/react/comments/text-editors/quill/quill-comments-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/text-editors/quill/quill-comments-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-c2a4d9b53f0bf8ef", "name": "Insecure pattern 'domparser_html_parse' in apps/react/comments/text-editors/lexical/lexical-comments-demo/components/doc", "shortDescription": {"text": "Insecure pattern 'domparser_html_parse' in apps/react/comments/text-editors/lexical/lexical-comments-demo/components/document/LexicalComponent/plugins/InitialContentPlugin.tsx:22"}, "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-c003f4a1d7d29bf7", "name": "Possible secret in apps/react/comments/text-editors/lexical/lexical-comments-demo/app/page.tsx", "shortDescription": {"text": "Possible secret in apps/react/comments/text-editors/lexical/lexical-comments-demo/app/page.tsx"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-b2b3c8d72a818fc8", "name": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/lexical/lexical-comments-demo/app/layout.tsx:", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/lexical/lexical-comments-demo/app/layout.tsx:21"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0b2226f50c5bb25f", "name": "Possible secret in apps/react/comments/text-editors/lexical/lexical-comments-demo/app/api/velt/token/route.ts", "shortDescription": {"text": "Possible secret in apps/react/comments/text-editors/lexical/lexical-comments-demo/app/api/velt/token/route.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-1e56689e1a997b45", "name": "Possible secret in apps/vue/comments/tables/ag-grid/multiple-tools/src/App.vue", "shortDescription": {"text": "Possible secret in apps/vue/comments/tables/ag-grid/multiple-tools/src/App.vue"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-967ffe9386a537dd", "name": "Possible secret in apps/vue/comments/tables/ag-grid/multiple-tools/src/api/veltToken.ts", "shortDescription": {"text": "Possible secret in apps/vue/comments/tables/ag-grid/multiple-tools/src/api/veltToken.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-30111d75b5ea253a", "name": "Insecure pattern 'node_child_process' in scripts/new-demo.ts:5", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/new-demo.ts:5"}, "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-64192a3c67110d01", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-731117bb922e0add", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/checkout@v4 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-571c4366cd5093f8", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-74979ba5835cee0c", "name": "package.json defines install-time lifecycle scripts", "shortDescription": {"text": "package.json defines install-time lifecycle scripts"}, "fullDescription": {"text": "preinstall/install/postinstall/prepare scripts execute during dependency installation. Review them carefully for network calls, obfuscation, shell execution, or credential access."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e5d8a59614160abe", "name": "Very large file: apps/react/self-hosting/forms/page-mode-demo/components/velt/ui-customization/styled.ts (2249 lines)", "shortDescription": {"text": "Very large file: apps/react/self-hosting/forms/page-mode-demo/components/velt/ui-customization/styled.ts (2249 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-13ebecabfb045f42", "name": "Very large file: apps/master-sample-app/components/sidebar.tsx (1085 lines)", "shortDescription": {"text": "Very large file: apps/master-sample-app/components/sidebar.tsx (1085 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": "23 test file(s) for 1655 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-141b30a41e03817b", "name": "No license file detected", "shortDescription": {"text": "No license file detected"}, "fullDescription": {"text": "No LICENSE/COPYING/NOTICE file was found. Generated repositories often omit licensing, which blocks reuse and automated intake."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6cbcca1ee4f36d84", "name": "Node manifest has dependencies but no lockfile: outreach/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: outreach/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f8711624077890e6", "name": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bd21d1e60d21ea95", "name": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/pack", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-638f7424463656b6", "name": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/pac", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-006bafa9fe13b5c8", "name": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/pa", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5c9dfc26d3c8b1e9", "name": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/pack", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c7da7d099626fe08", "name": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/packag", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e8d118fc022a2688", "name": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/package.", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cf584f4ffb357eaa", "name": "Node manifest has dependencies but no lockfile: apps/react/recorder/document/custom/recorder-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/recorder/document/custom/recorder-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-36e35d5db9e73eaa", "name": "Node manifest has dependencies but no lockfile: apps/react/activity/document/custom/activity-log-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/activity/document/custom/activity-log-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-aa42470dfb7b2d4e", "name": "Node manifest has dependencies but no lockfile: apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/packa", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-16e61bde3d20c6c8", "name": "Node manifest has dependencies but no lockfile: apps/react/crdt/canvas/reactflow/reactflow-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/canvas/reactflow/reactflow-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4edc3612dc362fab", "name": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-28cb7e278d31c99a", "name": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/platejs/platejs-crdt-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/platejs/platejs-crdt-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ad24b5f67fdd41e7", "name": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/core/core-react-map-crdt-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/core/core-react-map-crdt-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-687ac3a266b6b0a3", "name": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/core/core-react-array-crdt-demo/package.jso", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/core/core-react-array-crdt-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fd54a17bfe5f36e5", "name": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/core/core-react-text-crdt-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/core/core-react-text-crdt-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b6b51996ea3dae64", "name": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-865569c8ed173645", "name": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/package.jso", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-57106ac7d307885b", "name": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/blocknote/blocknote-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/blocknote/blocknote-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-461ccf9eb0548006", "name": "Node manifest has dependencies but no lockfile: apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/packa", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e9236af891654789", "name": "Node manifest has dependencies but no lockfile: apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/packa", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-12dbe81af88e02e6", "name": "Node manifest has dependencies but no lockfile: apps/react/self-hosting/forms/page-mode-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/self-hosting/forms/page-mode-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d276d7ce7efb868c", "name": "Node manifest has dependencies but no lockfile: apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/package.", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fcebde06d100d8c2", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/video-player/lottie/lottie-comments-demo/package.jso", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/video-player/lottie/lottie-comments-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-344cb88a9d202fbc", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/charts/chartjs/chartjs-comments-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/charts/chartjs/chartjs-comments-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-879828b9ba7cdfe6", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/charts/highcharts/highcharts-comments-demo/package.j", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/charts/highcharts/highcharts-comments-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ae0be6cfd9f5b197", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/charts/nivo/nivo-comments-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/charts/nivo/nivo-comments-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-317de7dc00a662f1", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/dashboard/custom/dashboard-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/dashboard/custom/dashboard-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-812ecbbe7b4d16f9", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-31c8a561710011c3", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/tanstack/single-tool/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/tanstack/single-tool/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-68f17f5c55d893f7", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/tanstack/multiple-tools/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/tanstack/multiple-tools/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f2062e82fc357888", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/tanstack/comment-aggregation/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/tanstack/comment-aggregation/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-185683bfe42f17f2", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/ag-grid/single-tool/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/ag-grid/single-tool/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-57634ed8ab42affd", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/ag-grid/multiple-tools/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/ag-grid/multiple-tools/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4ec8d9649c535355", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/ag-grid/comment-aggregation/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/ag-grid/comment-aggregation/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-402e099b849c07a3", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/website-builder/freestyle-comments/freestyle-comment", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0b54a7a30d51644d", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/image-editor/freestyle-comments/freestyle-comments-d", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-432234e2d7db77dc", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/tiptap/tiptap-comments-demo/package.jso", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/tiptap/tiptap-comments-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9a1f833a846cbacf", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/apryse/apryse-comments-demo/package.jso", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/apryse/apryse-comments-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c59132734ea74a8e", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/slatejs/slatejs-comments-demo/package.j", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/slatejs/slatejs-comments-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dae19c9fb5c6cc85", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/ace/ace-comments-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/ace/ace-comments-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-85987c1355505cf8", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/codemirror/codemirror-comments-demo/pac", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/codemirror/codemirror-comments-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-80d464bd64f1c672", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/quill/quill-comments-demo/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/quill/quill-comments-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9567672cd78f4be8", "name": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/lexical/lexical-comments-demo/package.j", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/lexical/lexical-comments-demo/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f6b34c2c1acd63fb", "name": "Node manifest has dependencies but no lockfile: apps/vue/comments/tables/ag-grid/multiple-tools/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/vue/comments/tables/ag-grid/multiple-tools/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-14adfc3a0389c4aa", "name": "Node manifest has dependencies but no lockfile: apps/master-sample-app/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/master-sample-app/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 309 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 65 placeholder/mock markers across 38 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b9088664ace7f748", "name": "Composite production-readiness gap", "shortDescription": {"text": "Composite production-readiness gap"}, "fullDescription": {"text": "Multiple low-cost hardening controls are missing together: license, lockfile. Opus verification showed these co-occurring gaps are a better readiness signal than reading each flag in isolation."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-749d4bc1bd66df5f", "name": "Agent instructions exist but release-hardening basics are missing", "shortDescription": {"text": "Agent instructions exist but release-hardening basics are missing"}, "fullDescription": {"text": "AI-coder instruction files were found, but the repo is missing license, lockfile. Treat this as a contract gap: the agent is guided, but the generated output is not yet guarded by the controls that make it repeatable."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-77bcf8d72709b699", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/lib/velt.js:", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/lib/velt.js:75"}, "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-f48569ecd2376a81", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/li", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/lib/velt.js:76"}, "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-4c8ba0194b27fbfe", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/l", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/lib/velt.js:75"}, "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-9dd12101d4821ac1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/lib/velt.js:75"}, "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-d018206fc3bec1c2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/li", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/lib/velt.js:75"}, "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-141f3059b85510e1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/comp", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/document/codemirror.js:34"}, "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-e9c1d6bf9310af34", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/lib/", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/lib/velt.js:75"}, "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-9946a71bd73e065f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/lib/ve", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/lib/velt.js:75"}, "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-632e147c8b2cf34a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/recorder/document/custom/recorder-demo/app/api/velt/token/route", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/recorder/document/custom/recorder-demo/app/api/velt/token/route.ts:26"}, "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-3bbecf4f75625f91", "name": "Commented-code block (5 lines) in apps/react/activity/document/custom/activity-log-demo/components/header/header.tsx:13", "shortDescription": {"text": "Commented-code block (5 lines) in apps/react/activity/document/custom/activity-log-demo/components/header/header.tsx:13"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a16daed0cdc5132b", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/activity/document/custom/activity-log-demo/app/api/velt/token/r", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/activity/document/custom/activity-log-demo/app/api/velt/token/route.ts:26"}, "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-ade70d4d010ef781", "name": "Commented-code block (5 lines) in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/components/document", "shortDescription": {"text": "Commented-code block (5 lines) in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/components/document/TipTapComponent/TipTapComponent.tsx:51"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6b103330f137c1e5", "name": "Commented-code block (5 lines) in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/components/suggesti", "shortDescription": {"text": "Commented-code block (5 lines) in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/components/suggestions/ProposalFields.tsx:59"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e03fb500d901b5fd", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/api", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/api/velt/token/route.ts:33"}, "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-606cb18f3743cb62", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/canvas/reactflow/reactflow-demo/app/api/velt/token/route.t", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/canvas/reactflow/reactflow-demo/app/api/velt/token/route.ts:26"}, "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-26cacc670210ed0c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/api/velt/token/ro", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/api/velt/token/route.ts:26"}, "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-cc4435f1a9f365b0", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/api/velt/token/", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/api/velt/token/route.ts:26"}, "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-76a7fcdbbd29e288", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/api/velt/to", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/api/velt/token/route.ts:26"}, "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-2a31b99dd866c838", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/api/velt/", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/api/velt/token/route.ts:26"}, "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-7b02a8f2c22c838a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/api/velt/t", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/api/velt/token/route.ts:26"}, "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-9001ba70f3e1ed76", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/api/velt/to", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/api/velt/token/route.ts:26"}, "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-aaee78dc24346c44", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/api/velt/", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/api/velt/token/route.ts:26"}, "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-7a12d71e3bf97d06", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/blocknote/blocknote-demo/app/api/velt/token/r", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/blocknote/blocknote-demo/app/api/velt/token/route.ts:26"}, "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-0caf730bb461d46a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/compone", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/velt/VeltDataProviders.ts:221"}, "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-7cb1ec9deedd8a5e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/token/route.ts:26"}, "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-02a8a13e39795853", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/compone", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/velt/VeltDataProviders.ts:221"}, "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-3668a41e5f2616de", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/token/route.ts:26"}, "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-6f407cd1b0ed3586", "name": "Commented-code block (5 lines) in apps/react/self-hosting/forms/page-mode-demo/components/velt/VeltDataProviders.ts:14", "shortDescription": {"text": "Commented-code block (5 lines) in apps/react/self-hosting/forms/page-mode-demo/components/velt/VeltDataProviders.ts:14"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b5ff0905b789dc8c", "name": "Commented-code block (6 lines) in apps/react/self-hosting/forms/page-mode-demo/app/page.tsx:29", "shortDescription": {"text": "Commented-code block (6 lines) in apps/react/self-hosting/forms/page-mode-demo/app/page.tsx:29"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-38f304e88f53dc0b", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/forms/page-mode-demo/app/api/velt/token/route.ts:2", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/forms/page-mode-demo/app/api/velt/token/route.ts:27"}, "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-8963462fd815722c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/api/ve", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/api/velt/token/route.ts:26"}, "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-425ae579fa102058", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/video-player/lottie/lottie-comments-demo/app/api/velt/", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/video-player/lottie/lottie-comments-demo/app/api/velt/token/route.ts:26"}, "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-abc0b4b65a50a534", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/charts/chartjs/chartjs-comments-demo/app/api/velt/toke", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/charts/chartjs/chartjs-comments-demo/app/api/velt/token/route.ts:26"}, "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-9413ec90bec0d427", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/charts/highcharts/highcharts-comments-demo/app/api/vel", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/charts/highcharts/highcharts-comments-demo/app/api/velt/token/route.ts:26"}, "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-575aa153b47e07d1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/charts/nivo/nivo-comments-demo/app/api/velt/token/rout", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/charts/nivo/nivo-comments-demo/app/api/velt/token/route.ts:26"}, "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-707f3c086097b4e2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/dashboard/custom/dashboard-demo/app/api/velt/token/rou", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/dashboard/custom/dashboard-demo/app/api/velt/token/route.ts:26"}, "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-8308ecfae69bab2a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-de", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/api/velt/token/route.ts:26"}, "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-ac4bd0993c5e44d1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/tanstack/single-tool/app/api/velt/token/route.t", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/tanstack/single-tool/app/api/velt/token/route.ts:26"}, "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-a1d289eb41531ede", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/tanstack/multiple-tools/app/api/velt/token/rout", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/tanstack/multiple-tools/app/api/velt/token/route.ts:26"}, "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-7a03796b050fee1d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/tanstack/comment-aggregation/app/api/velt/token", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/tanstack/comment-aggregation/app/api/velt/token/route.ts:26"}, "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-8cf599b0b71a3b71", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/ag-grid/single-tool/app/api/velt/token/route.ts", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/ag-grid/single-tool/app/api/velt/token/route.ts:26"}, "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-176cb1b08bf8e625", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/ag-grid/multiple-tools/app/api/velt/token/route", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/ag-grid/multiple-tools/app/api/velt/token/route.ts:26"}, "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-cfa688eac1667996", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/ag-grid/comment-aggregation/app/api/velt/token/", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/ag-grid/comment-aggregation/app/api/velt/token/route.ts:26"}, "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-399d4c674c7ac7b5", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/website-builder/freestyle-comments/freestyle-comments-", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts:33"}, "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-286686e148529219", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/image-editor/freestyle-comments/freestyle-comments-dem", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts:33"}, "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-5c1b72b9b278f381", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/api/velt/", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/api/velt/token/route.ts:33"}, "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-5f65cc88e04760fa", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/apryse/apryse-comments-demo/app/api/velt/", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/apryse/apryse-comments-demo/app/api/velt/token/route.ts:33"}, "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-ce9b16479308f851", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/api/vel", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/api/velt/token/route.ts:33"}, "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-37d74ec47b7060a3", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/ace/ace-comments-demo/app/api/velt/token/", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/ace/ace-comments-demo/app/api/velt/token/route.ts:33"}, "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-1ccbaf2cda99dfb0", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/a", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/api/velt/token/route.ts:26"}, "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-9c775f23e67ee767", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/quill/quill-comments-demo/app/api/velt/to", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/quill/quill-comments-demo/app/api/velt/token/route.ts:33"}, "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-fcbc1a694bb2a016", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/lexical/lexical-comments-demo/app/api/vel", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/lexical/lexical-comments-demo/app/api/velt/token/route.ts:33"}, "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-ce607659f6cdef3c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/vue/comments/tables/ag-grid/multiple-tools/src/api/veltToken.ts:22", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/vue/comments/tables/ag-grid/multiple-tools/src/api/veltToken.ts:22"}, "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-70fcae2d13c708b6", "name": "17 env vars used in code but missing from .env.example", "shortDescription": {"text": "17 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `AWS_ACCESS_KEY_ID`, `AWS_REGION`, `AWS_S3_BUCKET`, `AWS_S3_BUCKET_NAME`, `AWS_S3_ENDPOINT_URL`, `AWS_SECRET_ACCESS_KEY`, `CORS_ALLOWED_ORIGINS`, `MONGODB_URI` + 9 more. Add them (with a placeholder/comment) to .env.example so onboarding doesn't break."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2c04133e54348533", "name": "Near-duplicate function bodies in 2 places", "shortDescription": {"text": "Near-duplicate function bodies in 2 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\napps/react/self-hosting/forms/page-mode-demo/app/api/velt/backend/manage.py:main, django_velt_test/manage.py:main\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0c5facb26f270bb0", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/s", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/lib/velt.js:75)"}, "fullDescription": {"text": "`apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/lib/velt.js:75` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-37586d55a9e9c310", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/core/core-non-react-xml-c", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/lib/velt.js:76)"}, "fullDescription": {"text": "`apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/lib/velt.js:76` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0d8a068c703d9ac1", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/core/core-non-react-text-", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/lib/velt.js:75)"}, "fullDescription": {"text": "`apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/lib/velt.js:75` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-bccb3a74ce2f2fcc", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/core/core-non-react-crdt-", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/lib/velt.js:75)"}, "fullDescription": {"text": "`apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/lib/velt.js:75` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ced5857c1c6134cc", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/core/core-non-react-crdt-", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/lib/velt.js:75)"}, "fullDescription": {"text": "`apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/lib/velt.js:75` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-adf9332f9716f50a", "name": "Dangling fetch: GET /api/users (apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/documen", "shortDescription": {"text": "Dangling fetch: GET /api/users (apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/document/codemirror.js:34)"}, "fullDescription": {"text": "`apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/document/codemirror.js:34` calls `GET /api/users` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/users`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-372455f5f90c2667", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/codemirror/codemirror-crd", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/lib/velt.js:75)"}, "fullDescription": {"text": "`apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/lib/velt.js:75` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9aff28a24d9663fd", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/lib/velt.js:75)"}, "fullDescription": {"text": "`apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/lib/velt.js:75` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-51255d4df498d636", "name": "Dangling fetch: POST /api/velt/token (apps/react/recorder/document/custom/recorder-demo/components/velt/VeltInitializeUs", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/recorder/document/custom/recorder-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/recorder/document/custom/recorder-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7d3b7030ed744dc9", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/recorder/document/custom/recorder-demo/app/api/v", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/recorder/document/custom/recorder-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/recorder/document/custom/recorder-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4acabcb5bfc9753e", "name": "Dangling fetch: POST /api/velt/token (apps/react/activity/document/custom/activity-log-demo/components/velt/VeltInitiali", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/activity/document/custom/activity-log-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/activity/document/custom/activity-log-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9ed35bf3a0123b60", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/activity/document/custom/activity-log-demo/app/a", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/activity/document/custom/activity-log-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/activity/document/custom/activity-log-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-99a3852377251c53", "name": "Dangling fetch: POST /api/velt/token (apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/components/velt", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-cacbb5eae32ef0db", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/suggestions/text-editors/tiptap/tiptap-suggestio", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/api/velt/token/route.ts:33)"}, "fullDescription": {"text": "`apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/api/velt/token/route.ts:33` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-050716ba155b23fd", "name": "Dangling fetch: POST /api/velt/token (apps/react/crdt/canvas/reactflow/reactflow-demo/components/velt/VeltInitializeUser", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/canvas/reactflow/reactflow-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/crdt/canvas/reactflow/reactflow-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-44837cbff519a635", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/canvas/reactflow/reactflow-demo/app/api/vel", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/canvas/reactflow/reactflow-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/crdt/canvas/reactflow/reactflow-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-c4190cbc34203d6a", "name": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/components/velt/VeltInitializ", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6e673d864ff73097", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/ap", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-c5e997342ad3a761", "name": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/platejs/platejs-crdt-demo/components/velt/VeltInitial", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/platejs/platejs-crdt-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/platejs/platejs-crdt-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d365964782d6c3bc", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0370d8fb076f707c", "name": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/core/core-react-map-crdt-demo/components/velt/VeltIni", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/core/core-react-map-crdt-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/core/core-react-map-crdt-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-951b03be249e19a3", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/core/core-react-map-crdt-demo/", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-df927d89198ecc79", "name": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/core/core-react-array-crdt-demo/components/velt/VeltI", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/core/core-react-array-crdt-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/core/core-react-array-crdt-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-fec8de6ca67847c5", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/core/core-react-array-crdt-dem", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-773220581f7c2f84", "name": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/core/core-react-text-crdt-demo/components/velt/VeltIn", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/core/core-react-text-crdt-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/core/core-react-text-crdt-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6a4e10ff5454aa73", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/core/core-react-text-crdt-demo", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4a24ad430eca5c13", "name": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/components/velt/VeltIni", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-03e30ccdf66bc7ed", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a688d8013e5a483a", "name": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/velt/VeltI", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-084e64f190a3c485", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/codemirror/codemirror-crdt-dem", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-544da1c3f429a06e", "name": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/blocknote/blocknote-demo/components/velt/VeltInitiali", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/blocknote/blocknote-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/blocknote/blocknote-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-44e7a1651fec2491", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/blocknote/blocknote-demo/app/a", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/blocknote/blocknote-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/blocknote/blocknote-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-da17a93a70c13533", "name": "Dangling fetch: POST /api/velt/token (apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/velt", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/velt/VeltInitializeUser.tsx:14)"}, "fullDescription": {"text": "`apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/velt/VeltInitializeUser.tsx:14` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1aa68281e2470bc5", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/self-hosting/dashboard/postgres/dashboard-postgr", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-294e14e31dcd2961", "name": "Dangling fetch: POST /api/velt/token (apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/velt", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/velt/VeltInitializeUser.tsx:14)"}, "fullDescription": {"text": "`apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/velt/VeltInitializeUser.tsx:14` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1602b6eeb9ddc71e", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f8d49364e07746bb", "name": "Dangling fetch: POST /api/velt/token (apps/react/self-hosting/forms/page-mode-demo/components/velt/VeltInitializeUser.ts", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/self-hosting/forms/page-mode-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2628500fa6301209", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/self-hosting/forms/page-mode-demo/app/api/velt/t", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/self-hosting/forms/page-mode-demo/app/api/velt/token/route.ts:27)"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/app/api/velt/token/route.ts:27` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-647393c07151ae36", "name": "Dangling fetch: POST /api/velt/token (apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/components/velt/Ve", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6d74fe86056e651d", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/realtime/text-editors/tiptap/single-editor-mode-", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-04953ac2a86be50b", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/video-player/lottie/lottie-comments-demo/components/velt/VeltI", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/video-player/lottie/lottie-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/video-player/lottie/lottie-comments-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3e144d36f6edd6c4", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/video-player/lottie/lottie-comments-dem", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/video-player/lottie/lottie-comments-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/comments/video-player/lottie/lottie-comments-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f30fd8f156be87e0", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/charts/chartjs/chartjs-comments-demo/components/velt/VeltIniti", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/charts/chartjs/chartjs-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/charts/chartjs/chartjs-comments-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f5e31871f00b3e47", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/charts/chartjs/chartjs-comments-demo/ap", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/charts/chartjs/chartjs-comments-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/comments/charts/chartjs/chartjs-comments-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d2781817fd877e8f", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/charts/highcharts/highcharts-comments-demo/components/velt/Vel", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/charts/highcharts/highcharts-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/charts/highcharts/highcharts-comments-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-967e0d398a18230c", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/charts/highcharts/highcharts-comments-d", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/charts/highcharts/highcharts-comments-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/comments/charts/highcharts/highcharts-comments-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0954a9ace63c2f83", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/charts/nivo/nivo-comments-demo/components/velt/VeltInitializeU", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/charts/nivo/nivo-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/charts/nivo/nivo-comments-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7a8d1d3542c8c2fb", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/charts/nivo/nivo-comments-demo/app/api/", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/charts/nivo/nivo-comments-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/comments/charts/nivo/nivo-comments-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ecd87ae6cde4d573", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/dashboard/custom/dashboard-demo/components/velt/VeltInitialize", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/dashboard/custom/dashboard-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/dashboard/custom/dashboard-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-98b4921f020769bf", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/dashboard/custom/dashboard-demo/app/api", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/dashboard/custom/dashboard-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/comments/dashboard/custom/dashboard-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4f95241d99f0946d", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/compo", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-02fac8eb82edb018", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/dashboard/inline-comments/dashboard-inl", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-15161ee5f985f79a", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/tanstack/single-tool/components/velt/VeltInitializeUser", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/tanstack/single-tool/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/tables/tanstack/single-tool/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-8573bace8785f946", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/tanstack/single-tool/app/api/vel", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/tanstack/single-tool/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/comments/tables/tanstack/single-tool/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9561cb900c0dd558", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/tanstack/multiple-tools/components/velt/VeltInitializeU", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/tanstack/multiple-tools/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/tables/tanstack/multiple-tools/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-07f97e2858ef5516", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/tanstack/multiple-tools/app/api/", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/tanstack/multiple-tools/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/comments/tables/tanstack/multiple-tools/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d5a077492c834c54", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/tanstack/comment-aggregation/components/velt/VeltInitia", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/tanstack/comment-aggregation/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/tables/tanstack/comment-aggregation/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7935b0b0b22a5f0a", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/tanstack/comment-aggregation/app", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/tanstack/comment-aggregation/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/comments/tables/tanstack/comment-aggregation/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-57ef9c97f0d76526", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/ag-grid/single-tool/components/velt/VeltInitializeUser.", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/ag-grid/single-tool/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/tables/ag-grid/single-tool/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a900dd3d2df0e4a4", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/ag-grid/single-tool/app/api/velt", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/ag-grid/single-tool/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/comments/tables/ag-grid/single-tool/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a8b0b46c840389af", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/ag-grid/multiple-tools/components/velt/VeltInitializeUs", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/ag-grid/multiple-tools/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/tables/ag-grid/multiple-tools/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-8cccbd9cf58074d0", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/ag-grid/multiple-tools/app/api/v", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/ag-grid/multiple-tools/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/comments/tables/ag-grid/multiple-tools/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-59c2a490e24f136b", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/ag-grid/comment-aggregation/components/velt/VeltInitial", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/ag-grid/comment-aggregation/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/tables/ag-grid/comment-aggregation/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2322e51085ff5cc4", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/ag-grid/comment-aggregation/app/", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/ag-grid/comment-aggregation/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/comments/tables/ag-grid/comment-aggregation/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-649c0f6bf8f2f159", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/com", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-049bb3de0d2ff067", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/website-builder/freestyle-comments/free", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts:33)"}, "fullDescription": {"text": "`apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts:33` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-bbfaf7a10feffb88", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/compon", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-8171fb31d3378b81", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/image-editor/freestyle-comments/freesty", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts:33)"}, "fullDescription": {"text": "`apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts:33` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-45cc62cbe9bcad50", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/tiptap/tiptap-comments-demo/components/velt/VeltI", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/tiptap/tiptap-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/text-editors/tiptap/tiptap-comments-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-be8d2e08593a59bb", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/tiptap/tiptap-comments-dem", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/api/velt/token/route.ts:33)"}, "fullDescription": {"text": "`apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/api/velt/token/route.ts:33` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a69f599a3664c08f", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/apryse/apryse-comments-demo/components/velt/VeltI", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/apryse/apryse-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/text-editors/apryse/apryse-comments-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7684e8f687bcd7db", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/apryse/apryse-comments-dem", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/apryse/apryse-comments-demo/app/api/velt/token/route.ts:33)"}, "fullDescription": {"text": "`apps/react/comments/text-editors/apryse/apryse-comments-demo/app/api/velt/token/route.ts:33` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4948e8a60ea2914e", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/slatejs/slatejs-comments-demo/components/velt/Vel", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/slatejs/slatejs-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/text-editors/slatejs/slatejs-comments-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-72b79bdf5a10ea2d", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/slatejs/slatejs-comments-d", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/api/velt/token/route.ts:33)"}, "fullDescription": {"text": "`apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/api/velt/token/route.ts:33` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e9d9df784a0be3c5", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/ace/ace-comments-demo/components/velt/VeltInitial", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/ace/ace-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/text-editors/ace/ace-comments-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2732d2d60c96fe76", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/ace/ace-comments-demo/app/", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/ace/ace-comments-demo/app/api/velt/token/route.ts:33)"}, "fullDescription": {"text": "`apps/react/comments/text-editors/ace/ace-comments-demo/app/api/velt/token/route.ts:33` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-60c665fbf2034d79", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/codemirror/codemirror-comments-demo/components/ve", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/codemirror/codemirror-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/text-editors/codemirror/codemirror-comments-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-da8a50bd4d9d1773", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/codemirror/codemirror-comm", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/api/velt/token/route.ts:26)"}, "fullDescription": {"text": "`apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/api/velt/token/route.ts:26` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-23175d7410e718c7", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/quill/quill-comments-demo/components/velt/VeltIni", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/quill/quill-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/text-editors/quill/quill-comments-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3e07e916ae462b06", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/quill/quill-comments-demo/", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/quill/quill-comments-demo/app/api/velt/token/route.ts:33)"}, "fullDescription": {"text": "`apps/react/comments/text-editors/quill/quill-comments-demo/app/api/velt/token/route.ts:33` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9633a20c19cb2884", "name": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/lexical/lexical-comments-demo/components/velt/Vel", "shortDescription": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/lexical/lexical-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "fullDescription": {"text": "`apps/react/comments/text-editors/lexical/lexical-comments-demo/components/velt/VeltInitializeUser.tsx:13` calls `POST /api/velt/token` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/velt/token`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3bab0247a0b5c41c", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/lexical/lexical-comments-d", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/lexical/lexical-comments-demo/app/api/velt/token/route.ts:33)"}, "fullDescription": {"text": "`apps/react/comments/text-editors/lexical/lexical-comments-demo/app/api/velt/token/route.ts:33` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ef810056be5d1157", "name": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/vue/comments/tables/ag-grid/multiple-tools/src/api/vel", "shortDescription": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/vue/comments/tables/ag-grid/multiple-tools/src/api/veltToken.ts:22)"}, "fullDescription": {"text": "`apps/vue/comments/tables/ag-grid/multiple-tools/src/api/veltToken.ts:22` calls `POST https://api.velt.dev/v2/auth/token/get` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: fetch\nNormalized path used for matching: `/https:/api.velt.dev/v2/auth/token/get`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-cb4120f503ab0194", "name": "Unused endpoint: ANY /api/host-app/users/save", "shortDescription": {"text": "Unused endpoint: ANY /api/host-app/users/save"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/app/api/velt/backend/host_app/urls.py` declares `ANY /api/host-app/users/save` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3aaab1d6bc0daf00", "name": "Unused endpoint: ANY /api/velt/api/velt/comments/get", "shortDescription": {"text": "Unused endpoint: ANY /api/velt/api/velt/comments/get"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/app/api/velt/backend/velt_api/urls.py` declares `ANY /api/velt/api/velt/comments/get` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9e8904191b5111ff", "name": "Unused endpoint: ANY /api/velt/api/velt/comments/save", "shortDescription": {"text": "Unused endpoint: ANY /api/velt/api/velt/comments/save"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/app/api/velt/backend/velt_api/urls.py` declares `ANY /api/velt/api/velt/comments/save` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a3eaf646be03067e", "name": "Unused endpoint: ANY /api/velt/api/velt/comments/delete", "shortDescription": {"text": "Unused endpoint: ANY /api/velt/api/velt/comments/delete"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/app/api/velt/backend/velt_api/urls.py` declares `ANY /api/velt/api/velt/comments/delete` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f4ca80ac37ee775d", "name": "Unused endpoint: ANY /api/velt/api/velt/reactions/get", "shortDescription": {"text": "Unused endpoint: ANY /api/velt/api/velt/reactions/get"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/app/api/velt/backend/velt_api/urls.py` declares `ANY /api/velt/api/velt/reactions/get` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-93d9db3160175263", "name": "Unused endpoint: ANY /api/velt/api/velt/reactions/save", "shortDescription": {"text": "Unused endpoint: ANY /api/velt/api/velt/reactions/save"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/app/api/velt/backend/velt_api/urls.py` declares `ANY /api/velt/api/velt/reactions/save` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bd3725429f8e5abf", "name": "Unused endpoint: ANY /api/velt/api/velt/reactions/delete", "shortDescription": {"text": "Unused endpoint: ANY /api/velt/api/velt/reactions/delete"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/app/api/velt/backend/velt_api/urls.py` declares `ANY /api/velt/api/velt/reactions/delete` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-38858dee30719850", "name": "Unused endpoint: ANY /api/velt/api/velt/attachments/save", "shortDescription": {"text": "Unused endpoint: ANY /api/velt/api/velt/attachments/save"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/app/api/velt/backend/velt_api/urls.py` declares `ANY /api/velt/api/velt/attachments/save` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-70fa3169ee9de7e7", "name": "Unused endpoint: ANY /api/velt/api/velt/attachments/delete", "shortDescription": {"text": "Unused endpoint: ANY /api/velt/api/velt/attachments/delete"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/app/api/velt/backend/velt_api/urls.py` declares `ANY /api/velt/api/velt/attachments/delete` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b39bd5aee4c9c335", "name": "Unused endpoint: ANY /api/velt/api/velt/users/get", "shortDescription": {"text": "Unused endpoint: ANY /api/velt/api/velt/users/get"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/app/api/velt/backend/velt_api/urls.py` declares `ANY /api/velt/api/velt/users/get` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1a6d91f2236825bf", "name": "Unused endpoint: ANY /", "shortDescription": {"text": "Unused endpoint: ANY /"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/app/api/velt/backend/velt_test_project/urls.py` declares `ANY /` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9ef68a7fbe4cf8bf", "name": "Unused endpoint: ANY /api/velt/", "shortDescription": {"text": "Unused endpoint: ANY /api/velt/"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/app/api/velt/backend/velt_test_project/urls.py` declares `ANY /api/velt/` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5651827f80d8060a", "name": "Unused endpoint: ANY /api/host-app/", "shortDescription": {"text": "Unused endpoint: ANY /api/host-app/"}, "fullDescription": {"text": "`apps/react/self-hosting/forms/page-mode-demo/app/api/velt/backend/velt_test_project/urls.py` declares `ANY /api/host-app/` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-81deef846421c253", "name": "Unused endpoint: ANY /comments/get", "shortDescription": {"text": "Unused endpoint: ANY /comments/get"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /comments/get` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0f2381a1053919ea", "name": "Unused endpoint: ANY /comments/save", "shortDescription": {"text": "Unused endpoint: ANY /comments/save"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /comments/save` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a52a1524587494cc", "name": "Unused endpoint: ANY /comments/delete", "shortDescription": {"text": "Unused endpoint: ANY /comments/delete"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /comments/delete` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7dd241ab1f27e795", "name": "Unused endpoint: ANY /reactions/get", "shortDescription": {"text": "Unused endpoint: ANY /reactions/get"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /reactions/get` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2c5fc2cd630de6f0", "name": "Unused endpoint: ANY /reactions/save", "shortDescription": {"text": "Unused endpoint: ANY /reactions/save"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /reactions/save` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-711c1f0ba744b04c", "name": "Unused endpoint: ANY /reactions/delete", "shortDescription": {"text": "Unused endpoint: ANY /reactions/delete"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /reactions/delete` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-35b9b4d41205cb1e", "name": "Unused endpoint: ANY /recorders/get", "shortDescription": {"text": "Unused endpoint: ANY /recorders/get"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /recorders/get` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8e6fd96e65fe2af0", "name": "Unused endpoint: ANY /recorders/save", "shortDescription": {"text": "Unused endpoint: ANY /recorders/save"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /recorders/save` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9185c8933807aa03", "name": "Unused endpoint: ANY /recorders/delete", "shortDescription": {"text": "Unused endpoint: ANY /recorders/delete"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /recorders/delete` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1ae5d4a36bc9964a", "name": "Unused endpoint: ANY /notifications/get", "shortDescription": {"text": "Unused endpoint: ANY /notifications/get"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /notifications/get` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bc5a206582a4cdf4", "name": "Unused endpoint: ANY /notifications/save", "shortDescription": {"text": "Unused endpoint: ANY /notifications/save"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /notifications/save` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9f2091e238fee64d", "name": "Unused endpoint: ANY /notifications/delete", "shortDescription": {"text": "Unused endpoint: ANY /notifications/delete"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /notifications/delete` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be69e2a324df37a2", "name": "Unused endpoint: ANY /attachments/save", "shortDescription": {"text": "Unused endpoint: ANY /attachments/save"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /attachments/save` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-042b459017cd428f", "name": "Unused endpoint: ANY /attachments/delete", "shortDescription": {"text": "Unused endpoint: ANY /attachments/delete"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /attachments/delete` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-285ca2ce934f6428", "name": "Unused endpoint: ANY /activities/get", "shortDescription": {"text": "Unused endpoint: ANY /activities/get"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /activities/get` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f1ff973dfdba375b", "name": "Unused endpoint: ANY /activities/save", "shortDescription": {"text": "Unused endpoint: ANY /activities/save"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /activities/save` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9b142d31e5481ed2", "name": "Unused endpoint: ANY /users/get", "shortDescription": {"text": "Unused endpoint: ANY /users/get"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /users/get` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-25a0385a55dfb2b9", "name": "Unused endpoint: ANY /token", "shortDescription": {"text": "Unused endpoint: ANY /token"}, "fullDescription": {"text": "`django_velt_test/velt_api/urls.py` declares `ANY /token` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ff4ecc49ecfc61bd", "name": "Unused endpoint: GET /photos", "shortDescription": {"text": "Unused endpoint: GET /photos"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx` declares `GET /photos` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3d519b490880a504", "name": "Unused endpoint: GET /photos/:id", "shortDescription": {"text": "Unused endpoint: GET /photos/:id"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx` declares `GET /photos/:id` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ca53f167936dba6c", "name": "Unused endpoint: POST /photos", "shortDescription": {"text": "Unused endpoint: POST /photos"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx` declares `POST /photos` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0c09579604686092", "name": "Unused endpoint: PATCH /photos/:id", "shortDescription": {"text": "Unused endpoint: PATCH /photos/:id"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx` declares `PATCH /photos/:id` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2a36aeade364eb07", "name": "Unused endpoint: DELETE /photos/:id", "shortDescription": {"text": "Unused endpoint: DELETE /photos/:id"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx` declares `DELETE /photos/:id` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-186692de65e847fc", "name": "Unused endpoint: GET /albums", "shortDescription": {"text": "Unused endpoint: GET /albums"}, "fullDescription": {"text": "`apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx` declares `GET /albums` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/22174"}, "properties": {"repository": "velt-js/sample-apps", "repoUrl": "https://github.com/velt-js/sample-apps", "branch": "main"}, "results": [{"ruleId": "scanner-9031436bc7b47dba", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/main.js:43"}, "properties": {"repobilityId": "9bb4e08818498758", "scanner": "scanner-primary", "fingerprint": "9031436bc7b47dba", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-20004e0913886555", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/tiptap.js:58"}, "properties": {"repobilityId": "8b646c2323039b41", "scanner": "scanner-primary", "fingerprint": "20004e0913886555", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-76ab1fe26edca9a8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/lib/velt.js:106"}, "properties": {"repobilityId": "cf43bdefdf2f9a6d", "scanner": "scanner-primary", "fingerprint": "76ab1fe26edca9a8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ad16c728f4cb514d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/main.js:44"}, "properties": {"repobilityId": "51e205c20036de06", "scanner": "scanner-primary", "fingerprint": "ad16c728f4cb514d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ef704a423bbc1d29", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/lib/velt.js:108"}, "properties": {"repobilityId": "2928e028bca2860b", "scanner": "scanner-primary", "fingerprint": "ef704a423bbc1d29", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-af0cf39924973fc7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/main.js:41"}, "properties": {"repobilityId": "002c8433aa8c63b4", "scanner": "scanner-primary", "fingerprint": "af0cf39924973fc7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-53f9aa33f328a813", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/components/document/core-editor/core-editor.js:323"}, "properties": {"repobilityId": "c82ef9482409ea4a", "scanner": "scanner-primary", "fingerprint": "53f9aa33f328a813", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-abe85f8a24d2ff91", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/lib/velt.js:106"}, "properties": {"repobilityId": "45595486744fd845", "scanner": "scanner-primary", "fingerprint": "abe85f8a24d2ff91", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-02579edf43d83914", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/main.js:45"}, "properties": {"repobilityId": "fa6ccc93ab541cea", "scanner": "scanner-primary", "fingerprint": "02579edf43d83914", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9b01e1520016d263", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/components/document/task-list/task-list-editor.js:130"}, "properties": {"repobilityId": "006450c5bc8bc615", "scanner": "scanner-primary", "fingerprint": "9b01e1520016d263", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-12de96df8e563e1d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/lib/velt.js:107"}, "properties": {"repobilityId": "8385c23ca22f350b", "scanner": "scanner-primary", "fingerprint": "12de96df8e563e1d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-54d8d3ce8c695ff4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/main.js:41"}, "properties": {"repobilityId": "f32af9c9c7aa2bd0", "scanner": "scanner-primary", "fingerprint": "54d8d3ce8c695ff4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-82446d5f66c42eeb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/components/document/map-store/map-store-editor.js:128"}, "properties": {"repobilityId": "897a487e17a639cc", "scanner": "scanner-primary", "fingerprint": "82446d5f66c42eeb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-db44c2065faa2b6d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/lib/velt.js:106"}, "properties": {"repobilityId": "3a1c1cb5f080dafe", "scanner": "scanner-primary", "fingerprint": "db44c2065faa2b6d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-26f4059f0ea07c37", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/main.js:43"}, "properties": {"repobilityId": "d29a7af8cd1e14aa", "scanner": "scanner-primary", "fingerprint": "26f4059f0ea07c37", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4f0948a0cb955a6a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/document/codemirror.js:165"}, "properties": {"repobilityId": "ca3871616472194d", "scanner": "scanner-primary", "fingerprint": "4f0948a0cb955a6a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b1d8bf3c99613190", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/lib/velt.js:106"}, "properties": {"repobilityId": "9a5f7570643d60c5", "scanner": "scanner-primary", "fingerprint": "b1d8bf3c99613190", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-85d38cc5bfe327b1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/main.js:43"}, "properties": {"repobilityId": "61e4ec8ee9e2c09c", "scanner": "scanner-primary", "fingerprint": "85d38cc5bfe327b1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9373fb92b067e610", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/document/blocknote/blocknote.js:98"}, "properties": {"repobilityId": "6b058be41a45f862", "scanner": "scanner-primary", "fingerprint": "9373fb92b067e610", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7950300822f93644", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/lib/velt.js:106"}, "properties": {"repobilityId": "bc70d9afef0b2878", "scanner": "scanner-primary", "fingerprint": "7950300822f93644", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0842af19296b4f31", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/recorder/document/custom/recorder-demo/components/recordings/RecordingsPanel.tsx:52"}, "properties": {"repobilityId": "404e51e279160096", "scanner": "scanner-primary", "fingerprint": "0842af19296b4f31", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-03f84d09f08ff9b7", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/recorder/document/custom/recorder-demo/app/layout.tsx:41"}, "properties": {"repobilityId": "d7d42a3ea84ead3f", "scanner": "scanner-primary", "fingerprint": "03f84d09f08ff9b7", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-108fbccd40588a9f", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/activity/document/custom/activity-log-demo/app/layout.tsx:41"}, "properties": {"repobilityId": "303e401a6a1b0b5b", "scanner": "scanner-primary", "fingerprint": "108fbccd40588a9f", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-05dac327cd58d2bf", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "652f0e1330f78940", "scanner": "scanner-primary", "fingerprint": "05dac327cd58d2bf", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-bc6b974e91fdfe31", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/canvas/reactflow/reactflow-demo/app/layout.tsx:20"}, "properties": {"repobilityId": "b76dfaec0233db07", "scanner": "scanner-primary", "fingerprint": "bc6b974e91fdfe31", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-75e7eee0371131c2", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/layout.tsx:20"}, "properties": {"repobilityId": "389ac144da5afea6", "scanner": "scanner-primary", "fingerprint": "75e7eee0371131c2", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-1a1e814f53108277", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/layout.tsx:20"}, "properties": {"repobilityId": "3263f209d379fdc4", "scanner": "scanner-primary", "fingerprint": "1a1e814f53108277", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-abaf815943361c8a", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/crdt/text-editors/core/core-react-map-crdt-demo/components/document/MapStoreEditor/MapCommentsModal.tsx:28"}, "properties": {"repobilityId": "01b64702957caa2f", "scanner": "scanner-primary", "fingerprint": "abaf815943361c8a", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-317e138dbc221ca9", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "acc2badbb75ffce6", "scanner": "scanner-primary", "fingerprint": "317e138dbc221ca9", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-ba18b5e1197032f6", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/crdt/text-editors/core/core-react-array-crdt-demo/components/document/TaskListEditor/TaskCommentsModal.tsx:28"}, "properties": {"repobilityId": "e55ae3a5d6d39ec2", "scanner": "scanner-primary", "fingerprint": "ba18b5e1197032f6", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-e3db85b7f33d877a", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "d6423e0b53496ac7", "scanner": "scanner-primary", "fingerprint": "e3db85b7f33d877a", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-39b53b77af47ddec", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/layout.tsx:20"}, "properties": {"repobilityId": "1d787f6ea2ce074d", "scanner": "scanner-primary", "fingerprint": "39b53b77af47ddec", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-7e978fdaf9929cbe", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/components/document/MindMapEditor/MindMapCommentsModal.tsx:27"}, "properties": {"repobilityId": "240abc76460e0cf2", "scanner": "scanner-primary", "fingerprint": "7e978fdaf9929cbe", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-15305b7242833f33", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "492b6e702d1750e7", "scanner": "scanner-primary", "fingerprint": "15305b7242833f33", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-e8cd71594533d957", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx:44"}, "properties": {"repobilityId": "033f6b34a5d21d24", "scanner": "scanner-primary", "fingerprint": "e8cd71594533d957", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7dca85e83e0a45a1", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/layout.tsx:18"}, "properties": {"repobilityId": "bef1f25564b07f6a", "scanner": "scanner-primary", "fingerprint": "7dca85e83e0a45a1", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-00d8e19e55f433ae", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/crdt/text-editors/blocknote/blocknote-demo/components/sidebar/sidebar.tsx:187"}, "properties": {"repobilityId": "bdc0d395dbe1238f", "scanner": "scanner-primary", "fingerprint": "00d8e19e55f433ae", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-2d91fd86a33184f3", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/crdt/text-editors/blocknote/blocknote-demo/app/layout.tsx:20"}, "properties": {"repobilityId": "bb380d141bf2b6a9", "scanner": "scanner-primary", "fingerprint": "2d91fd86a33184f3", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-16261b9a9eb78a16", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/JobsTable.tsx:112"}, "properties": {"repobilityId": "5fd3a888caa5cc72", "scanner": "scanner-primary", "fingerprint": "16261b9a9eb78a16", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-8c936fe063f2098b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/JobsTable.tsx:25"}, "properties": {"repobilityId": "286d6e96d53472af", "scanner": "scanner-primary", "fingerprint": "8c936fe063f2098b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-62288bf50e75b863", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/ActionModal.tsx:193"}, "properties": {"repobilityId": "4bc2f23d91aa98f5", "scanner": "scanner-primary", "fingerprint": "62288bf50e75b863", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-25d14a55d0431039", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/NotificationsPanel.tsx:14"}, "properties": {"repobilityId": "f940af8724051564", "scanner": "scanner-primary", "fingerprint": "25d14a55d0431039", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-64cfb206cd66a580", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/JobDetail.tsx:257"}, "properties": {"repobilityId": "63f763360c6065dd", "scanner": "scanner-primary", "fingerprint": "64cfb206cd66a580", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-24aff2819659e971", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/document/JobDetail.tsx:256"}, "properties": {"repobilityId": "0c75607d2582b271", "scanner": "scanner-primary", "fingerprint": "24aff2819659e971", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-024642cc47971c74", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/velt/VeltInitializeUser.tsx:30"}, "properties": {"repobilityId": "94250d1d06597486", "scanner": "scanner-primary", "fingerprint": "024642cc47971c74", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-03ab5b629b8eef21", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/velt/VeltDataProviders.ts:29"}, "properties": {"repobilityId": "cc597f601263a406", "scanner": "scanner-primary", "fingerprint": "03ab5b629b8eef21", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4e61e867430c3113", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/store.ts:138"}, "properties": {"repobilityId": "6956e71a52077ee5", "scanner": "scanner-primary", "fingerprint": "4e61e867430c3113", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-eba1b781907279c5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/users/get/route.ts:9"}, "properties": {"repobilityId": "1b25c5d31bcf48e3", "scanner": "scanner-primary", "fingerprint": "eba1b781907279c5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-47d5b227ca738f01", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/users/save/route.ts:9"}, "properties": {"repobilityId": "0a3c3615f5b95bd9", "scanner": "scanner-primary", "fingerprint": "47d5b227ca738f01", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-32b249a5ecd1f022", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/reactions/get/route.ts:9"}, "properties": {"repobilityId": "e0d186c37151b7ce", "scanner": "scanner-primary", "fingerprint": "32b249a5ecd1f022", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-67927c65f563cb9d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/reactions/save/route.ts:9"}, "properties": {"repobilityId": "3a8da7b515e127ec", "scanner": "scanner-primary", "fingerprint": "67927c65f563cb9d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b2a6e11d564fd08e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/reactions/delete/route.ts:9"}, "properties": {"repobilityId": "dab35e713d730697", "scanner": "scanner-primary", "fingerprint": "b2a6e11d564fd08e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-98ce1efaa32605fc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/attachments/get/[attachmentId]/route.ts:24"}, "properties": {"repobilityId": "fbb3026a8743ccca", "scanner": "scanner-primary", "fingerprint": "98ce1efaa32605fc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fc332748250a5552", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/attachments/save/route.ts:9"}, "properties": {"repobilityId": "4e8b6056611c9021", "scanner": "scanner-primary", "fingerprint": "fc332748250a5552", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ed786eef3b2c9840", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/attachments/delete/route.ts:9"}, "properties": {"repobilityId": "c8b60eb383e830ef", "scanner": "scanner-primary", "fingerprint": "ed786eef3b2c9840", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5b13373071341a80", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/comments/get/route.ts:9"}, "properties": {"repobilityId": "188cc2a7a7d51ecf", "scanner": "scanner-primary", "fingerprint": "5b13373071341a80", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8bbba7f8da5a5516", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/comments/save/route.ts:9"}, "properties": {"repobilityId": "354cdec6c1bbcd99", "scanner": "scanner-primary", "fingerprint": "8bbba7f8da5a5516", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8744ecc7746d1736", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/comments/delete/route.ts:9"}, "properties": {"repobilityId": "fa5d463b543c05b0", "scanner": "scanner-primary", "fingerprint": "8744ecc7746d1736", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-15cb034001a2ce2d", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/document/JobsTable.tsx:112"}, "properties": {"repobilityId": "1841ce1016238bb3", "scanner": "scanner-primary", "fingerprint": "15cb034001a2ce2d", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-bdbb5e3a9fde357b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/document/JobsTable.tsx:25"}, "properties": {"repobilityId": "70587dfd736c5243", "scanner": "scanner-primary", "fingerprint": "bdbb5e3a9fde357b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cfae383fb98118c0", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/document/JobDetail.tsx:203"}, "properties": {"repobilityId": "205d6da8698c7412", "scanner": "scanner-primary", "fingerprint": "cfae383fb98118c0", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-ec3be4d147371d60", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/document/JobDetail.tsx:202"}, "properties": {"repobilityId": "4c8d10f86801c140", "scanner": "scanner-primary", "fingerprint": "ec3be4d147371d60", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-60c93bf29d91349e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/velt/VeltInitializeUser.tsx:30"}, "properties": {"repobilityId": "a8c95aac38c196b5", "scanner": "scanner-primary", "fingerprint": "60c93bf29d91349e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f345e86a6ab118c8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/velt/VeltDataProviders.ts:29"}, "properties": {"repobilityId": "a3b2c025dc65d41e", "scanner": "scanner-primary", "fingerprint": "f345e86a6ab118c8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8fdcad05396be1c1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/store.ts:95"}, "properties": {"repobilityId": "f271e915a82bdf65", "scanner": "scanner-primary", "fingerprint": "8fdcad05396be1c1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-288c6576fd23eeb0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/users/get/route.ts:9"}, "properties": {"repobilityId": "756c5563d5447fae", "scanner": "scanner-primary", "fingerprint": "288c6576fd23eeb0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-49779e7781a0b8bf", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/users/save/route.ts:9"}, "properties": {"repobilityId": "abfb6620c96a3ec9", "scanner": "scanner-primary", "fingerprint": "49779e7781a0b8bf", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-cb3160dcd1e7e93e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/reactions/get/route.ts:9"}, "properties": {"repobilityId": "7840b6ec94dc030a", "scanner": "scanner-primary", "fingerprint": "cb3160dcd1e7e93e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2df1849260049417", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/reactions/save/route.ts:9"}, "properties": {"repobilityId": "ab09e59ba1af8d9c", "scanner": "scanner-primary", "fingerprint": "2df1849260049417", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c71f34d4aa16c402", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/reactions/delete/route.ts:9"}, "properties": {"repobilityId": "4ee334a3313c8df3", "scanner": "scanner-primary", "fingerprint": "c71f34d4aa16c402", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6723298d6b5ff7aa", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/attachments/get/[attachmentId]/route.ts:24"}, "properties": {"repobilityId": "70e63660a54891f9", "scanner": "scanner-primary", "fingerprint": "6723298d6b5ff7aa", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9f43c49779d7fb00", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/attachments/save/route.ts:9"}, "properties": {"repobilityId": "900c49f9ffc6ccaa", "scanner": "scanner-primary", "fingerprint": "9f43c49779d7fb00", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a4c44135468c2ae5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/attachments/delete/route.ts:9"}, "properties": {"repobilityId": "d50fb13fe30324c5", "scanner": "scanner-primary", "fingerprint": "a4c44135468c2ae5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6622321fb0807d30", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/comments/get/route.ts:9"}, "properties": {"repobilityId": "a61436187ce419af", "scanner": "scanner-primary", "fingerprint": "6622321fb0807d30", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-804b295095b0ce7c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/comments/save/route.ts:9"}, "properties": {"repobilityId": "1c6be13aa0af6f0f", "scanner": "scanner-primary", "fingerprint": "804b295095b0ce7c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2717c58b18b51343", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/comments/delete/route.ts:9"}, "properties": {"repobilityId": "71bb82c65fc7c634", "scanner": "scanner-primary", "fingerprint": "2717c58b18b51343", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fc9714ce2163e94a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/forms/page-mode-demo/components/velt/useVeltEventHandlers.ts:45"}, "properties": {"repobilityId": "f9055851a8a147f5", "scanner": "scanner-primary", "fingerprint": "fc9714ce2163e94a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2af74b34c91dafd1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/forms/page-mode-demo/components/velt/VeltCollaboration.tsx:28"}, "properties": {"repobilityId": "747c4012b86aba25", "scanner": "scanner-primary", "fingerprint": "2af74b34c91dafd1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-357d07ee58179285", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/forms/page-mode-demo/app/userAuth/AppUserContext.tsx:76"}, "properties": {"repobilityId": "73378f3d0c538580", "scanner": "scanner-primary", "fingerprint": "357d07ee58179285", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-796cc07126a9fc1c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/self-hosting/forms/page-mode-demo/app/inline-comments/inline-section.tsx:9"}, "properties": {"repobilityId": "bf88d93f0983441e", "scanner": "scanner-primary", "fingerprint": "796cc07126a9fc1c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f82a191ed58dc639", "level": "note", "message": {"text": "\"active\" state uses light bg in a dark theme \u2014 apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/components/document/TipTapComponent/ui/ToolbarButton.tsx:8"}, "properties": {"repobilityId": "61e54913c5dad4d7", "scanner": "scanner-primary", "fingerprint": "f82a191ed58dc639", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.active-light-bg"]}}, {"ruleId": "scanner-5b29944a2164beae", "level": "note", "message": {"text": "\"active\" state uses light bg in a dark theme \u2014 apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/components/document/TipTapComponent/ui/FormattingToolbar.tsx:40"}, "properties": {"repobilityId": "da8a77b44ce6404c", "scanner": "scanner-primary", "fingerprint": "5b29944a2164beae", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.active-light-bg"]}}, {"ruleId": "scanner-698471c2d02b17bd", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/layout.tsx:20"}, "properties": {"repobilityId": "a5ea9a1bde9ebc75", "scanner": "scanner-primary", "fingerprint": "698471c2d02b17bd", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-6a024279cf8da588", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/video-player/lottie/lottie-comments-demo/app/layout.tsx:41"}, "properties": {"repobilityId": "f72da9612bf9ab2d", "scanner": "scanner-primary", "fingerprint": "6a024279cf8da588", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-6589620496e7fef6", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/charts/chartjs/chartjs-comments-demo/app/layout.tsx:41"}, "properties": {"repobilityId": "3db98e9c9b5c75f5", "scanner": "scanner-primary", "fingerprint": "6589620496e7fef6", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-9fec8b9f91d0f4b5", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/charts/highcharts/highcharts-comments-demo/app/layout.tsx:41"}, "properties": {"repobilityId": "ba7eafd48e5b3be1", "scanner": "scanner-primary", "fingerprint": "9fec8b9f91d0f4b5", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-d624b36f1900fce0", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/charts/nivo/nivo-comments-demo/app/layout.tsx:41"}, "properties": {"repobilityId": "c3a1e8b8e591f795", "scanner": "scanner-primary", "fingerprint": "d624b36f1900fce0", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-06a6fb666fdb54a6", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/dashboard/custom/dashboard-demo/app/layout.tsx:41"}, "properties": {"repobilityId": "0358a24d3fd81663", "scanner": "scanner-primary", "fingerprint": "06a6fb666fdb54a6", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-792abf51f48fcb9b", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/components/document/JobDetailModal.tsx:31"}, "properties": {"repobilityId": "f5bd34ea9552807a", "scanner": "scanner-primary", "fingerprint": "792abf51f48fcb9b", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-378c01f8454047c7", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/components/document/JobsTable.tsx:86"}, "properties": {"repobilityId": "399e7cacb9c2e38b", "scanner": "scanner-primary", "fingerprint": "378c01f8454047c7", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-1177f42a7cc783a9", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/layout.tsx:20"}, "properties": {"repobilityId": "323f3b806f82cb59", "scanner": "scanner-primary", "fingerprint": "1177f42a7cc783a9", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-2ace42eb414259e9", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/tanstack/single-tool/app/layout.tsx:28"}, "properties": {"repobilityId": "6a5bce3f5d35bfe6", "scanner": "scanner-primary", "fingerprint": "2ace42eb414259e9", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-859d9acc1b7a9421", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/tanstack/multiple-tools/app/layout.tsx:28"}, "properties": {"repobilityId": "0ef42b8c47f9119f", "scanner": "scanner-primary", "fingerprint": "859d9acc1b7a9421", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-9d8d5c2e2e924466", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/tanstack/comment-aggregation/app/layout.tsx:28"}, "properties": {"repobilityId": "40ed12fba05f4ba1", "scanner": "scanner-primary", "fingerprint": "9d8d5c2e2e924466", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-fbbff037d6766a59", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/ag-grid/single-tool/app/layout.tsx:28"}, "properties": {"repobilityId": "bdfa9ae2b7e002e6", "scanner": "scanner-primary", "fingerprint": "fbbff037d6766a59", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-1128667685349ab5", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/ag-grid/multiple-tools/app/layout.tsx:28"}, "properties": {"repobilityId": "3dfd2aadb7288d6a", "scanner": "scanner-primary", "fingerprint": "1128667685349ab5", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-99fe3b7aaaa7d508", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/tables/ag-grid/comment-aggregation/app/layout.tsx:28"}, "properties": {"repobilityId": "cfa7a54f1d13464a", "scanner": "scanner-primary", "fingerprint": "99fe3b7aaaa7d508", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-96a6ff5444f24157", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "110a21702725cb02", "scanner": "scanner-primary", "fingerprint": "96a6ff5444f24157", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-4bc486e6f0669f82", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/components/document/FreestyleCanvas/FreestyleCanvas.tsx:492"}, "properties": {"repobilityId": "83d0089b94ed0252", "scanner": "scanner-primary", "fingerprint": "4bc486e6f0669f82", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-82a2a4680629a5f9", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "bb9a3db9eef874ed", "scanner": "scanner-primary", "fingerprint": "82a2a4680629a5f9", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-02a335360bd3fe8f", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "9a4c6274ab4a8929", "scanner": "scanner-primary", "fingerprint": "02a335360bd3fe8f", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-1e45d53ff3218ceb", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/apryse/apryse-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "10ee609b5fc0b7a7", "scanner": "scanner-primary", "fingerprint": "1e45d53ff3218ceb", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-5b81b0928081fd23", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "eaea8212d82c0162", "scanner": "scanner-primary", "fingerprint": "5b81b0928081fd23", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-4bdb0cdabc8707f6", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/ace/ace-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "f68059128ed44ab7", "scanner": "scanner-primary", "fingerprint": "4bdb0cdabc8707f6", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-96d4106ef31d231c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/react/comments/text-editors/codemirror/codemirror-comments-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx:42"}, "properties": {"repobilityId": "21c49b539d8c3841", "scanner": "scanner-primary", "fingerprint": "96d4106ef31d231c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fc388cd41f81041e", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "aebdce2e657dcc9c", "scanner": "scanner-primary", "fingerprint": "fc388cd41f81041e", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-83207ea5d86ff033", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/quill/quill-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "1aceb425014075f3", "scanner": "scanner-primary", "fingerprint": "83207ea5d86ff033", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-2f476c8520bb3633", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/react/comments/text-editors/lexical/lexical-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "e023becebb24867b", "scanner": "scanner-primary", "fingerprint": "2f476c8520bb3633", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-4c38abb79644b956", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/master-sample-app/scripts/generate-code-files.js:32"}, "properties": {"repobilityId": "34fa3ab99f311f49", "scanner": "scanner-primary", "fingerprint": "4c38abb79644b956", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-af785a04c646b484", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 apps/master-sample-app/components/header-bar.tsx:140"}, "properties": {"repobilityId": "73eef178faabbfbf", "scanner": "scanner-primary", "fingerprint": "af785a04c646b484", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-151278257d6224ca", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/master-sample-app/components/ui/chart.tsx:83"}, "properties": {"repobilityId": "e8e980a01cd66ce3", "scanner": "scanner-primary", "fingerprint": "151278257d6224ca", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-bf000fecbfe054e7", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 apps/master-sample-app/components/viewer/code-display.tsx:295"}, "properties": {"repobilityId": "b838f9cb3a1203e3", "scanner": "scanner-primary", "fingerprint": "bf000fecbfe054e7", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-ae312f25c76361fa", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/update-velt-versions.js:128"}, "properties": {"repobilityId": "e20064cd5adee1b2", "scanner": "scanner-primary", "fingerprint": "ae312f25c76361fa", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-be07bd64c92f4798", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/list-apps.js:7"}, "properties": {"repobilityId": "00037148e472f8ad", "scanner": "scanner-primary", "fingerprint": "be07bd64c92f4798", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-412ae1d1e7d40cb1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/new-demo.ts:85"}, "properties": {"repobilityId": "ba07436a6e8700af", "scanner": "scanner-primary", "fingerprint": "412ae1d1e7d40cb1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-32821ac1a60a0160", "level": "error", "message": {"text": "Runtime dotenv file present in repo: apps/react/self-hosting/forms/page-mode-demo/.env"}, "properties": {"repobilityId": "8aa97f9642e96cce", "scanner": "scanner-primary", "fingerprint": "32821ac1a60a0160", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets", "config", "env-file", "runtime-env", "env_file_with_secret"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/self-hosting/forms/page-mode-demo/.env"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-abbe4bd9cc91adda", "level": "error", "message": {"text": "Possible secret in outreach/lib/auth.ts"}, "properties": {"repobilityId": "d31924fcf8bfd7e3", "scanner": "scanner-primary", "fingerprint": "abbe4bd9cc91adda", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "outreach/lib/auth.ts"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-9d0c8d4aaad97733", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/main.js:81"}, "properties": {"repobilityId": "42cbc8b9e4cd222f", "scanner": "scanner-primary", "fingerprint": "9d0c8d4aaad97733", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/main.js"}, "region": {"startLine": 81}}}]}, {"ruleId": "scanner-56fc4c5e80962510", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/tiptap.js:28"}, "properties": {"repobilityId": "5d117e53f1aa96dc", "scanner": "scanner-primary", "fingerprint": "56fc4c5e80962510", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/tiptap.js"}, "region": {"startLine": 28}}}]}, {"ruleId": "scanner-aaaff8e505014e57", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/ui/toolbar-divider.js:14"}, "properties": {"repobilityId": "a07e3bf169f51dfd", "scanner": "scanner-primary", "fingerprint": "aaaff8e505014e57", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/ui/toolbar-divider.js"}, "region": {"startLine": 14}}}]}, {"ruleId": "scanner-a40c8159a92dd136", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/ui/toolbar-button.js:22"}, "properties": {"repobilityId": "b0b97d5195970240", "scanner": "scanner-primary", "fingerprint": "a40c8159a92dd136", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/ui/toolbar-button.js"}, "region": {"startLine": 22}}}]}, {"ruleId": "scanner-e02f228ab6f3c31b", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/ui/bubble-menu-toolbar.js:28"}, "properties": {"repobilityId": "20aa6f045b94e907", "scanner": "scanner-primary", "fingerprint": "e02f228ab6f3c31b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/document/tiptap/ui/bubble-menu-toolbar.js"}, "region": {"startLine": 28}}}]}, {"ruleId": "scanner-56dd19a770cc9262", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/sidebar/sidebar.js:42"}, "properties": {"repobilityId": "dddf6e558bdbefde", "scanner": "scanner-primary", "fingerprint": "56dd19a770cc9262", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/sidebar/sidebar.js"}, "region": {"startLine": 42}}}]}, {"ruleId": "scanner-404895682f8d0402", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/header/theme-toggle.js:64"}, "properties": {"repobilityId": "aa1e1437b06028ca", "scanner": "scanner-primary", "fingerprint": "404895682f8d0402", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/header/theme-toggle.js"}, "region": {"startLine": 64}}}]}, {"ruleId": "scanner-f0e81dba3034733e", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/header/header.js:22"}, "properties": {"repobilityId": "e406ca07c0c36608", "scanner": "scanner-primary", "fingerprint": "f0e81dba3034733e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/components/header/header.js"}, "region": {"startLine": 22}}}]}, {"ruleId": "scanner-45d7b4716e593326", "level": "error", "message": {"text": "Possible secret in apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/lib/velt.js"}, "properties": {"repobilityId": "0bd1b9298b30a191", "scanner": "scanner-primary", "fingerprint": "45d7b4716e593326", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/lib/velt.js"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-916dd9e80a1f32a0", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/main.js:80"}, "properties": {"repobilityId": "a047c10ba596b74a", "scanner": "scanner-primary", "fingerprint": "916dd9e80a1f32a0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/main.js"}, "region": {"startLine": 80}}}]}, {"ruleId": "scanner-fb247ed577378c0a", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/components/document/mind-map/mind-map-editor.js:152"}, "properties": {"repobilityId": "95634891849aa851", "scanner": "scanner-primary", "fingerprint": "fb247ed577378c0a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/components/document/mind-map/mind-map-editor.js"}, "region": {"startLine": 152}}}]}, {"ruleId": "scanner-c178041c4e7886c8", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/components/document/mind-map/mind-map-sidebar.js:42"}, "properties": {"repobilityId": "c49901063d1ecea4", "scanner": "scanner-primary", "fingerprint": "c178041c4e7886c8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/components/document/mind-map/mind-map-sidebar.js"}, "region": {"startLine": 42}}}]}, {"ruleId": "scanner-ca90adf974662ef1", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/components/header/theme-toggle.js:66"}, "properties": {"repobilityId": "532354f59e303065", "scanner": "scanner-primary", "fingerprint": "ca90adf974662ef1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/components/header/theme-toggle.js"}, "region": {"startLine": 66}}}]}, {"ruleId": "scanner-62478406bb6f4f5d", "level": "error", "message": {"text": "Possible secret in apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/lib/velt.js"}, "properties": {"repobilityId": "cc4306148268006f", "scanner": "scanner-primary", "fingerprint": "62478406bb6f4f5d", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/lib/velt.js"}, "region": {"startLine": 11}}}]}, {"ruleId": "scanner-f5d9ec272bbc89a6", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/main.js:77"}, "properties": {"repobilityId": "f99c5bed6d20c6e9", "scanner": "scanner-primary", "fingerprint": "f5d9ec272bbc89a6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/main.js"}, "region": {"startLine": 77}}}]}, {"ruleId": "scanner-753324c2b4c7df8e", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/components/document/core-editor/core-editor.js:47"}, "properties": {"repobilityId": "71f6bc902528468b", "scanner": "scanner-primary", "fingerprint": "753324c2b4c7df8e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/components/document/core-editor/core-editor.js"}, "region": {"startLine": 47}}}]}, {"ruleId": "scanner-5cf3ba9df54ab059", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/components/sidebar/sidebar.js:38"}, "properties": {"repobilityId": "5a302fab581e6537", "scanner": "scanner-primary", "fingerprint": "5cf3ba9df54ab059", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/components/sidebar/sidebar.js"}, "region": {"startLine": 38}}}]}, {"ruleId": "scanner-df589fe960de1a8b", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/components/header/theme-toggle.js:66"}, "properties": {"repobilityId": "c43a78f08c15a0be", "scanner": "scanner-primary", "fingerprint": "df589fe960de1a8b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/components/header/theme-toggle.js"}, "region": {"startLine": 66}}}]}, {"ruleId": "scanner-c11ebcc167423ba9", "level": "error", "message": {"text": "Possible secret in apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/lib/velt.js"}, "properties": {"repobilityId": "098ccca4cea7f28c", "scanner": "scanner-primary", "fingerprint": "c11ebcc167423ba9", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/lib/velt.js"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-421ff9957e93cbf5", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/main.js:81"}, "properties": {"repobilityId": "25ca83d7860bd4cb", "scanner": "scanner-primary", "fingerprint": "421ff9957e93cbf5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/main.js"}, "region": {"startLine": 81}}}]}, {"ruleId": "scanner-71ed96ce47c2259a", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/components/document/task-list/task-list-sidebar.js:17"}, "properties": {"repobilityId": "a6e4658da49fe3a4", "scanner": "scanner-primary", "fingerprint": "71ed96ce47c2259a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/components/document/task-list/task-list-sidebar.js"}, "region": {"startLine": 17}}}]}, {"ruleId": "scanner-fa53c4ae59f2a206", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/components/document/task-list/task-list-editor.js:223"}, "properties": {"repobilityId": "b1292c99db8417a4", "scanner": "scanner-primary", "fingerprint": "fa53c4ae59f2a206", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/components/document/task-list/task-list-editor.js"}, "region": {"startLine": 223}}}]}, {"ruleId": "scanner-6e45b75bfd2b7a50", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/components/header/theme-toggle.js:64"}, "properties": {"repobilityId": "d13cba9626e0222c", "scanner": "scanner-primary", "fingerprint": "6e45b75bfd2b7a50", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/components/header/theme-toggle.js"}, "region": {"startLine": 64}}}]}, {"ruleId": "scanner-55ad53a706eb3f08", "level": "error", "message": {"text": "Possible secret in apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/lib/velt.js"}, "properties": {"repobilityId": "8ffbe8131779e796", "scanner": "scanner-primary", "fingerprint": "55ad53a706eb3f08", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/lib/velt.js"}, "region": {"startLine": 11}}}]}, {"ruleId": "scanner-b6e59a6c3f85af70", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/main.js:77"}, "properties": {"repobilityId": "9c65a42504b217c2", "scanner": "scanner-primary", "fingerprint": "b6e59a6c3f85af70", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/main.js"}, "region": {"startLine": 77}}}]}, {"ruleId": "scanner-f612186e9f7fc61d", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/components/document/map-store/map-store-editor.js:118"}, "properties": {"repobilityId": "14a33974d6122c60", "scanner": "scanner-primary", "fingerprint": "f612186e9f7fc61d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/components/document/map-store/map-store-editor.js"}, "region": {"startLine": 118}}}]}, {"ruleId": "scanner-8a02eee4e665972e", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/components/document/map-store/map-store-sidebar.js:21"}, "properties": {"repobilityId": "d319129d4d8d4e70", "scanner": "scanner-primary", "fingerprint": "8a02eee4e665972e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/components/document/map-store/map-store-sidebar.js"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-cefe094294051699", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/components/header/theme-toggle.js:66"}, "properties": {"repobilityId": "c37e0316f9db85a6", "scanner": "scanner-primary", "fingerprint": "cefe094294051699", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/components/header/theme-toggle.js"}, "region": {"startLine": 66}}}]}, {"ruleId": "scanner-a042f4ebe1e7df2e", "level": "error", "message": {"text": "Possible secret in apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/lib/velt.js"}, "properties": {"repobilityId": "6c285ef6a8ecc9eb", "scanner": "scanner-primary", "fingerprint": "a042f4ebe1e7df2e", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/lib/velt.js"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-8b53e35a20b1476d", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/main.js:85"}, "properties": {"repobilityId": "6ccaf6a4150d3d3a", "scanner": "scanner-primary", "fingerprint": "8b53e35a20b1476d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/main.js"}, "region": {"startLine": 85}}}]}, {"ruleId": "scanner-fd5184f8e12936ee", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/document/codemirror.js:133"}, "properties": {"repobilityId": "ace7adadedfd8cba", "scanner": "scanner-primary", "fingerprint": "fd5184f8e12936ee", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/document/codemirror.js"}, "region": {"startLine": 133}}}]}, {"ruleId": "scanner-5ef9438e31ed975d", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/document/document-canvas.js:96"}, "properties": {"repobilityId": "462eb0fd374498ca", "scanner": "scanner-primary", "fingerprint": "5ef9438e31ed975d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/document/document-canvas.js"}, "region": {"startLine": 96}}}]}, {"ruleId": "scanner-6db3de9135dc6d2f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/theme/theme-toggle.js:45"}, "properties": {"repobilityId": "c6c310c48365f36c", "scanner": "scanner-primary", "fingerprint": "6db3de9135dc6d2f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/theme/theme-toggle.js"}, "region": {"startLine": 45}}}]}, {"ruleId": "scanner-e489f96307174337", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/sidebar/sidebar.js:33"}, "properties": {"repobilityId": "bfbf2ac7c6e3a5b7", "scanner": "scanner-primary", "fingerprint": "e489f96307174337", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/sidebar/sidebar.js"}, "region": {"startLine": 33}}}]}, {"ruleId": "scanner-3748213c5e2f84dd", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/header/header.js:28"}, "properties": {"repobilityId": "dc3cf5ed48bb6df0", "scanner": "scanner-primary", "fingerprint": "3748213c5e2f84dd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/header/header.js"}, "region": {"startLine": 28}}}]}, {"ruleId": "scanner-ba83bacd993420e1", "level": "error", "message": {"text": "Possible secret in apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/lib/velt.js"}, "properties": {"repobilityId": "4da1a619ac965e85", "scanner": "scanner-primary", "fingerprint": "ba83bacd993420e1", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/lib/velt.js"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-e041ff9a33f5cbd1", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/main.js:81"}, "properties": {"repobilityId": "015717a4873388cd", "scanner": "scanner-primary", "fingerprint": "e041ff9a33f5cbd1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/main.js"}, "region": {"startLine": 81}}}]}, {"ruleId": "scanner-4cb6b8f609f575c6", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/document/blocknote/blocknote.js:23"}, "properties": {"repobilityId": "d1ccfb4c214c5275", "scanner": "scanner-primary", "fingerprint": "4cb6b8f609f575c6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/document/blocknote/blocknote.js"}, "region": {"startLine": 23}}}]}, {"ruleId": "scanner-dcbe6c13345bdb85", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/sidebar/sidebar.js:114"}, "properties": {"repobilityId": "d9b2213839effeb3", "scanner": "scanner-primary", "fingerprint": "dcbe6c13345bdb85", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/sidebar/sidebar.js"}, "region": {"startLine": 114}}}]}, {"ruleId": "scanner-b547e51a615df41a", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/header/theme-toggle.js:64"}, "properties": {"repobilityId": "ce3458c4ef1147ac", "scanner": "scanner-primary", "fingerprint": "b547e51a615df41a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/header/theme-toggle.js"}, "region": {"startLine": 64}}}]}, {"ruleId": "scanner-3d2ab0ca81f49f08", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/header/header.js:20"}, "properties": {"repobilityId": "7b3f853bcbcdfd48", "scanner": "scanner-primary", "fingerprint": "3d2ab0ca81f49f08", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/components/header/header.js"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-fbc08f79455ea0fb", "level": "error", "message": {"text": "Possible secret in apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/lib/velt.js"}, "properties": {"repobilityId": "95fde901d5f84b24", "scanner": "scanner-primary", "fingerprint": "fbc08f79455ea0fb", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/lib/velt.js"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-9cb5b973c60874a4", "level": "error", "message": {"text": "Possible secret in apps/react/recorder/document/custom/recorder-demo/app/page.tsx"}, "properties": {"repobilityId": "4d52d8815fb9ae6e", "scanner": "scanner-primary", "fingerprint": "9cb5b973c60874a4", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/recorder/document/custom/recorder-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-7c6c8dc9a56d8f9a", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/recorder/document/custom/recorder-demo/app/layout.tsx:41"}, "properties": {"repobilityId": "18e15b357110fde0", "scanner": "scanner-primary", "fingerprint": "7c6c8dc9a56d8f9a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/recorder/document/custom/recorder-demo/app/layout.tsx"}, "region": {"startLine": 41}}}]}, {"ruleId": "scanner-ea5c7b6b292c23b0", "level": "error", "message": {"text": "Possible secret in apps/react/recorder/document/custom/recorder-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "a50b3b23e7ad35e7", "scanner": "scanner-primary", "fingerprint": "ea5c7b6b292c23b0", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/recorder/document/custom/recorder-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-a160971f723c0d90", "level": "error", "message": {"text": "Possible secret in apps/react/activity/document/custom/activity-log-demo/app/page.tsx"}, "properties": {"repobilityId": "a8428007d37bd882", "scanner": "scanner-primary", "fingerprint": "a160971f723c0d90", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/activity/document/custom/activity-log-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-51f4209a32024fb5", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/activity/document/custom/activity-log-demo/app/layout.tsx:41"}, "properties": {"repobilityId": "44e8365d53268747", "scanner": "scanner-primary", "fingerprint": "51f4209a32024fb5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/activity/document/custom/activity-log-demo/app/layout.tsx"}, "region": {"startLine": 41}}}]}, {"ruleId": "scanner-337205688242c8fb", "level": "error", "message": {"text": "Possible secret in apps/react/activity/document/custom/activity-log-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "e4bbf7d2e9d6b64b", "scanner": "scanner-primary", "fingerprint": "337205688242c8fb", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/activity/document/custom/activity-log-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-d05b1de99d6a62b1", "level": "error", "message": {"text": "Possible secret in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/page.tsx"}, "properties": {"repobilityId": "1dc3e58faa92dbbc", "scanner": "scanner-primary", "fingerprint": "d05b1de99d6a62b1", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/page.tsx"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-babb48d8cea0a076", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "33cef3520337fa24", "scanner": "scanner-primary", "fingerprint": "babb48d8cea0a076", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/layout.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-99e7fff9c9ccbd12", "level": "error", "message": {"text": "Possible secret in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "379eeb04d126388d", "scanner": "scanner-primary", "fingerprint": "99e7fff9c9ccbd12", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-4c19e348774ca09a", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/canvas/reactflow/reactflow-demo/app/page.tsx"}, "properties": {"repobilityId": "e31a9e94941a7281", "scanner": "scanner-primary", "fingerprint": "4c19e348774ca09a", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/canvas/reactflow/reactflow-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-06829f70dc46a315", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/canvas/reactflow/reactflow-demo/app/layout.tsx:20"}, "properties": {"repobilityId": "6a9a5a7917c3340e", "scanner": "scanner-primary", "fingerprint": "06829f70dc46a315", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/canvas/reactflow/reactflow-demo/app/layout.tsx"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-123c3258d94f887c", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/canvas/reactflow/reactflow-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "d86f31c1d392cb2c", "scanner": "scanner-primary", "fingerprint": "123c3258d94f887c", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/canvas/reactflow/reactflow-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-45ab6eac2379a9e2", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/page.tsx"}, "properties": {"repobilityId": "bc04bfa97f58ef29", "scanner": "scanner-primary", "fingerprint": "45ab6eac2379a9e2", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-c61984b0a7444a02", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/layout.tsx:20"}, "properties": {"repobilityId": "ed4d325341268698", "scanner": "scanner-primary", "fingerprint": "c61984b0a7444a02", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/layout.tsx"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-c99e923224840735", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "429f2d772f4554d1", "scanner": "scanner-primary", "fingerprint": "c99e923224840735", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-69f382e7217941eb", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/page.tsx"}, "properties": {"repobilityId": "90babeff0a270582", "scanner": "scanner-primary", "fingerprint": "69f382e7217941eb", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-cdcc766471beaf88", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/layout.tsx:20"}, "properties": {"repobilityId": "7c1d3a2657b8af6e", "scanner": "scanner-primary", "fingerprint": "cdcc766471beaf88", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/layout.tsx"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-4609757dbc8c6789", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "615d694f04599c37", "scanner": "scanner-primary", "fingerprint": "4609757dbc8c6789", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-4b5577dccc049405", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/page.tsx"}, "properties": {"repobilityId": "b9a12c261aede2ed", "scanner": "scanner-primary", "fingerprint": "4b5577dccc049405", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-37b9ba195bc2ff7d", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "02cff74cc32f1ae2", "scanner": "scanner-primary", "fingerprint": "37b9ba195bc2ff7d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/layout.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-fc79a93e2a1a1d34", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "d8cff03690036a8d", "scanner": "scanner-primary", "fingerprint": "fc79a93e2a1a1d34", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-ace55162082f5e0c", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/page.tsx"}, "properties": {"repobilityId": "79c6c5f522153da7", "scanner": "scanner-primary", "fingerprint": "ace55162082f5e0c", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-91aa3f6a21ce5a0e", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "59f507abc2a2b7a7", "scanner": "scanner-primary", "fingerprint": "91aa3f6a21ce5a0e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/layout.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-0d192055becc620f", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "a25725e9aa827b4a", "scanner": "scanner-primary", "fingerprint": "0d192055becc620f", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-e6f13b5b19196d72", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in apps/react/crdt/text-editors/core/core-react-text-crdt-demo/components/document/CoreEditor/RemoteCursors.tsx:35"}, "properties": {"repobilityId": "beaa82d3d99f32e3", "scanner": "scanner-primary", "fingerprint": "e6f13b5b19196d72", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-text-crdt-demo/components/document/CoreEditor/RemoteCursors.tsx"}, "region": {"startLine": 35}}}]}, {"ruleId": "scanner-960554d3e7fdf629", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/page.tsx"}, "properties": {"repobilityId": "157d93e4cec612ca", "scanner": "scanner-primary", "fingerprint": "960554d3e7fdf629", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-7296bba8c5a8cf7c", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/layout.tsx:20"}, "properties": {"repobilityId": "366e880ec9cf887d", "scanner": "scanner-primary", "fingerprint": "7296bba8c5a8cf7c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/layout.tsx"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-5e0c69c5a997981c", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "f2ab479ff9c0a6c9", "scanner": "scanner-primary", "fingerprint": "5e0c69c5a997981c", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-ae838fe47c37625e", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/page.tsx"}, "properties": {"repobilityId": "fb5907732fe4298e", "scanner": "scanner-primary", "fingerprint": "ae838fe47c37625e", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-53c7917976fbb605", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "d2d3ef67e5ffa9a2", "scanner": "scanner-primary", "fingerprint": "53c7917976fbb605", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/layout.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-a399c72526ece375", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "a0a80a7be1219158", "scanner": "scanner-primary", "fingerprint": "a399c72526ece375", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-35b3e198ccd2f366", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx:25"}, "properties": {"repobilityId": "13b160786feaea73", "scanner": "scanner-primary", "fingerprint": "35b3e198ccd2f366", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx"}, "region": {"startLine": 25}}}]}, {"ruleId": "scanner-a2e141ca5fa5aca7", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/page.tsx"}, "properties": {"repobilityId": "2ddba4988eb6aebc", "scanner": "scanner-primary", "fingerprint": "a2e141ca5fa5aca7", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-96603f0bc046d9b6", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/layout.tsx:18"}, "properties": {"repobilityId": "3184c8eca7cf0db5", "scanner": "scanner-primary", "fingerprint": "96603f0bc046d9b6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/layout.tsx"}, "region": {"startLine": 18}}}]}, {"ruleId": "scanner-d7dc43401d39232a", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "51769cfc2fa709c7", "scanner": "scanner-primary", "fingerprint": "d7dc43401d39232a", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-44870f1f35f23f87", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/blocknote/blocknote-demo/app/page.tsx"}, "properties": {"repobilityId": "5239b410f17705a3", "scanner": "scanner-primary", "fingerprint": "44870f1f35f23f87", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/blocknote/blocknote-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-aeb4f414e61f64f5", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/crdt/text-editors/blocknote/blocknote-demo/app/layout.tsx:20"}, "properties": {"repobilityId": "d90a03fa09260634", "scanner": "scanner-primary", "fingerprint": "aeb4f414e61f64f5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/blocknote/blocknote-demo/app/layout.tsx"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-bdc5794584944cb7", "level": "error", "message": {"text": "Possible secret in apps/react/crdt/text-editors/blocknote/blocknote-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "bea8986b2be777d6", "scanner": "scanner-primary", "fingerprint": "bdc5794584944cb7", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/blocknote/blocknote-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-31daddfbfc72d7be", "level": "error", "message": {"text": "Possible secret in apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/page.tsx"}, "properties": {"repobilityId": "66c60de988784a6c", "scanner": "scanner-primary", "fingerprint": "31daddfbfc72d7be", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/page.tsx"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-cffdb1a562440fd3", "level": "error", "message": {"text": "Possible secret in apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "af15f7b05f3f1697", "scanner": "scanner-primary", "fingerprint": "cffdb1a562440fd3", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-36509896f425e113", "level": "error", "message": {"text": "Possible secret in apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/page.tsx"}, "properties": {"repobilityId": "5923f9777614ef85", "scanner": "scanner-primary", "fingerprint": "36509896f425e113", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/page.tsx"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-ab15df00accd9443", "level": "error", "message": {"text": "Possible secret in apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "81aa5d6f822775a6", "scanner": "scanner-primary", "fingerprint": "ab15df00accd9443", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-c00745354ca92cd2", "level": "error", "message": {"text": "Possible secret in apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/page.tsx"}, "properties": {"repobilityId": "587ac4e3c20e11b0", "scanner": "scanner-primary", "fingerprint": "c00745354ca92cd2", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-cfe82bef3c644930", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/layout.tsx:20"}, "properties": {"repobilityId": "415eb2de64f7524d", "scanner": "scanner-primary", "fingerprint": "cfe82bef3c644930", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/layout.tsx"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-73c2009ce9ab7496", "level": "error", "message": {"text": "Possible secret in apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "b160cffbea4c400a", "scanner": "scanner-primary", "fingerprint": "73c2009ce9ab7496", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-c937a6a9514c8e53", "level": "error", "message": {"text": "Possible secret in apps/react/comments/video-player/lottie/lottie-comments-demo/app/page.tsx"}, "properties": {"repobilityId": "6e525e281496fa9d", "scanner": "scanner-primary", "fingerprint": "c937a6a9514c8e53", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/video-player/lottie/lottie-comments-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-d23a9997193bb6c8", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/video-player/lottie/lottie-comments-demo/app/layout.tsx:41"}, "properties": {"repobilityId": "b6e8191c5bbcd78e", "scanner": "scanner-primary", "fingerprint": "d23a9997193bb6c8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/video-player/lottie/lottie-comments-demo/app/layout.tsx"}, "region": {"startLine": 41}}}]}, {"ruleId": "scanner-023bfc08712a92f4", "level": "error", "message": {"text": "Possible secret in apps/react/comments/video-player/lottie/lottie-comments-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "f4ff89bc82400996", "scanner": "scanner-primary", "fingerprint": "023bfc08712a92f4", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/video-player/lottie/lottie-comments-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-3750b4fa056e867a", "level": "error", "message": {"text": "Possible secret in apps/react/comments/charts/chartjs/chartjs-comments-demo/app/page.tsx"}, "properties": {"repobilityId": "2b25ea800c332283", "scanner": "scanner-primary", "fingerprint": "3750b4fa056e867a", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/charts/chartjs/chartjs-comments-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-546e12b1517ebee6", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/charts/chartjs/chartjs-comments-demo/app/layout.tsx:41"}, "properties": {"repobilityId": "c391be01152511c8", "scanner": "scanner-primary", "fingerprint": "546e12b1517ebee6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/charts/chartjs/chartjs-comments-demo/app/layout.tsx"}, "region": {"startLine": 41}}}]}, {"ruleId": "scanner-6cdfadeb30406dfe", "level": "error", "message": {"text": "Possible secret in apps/react/comments/charts/chartjs/chartjs-comments-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "a060478dcb5c7900", "scanner": "scanner-primary", "fingerprint": "6cdfadeb30406dfe", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/charts/chartjs/chartjs-comments-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-8e501db3ccf58823", "level": "error", "message": {"text": "Possible secret in apps/react/comments/charts/highcharts/highcharts-comments-demo/app/page.tsx"}, "properties": {"repobilityId": "e41dda4e4180aae4", "scanner": "scanner-primary", "fingerprint": "8e501db3ccf58823", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/charts/highcharts/highcharts-comments-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-08fc5ca9b3d59edc", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/charts/highcharts/highcharts-comments-demo/app/layout.tsx:41"}, "properties": {"repobilityId": "9fdbcaf75240e65d", "scanner": "scanner-primary", "fingerprint": "08fc5ca9b3d59edc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/charts/highcharts/highcharts-comments-demo/app/layout.tsx"}, "region": {"startLine": 41}}}]}, {"ruleId": "scanner-02055d66fcd94203", "level": "error", "message": {"text": "Possible secret in apps/react/comments/charts/highcharts/highcharts-comments-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "dc82f293edfca78f", "scanner": "scanner-primary", "fingerprint": "02055d66fcd94203", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/charts/highcharts/highcharts-comments-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-e0afa180bf2c3cc5", "level": "error", "message": {"text": "Possible secret in apps/react/comments/charts/nivo/nivo-comments-demo/app/page.tsx"}, "properties": {"repobilityId": "895764bdbeb1e39e", "scanner": "scanner-primary", "fingerprint": "e0afa180bf2c3cc5", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/charts/nivo/nivo-comments-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-0baac00116fa844a", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/charts/nivo/nivo-comments-demo/app/layout.tsx:41"}, "properties": {"repobilityId": "5a9a9351d36413f5", "scanner": "scanner-primary", "fingerprint": "0baac00116fa844a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/charts/nivo/nivo-comments-demo/app/layout.tsx"}, "region": {"startLine": 41}}}]}, {"ruleId": "scanner-c0a6fb773865dc62", "level": "error", "message": {"text": "Possible secret in apps/react/comments/charts/nivo/nivo-comments-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "437ca00ab42a4fdc", "scanner": "scanner-primary", "fingerprint": "c0a6fb773865dc62", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/charts/nivo/nivo-comments-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-de16ea19bfb8a541", "level": "error", "message": {"text": "Possible secret in apps/react/comments/dashboard/custom/dashboard-demo/app/page.tsx"}, "properties": {"repobilityId": "0e5f5b78e449f388", "scanner": "scanner-primary", "fingerprint": "de16ea19bfb8a541", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/dashboard/custom/dashboard-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-5938a025f0b83e15", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/dashboard/custom/dashboard-demo/app/layout.tsx:41"}, "properties": {"repobilityId": "2a47879f74b5d63f", "scanner": "scanner-primary", "fingerprint": "5938a025f0b83e15", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/dashboard/custom/dashboard-demo/app/layout.tsx"}, "region": {"startLine": 41}}}]}, {"ruleId": "scanner-5a738ea52deaf190", "level": "error", "message": {"text": "Possible secret in apps/react/comments/dashboard/custom/dashboard-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "a591ddd7e2a156b2", "scanner": "scanner-primary", "fingerprint": "5a738ea52deaf190", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/dashboard/custom/dashboard-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-aa2cd04733f88dc3", "level": "error", "message": {"text": "Possible secret in apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/page.tsx"}, "properties": {"repobilityId": "01f85d7c11fa4f65", "scanner": "scanner-primary", "fingerprint": "aa2cd04733f88dc3", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-084774530b09da33", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/layout.tsx:20"}, "properties": {"repobilityId": "cdaf5c52d92b9d82", "scanner": "scanner-primary", "fingerprint": "084774530b09da33", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/layout.tsx"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-53d8f26217c6fc56", "level": "error", "message": {"text": "Possible secret in apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "aee3c2015452ed62", "scanner": "scanner-primary", "fingerprint": "53d8f26217c6fc56", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-8b6cd4d169ffe6d7", "level": "error", "message": {"text": "Possible secret in apps/react/comments/tables/tanstack/single-tool/app/page.tsx"}, "properties": {"repobilityId": "6b1eacccc32881cb", "scanner": "scanner-primary", "fingerprint": "8b6cd4d169ffe6d7", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/tanstack/single-tool/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-2d983fa630f8c473", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/tanstack/single-tool/app/layout.tsx:28"}, "properties": {"repobilityId": "25a458d4f3baafb1", "scanner": "scanner-primary", "fingerprint": "2d983fa630f8c473", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/tanstack/single-tool/app/layout.tsx"}, "region": {"startLine": 28}}}]}, {"ruleId": "scanner-68446cbae763f206", "level": "error", "message": {"text": "Possible secret in apps/react/comments/tables/tanstack/single-tool/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "ff5169aa502976c8", "scanner": "scanner-primary", "fingerprint": "68446cbae763f206", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/tanstack/single-tool/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-13dce623fd4ca4eb", "level": "error", "message": {"text": "Possible secret in apps/react/comments/tables/tanstack/multiple-tools/app/page.tsx"}, "properties": {"repobilityId": "17543edc582e2f63", "scanner": "scanner-primary", "fingerprint": "13dce623fd4ca4eb", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/tanstack/multiple-tools/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-6edd9c45ff666ab0", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/tanstack/multiple-tools/app/layout.tsx:28"}, "properties": {"repobilityId": "2adc754e531e3ed1", "scanner": "scanner-primary", "fingerprint": "6edd9c45ff666ab0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/tanstack/multiple-tools/app/layout.tsx"}, "region": {"startLine": 28}}}]}, {"ruleId": "scanner-f0d848d0010dfd98", "level": "error", "message": {"text": "Possible secret in apps/react/comments/tables/tanstack/multiple-tools/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "aa4c8a1e1238169d", "scanner": "scanner-primary", "fingerprint": "f0d848d0010dfd98", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/tanstack/multiple-tools/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-cb7507cdcde5dc23", "level": "error", "message": {"text": "Possible secret in apps/react/comments/tables/tanstack/comment-aggregation/app/page.tsx"}, "properties": {"repobilityId": "e955858c23364a26", "scanner": "scanner-primary", "fingerprint": "cb7507cdcde5dc23", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/tanstack/comment-aggregation/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-1a3c107cf850542d", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/tanstack/comment-aggregation/app/layout.tsx:28"}, "properties": {"repobilityId": "b2f57b6858f34d3c", "scanner": "scanner-primary", "fingerprint": "1a3c107cf850542d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/tanstack/comment-aggregation/app/layout.tsx"}, "region": {"startLine": 28}}}]}, {"ruleId": "scanner-fca02e031253a992", "level": "error", "message": {"text": "Possible secret in apps/react/comments/tables/tanstack/comment-aggregation/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "6dba7c11b11c8936", "scanner": "scanner-primary", "fingerprint": "fca02e031253a992", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/tanstack/comment-aggregation/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-b354edc97cd06f6f", "level": "error", "message": {"text": "Possible secret in apps/react/comments/tables/ag-grid/single-tool/app/page.tsx"}, "properties": {"repobilityId": "35d95e6d789cd1a4", "scanner": "scanner-primary", "fingerprint": "b354edc97cd06f6f", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/ag-grid/single-tool/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-819dd22e37c1728f", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/ag-grid/single-tool/app/layout.tsx:28"}, "properties": {"repobilityId": "a791d9a4287e5223", "scanner": "scanner-primary", "fingerprint": "819dd22e37c1728f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/ag-grid/single-tool/app/layout.tsx"}, "region": {"startLine": 28}}}]}, {"ruleId": "scanner-a488b3876d0c3cd0", "level": "error", "message": {"text": "Possible secret in apps/react/comments/tables/ag-grid/single-tool/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "c424cef531c90738", "scanner": "scanner-primary", "fingerprint": "a488b3876d0c3cd0", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/ag-grid/single-tool/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-df03ead924a47c6e", "level": "error", "message": {"text": "Possible secret in apps/react/comments/tables/ag-grid/multiple-tools/app/page.tsx"}, "properties": {"repobilityId": "177f420b6ae82609", "scanner": "scanner-primary", "fingerprint": "df03ead924a47c6e", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/ag-grid/multiple-tools/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-498db4033585e94a", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/ag-grid/multiple-tools/app/layout.tsx:28"}, "properties": {"repobilityId": "7cbb93e43703b246", "scanner": "scanner-primary", "fingerprint": "498db4033585e94a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/ag-grid/multiple-tools/app/layout.tsx"}, "region": {"startLine": 28}}}]}, {"ruleId": "scanner-39e7fd8e1207feda", "level": "error", "message": {"text": "Possible secret in apps/react/comments/tables/ag-grid/multiple-tools/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "31552f6b469d6db1", "scanner": "scanner-primary", "fingerprint": "39e7fd8e1207feda", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/ag-grid/multiple-tools/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-80b35e49f4351aa2", "level": "error", "message": {"text": "Possible secret in apps/react/comments/tables/ag-grid/comment-aggregation/app/page.tsx"}, "properties": {"repobilityId": "e09ce78ce11c54af", "scanner": "scanner-primary", "fingerprint": "80b35e49f4351aa2", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/ag-grid/comment-aggregation/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-d1d270c70c7b9619", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/tables/ag-grid/comment-aggregation/app/layout.tsx:28"}, "properties": {"repobilityId": "179cbd65dd39e11b", "scanner": "scanner-primary", "fingerprint": "d1d270c70c7b9619", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/ag-grid/comment-aggregation/app/layout.tsx"}, "region": {"startLine": 28}}}]}, {"ruleId": "scanner-5fd3d3b0cd2ad5c7", "level": "error", "message": {"text": "Possible secret in apps/react/comments/tables/ag-grid/comment-aggregation/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "812e5a01e9bb0367", "scanner": "scanner-primary", "fingerprint": "5fd3d3b0cd2ad5c7", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/ag-grid/comment-aggregation/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-212b164e07162e5c", "level": "error", "message": {"text": "Possible secret in apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/page.tsx"}, "properties": {"repobilityId": "140611df989893f3", "scanner": "scanner-primary", "fingerprint": "212b164e07162e5c", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-a87543bf8d27d645", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "9e1733e8e7f68d04", "scanner": "scanner-primary", "fingerprint": "a87543bf8d27d645", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/layout.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-52ad02de5dae051d", "level": "error", "message": {"text": "Possible secret in apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "d3f6e098856e3a52", "scanner": "scanner-primary", "fingerprint": "52ad02de5dae051d", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-9decb0d59af692f2", "level": "error", "message": {"text": "Possible secret in apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/page.tsx"}, "properties": {"repobilityId": "a484a49d46c932c6", "scanner": "scanner-primary", "fingerprint": "9decb0d59af692f2", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/page.tsx"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-1bed85502b41b83f", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "d35f7c5f9b597b88", "scanner": "scanner-primary", "fingerprint": "1bed85502b41b83f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/layout.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-08bbf91643f2eda7", "level": "error", "message": {"text": "Possible secret in apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "5450d0b580dd4411", "scanner": "scanner-primary", "fingerprint": "08bbf91643f2eda7", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-ba787a5e295018ca", "level": "error", "message": {"text": "Possible secret in apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/page.tsx"}, "properties": {"repobilityId": "da95a96c74811ffc", "scanner": "scanner-primary", "fingerprint": "ba787a5e295018ca", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-e9256c82ea5e024c", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "a63c4c3a943a4e4d", "scanner": "scanner-primary", "fingerprint": "e9256c82ea5e024c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/layout.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-e982354604792c2f", "level": "error", "message": {"text": "Possible secret in apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "7ab30aca7a4485ba", "scanner": "scanner-primary", "fingerprint": "e982354604792c2f", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-e08e169d5ce2bee2", "level": "error", "message": {"text": "Possible secret in apps/react/comments/text-editors/apryse/apryse-comments-demo/app/page.tsx"}, "properties": {"repobilityId": "7f0c5f25d87864a4", "scanner": "scanner-primary", "fingerprint": "e08e169d5ce2bee2", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/apryse/apryse-comments-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-096276330134e3b3", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/apryse/apryse-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "9aaa2c61a7f23562", "scanner": "scanner-primary", "fingerprint": "096276330134e3b3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/apryse/apryse-comments-demo/app/layout.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-a306e666a0f4f0d9", "level": "error", "message": {"text": "Possible secret in apps/react/comments/text-editors/apryse/apryse-comments-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "b653e71eefe2911f", "scanner": "scanner-primary", "fingerprint": "a306e666a0f4f0d9", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/apryse/apryse-comments-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-2a0b381e128f7580", "level": "error", "message": {"text": "Possible secret in apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/page.tsx"}, "properties": {"repobilityId": "cd0fafd749f637fd", "scanner": "scanner-primary", "fingerprint": "2a0b381e128f7580", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-a97f3a763af5dac5", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "56cc1feb43f979a5", "scanner": "scanner-primary", "fingerprint": "a97f3a763af5dac5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/layout.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-b7f1a5061677a767", "level": "error", "message": {"text": "Possible secret in apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "4be8e8326d4ff11c", "scanner": "scanner-primary", "fingerprint": "b7f1a5061677a767", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-664f7d811ad392c3", "level": "error", "message": {"text": "Possible secret in apps/react/comments/text-editors/ace/ace-comments-demo/app/page.tsx"}, "properties": {"repobilityId": "4f8b2d0c6a3f66f6", "scanner": "scanner-primary", "fingerprint": "664f7d811ad392c3", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/ace/ace-comments-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-d21ea444874de525", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/ace/ace-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "08d3940fc2152ef1", "scanner": "scanner-primary", "fingerprint": "d21ea444874de525", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/ace/ace-comments-demo/app/layout.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-33b886000aa9eb5d", "level": "error", "message": {"text": "Possible secret in apps/react/comments/text-editors/ace/ace-comments-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "cc56ef13301fdff8", "scanner": "scanner-primary", "fingerprint": "33b886000aa9eb5d", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/ace/ace-comments-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-685892ac7214927c", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in apps/react/comments/text-editors/codemirror/codemirror-comments-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx:23"}, "properties": {"repobilityId": "7996a82067bf35d9", "scanner": "scanner-primary", "fingerprint": "685892ac7214927c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/codemirror/codemirror-comments-demo/components/document/CodeMirrorComponent/CodeMirrorComponent.tsx"}, "region": {"startLine": 23}}}]}, {"ruleId": "scanner-fc58fa8919c530be", "level": "error", "message": {"text": "Possible secret in apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/page.tsx"}, "properties": {"repobilityId": "d8ff35fdbc3f7813", "scanner": "scanner-primary", "fingerprint": "fc58fa8919c530be", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-7f8dae97eb50e39a", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "f967892ac3b7754b", "scanner": "scanner-primary", "fingerprint": "7f8dae97eb50e39a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/layout.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-54c873bf607a64c8", "level": "error", "message": {"text": "Possible secret in apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "681bcb96cefdcc05", "scanner": "scanner-primary", "fingerprint": "54c873bf607a64c8", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-30fd99f073cf38f6", "level": "error", "message": {"text": "Possible secret in apps/react/comments/text-editors/quill/quill-comments-demo/app/page.tsx"}, "properties": {"repobilityId": "bc52a830c7ab7ce7", "scanner": "scanner-primary", "fingerprint": "30fd99f073cf38f6", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/quill/quill-comments-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-6dcfcbee24c15edc", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/quill/quill-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "089cfedb63f712be", "scanner": "scanner-primary", "fingerprint": "6dcfcbee24c15edc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/quill/quill-comments-demo/app/layout.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-5fdb1a2eee7d4f05", "level": "error", "message": {"text": "Possible secret in apps/react/comments/text-editors/quill/quill-comments-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "a1d7a43ad903f98b", "scanner": "scanner-primary", "fingerprint": "5fdb1a2eee7d4f05", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/quill/quill-comments-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-c2a4d9b53f0bf8ef", "level": "warning", "message": {"text": "Insecure pattern 'domparser_html_parse' in apps/react/comments/text-editors/lexical/lexical-comments-demo/components/document/LexicalComponent/plugins/InitialContentPlugin.tsx:22"}, "properties": {"repobilityId": "f59e03fbf77032da", "scanner": "scanner-primary", "fingerprint": "c2a4d9b53f0bf8ef", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "domparser_html_parse"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/lexical/lexical-comments-demo/components/document/LexicalComponent/plugins/InitialContentPlugin.tsx"}, "region": {"startLine": 22}}}]}, {"ruleId": "scanner-c003f4a1d7d29bf7", "level": "error", "message": {"text": "Possible secret in apps/react/comments/text-editors/lexical/lexical-comments-demo/app/page.tsx"}, "properties": {"repobilityId": "2fbb56853ead61f7", "scanner": "scanner-primary", "fingerprint": "c003f4a1d7d29bf7", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/lexical/lexical-comments-demo/app/page.tsx"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-b2b3c8d72a818fc8", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in apps/react/comments/text-editors/lexical/lexical-comments-demo/app/layout.tsx:21"}, "properties": {"repobilityId": "34da1aea9cd81d5b", "scanner": "scanner-primary", "fingerprint": "b2b3c8d72a818fc8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/lexical/lexical-comments-demo/app/layout.tsx"}, "region": {"startLine": 21}}}]}, {"ruleId": "scanner-0b2226f50c5bb25f", "level": "error", "message": {"text": "Possible secret in apps/react/comments/text-editors/lexical/lexical-comments-demo/app/api/velt/token/route.ts"}, "properties": {"repobilityId": "4f4ca8447842b6fa", "scanner": "scanner-primary", "fingerprint": "0b2226f50c5bb25f", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/lexical/lexical-comments-demo/app/api/velt/token/route.ts"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-1e56689e1a997b45", "level": "error", "message": {"text": "Possible secret in apps/vue/comments/tables/ag-grid/multiple-tools/src/App.vue"}, "properties": {"repobilityId": "8d7db16389c7e401", "scanner": "scanner-primary", "fingerprint": "1e56689e1a997b45", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/vue/comments/tables/ag-grid/multiple-tools/src/App.vue"}, "region": {"startLine": 18}}}]}, {"ruleId": "scanner-967ffe9386a537dd", "level": "error", "message": {"text": "Possible secret in apps/vue/comments/tables/ag-grid/multiple-tools/src/api/veltToken.ts"}, "properties": {"repobilityId": "9e47716e141fd304", "scanner": "scanner-primary", "fingerprint": "967ffe9386a537dd", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/vue/comments/tables/ag-grid/multiple-tools/src/api/veltToken.ts"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-30111d75b5ea253a", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/new-demo.ts:5"}, "properties": {"repobilityId": "ca555a693bc82834", "scanner": "scanner-primary", "fingerprint": "30111d75b5ea253a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/new-demo.ts"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-64192a3c67110d01", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "87338a8bfcb6f435", "scanner": "scanner-primary", "fingerprint": "64192a3c67110d01", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/ci.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-731117bb922e0add", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "7a22c9bddeed6e64", "scanner": "scanner-primary", "fingerprint": "731117bb922e0add", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/update-velt-versions.yml"}, "region": {"startLine": 38}}}]}, {"ruleId": "scanner-731117bb922e0add", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "3519ab84a122840f", "scanner": "scanner-primary", "fingerprint": "731117bb922e0add", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/update-velt-versions.yml"}, "region": {"startLine": 44}}}]}, {"ruleId": "scanner-731117bb922e0add", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "3f7c63d0ed9232fc", "scanner": "scanner-primary", "fingerprint": "731117bb922e0add", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/update-velt-versions.yml"}, "region": {"startLine": 49}}}]}, {"ruleId": "scanner-731117bb922e0add", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "f54ee04ad9c4ed85", "scanner": "scanner-primary", "fingerprint": "731117bb922e0add", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/update-velt-versions.yml"}, "region": {"startLine": 97}}}]}, {"ruleId": "scanner-571c4366cd5093f8", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "640cda9298491812", "scanner": "scanner-primary", "fingerprint": "571c4366cd5093f8", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/update-velt-versions.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-74979ba5835cee0c", "level": "note", "message": {"text": "package.json defines install-time lifecycle scripts"}, "properties": {"repobilityId": "30a4573b4c6e6e92", "scanner": "scanner-primary", "fingerprint": "74979ba5835cee0c", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "npm", "install-scripts"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/apryse/apryse-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e5d8a59614160abe", "level": "note", "message": {"text": "Very large file: apps/react/self-hosting/forms/page-mode-demo/components/velt/ui-customization/styled.ts (2249 lines)"}, "properties": {"repobilityId": "7e88518375ce71fc", "scanner": "scanner-primary", "fingerprint": "e5d8a59614160abe", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-13ebecabfb045f42", "level": "note", "message": {"text": "Very large file: apps/master-sample-app/components/sidebar.tsx (1085 lines)"}, "properties": {"repobilityId": "98ce1ee2c6e1c09f", "scanner": "scanner-primary", "fingerprint": "13ebecabfb045f42", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6893a6c8b0861585", "level": "warning", "message": {"text": "Very low test-to-source ratio"}, "properties": {"repobilityId": "54a7de3f06314bf0", "scanner": "scanner-primary", "fingerprint": "6893a6c8b0861585", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["tests", "coverage"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "6c997d51228c7368", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-6cbcca1ee4f36d84", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: outreach/package.json"}, "properties": {"repobilityId": "3e8d1a2ab57a1dc1", "scanner": "scanner-primary", "fingerprint": "6cbcca1ee4f36d84", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "outreach/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f8711624077890e6", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/package.json"}, "properties": {"repobilityId": "d95b716b2bfb6ddc", "scanner": "scanner-primary", "fingerprint": "f8711624077890e6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-bd21d1e60d21ea95", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/package.json"}, "properties": {"repobilityId": "1bd7dd0a63c3fcd5", "scanner": "scanner-primary", "fingerprint": "bd21d1e60d21ea95", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-638f7424463656b6", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/package.json"}, "properties": {"repobilityId": "dfd82e72f31d10ed", "scanner": "scanner-primary", "fingerprint": "638f7424463656b6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-006bafa9fe13b5c8", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/package.json"}, "properties": {"repobilityId": "0423dd0b02029187", "scanner": "scanner-primary", "fingerprint": "006bafa9fe13b5c8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5c9dfc26d3c8b1e9", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/package.json"}, "properties": {"repobilityId": "2578c69856d17ef4", "scanner": "scanner-primary", "fingerprint": "5c9dfc26d3c8b1e9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c7da7d099626fe08", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/package.json"}, "properties": {"repobilityId": "322b3f812404f54b", "scanner": "scanner-primary", "fingerprint": "c7da7d099626fe08", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e8d118fc022a2688", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/package.json"}, "properties": {"repobilityId": "2ece15679e8b3fd0", "scanner": "scanner-primary", "fingerprint": "e8d118fc022a2688", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-cf584f4ffb357eaa", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/recorder/document/custom/recorder-demo/package.json"}, "properties": {"repobilityId": "c791ef0608ca3871", "scanner": "scanner-primary", "fingerprint": "cf584f4ffb357eaa", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/recorder/document/custom/recorder-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-36e35d5db9e73eaa", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/activity/document/custom/activity-log-demo/package.json"}, "properties": {"repobilityId": "37e059cccdabcccc", "scanner": "scanner-primary", "fingerprint": "36e35d5db9e73eaa", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/activity/document/custom/activity-log-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-aa42470dfb7b2d4e", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/package.json"}, "properties": {"repobilityId": "9b807e048b6ab24c", "scanner": "scanner-primary", "fingerprint": "aa42470dfb7b2d4e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-16e61bde3d20c6c8", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/canvas/reactflow/reactflow-demo/package.json"}, "properties": {"repobilityId": "48fc3316ed296e82", "scanner": "scanner-primary", "fingerprint": "16e61bde3d20c6c8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/canvas/reactflow/reactflow-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4edc3612dc362fab", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/package.json"}, "properties": {"repobilityId": "8ce46cb47463fc8e", "scanner": "scanner-primary", "fingerprint": "4edc3612dc362fab", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-28cb7e278d31c99a", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/platejs/platejs-crdt-demo/package.json"}, "properties": {"repobilityId": "e113094a5267657a", "scanner": "scanner-primary", "fingerprint": "28cb7e278d31c99a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/platejs/platejs-crdt-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ad24b5f67fdd41e7", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/core/core-react-map-crdt-demo/package.json"}, "properties": {"repobilityId": "a42472ee0bbf4b11", "scanner": "scanner-primary", "fingerprint": "ad24b5f67fdd41e7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-map-crdt-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-687ac3a266b6b0a3", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/core/core-react-array-crdt-demo/package.json"}, "properties": {"repobilityId": "f2a95191ebc39f63", "scanner": "scanner-primary", "fingerprint": "687ac3a266b6b0a3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-array-crdt-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-fd54a17bfe5f36e5", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/core/core-react-text-crdt-demo/package.json"}, "properties": {"repobilityId": "ff992b1240c33dbf", "scanner": "scanner-primary", "fingerprint": "fd54a17bfe5f36e5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-text-crdt-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b6b51996ea3dae64", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/package.json"}, "properties": {"repobilityId": "4e66366ef73a26a7", "scanner": "scanner-primary", "fingerprint": "b6b51996ea3dae64", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-865569c8ed173645", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/package.json"}, "properties": {"repobilityId": "348f19949187fec7", "scanner": "scanner-primary", "fingerprint": "865569c8ed173645", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-57106ac7d307885b", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/crdt/text-editors/blocknote/blocknote-demo/package.json"}, "properties": {"repobilityId": "d0307aea1f1fb27a", "scanner": "scanner-primary", "fingerprint": "57106ac7d307885b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/crdt/text-editors/blocknote/blocknote-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-461ccf9eb0548006", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/package.json"}, "properties": {"repobilityId": "06cfe19f49e062fc", "scanner": "scanner-primary", "fingerprint": "461ccf9eb0548006", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e9236af891654789", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/package.json"}, "properties": {"repobilityId": "ac8995db26ade4d0", "scanner": "scanner-primary", "fingerprint": "e9236af891654789", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-12dbe81af88e02e6", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/self-hosting/forms/page-mode-demo/package.json"}, "properties": {"repobilityId": "0aa96a1d07d91dc0", "scanner": "scanner-primary", "fingerprint": "12dbe81af88e02e6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/self-hosting/forms/page-mode-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d276d7ce7efb868c", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/package.json"}, "properties": {"repobilityId": "421d18df347487e0", "scanner": "scanner-primary", "fingerprint": "d276d7ce7efb868c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-fcebde06d100d8c2", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/video-player/lottie/lottie-comments-demo/package.json"}, "properties": {"repobilityId": "c2e824325a231b69", "scanner": "scanner-primary", "fingerprint": "fcebde06d100d8c2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/video-player/lottie/lottie-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-344cb88a9d202fbc", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/charts/chartjs/chartjs-comments-demo/package.json"}, "properties": {"repobilityId": "ddd0be81a4e23abd", "scanner": "scanner-primary", "fingerprint": "344cb88a9d202fbc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/charts/chartjs/chartjs-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-879828b9ba7cdfe6", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/charts/highcharts/highcharts-comments-demo/package.json"}, "properties": {"repobilityId": "4d00cd5441a7b83f", "scanner": "scanner-primary", "fingerprint": "879828b9ba7cdfe6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/charts/highcharts/highcharts-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ae0be6cfd9f5b197", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/charts/nivo/nivo-comments-demo/package.json"}, "properties": {"repobilityId": "852459d8b83ba074", "scanner": "scanner-primary", "fingerprint": "ae0be6cfd9f5b197", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/charts/nivo/nivo-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-317de7dc00a662f1", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/dashboard/custom/dashboard-demo/package.json"}, "properties": {"repobilityId": "88f759b7af244111", "scanner": "scanner-primary", "fingerprint": "317de7dc00a662f1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/dashboard/custom/dashboard-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-812ecbbe7b4d16f9", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/package.json"}, "properties": {"repobilityId": "edcbd0b0499f7a16", "scanner": "scanner-primary", "fingerprint": "812ecbbe7b4d16f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-31c8a561710011c3", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/tanstack/single-tool/package.json"}, "properties": {"repobilityId": "fefd220162aa7237", "scanner": "scanner-primary", "fingerprint": "31c8a561710011c3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/tanstack/single-tool/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-68f17f5c55d893f7", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/tanstack/multiple-tools/package.json"}, "properties": {"repobilityId": "ca882f315683e20e", "scanner": "scanner-primary", "fingerprint": "68f17f5c55d893f7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/tanstack/multiple-tools/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f2062e82fc357888", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/tanstack/comment-aggregation/package.json"}, "properties": {"repobilityId": "a7618c7fbcb29d78", "scanner": "scanner-primary", "fingerprint": "f2062e82fc357888", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/tanstack/comment-aggregation/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-185683bfe42f17f2", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/ag-grid/single-tool/package.json"}, "properties": {"repobilityId": "6b47aa489a52e832", "scanner": "scanner-primary", "fingerprint": "185683bfe42f17f2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/ag-grid/single-tool/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-57634ed8ab42affd", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/ag-grid/multiple-tools/package.json"}, "properties": {"repobilityId": "46bb1bd4c1936d8a", "scanner": "scanner-primary", "fingerprint": "57634ed8ab42affd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/ag-grid/multiple-tools/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4ec8d9649c535355", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/tables/ag-grid/comment-aggregation/package.json"}, "properties": {"repobilityId": "7d89a3badc61332e", "scanner": "scanner-primary", "fingerprint": "4ec8d9649c535355", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/tables/ag-grid/comment-aggregation/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-402e099b849c07a3", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/package.json"}, "properties": {"repobilityId": "fc5f3f936cb637ef", "scanner": "scanner-primary", "fingerprint": "402e099b849c07a3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0b54a7a30d51644d", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/package.json"}, "properties": {"repobilityId": "cf587ef47adbc4d3", "scanner": "scanner-primary", "fingerprint": "0b54a7a30d51644d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-432234e2d7db77dc", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/tiptap/tiptap-comments-demo/package.json"}, "properties": {"repobilityId": "540dd92a2f8c2df6", "scanner": "scanner-primary", "fingerprint": "432234e2d7db77dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/tiptap/tiptap-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9a1f833a846cbacf", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/apryse/apryse-comments-demo/package.json"}, "properties": {"repobilityId": "9ce67b2c512ba72a", "scanner": "scanner-primary", "fingerprint": "9a1f833a846cbacf", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/apryse/apryse-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c59132734ea74a8e", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/slatejs/slatejs-comments-demo/package.json"}, "properties": {"repobilityId": "96996d6e9a77cd27", "scanner": "scanner-primary", "fingerprint": "c59132734ea74a8e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/slatejs/slatejs-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-dae19c9fb5c6cc85", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/ace/ace-comments-demo/package.json"}, "properties": {"repobilityId": "68cfd1dfdbe5e765", "scanner": "scanner-primary", "fingerprint": "dae19c9fb5c6cc85", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/ace/ace-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-85987c1355505cf8", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/codemirror/codemirror-comments-demo/package.json"}, "properties": {"repobilityId": "aebe2d0d62e58a60", "scanner": "scanner-primary", "fingerprint": "85987c1355505cf8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/codemirror/codemirror-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-80d464bd64f1c672", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/quill/quill-comments-demo/package.json"}, "properties": {"repobilityId": "a91181bfe540ea71", "scanner": "scanner-primary", "fingerprint": "80d464bd64f1c672", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/quill/quill-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9567672cd78f4be8", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/react/comments/text-editors/lexical/lexical-comments-demo/package.json"}, "properties": {"repobilityId": "f60b96c78d06271c", "scanner": "scanner-primary", "fingerprint": "9567672cd78f4be8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/react/comments/text-editors/lexical/lexical-comments-demo/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f6b34c2c1acd63fb", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/vue/comments/tables/ag-grid/multiple-tools/package.json"}, "properties": {"repobilityId": "7ff843006448642d", "scanner": "scanner-primary", "fingerprint": "f6b34c2c1acd63fb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/vue/comments/tables/ag-grid/multiple-tools/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-14adfc3a0389c4aa", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/master-sample-app/package.json"}, "properties": {"repobilityId": "ca24604dec90dce8", "scanner": "scanner-primary", "fingerprint": "14adfc3a0389c4aa", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/master-sample-app/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "368e36b76adfb7de", "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": "feb6b87372cda8b3", "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": "634d7513e8945b73", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "note", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "f445e29292adc00e", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-749d4bc1bd66df5f", "level": "warning", "message": {"text": "Agent instructions exist but release-hardening basics are missing"}, "properties": {"repobilityId": "c338fc875eb2cbfc", "scanner": "scanner-primary", "fingerprint": "749d4bc1bd66df5f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "1a3707531113e9da", "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": "bc948a6f52ae3190", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-77bcf8d72709b699", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/lib/velt.js:75"}, "properties": {"repobilityId": "8167df6e41715087", "scanner": "scanner-primary", "fingerprint": "77bcf8d72709b699", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f48569ecd2376a81", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/lib/velt.js:76"}, "properties": {"repobilityId": "05ef73951557e958", "scanner": "scanner-primary", "fingerprint": "f48569ecd2376a81", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-4c8ba0194b27fbfe", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/lib/velt.js:75"}, "properties": {"repobilityId": "a3b5f8dbe805b2b9", "scanner": "scanner-primary", "fingerprint": "4c8ba0194b27fbfe", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9dd12101d4821ac1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/lib/velt.js:75"}, "properties": {"repobilityId": "e40cde2acee03459", "scanner": "scanner-primary", "fingerprint": "9dd12101d4821ac1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d018206fc3bec1c2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/lib/velt.js:75"}, "properties": {"repobilityId": "36f1cfc3d4322b9c", "scanner": "scanner-primary", "fingerprint": "d018206fc3bec1c2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-141f3059b85510e1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/document/codemirror.js:34"}, "properties": {"repobilityId": "97b3ce42d4a2c5cf", "scanner": "scanner-primary", "fingerprint": "141f3059b85510e1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e9c1d6bf9310af34", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/lib/velt.js:75"}, "properties": {"repobilityId": "7d494e7af77d96b4", "scanner": "scanner-primary", "fingerprint": "e9c1d6bf9310af34", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9946a71bd73e065f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/lib/velt.js:75"}, "properties": {"repobilityId": "8323dfbc41629612", "scanner": "scanner-primary", "fingerprint": "9946a71bd73e065f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-632e147c8b2cf34a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/recorder/document/custom/recorder-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "98d7b247c7157d49", "scanner": "scanner-primary", "fingerprint": "632e147c8b2cf34a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3bbecf4f75625f91", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/react/activity/document/custom/activity-log-demo/components/header/header.tsx:13"}, "properties": {"repobilityId": "48400d7f18c55fb4", "scanner": "scanner-primary", "fingerprint": "3bbecf4f75625f91", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a16daed0cdc5132b", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/activity/document/custom/activity-log-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "db7f4ead531999d6", "scanner": "scanner-primary", "fingerprint": "a16daed0cdc5132b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ade70d4d010ef781", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/components/document/TipTapComponent/TipTapComponent.tsx:51"}, "properties": {"repobilityId": "76c4acba79d21336", "scanner": "scanner-primary", "fingerprint": "ade70d4d010ef781", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6b103330f137c1e5", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/components/suggestions/ProposalFields.tsx:59"}, "properties": {"repobilityId": "28f660c2211c98dc", "scanner": "scanner-primary", "fingerprint": "6b103330f137c1e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e03fb500d901b5fd", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/api/velt/token/route.ts:33"}, "properties": {"repobilityId": "cd292518fe876e01", "scanner": "scanner-primary", "fingerprint": "e03fb500d901b5fd", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-606cb18f3743cb62", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/canvas/reactflow/reactflow-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "0fcb7d2f29d360f5", "scanner": "scanner-primary", "fingerprint": "606cb18f3743cb62", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-26cacc670210ed0c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "95d003a6803e2e55", "scanner": "scanner-primary", "fingerprint": "26cacc670210ed0c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-cc4435f1a9f365b0", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "02b90f8c2f07dc79", "scanner": "scanner-primary", "fingerprint": "cc4435f1a9f365b0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-76a7fcdbbd29e288", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "8bfcc4f4b82bd122", "scanner": "scanner-primary", "fingerprint": "76a7fcdbbd29e288", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2a31b99dd866c838", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "cc05cfdd819bcf18", "scanner": "scanner-primary", "fingerprint": "2a31b99dd866c838", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7b02a8f2c22c838a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "63ac3bb0f0b468f9", "scanner": "scanner-primary", "fingerprint": "7b02a8f2c22c838a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9001ba70f3e1ed76", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "e1ed7707888b1260", "scanner": "scanner-primary", "fingerprint": "9001ba70f3e1ed76", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-aaee78dc24346c44", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "4b6d4472c5bcfdef", "scanner": "scanner-primary", "fingerprint": "aaee78dc24346c44", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7a12d71e3bf97d06", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/crdt/text-editors/blocknote/blocknote-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "7c8cab6cbba7276e", "scanner": "scanner-primary", "fingerprint": "7a12d71e3bf97d06", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0caf730bb461d46a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/velt/VeltDataProviders.ts:221"}, "properties": {"repobilityId": "3298c363d1deffbd", "scanner": "scanner-primary", "fingerprint": "0caf730bb461d46a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7cb1ec9deedd8a5e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "054f22deefc582d8", "scanner": "scanner-primary", "fingerprint": "7cb1ec9deedd8a5e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-02a8a13e39795853", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/velt/VeltDataProviders.ts:221"}, "properties": {"repobilityId": "caa0b57e27f9ed11", "scanner": "scanner-primary", "fingerprint": "02a8a13e39795853", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3668a41e5f2616de", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "0fc81477d802a178", "scanner": "scanner-primary", "fingerprint": "3668a41e5f2616de", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6f407cd1b0ed3586", "level": "none", "message": {"text": "Commented-code block (5 lines) in apps/react/self-hosting/forms/page-mode-demo/components/velt/VeltDataProviders.ts:14"}, "properties": {"repobilityId": "27e5f937cd93127c", "scanner": "scanner-primary", "fingerprint": "6f407cd1b0ed3586", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b5ff0905b789dc8c", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/react/self-hosting/forms/page-mode-demo/app/page.tsx:29"}, "properties": {"repobilityId": "44ded29f25b94874", "scanner": "scanner-primary", "fingerprint": "b5ff0905b789dc8c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-38f304e88f53dc0b", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/self-hosting/forms/page-mode-demo/app/api/velt/token/route.ts:27"}, "properties": {"repobilityId": "9e38d44bb2a92c7a", "scanner": "scanner-primary", "fingerprint": "38f304e88f53dc0b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8963462fd815722c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "7b18c8f76f10f782", "scanner": "scanner-primary", "fingerprint": "8963462fd815722c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-425ae579fa102058", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/video-player/lottie/lottie-comments-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "5a91d7f880d14956", "scanner": "scanner-primary", "fingerprint": "425ae579fa102058", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-abc0b4b65a50a534", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/charts/chartjs/chartjs-comments-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "8504835b9395d958", "scanner": "scanner-primary", "fingerprint": "abc0b4b65a50a534", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9413ec90bec0d427", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/charts/highcharts/highcharts-comments-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "0352dbeb68c042e2", "scanner": "scanner-primary", "fingerprint": "9413ec90bec0d427", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-575aa153b47e07d1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/charts/nivo/nivo-comments-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "9faa4d91493a0f65", "scanner": "scanner-primary", "fingerprint": "575aa153b47e07d1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-707f3c086097b4e2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/dashboard/custom/dashboard-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "0dc75ec88329f072", "scanner": "scanner-primary", "fingerprint": "707f3c086097b4e2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8308ecfae69bab2a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "62c33c17ff5e74db", "scanner": "scanner-primary", "fingerprint": "8308ecfae69bab2a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ac4bd0993c5e44d1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/tanstack/single-tool/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "f3483c0b3ce194a0", "scanner": "scanner-primary", "fingerprint": "ac4bd0993c5e44d1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a1d289eb41531ede", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/tanstack/multiple-tools/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "05df23126449bf4c", "scanner": "scanner-primary", "fingerprint": "a1d289eb41531ede", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7a03796b050fee1d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/tanstack/comment-aggregation/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "50ed7fb1ebae67ed", "scanner": "scanner-primary", "fingerprint": "7a03796b050fee1d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8cf599b0b71a3b71", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/ag-grid/single-tool/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "6f28a6265d391b00", "scanner": "scanner-primary", "fingerprint": "8cf599b0b71a3b71", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-176cb1b08bf8e625", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/ag-grid/multiple-tools/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "2490148ce9c79b2d", "scanner": "scanner-primary", "fingerprint": "176cb1b08bf8e625", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-cfa688eac1667996", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/tables/ag-grid/comment-aggregation/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "2c1d66defa3b49f9", "scanner": "scanner-primary", "fingerprint": "cfa688eac1667996", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-399d4c674c7ac7b5", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts:33"}, "properties": {"repobilityId": "d8b24a03ca5e4471", "scanner": "scanner-primary", "fingerprint": "399d4c674c7ac7b5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-286686e148529219", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts:33"}, "properties": {"repobilityId": "34cd57196f2494d8", "scanner": "scanner-primary", "fingerprint": "286686e148529219", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5c1b72b9b278f381", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/api/velt/token/route.ts:33"}, "properties": {"repobilityId": "52839b61743ae2fb", "scanner": "scanner-primary", "fingerprint": "5c1b72b9b278f381", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5f65cc88e04760fa", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/apryse/apryse-comments-demo/app/api/velt/token/route.ts:33"}, "properties": {"repobilityId": "aafdf9f07be62c66", "scanner": "scanner-primary", "fingerprint": "5f65cc88e04760fa", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ce9b16479308f851", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/api/velt/token/route.ts:33"}, "properties": {"repobilityId": "afe0eb94028fb880", "scanner": "scanner-primary", "fingerprint": "ce9b16479308f851", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-37d74ec47b7060a3", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/ace/ace-comments-demo/app/api/velt/token/route.ts:33"}, "properties": {"repobilityId": "7914b80c7674ac27", "scanner": "scanner-primary", "fingerprint": "37d74ec47b7060a3", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1ccbaf2cda99dfb0", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/api/velt/token/route.ts:26"}, "properties": {"repobilityId": "7e22a8c2613294ab", "scanner": "scanner-primary", "fingerprint": "1ccbaf2cda99dfb0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9c775f23e67ee767", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/quill/quill-comments-demo/app/api/velt/token/route.ts:33"}, "properties": {"repobilityId": "d6cfcea62422de70", "scanner": "scanner-primary", "fingerprint": "9c775f23e67ee767", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-fcbc1a694bb2a016", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/react/comments/text-editors/lexical/lexical-comments-demo/app/api/velt/token/route.ts:33"}, "properties": {"repobilityId": "a59e861a912dd2a9", "scanner": "scanner-primary", "fingerprint": "fcbc1a694bb2a016", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ce607659f6cdef3c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/vue/comments/tables/ag-grid/multiple-tools/src/api/veltToken.ts:22"}, "properties": {"repobilityId": "61cc1785b7560dd5", "scanner": "scanner-primary", "fingerprint": "ce607659f6cdef3c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-70fcae2d13c708b6", "level": "note", "message": {"text": "17 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "f21675bed249619c", "scanner": "scanner-primary", "fingerprint": "70fcae2d13c708b6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "e30410619e5f097c", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "814a1818332c631e", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "6efb796d51cf540b", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "615dee03b2e5d357", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "209171e67c2189c5", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "a2c54abcf7f8c19a", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "c0b429811c809e3a", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "1916f45e545ee5c8", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "b7175f0a16fd5528", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "d951e041a9ab5cb4", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "6b643d89218d452f", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-0c5facb26f270bb0", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/tiptap/tiptap-crdt-demo/src/lib/velt.js:75)"}, "properties": {"repobilityId": "0c0a804f15ed3922", "scanner": "scanner-primary", "fingerprint": "0c5facb26f270bb0", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-37586d55a9e9c310", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/core/core-non-react-xml-crdt-demo/src/lib/velt.js:76)"}, "properties": {"repobilityId": "86210d113bd6bd63", "scanner": "scanner-primary", "fingerprint": "37586d55a9e9c310", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-0d8a068c703d9ac1", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/core/core-non-react-text-crdt-demo/src/lib/velt.js:75)"}, "properties": {"repobilityId": "b038b5a1cd887d51", "scanner": "scanner-primary", "fingerprint": "0d8a068c703d9ac1", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-bccb3a74ce2f2fcc", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/core/core-non-react-crdt-array-demo/src/lib/velt.js:75)"}, "properties": {"repobilityId": "77a03133d1718789", "scanner": "scanner-primary", "fingerprint": "bccb3a74ce2f2fcc", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-ced5857c1c6134cc", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/core/core-non-react-crdt-map-demo/src/lib/velt.js:75)"}, "properties": {"repobilityId": "d4ac474c2f417ad8", "scanner": "scanner-primary", "fingerprint": "ced5857c1c6134cc", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-adf9332f9716f50a", "level": "error", "message": {"text": "Dangling fetch: GET /api/users (apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/components/document/codemirror.js:34)"}, "properties": {"repobilityId": "fe60f8eab852eace", "scanner": "scanner-primary", "fingerprint": "adf9332f9716f50a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-372455f5f90c2667", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/codemirror/codemirror-crdt-demo/src/lib/velt.js:75)"}, "properties": {"repobilityId": "93ed2fc9afeedfd0", "scanner": "scanner-primary", "fingerprint": "372455f5f90c2667", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-9aff28a24d9663fd", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/javascript/crdt/text-editors/blocknote/blocknote-crdt-demo/src/lib/velt.js:75)"}, "properties": {"repobilityId": "a5d666b49bd8e353", "scanner": "scanner-primary", "fingerprint": "9aff28a24d9663fd", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-51255d4df498d636", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/recorder/document/custom/recorder-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "221759b7b48665d3", "scanner": "scanner-primary", "fingerprint": "51255d4df498d636", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-7d3b7030ed744dc9", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/recorder/document/custom/recorder-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "ce43aef083a54787", "scanner": "scanner-primary", "fingerprint": "7d3b7030ed744dc9", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-4acabcb5bfc9753e", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/activity/document/custom/activity-log-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "33ccb7446a35d8b3", "scanner": "scanner-primary", "fingerprint": "4acabcb5bfc9753e", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-9ed35bf3a0123b60", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/activity/document/custom/activity-log-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "3da3d6460f5f63f3", "scanner": "scanner-primary", "fingerprint": "9ed35bf3a0123b60", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-99a3852377251c53", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "4603ba2ace1d9b99", "scanner": "scanner-primary", "fingerprint": "99a3852377251c53", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-cacbb5eae32ef0db", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/suggestions/text-editors/tiptap/tiptap-suggestions-demo/app/api/velt/token/route.ts:33)"}, "properties": {"repobilityId": "f3efc74ddf534fc0", "scanner": "scanner-primary", "fingerprint": "cacbb5eae32ef0db", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-050716ba155b23fd", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/canvas/reactflow/reactflow-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "7969ed1028298f6e", "scanner": "scanner-primary", "fingerprint": "050716ba155b23fd", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-44837cbff519a635", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/canvas/reactflow/reactflow-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "b07bfedd52b989b0", "scanner": "scanner-primary", "fingerprint": "44837cbff519a635", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-c4190cbc34203d6a", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "44d6ecfa5b1537a2", "scanner": "scanner-primary", "fingerprint": "c4190cbc34203d6a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-6e673d864ff73097", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/tiptap/tiptap-crdt-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "fac261b7dd115b6e", "scanner": "scanner-primary", "fingerprint": "6e673d864ff73097", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-c5e997342ad3a761", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/platejs/platejs-crdt-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "1d445c4aee302974", "scanner": "scanner-primary", "fingerprint": "c5e997342ad3a761", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d365964782d6c3bc", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/platejs/platejs-crdt-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "678b900db75ab50c", "scanner": "scanner-primary", "fingerprint": "d365964782d6c3bc", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-0370d8fb076f707c", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/core/core-react-map-crdt-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "27712375830aeeb2", "scanner": "scanner-primary", "fingerprint": "0370d8fb076f707c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-951b03be249e19a3", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/core/core-react-map-crdt-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "4ae709828a35de10", "scanner": "scanner-primary", "fingerprint": "951b03be249e19a3", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-df927d89198ecc79", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/core/core-react-array-crdt-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "e776f94b0f458301", "scanner": "scanner-primary", "fingerprint": "df927d89198ecc79", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-fec8de6ca67847c5", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/core/core-react-array-crdt-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "dc13a4a0e26f52ef", "scanner": "scanner-primary", "fingerprint": "fec8de6ca67847c5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-773220581f7c2f84", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/core/core-react-text-crdt-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "658f36dcb0bd00a2", "scanner": "scanner-primary", "fingerprint": "773220581f7c2f84", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-6a4e10ff5454aa73", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/core/core-react-text-crdt-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "9daa0daec7981b64", "scanner": "scanner-primary", "fingerprint": "6a4e10ff5454aa73", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-4a24ad430eca5c13", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "8f7ec682a809d228", "scanner": "scanner-primary", "fingerprint": "4a24ad430eca5c13", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-03e30ccdf66bc7ed", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/core/core-react-xml-crdt-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "1ade6de8a42e3ab6", "scanner": "scanner-primary", "fingerprint": "03e30ccdf66bc7ed", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-a688d8013e5a483a", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "783aa0c68b6a4d60", "scanner": "scanner-primary", "fingerprint": "a688d8013e5a483a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-084e64f190a3c485", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/codemirror/codemirror-crdt-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "950a543af5e69357", "scanner": "scanner-primary", "fingerprint": "084e64f190a3c485", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-544da1c3f429a06e", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/crdt/text-editors/blocknote/blocknote-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "60897452f0e280cc", "scanner": "scanner-primary", "fingerprint": "544da1c3f429a06e", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-44e7a1651fec2491", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/crdt/text-editors/blocknote/blocknote-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "411376b2e93f41f2", "scanner": "scanner-primary", "fingerprint": "44e7a1651fec2491", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-da17a93a70c13533", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/components/velt/VeltInitializeUser.tsx:14)"}, "properties": {"repobilityId": "612cac3805623d66", "scanner": "scanner-primary", "fingerprint": "da17a93a70c13533", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-1aa68281e2470bc5", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/self-hosting/dashboard/postgres/dashboard-postgres-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "d243304a33eb4cfd", "scanner": "scanner-primary", "fingerprint": "1aa68281e2470bc5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-294e14e31dcd2961", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/components/velt/VeltInitializeUser.tsx:14)"}, "properties": {"repobilityId": "aa1e1972c5b0d351", "scanner": "scanner-primary", "fingerprint": "294e14e31dcd2961", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-1602b6eeb9ddc71e", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/self-hosting/dashboard/mongo-db/dashboard-mongo-db-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "44b56d30368a32db", "scanner": "scanner-primary", "fingerprint": "1602b6eeb9ddc71e", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f8d49364e07746bb", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/self-hosting/forms/page-mode-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "90759cdce6053e1e", "scanner": "scanner-primary", "fingerprint": "f8d49364e07746bb", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-2628500fa6301209", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/self-hosting/forms/page-mode-demo/app/api/velt/token/route.ts:27)"}, "properties": {"repobilityId": "a94629132c8fdbeb", "scanner": "scanner-primary", "fingerprint": "2628500fa6301209", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-647393c07151ae36", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "f57555dccb1eb292", "scanner": "scanner-primary", "fingerprint": "647393c07151ae36", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-6d74fe86056e651d", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/realtime/text-editors/tiptap/single-editor-mode-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "8d573d21b72d62de", "scanner": "scanner-primary", "fingerprint": "6d74fe86056e651d", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-04953ac2a86be50b", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/video-player/lottie/lottie-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "6b6745b48da07e69", "scanner": "scanner-primary", "fingerprint": "04953ac2a86be50b", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-3e144d36f6edd6c4", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/video-player/lottie/lottie-comments-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "adef56f303fca415", "scanner": "scanner-primary", "fingerprint": "3e144d36f6edd6c4", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f30fd8f156be87e0", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/charts/chartjs/chartjs-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "f1d9d3876959c529", "scanner": "scanner-primary", "fingerprint": "f30fd8f156be87e0", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-f5e31871f00b3e47", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/charts/chartjs/chartjs-comments-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "a848ddefe5677d74", "scanner": "scanner-primary", "fingerprint": "f5e31871f00b3e47", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d2781817fd877e8f", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/charts/highcharts/highcharts-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "8048aec57c7e7a91", "scanner": "scanner-primary", "fingerprint": "d2781817fd877e8f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-967e0d398a18230c", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/charts/highcharts/highcharts-comments-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "d6249898da904d3e", "scanner": "scanner-primary", "fingerprint": "967e0d398a18230c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-0954a9ace63c2f83", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/charts/nivo/nivo-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "53d7e773dd732636", "scanner": "scanner-primary", "fingerprint": "0954a9ace63c2f83", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-7a8d1d3542c8c2fb", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/charts/nivo/nivo-comments-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "05e4c11c3b622319", "scanner": "scanner-primary", "fingerprint": "7a8d1d3542c8c2fb", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-ecd87ae6cde4d573", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/dashboard/custom/dashboard-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "905e185c37b6517f", "scanner": "scanner-primary", "fingerprint": "ecd87ae6cde4d573", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-98b4921f020769bf", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/dashboard/custom/dashboard-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "7dd1f2c48297d3a3", "scanner": "scanner-primary", "fingerprint": "98b4921f020769bf", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-4f95241d99f0946d", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "bf9413ae274a5ef0", "scanner": "scanner-primary", "fingerprint": "4f95241d99f0946d", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-02fac8eb82edb018", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/dashboard/inline-comments/dashboard-inline-comments-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "13aa74bbe1f2dac5", "scanner": "scanner-primary", "fingerprint": "02fac8eb82edb018", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-15161ee5f985f79a", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/tanstack/single-tool/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "ed641ea06438de6a", "scanner": "scanner-primary", "fingerprint": "15161ee5f985f79a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-8573bace8785f946", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/tanstack/single-tool/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "fa9cdc278fb9d660", "scanner": "scanner-primary", "fingerprint": "8573bace8785f946", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-9561cb900c0dd558", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/tanstack/multiple-tools/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "b8ff3bb3219da021", "scanner": "scanner-primary", "fingerprint": "9561cb900c0dd558", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-07f97e2858ef5516", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/tanstack/multiple-tools/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "45ad817abfcfac3c", "scanner": "scanner-primary", "fingerprint": "07f97e2858ef5516", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-d5a077492c834c54", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/tanstack/comment-aggregation/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "b678f9f4f56dcf73", "scanner": "scanner-primary", "fingerprint": "d5a077492c834c54", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-7935b0b0b22a5f0a", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/tanstack/comment-aggregation/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "35aa488888dcff77", "scanner": "scanner-primary", "fingerprint": "7935b0b0b22a5f0a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-57ef9c97f0d76526", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/ag-grid/single-tool/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "078dc80fdc0b7ba4", "scanner": "scanner-primary", "fingerprint": "57ef9c97f0d76526", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-a900dd3d2df0e4a4", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/ag-grid/single-tool/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "abce7b4a09dae744", "scanner": "scanner-primary", "fingerprint": "a900dd3d2df0e4a4", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-a8b0b46c840389af", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/ag-grid/multiple-tools/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "541976cba4debdcd", "scanner": "scanner-primary", "fingerprint": "a8b0b46c840389af", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-8cccbd9cf58074d0", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/ag-grid/multiple-tools/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "1a8272377322600e", "scanner": "scanner-primary", "fingerprint": "8cccbd9cf58074d0", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-59c2a490e24f136b", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/tables/ag-grid/comment-aggregation/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "311c8f4ee4c4e9bb", "scanner": "scanner-primary", "fingerprint": "59c2a490e24f136b", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-2322e51085ff5cc4", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/tables/ag-grid/comment-aggregation/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "171a39902d62b4d4", "scanner": "scanner-primary", "fingerprint": "2322e51085ff5cc4", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-649c0f6bf8f2f159", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "ff608c4c2f1d3925", "scanner": "scanner-primary", "fingerprint": "649c0f6bf8f2f159", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-049bb3de0d2ff067", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/website-builder/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts:33)"}, "properties": {"repobilityId": "cf82c476610d3ff4", "scanner": "scanner-primary", "fingerprint": "049bb3de0d2ff067", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-bbfaf7a10feffb88", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "72cc40874ad34ca9", "scanner": "scanner-primary", "fingerprint": "bbfaf7a10feffb88", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-8171fb31d3378b81", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/image-editor/freestyle-comments/freestyle-comments-demo/app/api/velt/token/route.ts:33)"}, "properties": {"repobilityId": "9f7cda0bdd90a7eb", "scanner": "scanner-primary", "fingerprint": "8171fb31d3378b81", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-45cc62cbe9bcad50", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/tiptap/tiptap-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "d48d6ebb1615b364", "scanner": "scanner-primary", "fingerprint": "45cc62cbe9bcad50", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-be8d2e08593a59bb", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/tiptap/tiptap-comments-demo/app/api/velt/token/route.ts:33)"}, "properties": {"repobilityId": "5d9d5a897228d454", "scanner": "scanner-primary", "fingerprint": "be8d2e08593a59bb", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-a69f599a3664c08f", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/apryse/apryse-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "ae4272aec0b040b1", "scanner": "scanner-primary", "fingerprint": "a69f599a3664c08f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-7684e8f687bcd7db", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/apryse/apryse-comments-demo/app/api/velt/token/route.ts:33)"}, "properties": {"repobilityId": "7958d44270178b7c", "scanner": "scanner-primary", "fingerprint": "7684e8f687bcd7db", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-4948e8a60ea2914e", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/slatejs/slatejs-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "606a1a36d2c889ed", "scanner": "scanner-primary", "fingerprint": "4948e8a60ea2914e", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-72b79bdf5a10ea2d", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/slatejs/slatejs-comments-demo/app/api/velt/token/route.ts:33)"}, "properties": {"repobilityId": "14294b7f94851adb", "scanner": "scanner-primary", "fingerprint": "72b79bdf5a10ea2d", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-e9d9df784a0be3c5", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/ace/ace-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "5f8fc526c73f060a", "scanner": "scanner-primary", "fingerprint": "e9d9df784a0be3c5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-2732d2d60c96fe76", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/ace/ace-comments-demo/app/api/velt/token/route.ts:33)"}, "properties": {"repobilityId": "eb4b42bb0f6f03fd", "scanner": "scanner-primary", "fingerprint": "2732d2d60c96fe76", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-60c665fbf2034d79", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/codemirror/codemirror-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "996d5b8e82f81242", "scanner": "scanner-primary", "fingerprint": "60c665fbf2034d79", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-da8a50bd4d9d1773", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/codemirror/codemirror-comments-demo/app/api/velt/token/route.ts:26)"}, "properties": {"repobilityId": "d521ca35682ed8f2", "scanner": "scanner-primary", "fingerprint": "da8a50bd4d9d1773", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-23175d7410e718c7", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/quill/quill-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "8dc3eb309da8836b", "scanner": "scanner-primary", "fingerprint": "23175d7410e718c7", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-3e07e916ae462b06", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/quill/quill-comments-demo/app/api/velt/token/route.ts:33)"}, "properties": {"repobilityId": "d915a3ef40631349", "scanner": "scanner-primary", "fingerprint": "3e07e916ae462b06", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-9633a20c19cb2884", "level": "error", "message": {"text": "Dangling fetch: POST /api/velt/token (apps/react/comments/text-editors/lexical/lexical-comments-demo/components/velt/VeltInitializeUser.tsx:13)"}, "properties": {"repobilityId": "1f6b0529c6eac36d", "scanner": "scanner-primary", "fingerprint": "9633a20c19cb2884", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-3bab0247a0b5c41c", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/react/comments/text-editors/lexical/lexical-comments-demo/app/api/velt/token/route.ts:33)"}, "properties": {"repobilityId": "e289d0c56da09308", "scanner": "scanner-primary", "fingerprint": "3bab0247a0b5c41c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-ef810056be5d1157", "level": "error", "message": {"text": "Dangling fetch: POST https://api.velt.dev/v2/auth/token/get (apps/vue/comments/tables/ag-grid/multiple-tools/src/api/veltToken.ts:22)"}, "properties": {"repobilityId": "69eb3db4da095e28", "scanner": "scanner-primary", "fingerprint": "ef810056be5d1157", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "fetch"]}}, {"ruleId": "scanner-cb4120f503ab0194", "level": "note", "message": {"text": "Unused endpoint: ANY /api/host-app/users/save"}, "properties": {"repobilityId": "8c72e9aec3999015", "scanner": "scanner-primary", "fingerprint": "cb4120f503ab0194", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-3aaab1d6bc0daf00", "level": "note", "message": {"text": "Unused endpoint: ANY /api/velt/api/velt/comments/get"}, "properties": {"repobilityId": "2c4e7dcafdaa4f2e", "scanner": "scanner-primary", "fingerprint": "3aaab1d6bc0daf00", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-9e8904191b5111ff", "level": "note", "message": {"text": "Unused endpoint: ANY /api/velt/api/velt/comments/save"}, "properties": {"repobilityId": "05ba4765a2581d7b", "scanner": "scanner-primary", "fingerprint": "9e8904191b5111ff", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a3eaf646be03067e", "level": "note", "message": {"text": "Unused endpoint: ANY /api/velt/api/velt/comments/delete"}, "properties": {"repobilityId": "77ca807d2d997e6f", "scanner": "scanner-primary", "fingerprint": "a3eaf646be03067e", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-f4ca80ac37ee775d", "level": "note", "message": {"text": "Unused endpoint: ANY /api/velt/api/velt/reactions/get"}, "properties": {"repobilityId": "ce4ec74862b034d5", "scanner": "scanner-primary", "fingerprint": "f4ca80ac37ee775d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-93d9db3160175263", "level": "note", "message": {"text": "Unused endpoint: ANY /api/velt/api/velt/reactions/save"}, "properties": {"repobilityId": "090eb5c54abd5287", "scanner": "scanner-primary", "fingerprint": "93d9db3160175263", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-bd3725429f8e5abf", "level": "note", "message": {"text": "Unused endpoint: ANY /api/velt/api/velt/reactions/delete"}, "properties": {"repobilityId": "17dd4c0c9de56869", "scanner": "scanner-primary", "fingerprint": "bd3725429f8e5abf", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-38858dee30719850", "level": "note", "message": {"text": "Unused endpoint: ANY /api/velt/api/velt/attachments/save"}, "properties": {"repobilityId": "2d5209c94ed24e52", "scanner": "scanner-primary", "fingerprint": "38858dee30719850", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-70fa3169ee9de7e7", "level": "note", "message": {"text": "Unused endpoint: ANY /api/velt/api/velt/attachments/delete"}, "properties": {"repobilityId": "5bcaebfb6a60cc46", "scanner": "scanner-primary", "fingerprint": "70fa3169ee9de7e7", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b39bd5aee4c9c335", "level": "note", "message": {"text": "Unused endpoint: ANY /api/velt/api/velt/users/get"}, "properties": {"repobilityId": "caf006054722eb03", "scanner": "scanner-primary", "fingerprint": "b39bd5aee4c9c335", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-1a6d91f2236825bf", "level": "note", "message": {"text": "Unused endpoint: ANY /"}, "properties": {"repobilityId": "d5b5fdb1bbc4a3b9", "scanner": "scanner-primary", "fingerprint": "1a6d91f2236825bf", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-9ef68a7fbe4cf8bf", "level": "note", "message": {"text": "Unused endpoint: ANY /api/velt/"}, "properties": {"repobilityId": "8f92cfaadfac6a49", "scanner": "scanner-primary", "fingerprint": "9ef68a7fbe4cf8bf", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-5651827f80d8060a", "level": "note", "message": {"text": "Unused endpoint: ANY /api/host-app/"}, "properties": {"repobilityId": "8e0f064037218937", "scanner": "scanner-primary", "fingerprint": "5651827f80d8060a", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-81deef846421c253", "level": "note", "message": {"text": "Unused endpoint: ANY /comments/get"}, "properties": {"repobilityId": "4cbee35f3d1ecb47", "scanner": "scanner-primary", "fingerprint": "81deef846421c253", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-0f2381a1053919ea", "level": "note", "message": {"text": "Unused endpoint: ANY /comments/save"}, "properties": {"repobilityId": "948999edf6250503", "scanner": "scanner-primary", "fingerprint": "0f2381a1053919ea", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a52a1524587494cc", "level": "note", "message": {"text": "Unused endpoint: ANY /comments/delete"}, "properties": {"repobilityId": "867d70e2cdb39211", "scanner": "scanner-primary", "fingerprint": "a52a1524587494cc", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-7dd241ab1f27e795", "level": "note", "message": {"text": "Unused endpoint: ANY /reactions/get"}, "properties": {"repobilityId": "c9de4e76a91489e3", "scanner": "scanner-primary", "fingerprint": "7dd241ab1f27e795", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-2c5fc2cd630de6f0", "level": "note", "message": {"text": "Unused endpoint: ANY /reactions/save"}, "properties": {"repobilityId": "50bf45eb27e4a6d8", "scanner": "scanner-primary", "fingerprint": "2c5fc2cd630de6f0", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-711c1f0ba744b04c", "level": "note", "message": {"text": "Unused endpoint: ANY /reactions/delete"}, "properties": {"repobilityId": "4368b2b5c32969bd", "scanner": "scanner-primary", "fingerprint": "711c1f0ba744b04c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-35b9b4d41205cb1e", "level": "note", "message": {"text": "Unused endpoint: ANY /recorders/get"}, "properties": {"repobilityId": "52c4550bc3fccce5", "scanner": "scanner-primary", "fingerprint": "35b9b4d41205cb1e", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-8e6fd96e65fe2af0", "level": "note", "message": {"text": "Unused endpoint: ANY /recorders/save"}, "properties": {"repobilityId": "6209553fdf7b8da1", "scanner": "scanner-primary", "fingerprint": "8e6fd96e65fe2af0", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-9185c8933807aa03", "level": "note", "message": {"text": "Unused endpoint: ANY /recorders/delete"}, "properties": {"repobilityId": "f6d0a00e780e432b", "scanner": "scanner-primary", "fingerprint": "9185c8933807aa03", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-1ae5d4a36bc9964a", "level": "note", "message": {"text": "Unused endpoint: ANY /notifications/get"}, "properties": {"repobilityId": "42b5a77ee5e6ebe5", "scanner": "scanner-primary", "fingerprint": "1ae5d4a36bc9964a", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-bc5a206582a4cdf4", "level": "note", "message": {"text": "Unused endpoint: ANY /notifications/save"}, "properties": {"repobilityId": "74d00058209de96d", "scanner": "scanner-primary", "fingerprint": "bc5a206582a4cdf4", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-9f2091e238fee64d", "level": "note", "message": {"text": "Unused endpoint: ANY /notifications/delete"}, "properties": {"repobilityId": "7dc9e7afb4b525e1", "scanner": "scanner-primary", "fingerprint": "9f2091e238fee64d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-be69e2a324df37a2", "level": "note", "message": {"text": "Unused endpoint: ANY /attachments/save"}, "properties": {"repobilityId": "23b69e8b8860d443", "scanner": "scanner-primary", "fingerprint": "be69e2a324df37a2", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-042b459017cd428f", "level": "note", "message": {"text": "Unused endpoint: ANY /attachments/delete"}, "properties": {"repobilityId": "1972e777ec938b56", "scanner": "scanner-primary", "fingerprint": "042b459017cd428f", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-285ca2ce934f6428", "level": "note", "message": {"text": "Unused endpoint: ANY /activities/get"}, "properties": {"repobilityId": "20432b8dc28ae8eb", "scanner": "scanner-primary", "fingerprint": "285ca2ce934f6428", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-f1ff973dfdba375b", "level": "note", "message": {"text": "Unused endpoint: ANY /activities/save"}, "properties": {"repobilityId": "0a44635ff88c1c71", "scanner": "scanner-primary", "fingerprint": "f1ff973dfdba375b", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-9b142d31e5481ed2", "level": "note", "message": {"text": "Unused endpoint: ANY /users/get"}, "properties": {"repobilityId": "5f5b26ab9a583e1a", "scanner": "scanner-primary", "fingerprint": "9b142d31e5481ed2", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-25a0385a55dfb2b9", "level": "note", "message": {"text": "Unused endpoint: ANY /token"}, "properties": {"repobilityId": "47816f28a164640e", "scanner": "scanner-primary", "fingerprint": "25a0385a55dfb2b9", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ff4ecc49ecfc61bd", "level": "note", "message": {"text": "Unused endpoint: GET /photos"}, "properties": {"repobilityId": "fe5f7dd1f9350df2", "scanner": "scanner-primary", "fingerprint": "ff4ecc49ecfc61bd", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-3d519b490880a504", "level": "note", "message": {"text": "Unused endpoint: GET /photos/:id"}, "properties": {"repobilityId": "1c9f8ce3e6526c2a", "scanner": "scanner-primary", "fingerprint": "3d519b490880a504", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ca53f167936dba6c", "level": "note", "message": {"text": "Unused endpoint: POST /photos"}, "properties": {"repobilityId": "172e8c9e444bb77c", "scanner": "scanner-primary", "fingerprint": "ca53f167936dba6c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-0c09579604686092", "level": "note", "message": {"text": "Unused endpoint: PATCH /photos/:id"}, "properties": {"repobilityId": "b26d2c9f5a76ed54", "scanner": "scanner-primary", "fingerprint": "0c09579604686092", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-2a36aeade364eb07", "level": "note", "message": {"text": "Unused endpoint: DELETE /photos/:id"}, "properties": {"repobilityId": "b6a26c3807832019", "scanner": "scanner-primary", "fingerprint": "2a36aeade364eb07", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-186692de65e847fc", "level": "note", "message": {"text": "Unused endpoint: GET /albums"}, "properties": {"repobilityId": "6d95481c346b9ce3", "scanner": "scanner-primary", "fingerprint": "186692de65e847fc", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}]}]}