AI Slop Code RIsk Monitor

Gentleman-Programming/engram

Persistent memory system for AI coding agents. Agent-agnostic Go binary with SQLite + FTS5, MCP server, HTTP API, CLI, and TUI.

7.9 Moderate pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for Gentleman-Programming/engram, a Go project with 7,136 GitHub stars. SynthScan examined 246,848 lines of code across 548 source files, recording 774 pattern matches distributed across 9 syntactic categories. The legacy adjusted pattern signal is 7.9 (Moderate 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.

7.9
Adjusted Signal
7.9
Raw Pattern Score
100%
Time Factor
2026-10-11
Last Push
7.1K
Stars
Go
Language
246.8K
Lines of Code
548
Files
774
Pattern Hits
2026-10-12
Scan Date
0.00
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 4.2/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 181 finding(s).

Hallucinated Dependency & Supply Chain Risk 0.0/100 · LOW

Are imports declared and package/API names verified? 4 finding(s).

Agent Over-Engineering Ratio 30.2/100 · MEDIUM

Are wrappers, guards, and repeated structures necessary? 620 finding(s).

PR Review Velocity Impact 32.8/100 · MEDIUM

Which changes need focused human review? 774 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

Run additional scans to build a history of the legacy pattern signal. Score changes are not a measure of AI adoption or code quality.

No multi-scan history yet — run the scanner again to build trend data.

Severity Breakdown

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.

CRITICAL 0HIGH 0MEDIUM 594LOW 180

Directory Score Breakdown

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.

Pattern Findings

The scanner identified 774 distinct pattern matches across 9 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.

Decorative Section Separators589 hits · 1749 pts
SeverityFileLineSnippetContext
MEDIUMcmd/engram/conflicts_test.go25// ─── mock runner for D.2 tests ────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/conflicts_test.go61// ─── helpers ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/conflicts_test.go151// ─── D.1 RED tests ────────────────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/conflicts_test.go553// ─── G.1 — End-to-end CLI lifecycle integration tests ────────────────────────COMMENT
MEDIUMcmd/engram/conflicts_test.go685// ─── D.2 RED tests — agentRunnerFactory + resolveAgentRunner ─────────────────COMMENT
MEDIUMcmd/engram/delete_args_test.go13// ─── delete strict trailing-argument validation (issue #1084) ─────────────────COMMENT
MEDIUMcmd/engram/delete_args_test.go13// ─── delete strict trailing-argument validation (issue #1084) ─────────────────COMMENT
MEDIUMcmd/engram/autosync_status_test.go40// ─── Status adapter tests (REQ-209) ──────────────────────────────────────────COMMENT
MEDIUMcmd/engram/llm.go12// ─── agentRunnerFactory default ───────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/llm.go26// ─── llmRunnerAdapter ─────────────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/llm.go52// ─── llmBuildPrompt ───────────────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/llm.go64// ─── resolveAgentRunner ───────────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/conflicts.go62// ─── list ─────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/conflicts.go165// ─── show ─────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/conflicts.go226// ─── stats ────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/conflicts.go294// ─── scan ─────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/conflicts.go511// ─── deferred ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/main.go885// ─── Commands ────────────────────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/main.go3739// ─── Helpers ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/autosync_e2e_test.go65// ─── E2E Round-trip test (REQ-212) ───────────────────────────────────────────COMMENT
MEDIUMcmd/engram/autosync_e2e_test.go293// ─── Fake store for E2E tests ─────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/main_test.go1815// ─── Projects command tests ───────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/main_test.go3100// ─── obsidian-export command tests ───────────────────────────────────────────COMMENT
MEDIUMcmd/engram/main_test.go3281// ─── obsidian-export Phase 4 tests (graph-config, watch, interval) ───────────COMMENT
MEDIUMcmd/engram/main_test.go3515// ─── Delete command tests ─────────────────────────────────────────────────────COMMENT
MEDIUMcmd/engram/main_test.go3615// ─── delete session sub-command tests ─────────────────────────────────────────COMMENT
MEDIUMcmd/engram/main_test.go3697// ─── delete prompt sub-command tests ──────────────────────────────────────────COMMENT
MEDIUMcmd/engram/main_test.go3767// ─── delete project sub-command tests ─────────────────────────────────────────COMMENT
MEDIUMcmd/engram/main_test.go3833// ─── backward-compat: delete <obs_id> still works ─────────────────────────────COMMENT
MEDIUMcmd/engram/main_test.go3849// ─── usage shows new sub-commands ─────────────────────────────────────────────COMMENT
MEDIUMplugin/claude-code/scripts/user-prompt-submit.sh639# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/claude-code/scripts/user-prompt-submit.sh645# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/claude-code/scripts/user-prompt-submit.sh669# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/claude-code/scripts/user-prompt-submit.sh674# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡plugin/claude-code/scripts/user-prompt-submit.sh687 # ── FIRST MESSAGE ────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡plugin/claude-code/scripts/user-prompt-submit.sh696# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡plugin/claude-code/scripts/user-prompt-submit.sh698# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/codex/scripts/user-prompt-submit.sh33# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/codex/scripts/user-prompt-submit.sh40# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/codex/scripts/user-prompt-submit.sh100# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/codex/scripts/user-prompt-submit.sh105# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡plugin/codex/scripts/user-prompt-submit.sh117 # ── FIRST MESSAGE ────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡plugin/codex/scripts/user-prompt-submit.sh126# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡plugin/codex/scripts/user-prompt-submit.sh128# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/main.ts10// ─── Plugin ───────────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/main.ts24 // ─── Lifecycle ────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/main.ts69 // ─── Settings ─────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/main.ts80 // ─── Auto-sync ────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/main.ts118 // ─── Sync ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/main.ts134 // ── Failure path ────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/main.ts145 // ── Success path ──────────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/main.ts169 // ─── Status Bar ───────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/settings.ts4// ─── Settings Interface ────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/settings.ts30// ─── Settings Tab ─────────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/settings.ts50 // ── Engram URL ──────────────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/settings.ts95 // ── Auto-sync Interval ──────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/settings.ts118 // ── Project Filter ──────────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/settings.ts134 // ── Vault Subfolder ─────────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/settings.ts151 // ── Manual Sync Button ──────────────────────────────────────────────────COMMENT
MEDIUMplugin/obsidian/src/settings.ts189// ─── Helpers ──────────────────────────────────────────────────────────────────COMMENT
529 more matches not shown…
Over-Commented Block98 hits · 82 pts
SeverityFileLineSnippetContext
LOWdocker-compose.beta.yml1# Engram Beta — Phases 2 + 3 + 4 community testingCOMMENT
LOWDOCS.md1101```bashCOMMENT
LOWcmd/engram/cloud.go121 options = append(options, cloudserver.WithPrincipalProjectAuthorizer(cloudPrincipalProjectAuthorizer{store: grantStoreCOMMENT
LOWcmd/engram/cloud.go141// in addition to the legacy ENGRAM_CLOUD_TOKEN/ENGRAM_CLOUD_ADMIN envCOMMENT
LOWcmd/engram/cloud_bootstrap.go21 cloudBootstrapAuditOutcomeSuccess = "success"COMMENT
LOWcmd/engram/cloud_runtime_auth.go21// actually checks the legacy credentials FIRST and only falls back toCOMMENT
LOWcmd/engram/cloud_runtime_auth.go41// cloudRuntimeAuthenticator always implements ResolveBearerToken,COMMENT
LOWcmd/engram/cloud_bootstrap_test.go321// TestCloudBootstrapAdminConcurrentFirstAdminCreatesExactlyOneAdmin is theCOMMENT
LOWcmd/engram/cloud_runtime_e2e_test.go61// real HTTP requests through the assembled *cloudserver.CloudServer, proving:COMMENT
LOWcmd/engram/main.go81 // injectable for testing so tests can drive EOF-driven shutdown with anCOMMENT
LOWcmd/engram/main.go1221 }()COMMENT
LOWtools/repair-missing-session-directory.sh1#!/usr/bin/env bashCOMMENT
LOWplugin/claude_code_hook_behavior_test.go21 "testing"COMMENT
LOWplugin/claude-code/scripts/user-prompt-submit.sh1#!/usr/bin/env bashCOMMENT
LOWplugin/claude-code/scripts/user-prompt-submit.sh61 encoded+="$byte"COMMENT
LOWplugin/claude-code/scripts/subagent-stop.sh1#!/usr/bin/env bashCOMMENT
LOWplugin/claude-code/scripts/session-start.sh141# Fetch memory context.COMMENT
LOWplugin/codex/scripts/user-prompt-submit.sh1#!/usr/bin/env bashCOMMENT
LOWplugin/codex/scripts/subagent-stop.sh1#!/usr/bin/env bashCOMMENT
LOWinternal/llm/runner.go1// Package llm defines the AgentRunner abstraction used by Engram to delegateCOMMENT
LOWinternal/llm/runner.go21// structured Verdict.COMMENT
LOWinternal/llm/claude.go21 // runCLI is the shell-out function. Defaults to defaultRunCLI.COMMENT
LOWinternal/llm/cost.go1package llmCOMMENT
LOWinternal/llm/cost.go21// EstimateScanCost returns the estimated total input and output token countsCOMMENT
LOWinternal/llm/prompt.go21}COMMENT
LOWinternal/setup/generate.go1package setupCOMMENT
LOWinternal/setup/protocol.go41}COMMENT
LOWinternal/setup/registry.go21const (COMMENT
LOWinternal/setup/setup.go1// Package setup handles agent plugin installation.COMMENT
LOWinternal/setup/setup.go521//COMMENT
LOWinternal/setup/setup.go1421// resolveEngramCommand returns the most stable command to spawn the engramCOMMENT
LOWinternal/setup/setup.go1501 return "", falseCOMMENT
LOWinternal/mcp/mcp_test.go11001 }COMMENT
LOWinternal/mcp/context_budget_test.go21// tool arguments. Every case compares the handler's rendered context againstCOMMENT
LOWinternal/mcp/mcp_conflict_loop_test.go421 }COMMENT
LOWinternal/mcp/mcp.go1// Package mcp implements the Model Context Protocol server for Engram.COMMENT
LOWinternal/mcp/mcp.go41 sessionIDPropertyDescription = "Optional authoritative session ID already registered by the runtime or mem_session_starCOMMENT
LOWinternal/mcp/mcp.go201COMMENT
LOWinternal/mcp/mcp.go1361 if compact {COMMENT
LOWinternal/mcp/mcp.go1981 memContextDefaultMaxBytes = 16 * 1024COMMENT
LOWinternal/mcp/serverinstructions_length_test.go1package mcpCOMMENT
LOWinternal/project/detect.go61// ProcessOverride returns the single process-level project override that everyCOMMENT
LOWinternal/project/detect.go121 // Warning is a non-empty advisory message when Source==SourceGitChild.COMMENT
LOWinternal/cloud/cloudstore/identity_storage_test.go981 defer func() { _ = tx.Rollback() }()COMMENT
LOWinternal/cloud/cloudstore/identity.go741// auth import would cycle) by cloudauth.ManagedTokenLookup at runtime, soCOMMENT
LOWinternal/cloud/autosync/manager.go1// Package autosync implements a lease-guarded background sync managerCOMMENT
LOWinternal/cloud/autosync/manager.go321COMMENT
LOWinternal/cloud/cloudserver/dashboard_session.go161 }COMMENT
LOWinternal/cloud/cloudserver/dashboard_session.go201 log.Printf("[engram-cloud] dashboard login audit insert failed (best-effort): %v", err)COMMENT
LOWinternal/cloud/cloudserver/dashboard_session.go561 if source := string(actor.Source); source != "" {COMMENT
LOWinternal/cloud/cloudserver/cloudserver_test.go1701 result = append(result, row)COMMENT
LOWinternal/cloud/cloudserver/dashboard_admin_users.go21// (requireManagedAdmin), and SAME audit path (recordAdminAudit) alreadyCOMMENT
LOWinternal/cloud/cloudserver/dashboard_admin_users.go81// renderDashboardAdminComponentStatus is renderDashboardAdminComponent butCOMMENT
LOWinternal/sync/transport.go21 // WriteManifest persists the manifest.COMMENT
LOWinternal/sync/sync.go1// Package sync implements git-friendly memory synchronization for Engram.COMMENT
LOWinternal/sync/sync.go1241COMMENT
LOWinternal/store/prompt_discard.go381}COMMENT
LOWinternal/store/store_migration_test.go401COMMENT
LOWinternal/store/store_migration_test.go541 missing = append(missing, req)COMMENT
LOWinternal/store/store_legacy_ddl_test.go1package storeCOMMENT
38 more matches not shown…
Structural Annotation Overuse25 hits · 45 pts
SeverityFileLineSnippetContext
LOWCONTRIBUTING.md13### Step 1: Open an IssueCOMMENT
LOW⚡CONTRIBUTING.md28### Step 2: Wait for ApprovalCOMMENT
LOW⚡CONTRIBUTING.md34### Step 3: Open a Pull RequestCOMMENT
LOW⚡CONTRIBUTING.md43### Step 4: Automated PR ChecksCOMMENT
LOW⚡internal/tui/update_test.go960 // Step 1: from SearchResults, enter ObservationDetail — PrevScreen = ScreenSearchResultsCOMMENT
LOW⚡internal/tui/update_test.go969 // Step 2: from ObservationDetail, Esc → back to SearchResults (via PrevScreen)COMMENT
LOW⚡internal/tui/update_test.go978 // Step 3: from SearchResults, Esc → back to ScreenSearch, PrevScreen reset to DashboardCOMMENT
LOW⚡internal/tui/update_test.go989 // Step 4: from Search (no input focused), Esc → always Dashboard, never loopsCOMMENT
LOW⚡internal/tui/update_test.go997 // Step 5: from Search input focused, Esc → always Dashboard, never loopsCOMMENT
LOW⚡internal/setup/setup.go1024 // Step 1: Add marketplace (idempotent — if already added, claude will say so)COMMENT
LOW⚡internal/setup/setup.go1034 // Step 2: Install the pluginCOMMENT
LOWinternal/setup/setup.go1057 // Step 3: Claude CLI owns user-scope MCP writes. Engram only reads theCOMMENT
LOW⚡internal/setup/setup.go1678 // Step 1: add the marketplace (idempotent — tolerate "already" in output).COMMENT
LOW⚡internal/setup/setup.go1685 // Step 2: install the plugin (idempotent — tolerate "already" in output).COMMENT
LOWinternal/cloud/cloudserver/cloudserver_test.go1730 // Step 1: POST to mutation push with paused project → should 409 + emit audit.COMMENT
LOWinternal/cloud/cloudserver/cloudserver_test.go1746 // Step 2: verify audit row was captured in the store.COMMENT
LOWinternal/cloud/cloudserver/cloudserver_test.go1758 // Step 3: list via the store's audit method (simulates what the dashboard handler would call).COMMENT
LOW⚡internal/sync/sync.go2525 // Step 1: index sessions that match by their own projectCOMMENT
LOW⚡internal/sync/sync.go2534 // Step 2: observations — match by own project OR by sessionCOMMENT
LOWinternal/sync/sync.go2550 // Step 3: prompts — match by own project OR by sessionCOMMENT
LOWinternal/sync/sync.go2565 // Step 4: include sessions that matched directly or are referenced by included entitiesCOMMENT
LOWinternal/store/store.go11866 // Step 1: decode payload.COMMENT
LOWinternal/store/store.go11913 // Step 2: FK precondition — both observations must exist locally (by sync_id).COMMENT
LOWinternal/store/store.go11935 // Step 3: upsert into memory_relations keyed on sync_id (idempotent re-apply).COMMENT
LOWinternal/store/store.go11964 // Step 4: clean up the rows this relation left behind (its pending retryCOMMENT
Verbosity Indicators21 hits · 37 pts
SeverityFileLineSnippetContext
LOW⚡internal/tui/update_test.go960 // Step 1: from SearchResults, enter ObservationDetail — PrevScreen = ScreenSearchResultsCOMMENT
LOW⚡internal/tui/update_test.go969 // Step 2: from ObservationDetail, Esc → back to SearchResults (via PrevScreen)COMMENT
LOW⚡internal/tui/update_test.go978 // Step 3: from SearchResults, Esc → back to ScreenSearch, PrevScreen reset to DashboardCOMMENT
LOW⚡internal/tui/update_test.go989 // Step 4: from Search (no input focused), Esc → always Dashboard, never loopsCOMMENT
LOW⚡internal/tui/update_test.go997 // Step 5: from Search input focused, Esc → always Dashboard, never loopsCOMMENT
LOW⚡internal/setup/setup.go1024 // Step 1: Add marketplace (idempotent — if already added, claude will say so)COMMENT
LOW⚡internal/setup/setup.go1034 // Step 2: Install the pluginCOMMENT
LOWinternal/setup/setup.go1057 // Step 3: Claude CLI owns user-scope MCP writes. Engram only reads theCOMMENT
LOW⚡internal/setup/setup.go1678 // Step 1: add the marketplace (idempotent — tolerate "already" in output).COMMENT
LOW⚡internal/setup/setup.go1685 // Step 2: install the plugin (idempotent — tolerate "already" in output).COMMENT
LOWinternal/cloud/cloudserver/cloudserver_test.go1730 // Step 1: POST to mutation push with paused project → should 409 + emit audit.COMMENT
LOWinternal/cloud/cloudserver/cloudserver_test.go1746 // Step 2: verify audit row was captured in the store.COMMENT
LOWinternal/cloud/cloudserver/cloudserver_test.go1758 // Step 3: list via the store's audit method (simulates what the dashboard handler would call).COMMENT
LOW⚡internal/sync/sync.go2525 // Step 1: index sessions that match by their own projectCOMMENT
LOW⚡internal/sync/sync.go2534 // Step 2: observations — match by own project OR by sessionCOMMENT
LOWinternal/sync/sync.go2550 // Step 3: prompts — match by own project OR by sessionCOMMENT
LOWinternal/sync/sync.go2565 // Step 4: include sessions that matched directly or are referenced by included entitiesCOMMENT
LOWinternal/store/store.go11866 // Step 1: decode payload.COMMENT
LOWinternal/store/store.go11913 // Step 2: FK precondition — both observations must exist locally (by sync_id).COMMENT
LOWinternal/store/store.go11935 // Step 3: upsert into memory_relations keyed on sync_id (idempotent re-apply).COMMENT
LOWinternal/store/store.go11964 // Step 4: clean up the rows this relation left behind (its pending retryCOMMENT
Hyper-Verbose Identifiers31 hits · 30 pts
SeverityFileLineSnippetContext
LOWplugin/pi/compaction-recovery.js78function unknownArchiveInstruction(project) {CODE
LOWplugin/pi/compaction-recovery.js86function unavailableRecoveryInstruction() {CODE
LOWplugin/pi/index.ts182function isIdempotentSessionRegistration(path: string, method: string): boolean {CODE
LOWplugin/pi/index.ts290function shouldScheduleEngramSelfHeal(error: unknown, failure: EngramTransportFailure | undefined): boolean {CODE
LOWplugin/pi/index.ts308function sessionProjectConflictFromResponse(error: unknown, sessionId: string, requestedProject: string, resumeRoot?: stCODE
LOWplugin/pi/index.ts332function isDefinitelyPreDispatchError(error: unknown): boolean {CODE
LOWplugin/pi/index.ts453function isObservationSaveResultMiss(response: Response, data: unknown): boolean {CODE
LOWplugin/pi/index.ts460function isAmbiguousObservationSaveReplayStatus(status: number): boolean {CODE
LOWplugin/pi/index.ts565function createMemoryToolTransport(signal?: AbortSignal): { fetch: EngramFetcher; transportFailure: () => EngramTransporCODE
LOWplugin/pi/index.ts640function projectCurrentUnsupportedError(cwd: string): CurrentProjectResponse {CODE
LOWplugin/pi/index.ts696function isPreIdentityEngramVersion(version: string): boolean {CODE
LOWplugin/pi/index.ts810function legacyEngramServerMessage(engramServerVersion: string): string {CODE
LOWplugin/pi/index.ts814function missingInstanceIdentityMessage(engramServerVersion: string): string {CODE
LOWplugin/pi/index.ts1150function recoverImplicitEngramServer(): Promise<boolean> {CODE
LOWplugin/pi/index.ts1229function warnSessionProjectConflictOnce(error: unknown, ctx?: SessionContext): void {CODE
LOWplugin/pi/index.ts1254function pendingEffectiveSessionProject(ctx: SessionContext, runtimeID: string, effectiveID: string): string | undefinedCODE
LOWplugin/pi/index.ts1279function supportsRootSessionResume(health: unknown): boolean {CODE
LOWplugin/pi/index.ts1293function rootResumeCompatibilityError(health: unknown): Error {CODE
LOWplugin/pi/index.ts1601async function resolveExplicitWriteTarget(params: Record<string, unknown>, fetch: EngramFetcher): Promise<{ project: strCODE
LOWplugin/pi/index.ts1641function hasSessionRegistrationInFlight(sessionId: string): boolean {CODE
LOWplugin/pi/index.ts1645async function waitForSessionRegistration(sessionId: string, propagateFailure = false): Promise<void> {CODE
LOWplugin/pi/index.ts1694function normalizeInitializationError(error: unknown): Error {CODE
LOWplugin/pi/index.ts1757function soleActiveRuntimeSessionID(): string | undefined {CODE
LOWplugin/pi/index.ts1763function soleObservedRuntimeSessionID(): string | undefined {CODE
LOWplugin/pi/index.ts1922async function loadCompactionRecoveryContext(sessionId: string, ctx?: SessionContext): Promise<string | undefined> {CODE
LOWplugin/opencode/engram.ts282export function shouldNudgeForObservations(CODE
LOWplugin/opencode/engram.ts416 function isKnownAuthoritativeRootSession(sessionId: string): boolean {CODE
LOWplugin/opencode/engram.ts511 async function resolveAuthoritativeSessionID(sessionId: string): Promise<string> {CODE
LOWinternal/setup/plugins/opencode/engram.ts282export function shouldNudgeForObservations(CODE
LOWinternal/setup/plugins/opencode/engram.ts416 function isKnownAuthoritativeRootSession(sessionId: string): boolean {CODE
LOWinternal/setup/plugins/opencode/engram.ts511 async function resolveAuthoritativeSessionID(sessionId: string): Promise<string> {CODE
Self-Referential Comments3 hits · 12 pts
SeverityFileLineSnippetContext
MEDIUM⚡plugin/claude-code/scripts/user-prompt-submit.sh688 # Create the state file immediately to prevent repeat injectionsCOMMENT
MEDIUM⚡plugin/codex/scripts/user-prompt-submit.sh118 # Create the state file immediately to prevent repeat injectionsCOMMENT
MEDIUM.github/labels.yml3# This file is the canonical label set and policy source for this repo.COMMENT
Modern AI Meta-Vocabulary2 hits · 5 pts
SeverityFileLineSnippetContext
MEDIUMdocs/ARCHITECTURE.md230├── skills/ # Contributor AI skills (repo-wide standards + Engram-specific guardrails)CODE
MEDIUMdocs/codebase/sync-and-cloud.md166## Sync/cloud guardrailsCOMMENT
Fake / Example Data4 hits · 2 pts
SeverityFileLineSnippetContext
LOWinternal/store/store_test.go19028 Content: fmt.Sprintf("## Goal\nLine one for obs %d\n\n## Details\nLorem ipsum dolor sit amet, a long body Compact mCODE
LOWinternal/store/store_test.go19028 Content: fmt.Sprintf("## Goal\nLine one for obs %d\n\n## Details\nLorem ipsum dolor sit amet, a long body Compact mCODE
LOWinternal/store/store_test.go19044 Content: fmt.Sprintf("Pinned body %d with a Lorem ipsum preview Compact should drop.", i),CODE
LOWinternal/store/store_test.go19219 if strings.Contains(got, "Lorem ipsum") {CODE
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWdocker-compose.beta.yml7# Usage:COMMENT