Open-source manufacturing ERP, MES and QMS. Quoting, MRP, inventory, shop floor, quality and lot/serial traceability on one Postgres schema, with a REST API and MCP server. Self-host or use Carbon Cloud.
This report summarizes scanner evidence for crbnos/carbon, a TypeScript project with 2,788 GitHub stars. SynthScan examined 1,928,126 lines of code across 8589 source files, recording 2727 pattern matches distributed across 15 syntactic categories. The legacy adjusted pattern signal is 1.7 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 2247 finding(s).
Are imports declared and package/API names verified? 115 finding(s).
Are wrappers, guards, and repeated structures necessary? 2141 finding(s).
Which changes need focused human review? 2727 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 2727 distinct pattern matches across 15 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .claude/rules/database-patterns.md | 214 | export async function updatePurchaseOrderLineOrder( | CODE |
| LOW | packages/database/src/deposit-scope.ts | 25 | export async function loadSalesInvoiceDocumentIds( | CODE |
| LOW | packages/database/src/supersession-pick.ts | 34 | export function withoutStockedConsumeFirst( | CODE |
| LOW | packages/database/src/supersession-pick.ts | 53 | export function buildSupersessionRedirectMap( | CODE |
| LOW | packages/database/src/supersession-pick.ts | 130 | export function consumableInWholeAssemblies( | CODE |
| LOW | packages/database/src/supersession-pick.ts | 308 | export function firstStockedInConsumeFirstChain( | CODE |
| LOW | packages/database/src/stock-transfer.ts | 49 | export function isBelowReplenishmentLevel( | CODE |
| LOW | packages/database/src/stock-transfer.ts | 62 | export function levelReplenishmentQuantity( | CODE |
| LOW | packages/database/src/quality.ts | 403 | export function isRejectableWithoutReason(lot: { | CODE |
| LOW | packages/database/src/quality.ts | 721 | export async function upsertInspectionMeasurement( | CODE |
| LOW | packages/database/src/quality.ts | 953 | export async function reconcileInspectionSamplingPlans( | CODE |
| LOW | packages/database/src/quality.ts | 1232 | export async function getRecentInspectionGauges( | CODE |
| LOW | packages/database/src/quality.ts | 1306 | export async function getOrCreateJobOperationInspection( | CODE |
| LOW | packages/database/src/quality.ts | 1306 | export async function getOrCreateJobOperationInspection( | CODE |
| LOW | packages/database/src/quality.ts | 1676 | export async function deleteUnusedPmiInspectionPlans( | CODE |
| LOW | packages/database/src/accounting-posting.ts | 50 | export function onAccountCreditDescription(isAR: boolean): string { | CODE |
| LOW | packages/database/src/accounting-posting.ts | 100 | export function classifyAccountingPostingRole( | CODE |
| LOW | packages/database/src/accounting-cutover.ts | 297 | export function migrationClearingByAccount( | CODE |
| LOW | packages/database/src/accounting-cutover.ts | 374 | export function applyCarbonToTrialBalance( | CODE |
| LOW | packages/database/src/receipt-serials.ts | 92 | export async function releaseReceiptSerialEntities( | CODE |
| LOW | packages/database/src/contract-schedule.ts | 558 | export function reconcileContractSchedule({ | CODE |
| LOW | packages/database/src/sales-posting-amounts.ts | 156 | export function calculateSalesPostingAmounts( | CODE |
| LOW | packages/database/src/sales-posting-amounts.ts | 190 | export function allocateSalesHeaderShipping( | CODE |
| LOW | packages/database/src/sales-posting-amounts.ts | 234 | export function calculateSalesIntercompanyAmount( | CODE |
| LOW | packages/database/src/sampling.ts | 888 | export function resolveFeatureSamplingPlan( | CODE |
| LOW | packages/database/src/utils.ts | 185 | export async function getNonNettableTrackedEntityIds( | CODE |
| LOW | packages/database/src/precision.ts | 69 | export function distributeRoundingResidual( | CODE |
| LOW | packages/database/src/client.ts | 102 | function createPostgresConnectionPool(connections: number): pg.Pool { | CODE |
| LOW | packages/database/src/sequence.ts | 220 | export async function resolveSerialNumberTiming( | CODE |
| LOW | packages/database/src/sequence.ts | 259 | export async function assignSerialNumberIfMissing( | CODE |
| LOW | packages/database/src/methods.ts | 75 | export function getJobMethodTreeArrayToTree( | CODE |
| LOW | packages/database/src/methods.ts | 185 | function getQuoteMethodTreeArrayToTree( | CODE |
| LOW | packages/database/src/methods.ts | 383 | async function getSupplierPriceBreaksForItems( | CODE |
| LOW | packages/database/src/event.ts | 146 | export async function createEventSystemSubscription( | CODE |
| LOW | packages/database/src/event.ts | 182 | export async function deleteEventSystemSubscription( | CODE |
| LOW | packages/database/src/event.ts | 206 | export async function deleteEventSystemSubscriptionsByName( | CODE |
| LOW | packages/database/src/legacy-documents.ts | 870 | export function assetsLeavingWithoutJournal( | CODE |
| LOW | packages/database/src/legacy-documents.ts | 978 | export function legacyDepreciationRunLines(db: Db, args: Args) { | CODE |
| LOW | packages/database/src/legacy-documents.ts | 1102 | export function legacyRecognitionSchedule( | CODE |
| LOW | packages/database/src/mrp-engine.ts | 385 | export function netConsumeFirstContributors(args: { | CODE |
| LOW | packages/database/src/mrp-engine.ts | 432 | function redirectConsumeFirstShortfall(args: { | CODE |
| LOW | packages/database/src/strict-backflush.ts | 100 | export async function getStrictBackflushSettings( | CODE |
| LOW | packages/database/src/strict-backflush.ts | 119 | export async function getMethodPartsMissingPullFrom( | CODE |
| LOW | packages/database/src/journal-posting-status.ts | 38 | export async function readAccountingCutoverDate( | CODE |
| LOW | packages/database/src/journal-posting-status.ts | 61 | export async function assertPostingStatusUnchanged( | CODE |
| LOW | packages/database/src/run-journals.ts | 97 | export function buildDepreciationJournals( | CODE |
| LOW | packages/database/src/run-journals.ts | 422 | export function recognitionAccountWithoutClass( | CODE |
| LOW | packages/database/src/datasets/validate.ts | 3987 | export function assemblyStructureFingerprint(steps: AssemblyStepSpec[]) { | CODE |
| LOW | packages/database/src/accounting-cutover/inventory.ts | 88 | export async function getCutoverInventoryValuation( | CODE |
| LOW | packages/database/src/accounting-cutover/readiness.ts | 313 | async function getPendingDocumentsBeforeCutover( | CODE |
| LOW | …kages/database/src/accounting-cutover/trial-balance.ts | 423 | async function getInvoicesSettledFromCutover( | CODE |
| LOW | …kages/database/src/accounting-cutover/trial-balance.ts | 563 | export async function applyCarbonToOpeningTrialBalance( | CODE |
| LOW | …ckages/database/src/accounting-cutover/fixed-assets.ts | 35 | export async function getAssetsLeavingWithoutJournal( | CODE |
| LOW | …ckages/database/src/accounting-cutover/fixed-assets.ts | 49 | export async function getDepreciationAfterCutover( | CODE |
| LOW | …ckages/database/src/accounting-cutover/fixed-assets.ts | 154 | export async function updateCutoverAccumulatedDepreciation( | CODE |
| LOW | packages/database/src/accounting-cutover/open-items.ts | 108 | async function getSettlementsBeforeCutover( | CODE |
| LOW | packages/database/src/accounting-cutover/open-items.ts | 187 | async function getReceivableAndPayableItems( | CODE |
| LOW | packages/database/src/accounting-cutover/open-items.ts | 634 | async function getReceivedNotInvoicedItems( | CODE |
| LOW | packages/database/src/accounting-cutover/open-items.ts | 909 | async function getInvoicedNotReceivedItems( | CODE |
| LOW | packages/database/src/accounting-cutover/open-items.ts | 1193 | async function getLeaseNetInvestmentItems( | CODE |
| 1716 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | setup.sh | 16 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | setup.sh | 18 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | setup.sh | 70 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | setup.sh | 72 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …kills/agent-browser/templates/authenticated-session.sh | 32 | # ================================================================ | COMMENT |
| MEDIUM | …kills/agent-browser/templates/authenticated-session.sh | 34 | # ================================================================ | COMMENT |
| MEDIUM | …kills/agent-browser/templates/authenticated-session.sh | 54 | # ================================================================ | COMMENT |
| MEDIUM | …kills/agent-browser/templates/authenticated-session.sh | 56 | # ================================================================ | COMMENT |
| MEDIUM | …kills/agent-browser/templates/authenticated-session.sh | 76 | # ================================================================ | COMMENT |
| MEDIUM | …kills/agent-browser/templates/authenticated-session.sh | 78 | # ================================================================ | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 662 | // ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 669 | // ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 671 | // ── Account defaults (AccountDefaultsForm) ────────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 1095 | // ── Documents (plan 03) ───────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 1105 | // ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 1111 | // ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 1113 | // ── Kanbans (KanbanForm) ──────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 1461 | // ── Quality: Inbound inspection (InboundInspectionForm) ───────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 1467 | // ── Quality: Inspection document (InspectionDocumentForm) ─────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 1473 | // ── Quality: Issue (IssueForm + IssueProperties) ──────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 1664 | // ── Shared: ArrayNumeric quantity-break inputs ────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 1670 | // ── Purchasing: Supplier process (SupplierProcessForm) ────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 1680 | // ── Purchasing: Purchasing RFQ (PurchasingRFQForm) ────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 1952 | // ── Resources: Failure modes (FailureModeForm) ────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 1958 | // ── Resources: Locations (LocationForm) ───────────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 1964 | // ── Resources: Contractors (ContractorForm) ───────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 1970 | // ── Resources: Processes (ProcessForm) ────────────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 2046 | // ── Users: Groups (GroupsForm) ────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 2052 | // ── Users: Employee types (EmployeeTypeForm) ──────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 2058 | // ── Users: Employee permissions (EmployeePermissionsForm) ─────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 2064 | // ── Users: Bulk permissions (BulkEditPermissionsForm) ─────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 2070 | // ── Users: Customer account (CreateCustomerModal) ─────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 2080 | // ── Users: Supplier account (CreateSupplierModal) ─────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 2090 | // ── Users: Create employee (CreateEmployeeModal) ──────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 2100 | // ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 2104 | // ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | docs/content/src/glossary/terms.ts | 2106 | // ── Quality: issues / disposition / SCAR / MRB ────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 149 | // ── Production & the floor ────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 219 | // ── Sales & purchasing ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 270 | // ── Inventory, tracking & costing ─────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 328 | // ── Planning, quality & accounting ────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 398 | // ── Cost centers ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 415 | // ── Documents & variances ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 457 | // ── Fixed assets ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 519 | // ── Rentals ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 586 | // ── Leases (lessee) ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 643 | // ── Inventory ledger ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 650 | // ── Shelf life ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 879 | // ── Chart of Accounts / Group Accounts ────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 913 | // ── Dimensions ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 923 | // ── Exchange rates ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 937 | // ── Fiscal year ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 981 | // ── Asset class defaults ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 1027 | // ── Fixed-asset register / disposal ───────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 1045 | // ── Intercompany ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 1059 | // ── Journal entries ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 1077 | // ── Payment terms ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 1139 | // ── Shipping methods (ShippingMethodForm) ─────────────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 1153 | // ── Warehouse transfers (WarehouseTransferForm) ───────────────────────── | COMMENT |
| MEDIUM | docs/content/src/glossary/terms.ts | 1159 | // ── Storage units (StorageUnitForm) ───────────────────────────────────── | COMMENT |
| 303 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | setup.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | crates/thumbnail/src/lib.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/optimize/src/lib.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/optimize/src/lib.rs | 21 | COMMENT | |
| LOW | crates/optimize/src/lib.rs | 41 | pub tolerance: Option<f32>, | COMMENT |
| LOW | crates/optimize/src/ingest.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/optimize/src/codec.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/converter/tests/tessellation_smoothness.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/converter/examples/conc_convert.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/converter/src/nodeid.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/converter/src/pmi.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/draco-bridge/src/lib.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/planner/examples/stress.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/planner/examples/bench_plan.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/planner/src/consts.rs | 81 | // (the bare board) carrying dozens-hundreds of tiny parts seated on it. | COMMENT |
| LOW | crates/planner/src/types.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/planner/src/greedy.rs | 21 | /// read-only sweep (no shared mutation). Each worker thread builds its OWN FCL | COMMENT |
| LOW | crates/planner/src/greedy.rs | 1061 | let mut blocked_p2: HashMap<String, HashSet<String>> = HashMap::new(); | COMMENT |
| LOW | crates/planner/src/stability.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/planner/src/pipeline2.rs | 1101 | } | COMMENT |
| LOW | crates/planner/src/view.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/occt-bridge/src/lib.rs | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | crates/occt-bridge/src/lib.rs | 141 | fn read_brep(path: &str, linear_deflection: f64, angular_deflection: f64) -> Tree; | COMMENT |
| LOW | crates/collision/src/lib.rs | 121 | /// blocked (depth > threshold), near (> tol/2), touching (any contact) — | COMMENT |
| LOW | …ot-cause/references/condition-based-waiting-example.ts | 141 | // --------------- | COMMENT |
| LOW | …ude/skills/agent-browser/templates/capture-workflow.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …aude/skills/agent-browser/templates/form-automation.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …aude/skills/agent-browser/templates/form-automation.sh | 21 | agent-browser open "$FORM_URL" | COMMENT |
| LOW | …kills/agent-browser/templates/authenticated-session.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …kills/agent-browser/templates/authenticated-session.sh | 81 | # | COMMENT |
| LOW | …kills/agent-browser/templates/authenticated-session.sh | 101 | # # Save state for future runs | COMMENT |
| LOW | …de/skills/rust-best-practices/references/chapter_05.md | 181 | * These tests run with `cargo test` **BUT NOT** `cargo nextest run`. If using `nextest`, make sure to run `cargo t --doc | COMMENT |
| LOW | …de/skills/rust-best-practices/references/chapter_08.md | 201 | ### `//!` Module/Crate level Documentation | COMMENT |
| LOW | docs/content/src/glossary/terms.ts | 1101 | term: msg`Edit permissions`, | COMMENT |
| LOW | contrib/deploying/simple-docker-caddy/deploy.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | …/deploying/simple-docker-caddy/docker-compose.prod.yml | 1 | ############################################################################### | COMMENT |
| LOW | …eploying/simple-docker-caddy/bin/secrets-entrypoint.sh | 1 | #!/bin/sh | COMMENT |
| LOW | …ploying/simple-docker-caddy/postgres/02-performance.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …oying/simple-docker-caddy/scripts/gen-supabase-keys.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | contrib/deploying/simple-docker-caddy/scripts/backup.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | scripts/restore-database.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | scripts/restore-database.sh | 21 | # resets the password | COMMENT |
| LOW | scripts/restore-database.sh | 41 | # vault secrets, flush the Redis permission cache. | COMMENT |
| LOW | scripts/restore-database.sh | 161 | # `|| true`: pg_restore exits nonzero whenever ANY error occurred, including | COMMENT |
| LOW | scripts/restore-database.sh | 181 | # COPY naming a column or table that doesn't exist fails at PARSE time, so | COMMENT |
| LOW | scripts/restore-database.sh | 301 | echo " has run — including the SCRUB_EMAILS scrub. Start the stack ('crbn up')" >&2 | COMMENT |
| LOW | packages/database/supabase/config.toml | 1 | # NOTE: For local dev, only `project_id` and `[functions.*]` sections are | COMMENT |
| LOW | packages/database/src/accounting-cutover-reads.ts | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | packages/database/src/contract-position.ts | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | packages/database/src/quality.ts | 61 | // and no sample failed — a suspected counterfeit, the wrong part, transit | COMMENT |
| LOW | packages/database/src/run-type.ts | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | packages/database/src/accounting-posting.ts | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | packages/database/src/cost-relief.ts | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | packages/database/src/contract-schedule.ts | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | packages/database/src/account-import.ts | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | packages/database/src/build-memo-journal.ts | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | packages/database/src/build-memo-journal.ts | 21 | // Supplier Debit → reduce AP → DR liab. (control debit) | COMMENT |
| LOW | packages/database/src/fetch-all.ts | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | packages/database/src/lease-months.ts | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | packages/database/src/payment-processor-fee.ts | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| 267 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .claude/skills/research/SKILL.md | 15 | ## Step 1: Classify the domain | COMMENT |
| LOW | .claude/skills/research/SKILL.md | 35 | ## Step 2: Write the research questions | COMMENT |
| LOW | .claude/skills/research/SKILL.md | 44 | ## Step 3: Search | COMMENT |
| LOW | .claude/skills/research/SKILL.md | 62 | ## Step 4: Write the findings file | COMMENT |
| LOW | .claude/skills/research/SKILL.md | 103 | ## Step 5: Do the STE-80 review pass | COMMENT |
| LOW | .claude/skills/check-and-commit/SKILL.md | 17 | ## Step 1: Identify what changed | COMMENT |
| LOW | .claude/skills/check-and-commit/SKILL.md | 59 | ## Step 2: Run the gates in order | COMMENT |
| LOW | .claude/skills/check-and-commit/SKILL.md | 110 | ## Step 3: Fix policy | COMMENT |
| LOW | .claude/skills/check-and-commit/SKILL.md | 131 | ## Step 4: Commit | COMMENT |
| LOW | .claude/skills/check-and-commit/SKILL.md | 148 | ## Step 5: Report | COMMENT |
| LOW | .claude/skills/root-cause/SKILL.md | 21 | ## Step 0: Load context | COMMENT |
| LOW | .claude/skills/root-cause/SKILL.md | 28 | ## Step 1: Establish the facts | COMMENT |
| LOW | .claude/skills/root-cause/SKILL.md | 44 | ## Step 2: Carbon-specific failure modes | COMMENT |
| LOW | .claude/skills/root-cause/SKILL.md | 59 | ## Step 3: One hypothesis at a time | COMMENT |
| LOW | .claude/skills/root-cause/SKILL.md | 71 | ## Step 4: Confidence | COMMENT |
| LOW | .claude/skills/root-cause/SKILL.md | 84 | ## Step 5: Output the brief | COMMENT |
| LOW | .claude/skills/pr-splitter/SKILL.md | 18 | ## Step 1: Snapshot before touching anything | COMMENT |
| LOW | .claude/skills/pr-splitter/SKILL.md | 28 | ## Step 2: Inventory the original PR | COMMENT |
| LOW | .claude/skills/pr-splitter/SKILL.md | 47 | ## Step 3: Create the scratchpad | COMMENT |
| LOW | .claude/skills/pr-splitter/SKILL.md | 65 | ## Step 4: Choose the split shape | COMMENT |
| LOW | .claude/skills/pr-splitter/SKILL.md | 77 | ## Step 5: Extract non-interactively | COMMENT |
| LOW | .claude/skills/pr-splitter/SKILL.md | 107 | ## Step 6: Verify each PR independently | COMMENT |
| LOW | .claude/skills/pr-splitter/SKILL.md | 120 | ## Step 7: PR descriptions | COMMENT |
| LOW | .claude/skills/pr-splitter/SKILL.md | 139 | ## Step 8: Manage drift as reviews land | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 20 | # Step 1: Navigate to form | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 24 | # Step 2: Snapshot to discover form elements | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 29 | # Step 3: Fill form fields (customize these refs based on snapshot output) | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 46 | # Step 4: Wait for submission | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 50 | # Step 5: Verify result | COMMENT |
| LOW | .claude/skills/grill/SKILL.md | 21 | ## Step 1: Identify the target and its write destination | COMMENT |
| LOW | .claude/skills/grill/SKILL.md | 35 | ## Step 2: Pick the depth from the blast radius | COMMENT |
| LOW | .claude/skills/grill/SKILL.md | 45 | ## Step 3: Interview | COMMENT |
| LOW | .claude/skills/grill/SKILL.md | 66 | ## Step 4: Write back as each decision lands | COMMENT |
| LOW | .claude/skills/explain/SKILL.md | 21 | ## Step 1: Resolve the source | COMMENT |
| LOW | .claude/skills/explain/SKILL.md | 41 | ## Step 2: Read the source, then the code it names | COMMENT |
| LOW | .claude/skills/explain/SKILL.md | 65 | ## Step 3: Choose the one picture | COMMENT |
| LOW | .claude/skills/explain/SKILL.md | 99 | ## Step 4: Copy the template and stamp the source | COMMENT |
| LOW | .claude/skills/explain/SKILL.md | 113 | ## Step 5: Fill every section | COMMENT |
| LOW | .claude/skills/explain/SKILL.md | 167 | ## Step 6: Check the page yourself | COMMENT |
| LOW | .claude/skills/explain/SKILL.md | 229 | ## Step 7: Report | COMMENT |
| LOW | .claude/skills/spec-writing/SKILL.md | 36 | ## Step 1: Scope the request | COMMENT |
| LOW | .claude/skills/spec-writing/SKILL.md | 42 | ## Step 2: Read Carbon context | COMMENT |
| LOW | .claude/skills/spec-writing/SKILL.md | 62 | ## Step 3: Research competitors | COMMENT |
| LOW | .claude/skills/spec-writing/SKILL.md | 69 | ## Step 4: Make the design decisions — and separate the questions | COMMENT |
| LOW | .claude/skills/spec-writing/SKILL.md | 100 | ## Step 5: Grill — resolve the questions with the user BEFORE writing | COMMENT |
| LOW | .claude/skills/spec-writing/SKILL.md | 140 | ## Step 6: Write the spec | COMMENT |
| LOW | .claude/skills/spec-writing/SKILL.md | 197 | ## Step 7: New questions discovered while writing | COMMENT |
| LOW | .claude/skills/spec-writing/SKILL.md | 207 | ## Step 8: Finalize | COMMENT |
| LOW | .claude/skills/self-review/SKILL.md | 14 | ## Step 1: Get the diff | COMMENT |
| LOW | .claude/skills/self-review/SKILL.md | 21 | ## Step 2: Read all of it | COMMENT |
| LOW | .claude/skills/self-review/SKILL.md | 44 | ## Step 3: Docs freshness | COMMENT |
| LOW | .claude/skills/self-review/SKILL.md | 56 | ## Step 4: Output | COMMENT |
| LOW | .claude/skills/test/SKILL.md | 20 | ## Step 1: Check for a cached playbook FIRST | COMMENT |
| LOW | .claude/skills/test/SKILL.md | 30 | ## Step 2: Decide what to test | COMMENT |
| LOW⚡ | .claude/skills/test/SKILL.md | 46 | ## Step 3: Write the test plan | COMMENT |
| LOW⚡ | .claude/skills/test/SKILL.md | 52 | ## Step 4: Login | COMMENT |
| LOW⚡ | .claude/skills/test/SKILL.md | 56 | ## Step 5: Execute each test | COMMENT |
| LOW | .claude/skills/test/SKILL.md | 124 | ## Step 6: Cache the playbook (after every PASS) | COMMENT |
| LOW | .claude/skills/test/SKILL.md | 155 | ## Step 7: Report, then cleanup | COMMENT |
| LOW | .claude/skills/plan/SKILL.md | 18 | ## Step 1: Check prerequisites | COMMENT |
| 39 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .claude/rules/email-design.md | 57 | - **Add the preview fixture in the same change** (`previews/<Name>.tsx`, props filled with obviously-sample values like | CODE |
| LOW | .claude/skills/agent-browser/SKILL.md | 25 | agent-browser fill @e1 "user@example.com" | CODE |
| LOW | .claude/skills/agent-browser/SKILL.md | 41 | agent-browser fill @e1 "user@example.com" && agent-browser fill @e2 "password123" && agent-browser click @e3 | CODE |
| LOW | .claude/skills/agent-browser/SKILL.md | 185 | agent-browser fill @e1 "Jane Doe" | CODE |
| LOW | …aude/skills/agent-browser/references/authentication.md | 132 | agent-browser fill @e1 "user@example.com" | CODE |
| LOW | …aude/skills/agent-browser/references/authentication.md | 151 | agent-browser fill @e1 "user@example.com" | CODE |
| LOW | …aude/skills/agent-browser/references/authentication.md | 208 | agent-browser fill @e1 "user@example.com" | CODE |
| LOW | …laude/skills/agent-browser/references/snapshot-refs.md | 72 | agent-browser fill @e10 "user@example.com" | CODE |
| LOW | …/skills/agent-browser/references/session-management.md | 29 | agent-browser --session auth fill @e1 "user@example.com" | CODE |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 32 | # agent-browser fill @e1 "John Doe" # Text input | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 33 | # agent-browser fill @e2 "user@example.com" # Email input | COMMENT |
| LOW | …de/skills/rust-best-practices/references/chapter_01.md | 401 | // Lorem Ipsum is simply dummy text of the printing and typesetting industry. | COMMENT |
| LOW | …de/skills/rust-best-practices/references/chapter_01.md | 402 | // Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, | COMMENT |
| LOW | …de/skills/rust-best-practices/references/chapter_01.md | 464 | Avoid leaving lingering `// TODO: Lorem Ipsum` comments in the code. Instead: | CODE |
| LOW | …pabase-postgres-best-practices/references/_template.md | 18 | SELECT * FROM users WHERE email = 'user@example.com' AND deleted_at IS NULL; | CODE |
| LOW | …pabase-postgres-best-practices/references/_template.md | 28 | SELECT * FROM users WHERE email = 'user@example.com' AND deleted_at IS NULL; | CODE |
| LOW | …es-best-practices/references/query-covering-indexes.md | 18 | select email, name, created_at from users where email = 'user@example.com'; | CODE |
| LOW | …es-best-practices/references/query-covering-indexes.md | 28 | select email, name, created_at from users where email = 'user@example.com'; | CODE |
| LOW | …res-best-practices/references/query-partial-indexes.md | 19 | select * from users where email = 'user@example.com' and deleted_at is null; | CODE |
| LOW | …res-best-practices/references/query-partial-indexes.md | 30 | select * from users where email = 'user@example.com' and deleted_at is null; | CODE |
| LOW | packages/database/src/seed-data.ts | 2530 | addressLine1: "123 Main Street", | CODE |
| LOW | packages/database/src/stock-transfer.test.ts | 70 | signal: { type: "scan", userName: "Jane Doe" } | CODE |
| LOW | …ages/auth/src/services/self-signup-blocked-domains.txt | 2711 | fake-email.pp.ua | CODE |
| LOW⚡ | …ckages/auth/src/services/auth-redis-resilience.test.ts | 82 | await expect(sendVerificationCode("user@example.com")).resolves.toBe(false); | CODE |
| LOW⚡ | …ckages/auth/src/services/auth-redis-resilience.test.ts | 89 | await expect(sendVerificationCode("user@example.com")).resolves.toBe(false); | CODE |
| LOW⚡ | …ckages/auth/src/services/auth-redis-resilience.test.ts | 94 | await expect(verifyEmailCode("user@example.com", "123456")).resolves.toBe( | CODE |
| LOW | …ckages/auth/src/services/auth-redis-resilience.test.ts | 106 | email: "user@example.com", | CODE |
| LOW | packages/tiptap/src/extensions/mention.tsx | 229 | * { id: "c1", label: "Acme Corp" }, | COMMENT |
| LOW | packages/ee/src/accounting/core/credentials.test.ts | 19 | tenantName: "Acme Inc" | CODE |
| LOW | packages/ee/src/accounting/core/credentials.test.ts | 31 | tenantName: "Acme Inc" | CODE |
| LOW | packages/ee/src/accounting/core/credentials.test.ts | 59 | tenantName: "Acme Inc" | CODE |
| LOW | packages/ee/src/accounting/core/credentials.test.ts | 128 | tenantName: "Acme Inc" | CODE |
| LOW | packages/ee/src/accounting/core/credentials.test.ts | 140 | tenantName: "Acme Inc" | CODE |
| LOW | …iders/rillet/entities/__tests__/contact-import.test.ts | 86 | ["Jane Doe", { firstName: "Jane", lastName: "Doe" }], | CODE |
| LOW | …ng/providers/rillet/entities/__tests__/contact.test.ts | 34 | workPhone: "555-0100", | CODE |
| LOW | …ng/providers/rillet/entities/__tests__/contact.test.ts | 35 | mobilePhone: "555-0101", | CODE |
| LOW⚡ | …providers/quickbooks-online/__tests__/provider.test.ts | 456 | Customer: { Id: "42", SyncToken: "1", DisplayName: "Acme Ltd" } | CODE |
| LOW⚡ | …providers/quickbooks-online/__tests__/provider.test.ts | 464 | DisplayName: "Acme Ltd", | CODE |
| LOW⚡ | …providers/quickbooks-online/__tests__/provider.test.ts | 472 | DisplayName: "Acme Ltd", | CODE |
| LOW | …/quickbooks-online/entities/__tests__/customer.test.ts | 40 | workPhone: "555-0100", | CODE |
| LOW | …/quickbooks-online/entities/__tests__/customer.test.ts | 41 | mobilePhone: "555-0101", | CODE |
| LOW | …/quickbooks-online/entities/__tests__/customer.test.ts | 79 | PrimaryPhone: { FreeFormNumber: "555-0100" }, | CODE |
| LOW | …/quickbooks-online/entities/__tests__/customer.test.ts | 117 | expect(payload.PrimaryPhone).toEqual({ FreeFormNumber: "555-0101" }); | CODE |
| LOW | …/quickbooks-online/entities/__tests__/customer.test.ts | 152 | PrimaryPhone: { FreeFormNumber: "555-0100" }, | CODE |
| LOW | …/quickbooks-online/entities/__tests__/customer.test.ts | 172 | expect(local.workPhone).toBe("555-0100"); | CODE |
| LOW | packages/documents/src/pdf/purchasingRfq.samples.ts | 83 | contact: { name: "Jane Doe", email: "jane.doe@acme.example" }, | CODE |
| LOW | packages/documents/src/utils/shared.test.ts | 32 | const company = { name: "Acme Ltd", countryCode: "GB" }; | CODE |
| LOW | packages/documents/src/utils/shared.test.ts | 50 | expect(getRegistrationFooter("Acme Ltd", "GB", "")).toBe( | CODE |
| LOW | packages/documents/src/email/VerificationEmail.tsx | 30 | email = "user@example.com", | CODE |
| LOW | …/documents/src/email/previews/DigitalQuoteResponse.tsx | 12 | recipientName={"John Doe"} | CODE |
| LOW | …cuments/src/email/previews/PurchaseOrderAssignment.tsx | 12 | recipientName={"John Doe"} | CODE |
| LOW | …/documents/src/email/previews/SalesOrderAssignment.tsx | 12 | recipientName={"John Doe"} | CODE |
| LOW | packages/documents/src/email/previews/SalesRfqReady.tsx | 12 | recipientName={"John Doe"} | CODE |
| LOW | …kages/documents/src/email/previews/MfaEnabledEmail.tsx | 10 | recipientName={"Jane Doe"} | CODE |
| LOW | packages/documents/src/email/previews/QuoteExpired.tsx | 12 | recipientName={"John Doe"} | CODE |
| LOW | …s/documents/src/email/previews/JobOperationMessage.tsx | 12 | recipientName={"John Doe"} | CODE |
| LOW | …s/documents/src/email/previews/ProcedureAssignment.tsx | 12 | recipientName={"John Doe"} | CODE |
| LOW | …ckages/documents/src/email/previews/RiskAssignment.tsx | 12 | recipientName={"John Doe"} | CODE |
| LOW | …cuments/src/email/previews/SupplierQuoteAssignment.tsx | 12 | recipientName={"John Doe"} | CODE |
| LOW | …ents/src/email/previews/ChangeNoticeImplementation.tsx | 12 | recipientName={"John Doe"} | CODE |
| 44 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | packages/ee/src/linear/lib/client.ts | 83 | return response.data.data.teams.nodes.map((el) => el); | CODE |
| CRITICAL | packages/ee/src/linear/lib/client.ts | 107 | return response.data.data.searchIssues.nodes.map((el) => el); | CODE |
| CRITICAL | packages/ee/src/linear/lib/client.ts | 129 | return response.data.data.issues.nodes.at(0) || null; | CODE |
| CRITICAL | packages/ee/src/linear/lib/client.ts | 173 | return response.data.data.team.members.nodes.map((el) => el); | CODE |
| CRITICAL | packages/ee/src/linear/lib/client.ts | 225 | return response.data.data.users.edges.map((el) => el.node); | CODE |
| CRITICAL | packages/ee/src/linear/lib/client.ts | 292 | return res.data.data.workflowStates.nodes.at(0) || null; | CODE |
| CRITICAL | packages/ee/src/linear/lib/client.ts | 321 | return res.data.data.attachments.nodes.map((el) => el); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …ude/skills/carbon-docs/references/brand-integration.md | 1 | # Brand integration — DEPRECATED (scaffold-era) | COMMENT |
| MEDIUM | .claude/skills/carbon-docs/assets/templates/README.md | 1 | # Templates — DEPRECATED (scaffold-era, NOT used by the shipped docs) | COMMENT |
| MEDIUM | .ai/research/period-closing.md | 41 | ### Close orchestration: Financial Closing Cockpit / Advanced Financial Closing | COMMENT |
| MEDIUM | .ai/research/period-closing.md | 168 | ### 4.4 Close checklist / orchestration | COMMENT |
| MEDIUM | .ai/research/mrp-v2-planner-ui.md | 133 | ### 10. Regenerative-only, made fast + event-driven — net-change is being abandoned | COMMENT |
| MEDIUM | .ai/plans/2026-08-19-schedule-in-process-node.md | 55 | ## Task 4 — Edge function delegates to the shared orchestration | COMMENT |
| MEDIUM | .ai/plans/2026-07-10-geometry-rs-implementation.md | 210 | ## Task 6: Planner scaffolding — constants, `Component`, world-part collection | COMMENT |
| MEDIUM | .ai/plans/2026-07-10-geometry-rs-implementation.md | 485 | ## Task 19: `plan_step` orchestration + plan.json v3 output parity | COMMENT |
| MEDIUM | …ns/2026-09-17-viewer-installed-component-visibility.md | 503 | # Manual/agentic verification. Record the outcome of each of the 7 checks above | COMMENT |
| MEDIUM | .ai/plans/2026-07-02-bank-reconciliation-phase-1.md | 1410 | ## Task 12: `import-bank-statement` edge function — scaffold + CSV parser | COMMENT |
| MEDIUM | .ai/plans/2026-08-28-unified-sso-login-fork.md | 149 | ## Notes / guardrails | COMMENT |
| MEDIUM | .ai/plans/2026-07-04-avalara-integration-foundation.md | 269 | - E-invoicing flows (#1054: document building, submission orchestration, status jobs, mandate UX). | CODE |
| MEDIUM | .ai/plans/2026-08-22-ee-planning-package-extraction.md | 243 | ## Task 5: Extract MRP orchestration into `planning/mrp/mrp.ts` | COMMENT |
| MEDIUM | .ai/plans/2026-07-30-workflows-engine.md | 879 | ## Task 14: Engine orchestration | COMMENT |
| MEDIUM | .ai/specs/2026-07-04-avalara-integration-foundation.md | 164 | - **E-invoicing flows** (#1054 / `.ai/specs/2026-07-04-e-invoicing.md`): document building (UBL/CII), submission orchest | CODE |
| MEDIUM | .ai/specs/2026-07-15-assembler-model-pipeline.md | 111 | ### Artifact tiers (app orchestrates 3 focused actions) | COMMENT |
| MEDIUM | …026-09-22-revenue-recognition-rentals-and-contracts.md | 719 | - [x] **v1 fleet scope: serialized units only?** — **Answer (Brad, 2026-09-22):** "that makes sense" + asked for the pro | CODE |
| MEDIUM | .ai/runs/2026-07-10-geometry-rust-rewrite.md | 544 | ## Part 4: Inngest path — event-driven completion + offload (2026-07-11) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | .ai/scripts/record-switch-sweep.py | 94 | main.querySelectorAll("input,textarea,select").forEach(e=>{ const n=e.name||e.getAttribute("aria-label")||e.placeholder| | CODE |
| HIGH⚡ | .ai/scripts/record-switch-sweep.py | 95 | main.querySelectorAll("[contenteditable=true],.ProseMirror").forEach(e=>f.push("editor="+e.textContent.trim().slice(0,16 | CODE |
| HIGH⚡ | .ai/scripts/record-switch-sweep.py | 96 | main.querySelectorAll("h1,h2,h3,[role=tab][aria-selected=true]").forEach(e=>f.push("heading="+e.textContent.trim().slice | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | crates/converter/tests/tessellation_smoothness.rs | 117 | // count, so ~340 tris. Floor well under that to stay robust to OCCT | COMMENT |
| MEDIUM | crates/planner/tests/synthetic_plan.rs | 8 | //! output. Kept to robust invariants that any correct plan must satisfy, so | COMMENT |
| MEDIUM | …ploying/simple-docker-caddy/postgres/02-performance.sh | 9 | # Guidance (Supabase Postgres best practices): | COMMENT |
| MEDIUM | packages/viewer/src/AssemblyPlayer.tsx | 1750 | // each cycle ends on a brief settled pause instead of a seamless repeat. | COMMENT |
| MEDIUM | .ai/scripts/install-skills.sh | 14 | # install-skills.sh --clean # remove all copied harness dirs | COMMENT |
| MEDIUM | apps/mes/app/components/AssemblyView.tsx | 404 | // Numbered pins overlaid on a reference image for the operator. Absolutely positioned by | COMMENT |
| MEDIUM | apps/erp/app/components/SlidesEditor.tsx | 147 | // Read-only numbered pin overlay for an annotated image slide. Absolutely | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 20 | # Step 1: Navigate to form | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 24 | # Step 2: Snapshot to discover form elements | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 29 | # Step 3: Fill form fields (customize these refs based on snapshot output) | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 46 | # Step 4: Wait for submission | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 50 | # Step 5: Verify result | COMMENT |
| LOW | …est/functions/integrations/sync-external-accounting.ts | 79 | // Step 1: resolve each entity's effective direction and enqueue one | COMMENT |
| LOW | …est/functions/integrations/sync-external-accounting.ts | 215 | // Step 2: drain — claim Pending operations (including UI retries and | COMMENT |
| LOW | packages/jobs/src/inngest/functions/events/sync.ts | 118 | // Step 1: reconcile the hinted entities (checkpointed so a retry | COMMENT |
| LOW | packages/jobs/src/inngest/functions/events/sync.ts | 253 | // Step 2: drain — claim Pending operations (including UI retries and | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | contrib/deploying/simple-docker-caddy/deploy.sh | 8 | # Usage: | COMMENT |
| LOW | scripts/restore-database.sh | 14 | # Usage: | COMMENT |
| LOW | .github/scripts/setup-agent-labels.sh | 10 | # Usage: | COMMENT |
| LOW | .ai/scripts/install-skills.sh | 9 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …building/examples/upload-3d-model/app/entry.server.tsx | 6 | export default function handleRequest( | CODE |
| LOW | …lding/examples/quote-configurator/app/entry.server.tsx | 6 | export default function handleRequest( | CODE |
| LOW | apps/mes/app/entry.server.tsx | 168 | export default function handleRequest( | CODE |
| LOW | apps/academy/app/entry.server.tsx | 20 | export default function handleRequest( | CODE |
| LOW | apps/starter/app/entry.server.tsx | 20 | export default function handleRequest( | CODE |
| LOW | apps/erp/app/entry.server.tsx | 180 | export default function handleRequest( | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/app/api/data/page.tsx | 34 | CARBON_DATA_API_KEY=<your-api-key>`; | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .ai/scripts/record-switch-sweep.py | 123 | except Exception: | CODE |
| MEDIUM | .ai/scripts/record-switch-sweep.py | 108 | def browser(*args, timeout=60): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .claude/skills/root-cause/references/find-polluter.sh | 44 | # Check if pollution appeared | COMMENT |