Rule catalog

Generated from the runtime rule registry · the same registry the CLI reports via codygiene rules list. Human-authored context lives in Rules and Scope.

70registered rules
64enabled by default
6disabled by default (opt-in via --enable)

Security (32 rules, 32 enabled)

RuleSeverityDefaultDescription
CAND-001mediumenabled Sensitive data (tokens, secrets, passwords) in log output (Alpha).
CAND-002highenabled Webhook trusts caller-supplied metadata as organization identity (Alpha).
CAND-003highenabled URL constructed from untrusted request Host header (Alpha).
CAND-004highenabled HTTP header injection via unsanitized request input (Alpha).
CAND-005highenabled Filter-string injection in Supabase/PostgREST raw filter methods (Alpha).
CAND-006highenabled Shell command execution with string interpolation (Alpha).
CAND-007highenabled Browser-role GRANT EXECUTE on SECURITY DEFINER function (Alpha).
CAND-008highenabled Cross-table tenant integrity gap (Alpha).
CAND-009highenabled SQL TOCTOU / missing lock in PLpgSQL functions (Alpha).
CAND-011mediumenabled Unbounded SQL array/JSON processing in functions (Alpha).
CAND-019criticalenabled Potential secret exposed via VITE_/REACT_APP_/PUBLIC_ env prefix (Alpha).
CAND-020highenabled Dynamic require() with non-literal module path (Alpha).
CAND-021highenabled SECURITY DEFINER function with unsafe search_path (Alpha).
CAND-022highenabled Dynamic SQL inside privileged functions (Alpha).
CAND-023highenabled Unsafe raw ORM query construction (Alpha, E1.3).
CAND-025highenabled Request-derived open redirect (Alpha, E1.4).
CAND-026highenabled Unverified webhook side effect (Alpha, E1.4).
CH-SEC-001highenabled Dangerous eval() usage.
CH-SEC-002highenabled Function constructor used to create code from strings.
CH-SEC-003criticalenabled Secret credential exposed via a NEXT_PUBLIC_ environment variable.
CH-SEC-004criticalenabled Supabase service credential reachable from client-side code.
CH-SEC-005highenabled dangerouslySetInnerHTML with a dynamic value.
CH-SEC-006highenabled Table referenced in code without Row Level Security enabled.
CH-SEC-007highenabled RLS policy with USING(true) or WITH CHECK(true) on non-public tables.
CH-SEC-008mediumenabled INSERT/UPDATE RLS policy without a WITH CHECK expression.
CH-SEC-009criticalenabled Service-role Supabase client used in a route handler processing user input.
CH-SEC-010highenabled Route handler uses params to look up a resource without an ownership constraint.
CH-SEC-011highenabled Mutation handler (POST/PUT/PATCH/DELETE) without an identifiable auth check.
CH-SEC-012mediumenabled select("*") on a table that may contain sensitive columns.
CH-SEC-013mediumenabled Redirect target derived from user input without validation.
CH-SEC-014highenabled Server-side fetch with a user-controlled URL target.
CH-SEC-015highenabled Filesystem path constructed from user input without containment.

Performance (11 rules, 11 enabled)

RuleSeverityDefaultDescription
CAND-010mediumenabled Unbounded database query on growing table (Alpha, E1.3: Prisma/Drizzle).
CAND-024mediumenabled Fetch-all then filter/sort in JavaScript (Alpha, E1.3).
CH-PERF-001mediumenabled Database query executed inside a loop (potential N+1).
CH-PERF-002mediumenabled Network request executed inside a loop.
CH-PERF-003mediumenabled Sequential independent await operations that could run concurrently.
CH-PERF-004highenabled Potential N+1 database query pattern.
CH-PERF-005lowenabled Repeated identical database query within the same function.
CH-PERF-006lowenabled Repeated identical network request within the same function.
CH-PERF-007mediumenabled Synchronous blocking operation in a request handler path.
CH-PERF-008mediumenabled Excessive client boundary causing large client-reachable graph.
CH-PERF-011lowenabled useEffect with unstable constructed dependency causing unnecessary re-runs.

Code Health (20 rules, 14 enabled)

RuleSeverityDefaultDescription
CAND-027mediumenabled Unsafe type-safety escape in high-risk production logic (Alpha).
CAND-028mediumenabled Type-check suppression (@ts-ignore/@ts-nocheck) in production code (Alpha).
CAND-029mediumenabled insightHigh change blast radius: module with top-percentile transitive dependents (Alpha).
CAND-030mediumdisabled Excessive coupling: module with top-percentile fan-out (Alpha).
CAND-031mediumdisabled Architectural hotspot: high fan-in combined with a large implementation (Alpha).
CAND-032highenabled insightWorkspace dependency cycle detected (Alpha).
CAND-033mediumenabled insightCross-workspace dependency risk: app-to-app internal imports (Alpha).
CH-HEALTH-001mediumenabled Oversized function (many statements or lines, with composite severity).
CH-HEALTH-002lowenabled Oversized file (many effective lines).
CH-HEALTH-003mediumenabled Circular dependency detected in the import graph.
CH-HEALTH-004lowdisabled Source file not reachable from any known entrypoint.
CH-HEALTH-005lowdisabled Exported symbol not used by any reachable file.
CH-HEALTH-006lowenabled Dependency declared in package.json but not imported.
CH-HEALTH-007mediumdisabled Package imported but not declared in package.json.
CH-HEALTH-008mediumdisabled Functions with high structural similarity (duplicated logic).
CH-HEALTH-009mediumenabled Function with excessive cyclomatic complexity.
CH-HEALTH-010lowenabled Function with excessive nesting depth.
CH-HEALTH-011mediumenabled Module that accumulates multiple risk signals (hotspot).
CH-HEALTH-012lowenabled Suspicious cross-layer dependency (e.g. domain importing UI).
CH-HEALTH-014mediumenabled Exception caught and silently swallowed (empty catch or silent fallback).

AI Quality (7 rules, 7 enabled)

RuleSeverityDefaultDescription
CH-AIQ-001lowenabled Redundant pass-through abstraction chain (multiple forwarding layers with no added behavior).
CH-AIQ-002mediumenabled Multiple independently maintained implementations of the same significant business operation.
CH-AIQ-003highenabled Similar implementations use inconsistent authorization or security safeguards.
CH-AIQ-004highenabled Silent failure (empty catch or silent fallback) around a critical operation.
CH-AIQ-005mediumenabled High-risk logic (database mutations, authorization, security-sensitive) without identifiable related tests.
CH-AIQ-006mediumenabled Module significantly diverges from the dominant architecture pattern of comparable modules.
CH-AIQ-007lowenabled Multiple abstractions appear to serve the same repository-level responsibility.

Notes