Public scan — anyone with this URL can view this analysis. Sign up to track your own repos privately, run scheduled re-scans, and get AI fix prompts via your dashboard.

multica

https://github.com/multica-ai/multica · scanned 2026-05-17 02:50 UTC (13 hours, 27 minutes ago) · 10 languages

761 findings (52 legacy + 709 scanner) 2nd percentile · Typescript · large (100-500K LoC) Scanner says 63 (lower by 6)

UNIFIED Repobility · multi-layer engine · AI coders

Complete repo analysis

Last scanned 13 hours, 27 minutes ago · v2 · 407 findings from 2 sources. Findings combine the legacy security pipeline AND the multi-layer engine (atlas, wiring, flows, ranked) AND verified AI agent contributions.

JSON
Severity distribution — click a segment to filter
Active filters: layer: security × excluding tests × Reset all
Corpus Intelligence Cross-corpus context (cohort percentile, top patterns, fix plan) is shown only on repositories you own. Sign up and connect your repo to view it.
Scan summary Repository scanned at 63.3/100 with 100.0% coverage. It contains 4685 nodes across 30 cross-layer flows, written primarily in mixed languages. Engine surfaced 355 findings — concentrated in quality (164), frontend (94), software (50). Risk profile is high: 0 critical, 1 high, 35 medium. Recommended next step: open the quality layer findings first — that's where the highest-impact wins live.

Showing 28 of 407 findings. Click TP / FP to vote on a finding's accuracy — votes adjust the confidence weighting and improve detection across the platform.

