Repository Analysis

EpicenterHQ/epicenter

Open-source, local-first apps.

6.8 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of EpicenterHQ/epicenter, a TypeScript project with 4,698 GitHub stars. SynthScan v2.0 examined 506,338 lines of code across 3324 source files, recording 1169 pattern matches distributed across 14 syntactic categories. The overall adjusted score of 6.8 places this repository in the Low AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

6.8
Adjusted Score
6.8
Raw Score
100%
Time Factor
2026-07-14
Last Push
4.7K
Stars
TypeScript
Language
506.3K
Lines of Code
3.3K
Files
1.2K
Pattern Hits
2026-07-14
Scan Date
0.02
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 64HIGH 3MEDIUM 659LOW 443

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 1169 distinct pattern matches across 14 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Decorative Section Separators640 hits · 2041 pts
SeverityFileLineSnippetContext
MEDIUM…s/20260109T140700-opencode-integration-architecture.md283 // ═══════════════════════════════════════════════════════════COMMENT
MEDIUM…s/20260109T140700-opencode-integration-architecture.md285 // ═══════════════════════════════════════════════════════════COMMENT
MEDIUM…s/20260109T140700-opencode-integration-architecture.md354 // ═══════════════════════════════════════════════════════════COMMENT
MEDIUM…s/20260109T140700-opencode-integration-architecture.md356 // ═══════════════════════════════════════════════════════════COMMENT
MEDIUM…cs/20260131T020000-dynamic-workspace-simplification.md75 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUM…cs/20260131T020000-dynamic-workspace-simplification.md77 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUM…cs/20260131T020000-dynamic-workspace-simplification.md91 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUM…cs/20260131T020000-dynamic-workspace-simplification.md93 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUM…cs/20260131T020000-dynamic-workspace-simplification.md107 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUM…cs/20260131T020000-dynamic-workspace-simplification.md109 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUM…cs/20260131T020000-dynamic-workspace-simplification.md123 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUM…cs/20260131T020000-dynamic-workspace-simplification.md125 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUM…523T000000-greenfield-workspace-encryption-boundary.md423// ─── BEFORE (browser, fuji) ─────────────────────────────────────────────COMMENT
MEDIUM…523T000000-greenfield-workspace-encryption-boundary.md433// ─── AFTER (browser, fuji) ──────────────────────────────────────────────COMMENT
MEDIUM…523T000000-greenfield-workspace-encryption-boundary.md444// ─── BEFORE (daemon, fuji) ──────────────────────────────────────────────COMMENT
MEDIUM…523T000000-greenfield-workspace-encryption-boundary.md460// ─── AFTER (daemon, fuji) ───────────────────────────────────────────────COMMENT
MEDIUMspecs/20260123T102500-single-workspace-architecture.md630// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMspecs/20260123T102500-single-workspace-architecture.md632// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMspecs/20260123T102500-single-workspace-architecture.md637// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMspecs/20260123T102500-single-workspace-architecture.md639// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMspecs/20260123T102500-single-workspace-architecture.md650// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMspecs/20260123T102500-single-workspace-architecture.md652// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMspecs/20260123T102500-single-workspace-architecture.md669// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMspecs/20260123T102500-single-workspace-architecture.md671// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMspecs/20260123T102500-single-workspace-architecture.md679// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMspecs/20260123T102500-single-workspace-architecture.md681// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMspecs/20260217T094400-table-level-document-api.md323// ── Single doc table ────────────────────────────────────────COMMENT
MEDIUMspecs/20260217T094400-table-level-document-api.md338// ── Multi-doc table ─────────────────────────────────────────COMMENT
MEDIUMspecs/20260217T094400-table-level-document-api.md345// ── GUID-only access (no row needed) ────────────────────────COMMENT
MEDIUMspecs/20260217T094400-table-level-document-api.md348// ── Destructure for reuse ───────────────────────────────────COMMENT
MEDIUMspecs/20260217T094400-table-level-document-api.md356// ── Row deletion triggers automatic cleanup ─────────────────COMMENT
MEDIUMspecs/20260217T094400-table-level-document-api.md361// ── Table without docs: .docs is undefined ─────────────────COMMENT
MEDIUMspecs/y-meta-stores.md149 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md151 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md165 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md167 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md177 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md179 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md190 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md192 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md197 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md199 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md357 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md359 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md380 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md382 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md391 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md393 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md402 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/y-meta-stores.md404 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/20260202T162500-reddit-workspace-migration.md410// ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/20260202T162500-reddit-workspace-migration.md412// ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/20260202T162500-reddit-workspace-migration.md421 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMspecs/20260202T162500-reddit-workspace-migration.md423 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMspecs/20260202T162500-reddit-workspace-migration.md1182 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/20260202T162500-reddit-workspace-migration.md1184 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/20260202T162500-reddit-workspace-migration.md1188 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/20260202T162500-reddit-workspace-migration.md1190 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/20260202T162500-reddit-workspace-migration.md1195 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUMspecs/20260202T162500-reddit-workspace-migration.md1197 // ═══════════════════════════════════════════════════════════════════════════COMMENT
580 more matches not shown…
Hallucination Indicators64 hits · 732 pts
SeverityFileLineSnippetContext
CRITICALspecs/20260420T152026-definedocument-primitive.md283// Usage (was workspace.tables.notes.documents.body.get(id))COMMENT
CRITICALspecs/20260420T152026-definedocument-primitive.md354- Update consumers: `workspace.tables.X.documents.Y.get(id)` → `<exportedFactory>.get(id)`.CODE
CRITICALspecs/20260420T152026-definedocument-primitive.md399Now that `defineDocument` exposes the construction closure, fuji's entry doc becomes a separate module (`apps/fuji/src/lCODE
CRITICALspecs/20260420T230100-collapse-document-framework.md240ws.tables.entries.documents.content.get(rowId) // returns handle with .bind(), .read(), .write()CODE
CRITICALspecs/20260420T230100-collapse-document-framework.md345### Downstream callers using `ws.tables.foo.documents.bar.read(id)`COMMENT
CRITICALspecs/20260420T230100-collapse-document-framework.md347Old call: `await ws.tables.entries.documents.content.read(rowId)` (framework-wired sugar).CODE
CRITICALspecs/20260217T094400-table-level-document-api.md327 const ydoc = await client.tables.files.docs.content.open(result.row);CODE
CRITICALspecs/20260217T094400-table-level-document-api.md334 const text = await client.tables.files.docs.content.read(result.row);CODE
CRITICALspecs/20260217T094400-table-level-document-api.md335 await client.tables.files.docs.content.write(result.row, 'new content');CODE
CRITICALspecs/20260217T094400-table-level-document-api.md341 const bodyDoc = await client.tables.notes.docs.body.open(note.row);CODE
CRITICALspecs/20260217T094400-table-level-document-api.md342 const coverDoc = await client.tables.notes.docs.cover.open(note.row);CODE
CRITICALspecs/20260217T094400-table-level-document-api.md346const ydoc = await client.tables.files.docs.content.open(fileId);CODE
CRITICALspecs/20260217T094400-table-level-document-api.md584client.tables.files.docs.content.open(row);CODE
CRITICALspecs/20260217T094400-table-level-document-api.md585client.tables.files.docs.content.read(row);CODE
CRITICALspecs/20260217T094400-table-level-document-api.md586client.tables.files.docs.content.write(row, text);CODE
CRITICALspecs/20260217T094400-table-level-document-api.md587client.tables.files.docs.content.destroy(row);CODE
CRITICAL.agents/skills/yjs/SKILL.md202using messages = workspace.tables.conversations.docs.messages.open(id);CODE
CRITICAL…gents/skills/workspace-api/references/primitive-api.md58using handle = workspace.tables.files.docs.content.open(fileId);CODE
CRITICAL…gents/skills/workspace-api/references/primitive-api.md68const guid = workspace.tables.files.docs.content.guid(fileId);CODE
CRITICAL…gents/skills/workspace-api/references/primitive-api.md197using handle = workspace.tables.files.docs.content.open(fileId);CODE
CRITICAL…gents/skills/workspace-api/references/primitive-api.md211using handle = workspace.tables.files.docs.content.open(fileId);CODE
CRITICALdocs/CONTEXT.md101 through `ws.tables.X.docs.field.open(rowId)`. The workspace owns guid derivation.CODE
CRITICAL…adr/0005-child-docs-are-bound-through-the-workspace.md19and reached through a bound accessor, `ws.tables.X.docs.field.open(rowId)`. TheCODE
CRITICALpackages/workspace/README.md216`workspace.tables.items.docs.body.open(itemId)`. Two tabs of the same principal shareCODE
CRITICALpackages/workspace/README.md496 const handle = workspace.tables.files.docs.content.open(fileId);CODE
CRITICALpackages/workspace/README.md639reader derives the same guid with `workspace.tables.files.docs.content.guid(id)`CODE
CRITICALpackages/workspace/README.md678 using handle = workspace.tables.files.docs.content.open('file-1');CODE
CRITICALpackages/workspace/README.md1337using handle = workspace.tables.files.docs.content.open('file-1');CODE
CRITICALpackages/workspace/src/index.ts34 * using body = workspace.tables.posts.docs.body.open('post-1');COMMENT
CRITICALpackages/workspace/src/document/table.ts474 * handle (`workspace.tables.notes.docs.content.open(rowId)`), so field namesCOMMENT
CRITICAL…kspace/src/document/attach-indexed-db-eviction.test.ts128 const messages = workspace.tables.conversations.docs.messages.open('c1');CODE
CRITICALpackages/workspace/src/document/workspace.test.ts140 const body = workspace.tables.notes.docs.body.open('note-1');CODE
CRITICALpackages/workspace/src/document/workspace.test.ts170 using body = workspace.tables.notes.docs.set.open('note-1');CODE
CRITICALpackages/workspace/src/document/workspace.test.ts186 const a = workspace.tables.notes.docs.body.open('note-1');CODE
CRITICALpackages/workspace/src/document/workspace.test.ts187 const b = workspace.tables.notes.docs.body.open('note-1');CODE
CRITICALpackages/workspace/src/document/workspace.test.ts209 const a = workspace.tables.notes.docs.body.open('note-1');CODE
CRITICALpackages/workspace/src/document/workspace.test.ts211 const b = workspace.tables.notes.docs.body.open('note-1');CODE
CRITICALpackages/workspace/src/document/workspace.test.ts232 const one = workspace.tables.notes.docs.body.open('note-1');CODE
CRITICALpackages/workspace/src/document/workspace.test.ts233 const two = workspace.tables.notes.docs.body.open('note-2');CODE
CRITICALpackages/workspace/src/document/workspace.test.ts275 workspace.tables.notes.docs.body.open('note-1');CODE
CRITICALpackages/workspace/src/document/workspace.test.ts315 using body = workspace.tables.notes.docs.body.open('note-1');CODE
CRITICAL…s/workspace/src/document/bun-local-persistence.test.ts36 const body = workspace.tables.notes.docs.body.open('note-1');CODE
CRITICAL…s/workspace/src/document/bun-local-persistence.test.ts51 const body = workspace.tables.notes.docs.body.open('note-1');CODE
CRITICAL…s/workspace/src/document/bun-local-persistence.test.ts71 const body = workspace.tables.notes.docs.body.open('note-2');CODE
CRITICAL…s/workspace/src/document/bun-local-persistence.test.ts84 const reopenedBody = reopened.tables.notes.docs.body.open('note-2');CODE
CRITICALpackages/workspace/src/document/workspace-mount.test.ts189 const expectedGuid = runtime.tables.conversations.docs.messages.guid('c1');CODE
CRITICALpackages/workspace/src/document/connect.test.ts68 const body = bundle.tables.notes.docs.body.open('n1');CODE
CRITICALpackages/workspace/src/document/connect.test.ts74 expect(names).toContain(bundle.tables.notes.docs.body.guid('n1'));CODE
CRITICALpackages/workspace/src/document/connect.test.ts104 const body = bundle.tables.notes.docs.body.open('n2');CODE
CRITICALpackages/server/src/middleware/require-auth.ts99 user = await c.var.db.query.user.findFirst({CODE
CRITICALpackages/filesystem/src/file-system.test.ts40 guid: ws.tables.files.docs.content.guid(fileId),CODE
CRITICALpackages/skills/src/browser.ts55 guid: doc.tables.skills.docs.instructions.guid(skillId),CODE
CRITICALpackages/skills/src/browser.ts78 guid: doc.tables.references.docs.content.guid(referenceId),CODE
CRITICALpackages/skills/src/browser.ts133 clearDocument(doc.tables.skills.docs.instructions.guid(skill.id)),CODE
CRITICALpackages/skills/src/browser.ts140 doc.tables.references.docs.content.guid(reference.id),CODE
CRITICAL…n-in-migration/create-sign-in-migration.svelte.test.ts169 const body = bundle.tables.notes.docs.body.open(options.note.id);CODE
CRITICAL…n-in-migration/create-sign-in-migration.svelte.test.ts187 const messages = bundle.tables.conversations.docs.messages.open(CODE
CRITICALapps/honeycrisp/README.md31Each note's body is a `Y.XmlFragment` in the `notes.body` child doc declared by `honeycrispWorkspace`. The browser openeCODE
CRITICALapps/honeycrisp/README.md70Each note's body lives in a separate Y.Doc opened by `honeycrisp.tables.notes.docs.body.open(noteId)`. The handle yieldsCODE
CRITICALapps/opensidian/src/routes/about/+page.svelte77 using handle = workspace.tables.files.docs.content.open(fileId);CODE
4 more matches not shown…
Structural Annotation Overuse141 hits · 258 pts
SeverityFileLineSnippetContext
LOW…/20251104T000000 simplify-markdown-index-signatures.md57### Step 1: Create explicit typesCOMMENT
LOW…/20251104T000000 simplify-markdown-index-signatures.md69### Step 2: Update function signaturesCOMMENT
LOWspecs/20251027T140000 db-phase-2-file-system.md175### Step 1: Create File System DB ImplementationCOMMENT
LOWspecs/20251027T140000 db-phase-2-file-system.md294### Step 2: Modify Recorder ServicesCOMMENT
LOWspecs/20251027T140000 db-phase-2-file-system.md376### Step 3: Update DB InterfaceCOMMENT
LOWspecs/20251027T140000 db-phase-2-file-system.md407### Step 4: File OperationsCOMMENT
LOWspecs/20251027T140000 db-phase-2-file-system.md434### Step 5: Migration StrategyCOMMENT
LOWspecs/20260319T140004-autumn-phase4-storage-billing.md123### Step 1: Add storage feature to `autumn.config.ts`COMMENT
LOWspecs/20260319T140004-autumn-phase4-storage-billing.md129### Step 2: Create storage aggregation functionCOMMENT
LOWspecs/20260319T140004-autumn-phase4-storage-billing.md175### Step 3: Wire storage sync into existing flowsCOMMENT
LOWspecs/20260319T140004-autumn-phase4-storage-billing.md192### Step 4: Gate workspace/document creationCOMMENT
LOWspecs/20260319T140004-autumn-phase4-storage-billing.md212### Step 5: Push config and testCOMMENT
LOWspecs/20251027T120000 db-service-platform-split.md69### Step 1: Create Type DefinitionsCOMMENT
LOWspecs/20251027T120000 db-service-platform-split.md158### Step 2: Rename and Refactor Dexie ImplementationCOMMENT
LOWspecs/20251027T120000 db-service-platform-split.md186### Step 3: Create Desktop ImplementationCOMMENT
LOWspecs/20251027T120000 db-service-platform-split.md207### Step 4: Update Main IndexCOMMENT
LOWspecs/20251027T120000 db-service-platform-split.md240### Step 5: Update All ImportsCOMMENT
LOWspecs/20251027T120000 db-service-platform-split.md251### Step 6: TestingCOMMENT
LOW…ecs/20260223T102800-network-topology-execution-plan.md10### Step 1: Hub & Local Server Composition SplitCOMMENT
LOW…ecs/20260223T102800-network-topology-execution-plan.md18### Step 2: Better Auth PluginCOMMENT
LOW…ecs/20260223T102800-network-topology-execution-plan.md26### Step 3: Key Management on HubCOMMENT
LOW…ecs/20260223T102800-network-topology-execution-plan.md36### Step 4: OLLAMA_HOST ConfigurationCOMMENT
LOW…ecs/20260223T102800-network-topology-execution-plan.md40### Step 5: Local Server Auth BoundaryCOMMENT
LOW…ecs/20260223T102800-network-topology-execution-plan.md47### Step 6: Client Hub URL ConfigurationCOMMENT
LOW…ecs/20260223T102800-network-topology-execution-plan.md53### Step 7: AI Proxy for OpenCodeCOMMENT
LOW…ecs/20260223T102800-network-topology-execution-plan.md59### Step 8: Server Discovery via Yjs AwarenessCOMMENT
LOW…ecs/20260223T102800-network-topology-execution-plan.md66### Step 9: OpenCode IntegrationCOMMENT
LOW…ecs/20260124T163000-developer-experience-schema-api.md824// Step 1: Define migrationCOMMENT
LOW…ecs/20260124T163000-developer-experience-schema-api.md840// Step 2: Run migration (creates new epoch)COMMENT
LOWspecs/20260319T140001-autumn-phase1-ai-chat-gating.md38### Step 1: Add dependenciesCOMMENT
LOWspecs/20260319T140001-autumn-phase1-ai-chat-gating.md48### Step 2: Create `apps/api/autumn.config.ts`COMMENT
LOWspecs/20260319T140001-autumn-phase1-ai-chat-gating.md157### Step 3: Add `AUTUMN_SECRET_KEY` to wranglerCOMMENT
LOWspecs/20260319T140001-autumn-phase1-ai-chat-gating.md170### Step 4: Create `apps/api/src/autumn.ts`COMMENT
LOWspecs/20260319T140001-autumn-phase1-ai-chat-gating.md193### Step 5: Create `apps/api/src/model-classes.ts`COMMENT
LOWspecs/20260319T140001-autumn-phase1-ai-chat-gating.md233### Step 6: Create `apps/api/src/ensure-autumn-customer.ts`COMMENT
LOWspecs/20260319T140001-autumn-phase1-ai-chat-gating.md275### Step 7: Modify `apps/api/src/ai-chat.ts`COMMENT
LOWspecs/20260319T140001-autumn-phase1-ai-chat-gating.md443### Step 8: Wire middleware in `apps/api/src/app.ts`COMMENT
LOWspecs/20260319T140001-autumn-phase1-ai-chat-gating.md484### Step 9: Push config and smoke testCOMMENT
LOWspecs/20260425T180002-orchestration-tracker.md70### Step 5: execute the combined PR-D + PR-E branchCOMMENT
LOW…ecs/20260107T114209-cell-level-crdt-merging.handoff.md83### Step 1: Update Storage StructureCOMMENT
LOW…ecs/20260107T114209-cell-level-crdt-merging.handoff.md91### Step 2: Update CRUD MethodsCOMMENT
LOW…ecs/20260107T114209-cell-level-crdt-merging.handoff.md145### Step 3: Update ObserverCOMMENT
LOW…ecs/20260107T114209-cell-level-crdt-merging.handoff.md153### Step 4: Run TestsCOMMENT
LOW…ecs/20260107T114209-cell-level-crdt-merging.handoff.md162### Step 5: Verify ProvidersCOMMENT
LOWspecs/20251128T100000-zod-v4-migration.md129### Step 1: Find All Zod UsageCOMMENT
LOWspecs/20251128T100000-zod-v4-migration.md143### Step 2: Update Error MessagesCOMMENT
LOWspecs/20251128T100000-zod-v4-migration.md150### Step 3: Update String ValidatorsCOMMENT
LOWspecs/20251128T100000-zod-v4-migration.md157### Step 4: Update Object MethodsCOMMENT
LOWspecs/20251128T100000-zod-v4-migration.md165### Step 5: Update Error HandlingCOMMENT
LOWspecs/20251128T100000-zod-v4-migration.md172### Step 6: Update Function SchemasCOMMENT
LOWspecs/20251128T100000-zod-v4-migration.md176### Step 7: Test ThoroughlyCOMMENT
LOWspecs/20260107T194104-action-system-redesign.md63// Step 1: Define workspaceCOMMENT
LOWspecs/20260107T194104-action-system-redesign.md71// Step 2: Create client with capabilitiesCOMMENT
LOWspecs/20260107T194104-action-system-redesign.md74// Step 3: Define actions (wrapping client methods)COMMENT
LOWspecs/20260107T194104-action-system-redesign.md102// Step 4: Pass to server and/or CLICOMMENT
LOWspecs/20251128T110000-bits-ui-migration.md129### Step 1: Update Catalog VersionCOMMENT
LOWspecs/20251128T110000-bits-ui-migration.md136### Step 2: Find All Slider ComponentsCOMMENT
LOWspecs/20251128T110000-bits-ui-migration.md144### Step 3: Fix Type ErrorsCOMMENT
LOWspecs/20251128T110000-bits-ui-migration.md183### Step 4: Run Type CheckCOMMENT
LOWspecs/20251128T110000-bits-ui-migration.md191### Step 5: Visual TestingCOMMENT
81 more matches not shown…
Hyper-Verbose Identifiers145 hits · 146 pts
SeverityFileLineSnippetContext
LOWspecs/20260104T220141-inline-service-factories.md106export function createOpenaiTranscriptionService() {CODE
LOWspecs/20260104T220141-inline-service-factories.md187export function createAutostartServiceDesktop() {CODE
LOWspecs/20251227T000000-api-namespace-restructure.md141function createWorkspaceSyncPlugin(workspaceId: string, getDoc: () => Y.Doc | undefined) {CODE
LOWspecs/20251213T231125-multi-device-tab-sync.md137export async function generateDefaultDeviceName(): Promise<string> {CODE
LOW…040000-machine-auth-adopt-better-auth-device-client.md109export function createMachineAuthTransport({ fetch = globalThis.fetch } = {}) {CODE
LOW…01T120000-simple-definition-first-workspace.handoff.md103export async function createWorkspaceDefinition(input: ...): Promise<WorkspaceDefinition>CODE
LOW…01T120000-simple-definition-first-workspace.handoff.md106export async function updateWorkspaceDefinition(id: string, updates: ...): Promise<WorkspaceDefinition | null>CODE
LOW…execution-prompt-device-actions-and-remote-dispatch.md52export function getOrCreateDeviceId(storage: SimpleStorage): string {CODE
LOWspecs/20260319T140001-autumn-phase1-ai-chat-gating.md258export function createEnsureAutumnCustomer(autumn: Autumn) {CODE
LOWspecs/20260525T220511-workspace-primitive-bundle.md204export function createHoneycrispWorkspace(opts: { keyring: () => Keyring }) {CODE
LOWspecs/20260525T220511-workspace-primitive-bundle.md220export function createWhisperingWorkspace() {CODE
LOWspecs/20251012T000000 recording-method-clarity.md164export function hasNavigatorLocalTranscriptionIssue({CODE
LOW…260502T022408-browser-document-contract-clean-break.md159export function createEntryContentDocuments({CODE
LOW…260502T022408-browser-document-contract-clean-break.md636export function createFileContentDocuments({CODE
LOW…40200-dynamic-workspace-architecture-simplification.md95export function validateWorkspaceDefinition(CODE
LOW…260131T110000-auto-injected-version-discriminant-v2.md499function createVersionedUnionSchema(CODE
LOW…60315T070000-query-layer-switch-to-workspace-tables.md180function createWorkspaceRecordings() {CODE
LOW…-browser-document-family-identity-and-sync-topology.md59async function clearFileContentLocalData() {CODE
LOWspecs/20260501T013208-auth-snapshot-api.md341function persistedStateSessionStorage(CODE
LOWspecs/20260203T110000-static-workspace-registry.md124export async function loadStaticWorkspacesRegistry(): Promise<StaticWorkspacesRegistry> {CODE
LOWspecs/20260203T110000-static-workspace-registry.md1060 function createAddStaticWorkspaceDialogState() {CODE
LOWspecs/20250118T192845-error-handling-pattern.md31export function createManualRecorderService() {CODE
LOWspecs/20260506T010807-signed-in-owns-the-workspace.md129function createEntriesStateForFuji() {CODE
LOWspecs/20260511T115110-remote-storage-control-plane.md333async function recordMeasurementIfActive(CODE
LOWspecs/20260511T115110-remote-storage-control-plane.md350async function reactivateRoomForRecreate(CODE
LOWspecs/20260522T220000-api-runtime-portability.md352export function createDurableObjectUpdateLog(sql: SqlStorage) {CODE
LOW…251214T180000-moonshine-addition-whispercpp-disable.md175export function createMoonshineTranscriptionService() {CODE
LOW…kills/error-handling/references/real-world-examples.md13async function getStreamForDeviceIdentifier(CODE
LOW.agents/skills/control-flow/SKILL.md31export async function checkFfmpegRecordingMethodCompatibility() {CODE
LOW…ces-layer/references/service-implementation-pattern.md77export function createNavigatorRecorderService(): RecorderService {CODE
LOWdocs/patterns/factory-function-pattern.md103export function createAssistantPasswordUtils({CODE
LOWdocs/patterns/factory-function-pattern.md138export function createAssistantPasswordUtils({CODE
LOWdocs/articles/tokens-dont-belong-in-urls.md30function withBearerFromSubprotocol(original: Headers): Headers {CODE
LOW…-tauri-is-both-the-namespace-and-the-platform-check.md183export function syncIconWithRecorderState() {CODE
LOW…-tauri-is-both-the-namespace-and-the-platform-check.md209export function syncIconWithRecorderState(tauri: Tauri) {CODE
LOW…ctory-return-types-should-point-back-to-the-factory.md101export function createPlaintextMachineCredentialSecretStorage(): MachineCredentialSecretStorage {CODE
LOW…ctory-return-types-should-point-back-to-the-factory.md105export function createKeychainMachineCredentialSecretStorage(): MachineCredentialSecretStorage {CODE
LOWdocs/articles/date-with-timezone-implementation.md112function normalizeToDateTimeWithTimezone(CODE
LOW…s/articles/svelte-function-bindings-readonly-stores.md92function rebuildOutputOptionsFromSelections() {CODE
LOWdocs/articles/two-schema-libraries-on-purpose.md79export function standardSchemaToJsonSchema(CODE
LOW…163000-blob-store-factory-zoom-in-on-what-is-shared.md71function createFileSystemBlobStore(basePath: string): BlobStore {CODE
LOWdocs/articles/sync-client-initialization.md432export function createIndexedDBPersistence({ ydoc, id }) {CODE
LOW…les/parameter-destructuring-over-body-destructuring.md91export function createDeepgramTranscriptionService({CODE
LOW…rchitecture/dependency-injection-async-sync-pattern.md17function hasLocalTranscriptionCompatibilityIssue(): boolean {CODE
LOW…rchitecture/dependency-injection-async-sync-pattern.md85export function hasLocalTranscriptionCompatibilityIssue({CODE
LOWpackages/encryption/src/secrets.ts59function assertNoDuplicateVersions(rootKeyring: RootKeyring): void {CODE
LOWpackages/encryption/src/keys.ts55export function assertEncryptionKeyVersion(version: number): void {CODE
LOWpackages/encryption/src/crypto.test.ts33async function deriveWorkspaceKeyWithWebCrypto(CODE
LOWpackages/ui/src/chart/chart-utils.ts21export function getPayloadConfigFromPayload(CODE
LOWpackages/ui/src/emoji-picker/emoji-picker.svelte.ts237export function useEmojiPickerSkinToneSelector(props: EmojiPickerSkinProps) {CODE
LOWpackages/svelte-utils/src/persisted-state.svelte.ts172 function setAndPersist(nextValue: StandardSchemaV1.InferOutput<TSchema>) {CODE
LOWpackages/svelte-utils/src/auth.svelte.ts82export function createSameOriginCookieAuth(CODE
LOWpackages/svelte-utils/src/auth.svelte.ts131export function createHostedBrowserRedirectAuth({CODE
LOWpackages/auth/src/create-oauth-app-auth.ts222 async function verifyPersistedAuthForNetwork(CODE
LOWpackages/auth/src/persisted-auth-storage.ts61export function createWebStoragePersistedAuthStorage({CODE
LOWpackages/auth/src/persisted-auth-storage.ts88export function createSerializedPersistedAuthStorage({CODE
LOWpackages/auth/src/oauth-token-endpoints.ts105export async function refreshOAuthTokenWithEndpoint({CODE
LOWpackages/auth/src/oauth-token-endpoints.ts152export async function revokeOAuthRefreshTokenWithEndpoint({CODE
LOWpackages/auth/src/same-origin-cookie-auth.ts84export function createSameOriginCookieAuth({CODE
LOWpackages/auth/src/oauth-launchers/launchers.ts19export function createBrowserOAuthLauncher({CODE
85 more matches not shown…
Over-Commented Block136 hits · 134 pts
SeverityFileLineSnippetContext
LOWbunfig.toml1[install]COMMENT
LOW…ecs/20260524T021140-asset-visibility-and-client-sdk.md121COMMENT
LOW…ecs/20260524T021140-asset-visibility-and-client-sdk.md141// application/json:COMMENT
LOW…cs/20260702T211500-local-mail-phase-3-write-through.md141// db.ts: the fold, same semantics as applyHistoryBatch's labelPatch branchCOMMENT
LOW.agents/skills/diagnose/scripts/hitl-loop.template.sh1#!/usr/bin/env bashCOMMENT
LOWdocs/articles/typescript-inference-pattern.ts1// ============================================================================COMMENT
LOWdocs/articles/typescript-inference-pattern.ts81 // transformed is 'number' ✅COMMENT
LOWdocs/articles/typescript-inference-pattern.ts121 },COMMENT
LOWdocs/articles/typescript-inference-pattern.ts201COMMENT
LOWscripts/generate-spec-history.ts1// Regenerates docs/spec-history.md from git history.COMMENT
LOWscripts/check-doc-hygiene.ts1// Doc-hygiene check. Deterministic, fixable-in-loop, CI-optional.COMMENT
LOWscripts/check-doc-hygiene.ts21// deleted, i.e. the work landed, so the ADR should be Accepted (or, if theCOMMENT
LOWpackages/svelte-utils/src/persisted-state.svelte.ts141 function readFromStorage() {COMMENT
LOWpackages/auth/src/instance-token-auth.ts101 // client's synchronous boot from its persisted grant. The identity is knowableCOMMENT
LOW…rkspace/specs/20260122T103629-namespaced-helper-api.md61// CALLABLE - PRIMARY ACCESSCOMMENT
LOW…rkspace/specs/20260122T103629-namespaced-helper-api.md141### KV Helper (`createKv`)COMMENT
LOW…ckages/workspace/src/config/epicenter-config-source.ts1export const EPICENTER_CONFIG_FILENAME = 'epicenter.config.ts';COMMENT
LOW…pace/src/shared/y-keyvalue/y-keyvalue-lww-encrypted.ts441 // 2. Ciphertext at a non-current version that IS in the keyring →COMMENT
LOWpackages/workspace/src/document/table.ts1041 // `current` is already the latest-version user-facing row (get()COMMENT
LOWpackages/workspace/src/document/attach-indexed-db.ts41 // `attach-local-storage-corrupt-load.test.ts` is the regression gate: it goesCOMMENT
LOWpackages/workspace/src/document/attach-indexed-db.ts81COMMENT
LOW…ace/src/document/materializer/markdown/git-autosave.ts1import { type FSWatcher, watch } from 'node:fs';COMMENT
LOWpackages/server/src/bun.ts41// `resolveBearerPrincipal` is the seam the attach mount closes over; the operatorCOMMENT
LOWpackages/server/src/bun.ts61 type HostDirectoryReader,COMMENT
LOWpackages/server/src/bun.ts81// Merge several Bun `WebSocketHandler`s onto one `Bun.serve`, dispatching eachCOMMENT
LOWpackages/server/src/server-bindings.ts41COMMENT
LOWpackages/server/src/index.ts21// The AttachRelay (ADR-0115): the endpoint-addressed relay that forwards liveCOMMENT
LOWpackages/server/src/index.ts41// / `assertStrongToken`) live in `@epicenter/auth`.COMMENT
LOWpackages/server/src/index.ts61// `@epicenter/constants/oauth-seed` (beside `buildTrustedOAuthClients`, itsCOMMENT
LOWpackages/server/src/index.ts81export { CloudAuthBindings, mountCloudAuth } from './mount-cloud-auth.js';COMMENT
LOWpackages/server/src/index.ts101// Parent app. Wires the portable per-request lifecycle (origin + trust, CORS,COMMENT
LOWpackages/server/src/auth/create-auth.ts141 }COMMENT
LOWpackages/server/src/auth/create-auth.ts161 // caller of `/auth/sign-in/social` is the API-hosted Svelte sign-in page,COMMENT
LOWpackages/server/src/auth/create-auth.ts181 ...(providers.github ? { github: providers.github } : {}),COMMENT
LOWpackages/server/src/auth/create-auth.ts221 // travel cross-site, and there is no cross-subdomain option by designCOMMENT
LOWpackages/server/src/auth/create-auth.ts241 //COMMENT
LOWpackages/server/src/auth/base-config.ts61 // Email/password is intentionally disabled. The social IdPs are the onlyCOMMENT
LOWpackages/server/src/auth/base-config.ts81 accountLinking: {COMMENT
LOWpackages/server/src/auth/plugins.ts21 buildTrustedOAuthClients(apiBaseURL).map((client) => client.clientId),COMMENT
LOWpackages/server/src/auth/plugins.ts41 //COMMENT
LOWpackages/server/src/auth/plugins.ts61 // @better-auth/oauth-provider 1.6.23 dist (2026-07-05 re-check on theCOMMENT
LOW.github/workflows/deploy.cloudflare-preview.yml41 uses: oven-sh/setup-bun@v2COMMENT
LOW.github/workflows/deploy.cloudflare-preview.yml61 # true` in its wrangler.jsonc. Each app uploads independently: a build orCOMMENT
LOW.github/workflows/ci.format.yml41 # Rejects specs that declare a terminal status (a finished spec should beCOMMENT
LOW.github/workflows/ci.format.yml61 # specs/20260524T153612-centralize-route-paths.md.COMMENT
LOW.github/workflows/deploy.cloudflare.yml41 # binary and installs its own default wrangler instead.COMMENT
LOW.github/workflows/local-mail.gmail-drift.yml1# Gmail API drift check for apps/local-mail.COMMENT
LOW.github/workflows/ci.runtime-parity.yml1# Runtime-parity regression gate for the apps/api runtime port (ADR-0059).COMMENT
LOWapps/self-host/server.ts141 // with the rooms backend (see the merged websocket handler below).COMMENT
LOWapps/self-host/server.ts181 // One in-process coordinator for this instance; the env is unused (BunCOMMENT
LOWapps/self-host/worker/index.ts41 // The one runtime-specific concern: bind this Worker's Durable Object roomCOMMENT
LOWapps/self-host/worker/index.ts81// Rooms resolves the bearer itself (WS-aware), so it takes the raw resolver.COMMENT
LOWapps/honeycrisp/src-tauri/src/keyring_storage.rs1//! Focused OS credential-store backing for the persisted OAuth grant.COMMENT
LOWapps/honeycrisp/src-tauri/src/keyring_storage.rs21// macOS scopes keychain ACLs to the app's code signature, so anCOMMENT
LOWapps/honeycrisp/src/lib/editor/Editor.svelte341 },COMMENT
LOWapps/epicenter/src-tauri/tests/decode_fixtures.rs1//! Integration tests for the audio decoder against real container fixtures.COMMENT
LOWapps/epicenter/src-tauri/src/keyring_storage.rs1//! Focused OS credential-store backing for the persisted OAuth grant.COMMENT
LOWapps/epicenter/src-tauri/src/keyring_storage.rs21// macOS scopes keychain ACLs to the app's code signature, so anCOMMENT
LOWapps/epicenter/src-tauri/src/download.rs1//! Cancelable background transfers.COMMENT
LOWapps/epicenter/src-tauri/src/command.rs1#[cfg(target_os = "macos")]COMMENT
76 more matches not shown…
Modern AI Meta-Vocabulary14 hits · 47 pts
SeverityFileLineSnippetContext
MEDIUMCLAUDE.md3# Claude-specific orchestrationCOMMENT
MEDIUM…cs/20260526T220000-tauri-specta-on-artifact-id-base.md282### Wave 7 (Remove): Cleanup and guardrailsCOMMENT
MEDIUMspecs/20260425T180002-orchestration-tracker.md1# Document-primitive rollout: orchestration trackerCOMMENT
MEDIUM…0710T115550-epicenter-v8-desktop-release-transition.md122### Phase 5: Retire transition scaffoldingCOMMENT
MEDIUMspecs/20260514T220000-self-host-first-class.md702### Wave 1: Adapter scaffolding (no behavior change)COMMENT
MEDIUM…gents/skills/collapse-pass/references/smell-catalog.md23### Single-method dependency injectionCOMMENT
MEDIUM…h-a-dictionary-polish-and-a-portable-recipe-library.md78#### The Polish scaffold wraps the user instructionCOMMENT
MEDIUMdocs/articles/how-createsubscriber-works.md122No `$state` anywhere. The value (`this.#query.matches`) is read directly from the browser API on every access. `createSuCODE
MEDIUM…ges/workspace/src/config/load-epicenter-config.test.ts64 // The `epicenter init` scaffold is comment-only, so its default export isCOMMENT
MEDIUM…spering/src/lib/operations/build-system-prompt.test.ts35 // The system-invariant scaffold is always present.COMMENT
MEDIUM…spering/src/lib/operations/build-system-prompt.test.ts40 // Self-correction folds in as a scaffold rule, not a toggle.COMMENT
MEDIUM…spering/src/lib/operations/build-system-prompt.test.ts42 // The user directive is embedded inside the scaffold, not replacing it.COMMENT
MEDIUM…spering/src/lib/operations/build-system-prompt.test.ts47 // The guard lives in the scaffold, so it survives whatever the user (or aCOMMENT
MEDIUM…spering/src/lib/operations/build-system-prompt.test.ts68 // The scaffold comes first, then the term block.COMMENT
Fake / Example Data15 hits · 16 pts
SeverityFileLineSnippetContext
LOWspecs/20251113T000000-workspace-exports-pattern.md69client.workspaces.users.validateEmail("test@test.com") // UtilityCODE
LOWspecs/20260304T120000-hub-sidecar-architecture.md1236 -d '{"email": "admin@example.com", "password": "...", "name": "Admin"}'CODE
LOWspecs/20260224T141400-conversation-handle-refactor.md254 - Options: (a) `active` returns `ConversationHandle | undefined` (caller must null-check), (b) Create a "placeholder"CODE
LOW…es/bearer-tokens-are-cookies-without-the-cookie-jar.md29 email: "user@example.com",CODE
LOWdocs/articles/proxies-vs-object-define-property.md21console.log(user.fullName); // "Jane Doe"CODE
LOWdocs/articles/yjs-storage-efficiency/benchmark.ts104 'Lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore et dolore magna aliCODE
LOWdocs/articles/yjs-storage-efficiency/benchmark.ts104 'Lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore et dolore magna aliCODE
LOWpackages/workspace/src/__benchmarks__/helpers.ts68 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aCODE
LOWpackages/workspace/src/__benchmarks__/helpers.ts68 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aCODE
LOW…n-in-migration/create-sign-in-migration.svelte.test.ts104 Ok({ id: asPrincipalId('user-1'), email: 'user@example.com' }),CODE
LOWapps/local-mail/ui/src/lib/format.ts40/** Strip the address, keep the display name: "Jane Doe <j@x.com>" -> "Jane Doe". */COMMENT
LOWapps/local-books/src/commands/demo.ts130 const acme = { value: '1', name: 'Acme Corp' };CODE
LOWapps/local-books/src/commands/demo.ts153 customer('1', 'Acme Corp', 12000),CODE
LOWapps/api/worker/billing/policies.test.ts121 email: 'user@example.com',CODE
LOWapps/api/worker/billing/policies.test.ts133 principalEmail: 'user@example.com',CODE
AI Slop Vocabulary4 hits · 16 pts
SeverityFileLineSnippetContext
MEDIUMpackages/server/src/room/core.test.ts175 // A never ends on a "B gone" frame; the handoff was seamless.COMMENT
MEDIUMapps/local-mail/test-support/setup-copy.sh3# credentials, so the write harness can never contact real Google and neverCOMMENT
MEDIUMapps/local-mail/test-support/setup-copy.sh13# LM_TEST_DIR throwaway copy destination (default: /tmp/local-mail-harness)COMMENT
MEDIUMapps/local-mail/test-support/fingerprint.sh9# ...run the harness / smoke...COMMENT
Cross-Language Confusion (JS/TS)2 hits · 10 pts
SeverityFileLineSnippetContext
HIGHpackages/auth/src/node/oob-launcher.ts151 print(authorizeUrl.toString());CODE
HIGHpackages/auth/src/node/oob-launcher.ts152 print(CODE
Verbosity Indicators3 hits · 7 pts
SeverityFileLineSnippetContext
LOW…kages/workspace/src/__benchmarks__/tombstones.bench.ts25 // Step 1: Insert 5 heavy rowsCOMMENT
LOW…kages/workspace/src/__benchmarks__/tombstones.bench.ts31 // Step 2: Delete 2 rows (doc-1 and doc-3)COMMENT
LOW…kages/workspace/src/__benchmarks__/tombstones.bench.ts36 // Step 3: Add 2 new rowsCOMMENT
Synthetic Comment Markers1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHspecs/20260311T224500-changelog-release-strategy.md239- [OpenCode v1.2.24 release](https://github.com/anomalyco/opencode/releases/tag/v1.2.24): Example of AI-generated releasCODE
Self-Referential Comments1 hit · 4 pts
SeverityFileLineSnippetContext
MEDIUMapps/local-mail/test-support/setup-copy.sh2# Create a throwaway copy of the real Local Mail mirror with FORGED dummyCOMMENT
Example Usage Blocks2 hits · 3 pts
SeverityFileLineSnippetContext
LOW.agents/skills/diagnose/scripts/hitl-loop.template.sh6# Usage:COMMENT
LOWapps/local-mail/test-support/fingerprint.sh7# Usage:COMMENT
Overly Generic Function Names1 hit · 1 pts
SeverityFileLineSnippetContext
LOWapps/posthog-reverse-proxy/src/index.js10async function handleRequest(request, ctx) {CODE