critical Legacy security credential_exposure conf 0.90 [SEC001] Hardcoded Password: Hardcoded password found in source code.
Use environment variables or a secrets manager.
scripts/ensure-postgres.sh:19 credential_exposurelegacy
critical Legacy security credential_exposure conf 1.00 [SEC022] Database URL With Embedded Credential: A database connection URL contains an embedded username and password. These URLs are often copied into defaults, docs, and scripts, then leak working credentials.
Remove the embedded password, require the URL from a secret store or environment variable, and rotate the database credential.
server/cmd/backfill_task_usage_daily/main.go:49 credential_exposurelegacy
critical Legacy security credential_exposure conf 1.00 [SEC022] Database URL With Embedded Credential: A database connection URL contains an embedded username and password. These URLs are often copied into defaults, docs, and scripts, then leak working credentials.
Remove the embedded password, require the URL from a secret store or environment variable, and rotate the database credential.
scripts/screenshot-pr-cards.mjs:14 credential_exposurelegacy
critical Legacy security credential_exposure conf 1.00 [SEC022] Database URL With Embedded Credential: A database connection URL contains an embedded username and password. These URLs are often copied into defaults, docs, and scripts, then leak working credentials.
Remove the embedded password, require the URL from a secret store or environment variable, and rotate the database credential.
scripts/init-worktree-env.sh:31 credential_exposurelegacy
critical Legacy security auth conf 0.88 Token handoff appears to use a callback URL or fragment
A frontend flow appears to combine a caller-controlled callback/redirect parameter with a token-bearing URL or fragment. This can exfiltrate sessions when callback validation is incomplete.
apps/desktop/src/main/index.ts:69 authlegacy
critical Legacy security auth conf 0.88 Token handoff appears to use a callback URL or fragment
A frontend flow appears to combine a caller-controlled callback/redirect parameter with a token-bearing URL or fragment. This can exfiltrate sessions when callback validation is incomplete.
packages/views/auth/login-page.tsx:70 authlegacy
critical Legacy security auth conf 0.88 Token handoff appears to use a callback URL or fragment
A frontend flow appears to combine a caller-controlled callback/redirect parameter with a token-bearing URL or fragment. This can exfiltrate sessions when callback validation is incomplete.
apps/web/app/(auth)/login/page.tsx:174 authlegacy
critical Legacy security auth conf 0.88 Token handoff appears to use a callback URL or fragment
A frontend flow appears to combine a caller-controlled callback/redirect parameter with a token-bearing URL or fragment. This can exfiltrate sessions when callback validation is incomplete.
apps/web/app/(auth)/login/page.tsx:75 authlegacy
critical Legacy security auth conf 0.88 Token handoff appears to use a callback URL or fragment
A frontend flow appears to combine a caller-controlled callback/redirect parameter with a token-bearing URL or fragment. This can exfiltrate sessions when callback validation is incomplete.
apps/desktop/src/renderer/src/App.tsx:51 authlegacy
critical Legacy security auth conf 0.88 Token handoff appears to use a callback URL or fragment
A frontend flow appears to combine a caller-controlled callback/redirect parameter with a token-bearing URL or fragment. This can exfiltrate sessions when callback validation is incomplete.
apps/web/app/auth/callback/page.tsx:127 authlegacy
critical Legacy security auth conf 0.88 Token handoff appears to use a callback URL or fragment
A frontend flow appears to combine a caller-controlled callback/redirect parameter with a token-bearing URL or fragment. This can exfiltrate sessions when callback validation is incomplete.
apps/web/app/auth/callback/page.tsx:44 authlegacy
high Legacy security path_traversal conf 0.80 [SEC013] Path Traversal — User Input in File Path: User-controlled input used in file path without sanitization. Allows reading arbitrary files.
Use os.path.realpath() and verify the path starts with your expected base directory. Use secure_filename() for uploads.
packages/views/issues/components/issue-detail.tsx:1333 path_traversallegacy
high Legacy security credential_exposure conf 0.85 [SEC020] Secret Printed to Logs: Debug or diagnostic code appears to print a credential-bearing value. This is a frequent AI-assisted coding failure: the helper exposes the exact value needed for troubleshooting.
Log only redacted, hashed, or last-four-style metadata. Rotate any secret that may have reached logs.
server/internal/daemon/daemon.go:683 credential_exposurelegacy
medium Legacy security auth conf 0.92 [AUC001] No Repobility access matrix policy found: The repository uses web/API frameworks but does not define .repobility/access.yml or equivalent authorization documentation.
The repository uses web/API frameworks but does not define .repobility/access.yml or equivalent authorization documentation.
authlegacy
medium Legacy security auth conf 0.82 Browser storage is used for session token material
localStorage and sessionStorage are readable by injected JavaScript. For sensitive sessions, this turns XSS into account compromise.
packages/views/auth/login-page.tsx:252 authlegacy
medium Legacy security auth conf 0.82 Browser storage is used for session token material
localStorage and sessionStorage are readable by injected JavaScript. For sensitive sessions, this turns XSS into account compromise.
packages/views/auth/login-page.tsx:201 authlegacy
medium Legacy security auth conf 0.82 Browser storage is used for session token material
localStorage and sessionStorage are readable by injected JavaScript. For sensitive sessions, this turns XSS into account compromise.
packages/views/auth/login-page.tsx:140 authlegacy
medium Legacy security auth conf 0.82 Browser storage is used for session token material
localStorage and sessionStorage are readable by injected JavaScript. For sensitive sessions, this turns XSS into account compromise.
apps/web/components/web-providers.tsx:24 authlegacy
medium Legacy security auth conf 0.82 Browser storage is used for session token material
localStorage and sessionStorage are readable by injected JavaScript. For sensitive sessions, this turns XSS into account compromise.
apps/desktop/src/renderer/src/App.tsx:84 authlegacy
medium Legacy security auth conf 0.82 Browser storage is used for session token material
localStorage and sessionStorage are readable by injected JavaScript. For sensitive sessions, this turns XSS into account compromise.
e2e/helpers.ts:26 authlegacy
medium 9-layer security owasp conf 1.00 Insecure pattern 'dangerous_innerhtml' in apps/docs/components/mermaid.tsx:153
Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible.
apps/docs/components/mermaid.tsx:153 owaspdangerous_innerhtml
medium 9-layer security owasp conf 1.00 Insecure pattern 'dangerous_innerhtml' in apps/web/app/(landing)/layout.tsx:69
Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible.
apps/web/app/(landing)/layout.tsx:69 owaspdangerous_innerhtml
medium 9-layer security owasp conf 1.00 Insecure pattern 'dangerous_innerhtml' in packages/ui/components/ui/chart.tsx:95
Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible.
packages/ui/components/ui/chart.tsx:95 owaspdangerous_innerhtml
medium 9-layer security owasp conf 1.00 Insecure pattern 'dangerous_innerhtml' in packages/ui/markdown/CodeBlock.tsx:167
Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible.
packages/ui/markdown/CodeBlock.tsx:167 owaspdangerous_innerhtml
medium 9-layer security owasp conf 1.00 Insecure pattern 'dangerous_innerhtml' in packages/views/editor/attachment-preview-modal.tsx:471
Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible.
packages/views/editor/attachment-preview-modal.tsx:471 owaspdangerous_innerhtml
medium 9-layer security owasp conf 1.00 Insecure pattern 'dangerous_innerhtml' in packages/views/editor/extensions/math.tsx:27
Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible.
packages/views/editor/extensions/math.tsx:27 owaspdangerous_innerhtml
medium 9-layer security owasp conf 1.00 Insecure pattern 'dangerous_innerhtml' in packages/views/editor/readonly-content.tsx:383
Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible.
packages/views/editor/readonly-content.tsx:383 owaspdangerous_innerhtml
medium 9-layer security owasp conf 1.00 Insecure pattern 'weak_hash' in server/internal/auth/cloudfront.go:148
Found a known-risky pattern (weak_hash). Review and replace if possible.
server/internal/auth/cloudfront.go:148 owaspweak_hash
{# ── 2026-05-17 Round 14: AI-agent bridge footer ────────────────────── Discoverability: the /agents/voting/ guide + MCP manifest exist but aren't linked from anywhere users actually land. Small, opt-in footer. #}
For AI agents: Voting guide (TP/FP) MCP manifest Stdio wrapper SARIF Integrate Findings queue Vote TP/FP on findings to calibrate the engine.
For AI agents + API integrations
Email me when this repo regresses
Free. We re-scan periodically; new criticals → your inbox. No signup required for the scan itself.
API access

This page is publicly accessible at: https://repobility.com/scan/a3a23df1-c446-4e56-a160-ed8bb6252f50/

To check status programmatically (no auth required):

curl -s https://repobility.com/api/v1/public/scan/a3a23df1-c446-4e56-a160-ed8bb6252f50/

Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.