Repository Analysis

tiann/hapi

App for Codex / Claude Code / Pi / OpenCode / Kimi Code / Grok Build, vibe coding anytime, anywhere

4.1 Likely human-written View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of tiann/hapi, a TypeScript project with 4,897 GitHub stars. SynthScan v2.0 examined 467,730 lines of code across 2344 source files, recording 1323 pattern matches distributed across 13 syntactic categories. The overall adjusted score of 4.1 places this repository in the Likely human-written 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).

4.1
Adjusted Score
4.1
Raw Score
100%
Time Factor
2026-08-27
Last Push
4.9K
Stars
TypeScript
Language
467.7K
Lines of Code
2.3K
Files
1.3K
Pattern Hits
2026-08-29
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 35HIGH 7MEDIUM 143LOW 1138

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 1323 distinct pattern matches across 13 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.

Hyper-Verbose Identifiers886 hits · 917 pts
SeverityFileLineSnippetContext
LOWweb/e2e-fixtures/file-md-preview-fixture.tsx33function FileMarkdownPreviewFixture() {CODE
LOWweb/src/test/setup.ts9function installMemoryLocalStorage(): void {CODE
LOWweb/src/chat/reconcile.ts165function areAgentReasoningBlocksEqual(left: AgentReasoningBlock, right: AgentReasoningBlock): boolean {CODE
LOWweb/src/chat/reconcile.ts182function areGeneratedImageBlocksEqual(left: GeneratedImageBlock, right: GeneratedImageBlock): boolean {CODE
LOWweb/src/chat/reconcile.ts193function areCodexReviewBlocksEqual(left: CodexReviewBlock, right: CodexReviewBlock): boolean {CODE
LOWweb/src/chat/modelConfig.ts25function parseCursorWireContextWindow(model: string): number | null {CODE
LOWweb/src/chat/reducerTools.ts182export function collectToolIdsFromMessages(messages: NormalizedMessage[]): Set<string> {CODE
LOWweb/src/chat/reducerTools.ts201export function extractTitleFromChangeTitleInput(input: unknown): string | null {CODE
LOWweb/src/chat/reducerTimeline.ts59function mapAgentRunStatusToToolState(status: string | null): ToolCallBlock['tool']['state'] {CODE
LOWweb/src/chat/reducerTimeline.ts77function isNonTerminalAgentRunState(state: ToolCallBlock['tool']['state']): boolean {CODE
LOWweb/src/chat/reducerTimeline.ts81function shouldIgnoreAgentRunNonTerminalUpdateAfterTerminal(CODE
LOWweb/src/chat/reducerTimeline.ts93function isCloseAgentCleanupUpdate(event: Record<string, unknown>): boolean {CODE
LOWweb/src/chat/reducerTimeline.ts105function shouldIgnoreAgentRunCloseCleanupAfterTerminal(CODE
LOWweb/src/chat/outline.ts53export function getConversationMessageAnchorId(messageId: string): string {CODE
LOWweb/src/chat/presentation.ts74export function formatMessageTimestampTitle(date: Date): string {CODE
LOWweb/src/chat/normalizeAgent.ts7function normalizeToolResultPermissions(value: unknown): ToolResultPermission | undefined {CODE
LOWweb/src/chat/normalizeAgent.ts219function normalizeCodexReviewFinding(value: unknown): CodexReviewFinding | null {CODE
LOWweb/src/chat/reducer.ts28function isUsageVisibleInParentContext(msg: NormalizedMessage): boolean {CODE
LOWweb/src/chat/reducer.ts78function isRedundantGoalStatusMessage(event: AgentEvent): boolean {CODE
LOWweb/src/chat/normalize.ts8export function normalizeDecryptedMessage(message: DecryptedMessage): NormalizedMessage | null {CODE
LOWweb/src/chat/sessionStatus.ts76function backgroundTaskCompletions(messages: readonly NormalizedMessage[]): {CODE
LOWweb/src/chat/inlineMediaSource.ts11export function inlineMediaSourceFromWire(value: unknown): InlineMediaSource | undefined {CODE
LOWweb/src/chat/inlineMediaSource.ts31export function areInlineMediaSourcesEqual(left?: InlineMediaSource, right?: InlineMediaSource): boolean {CODE
LOWweb/src/chat/toolGroups.ts225export function isEligibleForToolGrouping(block: ToolCallBlock): boolean {CODE
LOWweb/src/utils/terminalSupport.ts7export function isRemoteTerminalSupported(metadata: SessionMetadataSummary | null | undefined): boolean {CODE
LOWweb/src/realtime/RealtimeSession.ts62export function resetRealtimeSessionState() {CODE
LOWweb/src/realtime/RealtimeSession.ts82export function getCurrentRealtimeSessionId(): string | null {CODE
LOWweb/src/realtime/gemini/toolAdapter.ts68export async function handleGeminiFunctionCalls(CODE
LOWweb/src/realtime/hooks/voiceContextPlan.ts73export function buildSessionVoiceContextPlan(CODE
LOWweb/src/realtime/hooks/contextFormatters.ts149function extractSpeakableFromContent(content: unknown): string | null {CODE
LOWweb/src/realtime/hooks/contextFormatters.ts182function isNonSpeakableAgentPayload(content: unknown): boolean {CODE
LOWweb/src/realtime/hooks/contextFormatters.ts198export function extractLastAssistantSpeakable(messages: DecryptedMessage[]): string | null {CODE
LOWweb/src/components/PwaUpdateBanner.tsx59export function PwaUpdateBannerWithStatusOffset({CODE
LOWweb/src/components/SessionRowSummary.tsx65function formatCodexImportedRelativeTime(CODE
LOWweb/src/components/SessionExportDialog.tsx39function parseSessionExportTooLarge(error: unknown): HapiSessionExportTooLarge | null {CODE
LOWweb/src/components/SessionList.tsx81function isPinnedInProgressSession(session: SessionSummary): boolean {CODE
LOWweb/src/components/SessionList.tsx197export function deduplicateSessionsByAgentId(sessions: SessionSummary[], selectedSessionId?: string | null): SessionSummCODE
LOWweb/src/components/SessionList.tsx233export function isSidebarEmptySessionStub(session: SessionSummary): boolean {CODE
LOWweb/src/components/SessionList.tsx242export function shouldShowSessionInSidebar(session: SessionSummary, selectedSessionId?: string | null): boolean {CODE
LOWweb/src/components/SessionList.tsx275export function getNextSessionVisibleCount(current: number, step: number, total: number): number {CODE
LOWweb/src/components/SessionList.tsx279export function getPreviousSessionVisibleCount(current: number, step: number): number {CODE
LOWweb/src/components/SessionList.tsx341export function expandSelectedSessionCollapseOverrides(CODE
LOWweb/src/components/SessionList.tsx1160export function getPullRefreshIndicatorRotation(state: PullToRefreshState): number {CODE
LOWweb/src/components/SessionHeader.tsx33export function resolveSessionHeaderMachineLabel(CODE
LOWweb/src/components/SessionAttentionIndicator.tsx21export function SessionAttentionIndicator(props: {CODE
LOWweb/src/components/MarkdownRenderer.tsx61function StandaloneMarkdownContent(props: MarkdownRendererProps) {CODE
LOWweb/src/components/LazyRainbowText.tsx96function processChildrenForRainbow(children: React.ReactNode): React.ReactNode {CODE
LOWweb/src/components/SessionChat.tsx133export async function applyModelChangeWithReasoningRollback(args: {CODE
LOWweb/src/components/SessionChat.tsx167export function shouldAutoClearPendingSchedule(pending: PendingSchedule | null): boolean {CODE
LOWweb/src/components/SessionChat.tsx179export function isScratchlistToggleHotkey(e: {CODE
LOWweb/src/components/SessionChat.tsx214export function isScratchlistHotkeyBlockedTarget(target: EventTarget | null): boolean {CODE
LOWweb/src/components/SessionChat.tsx316export function mergeStagedAttachmentsInOrder(CODE
LOWweb/src/components/SessionChat.tsx324function isUninvokedScheduledMessage(message: DecryptedMessage): boolean {CODE
LOWweb/src/components/SessionChat.tsx464export function resolveLatestCompletedBoundaryIdForView(CODE
LOWweb/src/components/Fue.tsx51export function computeFueCalloutPlacement(params: {CODE
LOWweb/src/components/WorkspaceBrowser.tsx93function normalizePathForComparison(path: string): string {CODE
LOWweb/src/components/MachineFilterBar.tsx173export function getMachineFilterMenuClampStyle(anchor: { right: number; bottom: number }): CSSProperties {CODE
LOWweb/src/components/CursorMigrationBanner.tsx28export function isCursorMigrationInProgress(metadata: Metadata | undefined | null): boolean {CODE
LOWweb/src/components/CursorMigrationBanner.tsx42export function isCursorMigrationAmbiguous(metadata: Metadata | undefined | null): boolean {CODE
LOWweb/src/components/AssistantChat/claudeEffortOptions.ts8function normalizeClaudeComposerEffort(effort?: string | null): string | null {CODE
826 more matches not shown…
Hallucination Indicators35 hits · 320 pts
SeverityFileLineSnippetContext
CRITICALcli/src/codex/runCodex.test.ts258 const registration = harness.session.rpcHandlerManager.registerHandler.mock.calls.find(CODE
CRITICALcli/src/codex/runCodex.test.ts274 const registration = harness.session.rpcHandlerManager.registerHandler.mock.calls.find(CODE
CRITICALcli/src/agent/__tests__/runAgentPty.test.ts638 expect(harness.m.resize.mock.calls.at(-1)).toEqual([120, 40])CODE
CRITICALcli/src/agent/__tests__/runAgentPty.test.ts841 const crWrites = harness.m.write.mock.calls.filter((c) => c[0] === '\r').lengthCODE
CRITICALcli/src/agent/__tests__/runAgentPty.test.ts874 const textWrites = harness.m.write.mock.calls.filter((c) => c[0] === 'hi').lengthCODE
CRITICALcli/src/pi/runPi.test.ts281 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (CODE
CRITICALcli/src/pi/runPi.test.ts336 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (CODE
CRITICALcli/src/pi/runPi.test.ts384 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (message: {CODE
CRITICALcli/src/pi/runPi.test.ts410 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (message: any, localId: string) => CODE
CRITICALcli/src/pi/runPi.test.ts411 const cancelQueued = harness.session.onCancelQueuedMessage.mock.calls.at(-1)![0] as (localId: string) => booleanCODE
CRITICALcli/src/pi/runPi.test.ts431 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (message: ReturnType<typeof userMesCODE
CRITICALcli/src/pi/runPi.test.ts456 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (message: ReturnType<typeof userMesCODE
CRITICALcli/src/pi/runPi.test.ts509 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (message: ReturnType<typeof userMesCODE
CRITICALcli/src/pi/runPi.test.ts567 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (message: ReturnType<typeof userMesCODE
CRITICALcli/src/pi/runPi.test.ts612 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (message: ReturnType<typeof userMesCODE
CRITICALcli/src/pi/runPi.test.ts660 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (message: {CODE
CRITICALcli/src/pi/runPi.test.ts733 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (message: ReturnType<typeof userMesCODE
CRITICALcli/src/pi/runPi.test.ts773 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (message: ReturnType<typeof userMesCODE
CRITICALcli/src/pi/runPi.test.ts832 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (message: ReturnType<typeof userMesCODE
CRITICALcli/src/pi/runPi.test.ts885 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (message: {CODE
CRITICALcli/src/pi/runPi.test.ts941 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (message: {CODE
CRITICALcli/src/pi/runPi.test.ts1111 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (CODE
CRITICALcli/src/pi/runPi.test.ts1142 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (CODE
CRITICALcli/src/pi/runPi.test.ts1164 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (CODE
CRITICALcli/src/pi/runPi.test.ts1195 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (CODE
CRITICALcli/src/pi/runPi.test.ts1230 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (CODE
CRITICALcli/src/pi/runPi.test.ts1241 const onCancelQueuedMessage = harness.session.onCancelQueuedMessage.mock.calls.at(-1)![0] as (localId: string) =CODE
CRITICALcli/src/pi/runPi.test.ts1300 const onUserMessage = harness.session.onUserMessage.mock.calls.at(-1)![0] as (message: {CODE
CRITICALcli/src/pi/runPi.test.ts1755 const onCancelQueuedMessage = harness.session.onCancelQueuedMessage.mock.calls.at(-1)![0] as (localId: string) =CODE
CRITICALcli/src/pi/runPi.test.ts1803 const metadataUpdater = harness.session.updateMetadata.mock.calls.at(-1)![0] as (meta: Record<string, unknown>) CODE
CRITICALcli/src/pi/runPi.test.ts1896 const onCancelQueuedMessage = harness.session.onCancelQueuedMessage.mock.calls.at(-1)![0] as (localId: string) =CODE
CRITICALcli/src/opencode/runOpencode.test.ts697 const messages = harness.session.sendAgentMessage.mock.calls.map((call) => (call[0] as { message: string }).messCODE
CRITICALcli/src/opencode/runOpencode.test.ts733 const messages = harness.session.sendAgentMessage.mock.calls.map((call) => (call[0] as { message: string }).messCODE
CRITICAL…/main/kotlin/app/hapi/protocol/window/WindowMessage.kt143 app.hapi.protocol.wire.HapiJson.encodeToJsonElement(CODE
CRITICAL…pp/hapi/companion/feature/newsession/NewSessionForm.kt278 copilotAgentMode = app.hapi.protocol.catalog.CopilotAgentMode.normalize(base.copilotAgentMode).wireId,CODE
Over-Commented Block228 hits · 228 pts
SeverityFileLineSnippetContext
LOWweb/src/router.tsx381 // covers the inactive-session resume race: useSendMessage can resolveCOMMENT
LOWweb/src/chat/normalizeAgent.ts541COMMENT
LOWweb/src/components/SessionChat.tsx1621 // Route through the scratchlist-aware wrapper. When scratchlistModeCOMMENT
LOWweb/src/components/CodeBlock.tsx61 const scrollHeight = props.maxHeight ?? DEFAULT_SCROLL_HEIGHTCOMMENT
LOWweb/src/components/assistant-ui/markdown-text.tsx41// remarkNonHttpsAutolink must run BEFORE remarkStripCjkAutolink so that theCOMMENT
LOWweb/src/components/assistant-ui/markdown-text.tsx241COMMENT
LOWweb/src/components/assistant-ui/markdown-a.test.tsx421 expect(document.querySelector('.aui-md-a-inert')).toBeNull()COMMENT
LOWweb/src/hooks/useSSE.ts81const HEARTBEAT_STALE_MS = 90_000COMMENT
LOWweb/src/hooks/mutations/useSendMessage.ts241 options?.onSuccess?.(input.sessionId)COMMENT
LOWweb/src/lib/use-hub-scratchlist.ts221 setMigrationStatus('idle')COMMENT
LOWweb/src/lib/use-hub-scratchlist.ts261 migrationAttemptedRef.current = trueCOMMENT
LOWweb/src/lib/use-hub-scratchlist.ts521 })COMMENT
LOWshared/src/schemas.ts401 permissionMode: PermissionModeSchema.optional(),COMMENT
LOWcli/src/cursor/cursorAcpRemoteLauncher.ts541 return { steered: false, error: 'Failed to soft-steer into active turn' };COMMENT
LOWcli/src/runner/runner.integration.test.ts101 beforeEach(async () => {COMMENT
LOWcli/src/runner/runner.integration.test.ts141 // exhaust the hook budget before the marker sweep runs. Bound it: if theCOMMENT
LOWcli/src/runner/runner.integration.test.ts601 // TODO: Test npm uninstall scenario - runner should gracefully handle when hapi is uninstalledCOMMENT
LOWcli/src/runner/run.ts201 // writing its own state. `/stop` resolved the parent's shutdown,COMMENT
LOWcli/src/runner/run.ts461 // (orphaned / ghost-session case).COMMENT
LOWcli/src/runner/run.ts1081 onHappySessionWebhookCOMMENT
LOWcli/src/runner/run.ts1101 // of starting the runner. `getCliArgs()` strips runtime + entrypointCOMMENT
LOWcli/src/runner/run.ts1321 // cleared the heartbeat interval and process.exit(0)'d unconditionally,COMMENT
LOWcli/src/claude/claudeRemoteLauncher.ts341 this.abortFuture = new Future<void>();COMMENT
LOWcli/src/claude/claudeRemoteLauncher.ts361 // following onReady(). If claudeRemote() throws while aCOMMENT
LOWcli/src/claude/claudeRemoteLauncher.ts401 // turn. Without this, scheduleProcessing()'s setTimeout(fn,0) firesCOMMENT
LOWcli/src/claude/claudeRemoteLauncher.ts441 if ((modeHash && msg.hash !== modeHash) || msg.isolate) {COMMENT
LOWcli/src/claude/claudeRemoteLauncher.ts541 }COMMENT
LOWcli/src/claude/claudeRemoteLauncher.ts561 // that case would clear the streak every other attemptCOMMENT
LOW…/src/claude/claudeRemoteLauncher.launchFailure.test.ts321 // call 2 = reaches onReady, then throws -> streak resets to 0 (NOTCOMMENT
LOW…/src/claude/claudeRemoteLauncher.launchFailure.test.ts381 const { claudeRemoteLauncher } = await import('./claudeRemoteLauncher');COMMENT
LOWcli/src/claude/utils/sdkToLogConverter.ts301COMMENT
LOWcli/src/claude/utils/sdkToLogConverter.ts361 // Best-effort 1M-vs-200k seed for turn 1, before any authoritativeCOMMENT
LOWcli/src/claude/utils/sessionHookForwarder.ts301COMMENT
LOWcli/src/claude/utils/sessionHookForwarder.ts321 // ({ decision, reason, permissionOverrides }).COMMENT
LOWcli/src/codex/utils/permissionHandler.ts121 }COMMENT
LOWcli/src/agent/bracketedPaste.ts1// Bracketed-paste (DECSET 2004) framing for PTY input.COMMENT
LOWcli/src/agent/runnerLifecycle.ts21 cleanupConfirmed: (options?: { timeoutMs?: number }) => Promise<void>COMMENT
LOWcli/src/agent/backends/acp/AcpMessageHandler.test.ts1941 // Each fixture was captured from a live Gemini CLI session via ACP stdio.COMMENT
LOWcli/src/agent/backends/acp/AcpMessageHandler.ts601COMMENT
LOWcli/src/pi/runPi.test.ts1321 type: 'compact', customInstructions: 'focus on the API design',COMMENT
LOWcli/src/pi/runPi.ts401 // LocalIds whose owner pressed Steer while image preparation was still inCOMMENT
LOWcli/src/pi/runPi.ts541 if (dequeued.command.type === 'compact') {COMMENT
LOWcli/src/pi/runPi.ts1001 }COMMENT
LOWcli/src/agy/utils/agyTranscriptTypes.ts21 // Raw agy tool arguments. Values are usually strings (CommandLine,COMMENT
LOWcli/src/agy/headless/agyHeadlessDriver.ts521 // can parse buffered records.COMMENT
LOWcli/src/agy/headless/agyHeadlessDriver.ts701 // established by that record.COMMENT
LOWcli/src/agy/headless/agyHeadlessDriver.ts821 // already removed it from the queue and the hub delivery staysCOMMENT
LOWcli/src/modules/common/piModels.ts141 // The probe child has no further use once the response (or aCOMMENT
LOWcli/src/opencode/loop.ts61 }COMMENT
LOWcli/src/opencode/opencodeRemoteLauncher.test.ts21 // Lets a test take full manual control of when a given prompt() callCOMMENT
LOWcli/src/opencode/opencodeRemoteLauncher.test.ts661 // handlers. What actually changed with the fix — runOpencode.ts noCOMMENT
LOWcli/src/opencode/opencodeRemoteLauncher.test.ts781 // is awaited with no way to interrupt it, so Stop/switch-to-local hadCOMMENT
LOWcli/src/opencode/opencodeRemoteLauncher.test.ts1041 // UI's onExit/onSwitchToLocal callbacks (wired up byCOMMENT
LOWcli/src/opencode/opencodeRemoteLauncher.test.ts1201 // loop gets here, a true result unconditionally means this compactCOMMENT
LOWcli/src/opencode/opencodeRemoteLauncher.test.ts1261COMMENT
LOWcli/src/opencode/opencodeRemoteLauncher.test.ts1281 // triggerImpl only ever settles when the test explicitly resolvesCOMMENT
LOWcli/src/opencode/opencodeRemoteLauncher.test.ts1461 // runCompactOperation()'s isCancelled()), it does not stopCOMMENT
LOWcli/src/opencode/runOpencode.test.ts361 }COMMENT
LOWcli/src/opencode/runOpencode.test.ts641 // Reproduces a hostile-review finding: compactSupported aloneCOMMENT
LOWcli/src/opencode/runOpencode.test.ts701 expect(messageQueue.queue).toEqual([]);COMMENT
168 more matches not shown…
AI Slop Vocabulary90 hits · 227 pts
SeverityFileLineSnippetContext
MEDIUMweb/src/chat/tracer.ts91 // robust even when the SDK never emits a prompt-holding sidechain rootCOMMENT
MEDIUMcli/src/modules/common/agyModels.ts144// Build the env for the one-shot `agy models` probe. Auth must be as robust asCOMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift126 #expect(harness.interactor.composerText == "note text")COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift135 #expect(harness.interactor.composerText == "draft\nnote")COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift144 #expect(harness.interactor.composerText == "draft")COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift159 #expect(harness.scratchlist.createCalls.count == 1)COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift160 #expect(harness.scratchlist.createCalls[0].sessionId == "sess-1")COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift161 #expect(harness.scratchlist.createCalls[0].text == "park me")COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift162 #expect(harness.scratchlist.createCalls[0].attachments.isEmpty)COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift163 #expect(harness.notices == ["Draft parked to scratchlist"])COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift180 #expect(harness.interactor.composerText == "draft more")COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift191 #expect(harness.interactor.composerText == "keep me")COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift204 #expect(harness.interactor.composerText == "keep me too")COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift214 #expect(harness.scratchlist.createCalls.isEmpty)COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift215 #expect(harness.interactor.composerText == " ")COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift225 #expect(harness.interactor.composerText == "stranded draft")COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift226 #expect(harness.events.isEmpty)COMMENT
MEDIUM…iClientTests/Chat/ChatInteractorScratchlistTests.swift240 #expect(harness.interactor.scratchlistCount == 2)COMMENT
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift367 #expect(await harness.row(localId: "local-1")?.id == "local-1")STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift368 #expect(harness.interactor.composerText.isEmpty)STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift369 #expect(harness.drafts.storage[chatSessionID] == nil)STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift501 let row = try #require(await harness.row(localId: "local-1"))STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift510 #expect(harness.interactor.attachments.items.isEmpty)STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift517 #expect(await eventually { harness.interactor.attachments.allReady })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift549 #expect(harness.interactor.composerText == "hold on")STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift550 #expect(harness.interactor.attachments.items.count == 1)STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift554 #expect(await eventually { harness.interactor.attachments.allReady })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift595 #expect(await eventually { harness.interactor.attachments.allReady })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift601 #expect(harness.interactor.attachments.items.isEmpty)STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift605 #expect(await eventually { harness.interactor.attachments.allReady })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift610 #expect(harness.interactor.attachments.items.isEmpty)STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift695 #expect(await eventually { await harness.performer.count("POST", pathSuffix: "/approve") == 1 })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift697 #expect(await eventually { await harness.performer.count("POST", pathSuffix: "/approve") == 2 })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift699 #expect(await eventually { await harness.performer.count("POST", pathSuffix: "/approve") == 3 })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift701 #expect(await eventually { await harness.performer.count("POST", pathSuffix: "/deny") == 1 })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift730 #expect(await eventually { await harness.performer.count("POST", pathSuffix: "/approve") == 1 })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift732 #expect(await eventually { await harness.performer.count("POST", pathSuffix: "/approve") == 2 })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift734 #expect(await eventually { await harness.performer.count("POST", pathSuffix: "/deny") == 1 })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift800 #expect(await eventually { await harness.performer.count("POST", pathSuffix: "/approve") == 1 })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift802 #expect(harness.interactor.permissionOverrides["r-live"] == .resolving)STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift807 #expect(harness.interactor.permissionOverrides.isEmpty)STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift432 #expect(harness.store.detail(for: chatSessionID)?.active == true)STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift459 #expect(await harness.row(localId: "local-1") == nil)STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift461 #expect(harness.drafts.storage["sess-2"] == nil)STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift489 #expect(await eventually { harness.interactor.attachments.allReady })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift571 #expect(await eventually { harness.interactor.attachments.allReady })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift630 #expect(await eventually { harness.interactor.queuedRows.isEmpty })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift676 #expect(await eventually { harness.interactor.composerText == "edit me" })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift760 #expect(await eventually { await harness.performer.count("POST", pathSuffix: "/approve") == 1 })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift765 #expect(await eventually { await harness.performer.count("POST", pathSuffix: "/approve") == 2 })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift788 #expect(harness.events.contains(.notice("Request was already handled")))STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift821 #expect(harness.store.detail(for: chatSessionID)?.permissionMode == .acceptEdits)STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift845 #expect(harness.store.detail(for: chatSessionID)?.model == "opus")STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift854 #expect(harness.store.detail(for: chatSessionID)?.effort == "high")STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift872 #expect(harness.store.detail(for: chatSessionID)?.modelReasoningEffort == "medium")STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift906 #expect(await eventually { harness.interactor.composerText == "restored draft" })STRING
MEDIUM…t/Tests/HapiClientTests/Chat/ChatInteractorTests.swift910 #expect(await eventually { harness.drafts.storage[chatSessionID] == "newer draft" })STRING
MEDIUM…s/HapiClientTests/Voice/DictationControllerTests.swift150 #expect(harness.recorder.startCalls == 1)COMMENT
MEDIUM…s/HapiClientTests/Voice/DictationControllerTests.swift153 #expect(await eventually { harness.controller.state == .idle })COMMENT
MEDIUM…s/HapiClientTests/Voice/DictationControllerTests.swift164 #expect(harness.events == [.transcribed("hello world")])COMMENT
30 more matches not shown…
Decorative Section Separators50 hits · 150 pts
SeverityFileLineSnippetContext
MEDIUMweb/src/components/assistant-ui/markdown-text.tsx37// ── Plugin array ────────────────────────────────────────────────────────────COMMENT
MEDIUMweb/src/components/assistant-ui/markdown-text.tsx120// ── URI scheme policy (inlined from url-scheme-policy.ts) ───────────────────COMMENT
MEDIUMweb/src/components/assistant-ui/markdown-text.tsx215// ── URL sanitize transform (deny-only) ──────────────────────────────────────COMMENT
MEDIUMweb/src/components/assistant-ui/markdown-text.tsx242// ── Allowed-schemes state (inlined from useAllowedSchemes.ts) ───────────────COMMENT
MEDIUMweb/src/components/assistant-ui/markdown-text.tsx336// ── UriConfirmContext — one dialog per markdown root ────────────────────────COMMENT
MEDIUMweb/src/components/assistant-ui/markdown-text.tsx404// ── Components ───────────────────────────────────────────────────────────────COMMENT
MEDIUMweb/src/components/assistant-ui/markdown-a.test.tsx76// ── classifyScheme ────────────────────────────────────────────────────────────COMMENT
MEDIUMweb/src/components/assistant-ui/markdown-a.test.tsx141// ── denyOnlyTransform ─────────────────────────────────────────────────────────COMMENT
MEDIUMweb/src/components/assistant-ui/markdown-a.test.tsx161// ── useAllowedSchemes (inlined hook, tested via A component) ──────────────────COMMENT
MEDIUMweb/src/components/assistant-ui/markdown-a.test.tsx212// ── <A> component — click handler ────────────────────────────────────────────COMMENT
MEDIUMweb/src/components/assistant-ui/markdown-a.test.tsx250// ── relative / no-scheme hrefs — fail-closed (#1452) ─────────────────────────COMMENT
MEDIUMweb/src/components/assistant-ui/markdown-a.test.tsx250// ── relative / no-scheme hrefs — fail-closed (#1452) ─────────────────────────COMMENT
MEDIUMweb/src/components/assistant-ui/markdown-a.test.tsx425// ── intra-tab cross-provider sync (schemeListeners emitter) ──────────────────COMMENT
MEDIUMweb/src/hooks/useReasoningCollapse.ts46// ── Module-level singleton store ────────────────────────────────────────────COMMENT
MEDIUMweb/src/lib/remark-non-https-autolink.test.ts24 // ── Basic autolink ───────────────────────────────────────────────────COMMENT
MEDIUMweb/src/lib/remark-non-https-autolink.test.ts52 // ── http/https NOT converted (GFM handles those) ─────────────────────COMMENT
MEDIUMweb/src/lib/remark-non-https-autolink.test.ts64 // ── Existing link nodes not touched ──────────────────────────────────COMMENT
MEDIUMweb/src/lib/remark-non-https-autolink.test.ts76 // ── Code blocks / inline code not touched ────────────────────────────COMMENT
MEDIUMweb/src/lib/remark-non-https-autolink.test.ts91 // ── Trailing punctuation handling ────────────────────────────────────COMMENT
MEDIUMweb/src/lib/remark-non-https-autolink.test.ts142 // ── Multiple URIs in one text node ───────────────────────────────────COMMENT
MEDIUMweb/src/lib/remark-non-https-autolink.test.ts155 // ── Scheme-only / edge cases ─────────────────────────────────────────COMMENT
MEDIUMweb/src/lib/remark-file-path-links.test.ts96// ── inlineCode autolinking (prong 2) ─────────────────────────────────────────COMMENT
MEDIUMweb/src/lib/remark-file-path-links.test.ts157// ── explicit markdown link rewriting (prong 3) ───────────────────────────────COMMENT
MEDIUMweb/src/lib/remark-file-path-links.test.ts228// ── standalone gate: rewriteExplicitLinks:false (file-preview surface) ────────COMMENT
MEDIUMweb/src/lib/remark-repair-tables.test.ts29// ── String-level function ────────────────────────────────────────────────────COMMENT
MEDIUMweb/src/lib/remark-repair-tables.test.ts158// ── Plugin (parse + transform + stringify) ────────────────────────────────────COMMENT
MEDIUMweb/src/lib/remark-repair-tables.ts18// ── Helpers ──────────────────────────────────────────────────────────────────COMMENT
MEDIUMweb/src/lib/remark-repair-tables.ts81// ── String-level preprocessor ─────────────────────────────────────────────────COMMENT
MEDIUMweb/src/lib/remark-repair-tables.ts144// ── Plugin ───────────────────────────────────────────────────────────────────COMMENT
MEDIUMcli/src/agent/backends/acp/AcpMessageHandler.test.ts2043 // ── tool_call: at least one must have been emitted ────────────────COMMENT
MEDIUMcli/src/agent/backends/acp/AcpMessageHandler.test.ts2052 // a typed object from the human-readable title. ───────────────COMMENT
MEDIUMcli/src/agent/backends/acp/AcpMessageHandler.test.ts2077 // ── reasoning: at least one prose thought must have surfaced ───────COMMENT
MEDIUMcli/src/agent/backends/acp/AcpMessageHandler.test.ts2091 // ── text messages: none should be a raw JSON blob ─────────────────COMMENT
MEDIUMcli/src/agent/backends/acp/AcpMessageHandler.test.ts2102 // ── optional: assert text messages exist for complete captures ─────COMMENT
MEDIUMcli/src/modules/pingPeer/pingPeer.ts545// ── inspect_peer (read twin; no resume) ─────────────────────────────────────COMMENT
MEDIUM…kotlin/app/hapi/protocol/markdown/FilePathLinksTest.kt10 // ── detectFilePathLinks ──────────────────────────────────────────────────COMMENT
MEDIUM…kotlin/app/hapi/protocol/markdown/FilePathLinksTest.kt102 // ── matchWholeFilePath (inline code spans) ───────────────────────────────COMMENT
MEDIUM…kotlin/app/hapi/protocol/markdown/FilePathLinksTest.kt128 // ── rewriteExplicitLinkTarget ────────────────────────────────────────────COMMENT
MEDIUM…n/app/hapi/protocol/markdown/MarkdownTransformsTest.kt20 // ── repairTables (remark-repair-tables parity) ───────────────────────────COMMENT
MEDIUM…n/app/hapi/protocol/markdown/MarkdownTransformsTest.kt100 // ── Parser configuration (disableIndentedCode + extensions) ──────────────COMMENT
MEDIUM…n/app/hapi/protocol/markdown/MarkdownTransformsTest.kt153 // ── stripCjkAutolinkArtifacts ────────────────────────────────────────────COMMENT
MEDIUM…otlin/app/hapi/protocol/markdown/MarkdownTransforms.kt32 // ── Table repair (remark-repair-tables port) ─────────────────────────────COMMENT
MEDIUM…otlin/app/hapi/protocol/markdown/MarkdownTransforms.kt163 // ── Indented-code disable + parser factory ───────────────────────────────COMMENT
MEDIUM…otlin/app/hapi/protocol/markdown/MarkdownTransforms.kt205 // ── CJK autolink artifact strip (remark-strip-cjk-autolink port) ─────────COMMENT
MEDIUM…otlin/app/hapi/protocol/markdown/MarkdownTransforms.kt230 // ── File path link detection (remark-file-path-links port) ───────────────COMMENT
MEDIUM…main/kotlin/app/hapi/companion/ui/markdown/Markdown.kt82// ── Link handling ────────────────────────────────────────────────────────────COMMENT
MEDIUM…main/kotlin/app/hapi/companion/ui/markdown/Markdown.kt108// ── Entry point ──────────────────────────────────────────────────────────────COMMENT
MEDIUM…main/kotlin/app/hapi/companion/ui/markdown/Markdown.kt164// ── Block rendering ──────────────────────────────────────────────────────────COMMENT
MEDIUM…main/kotlin/app/hapi/companion/ui/markdown/Markdown.kt286// ── Table rendering ──────────────────────────────────────────────────────────COMMENT
MEDIUM…main/kotlin/app/hapi/companion/ui/markdown/Markdown.kt426// ── Inline rendering ─────────────────────────────────────────────────────────COMMENT
Magic Placeholder Names4 hits · 20 pts
SeverityFileLineSnippetContext
HIGHdocs/guide/notifications.md66export ELEVENLABS_API_KEY="your-api-key"CODE
HIGHdocs/guide/voice-assistant.md63export ELEVENLABS_API_KEY="your-api-key"CODE
HIGHdocs/guide/voice-assistant.md84export GEMINI_API_KEY="your-api-key" # or GOOGLE_API_KEYCODE
HIGHdocs/guide/voice-assistant.md91export DASHSCOPE_API_KEY="your-api-key" # or QWEN_API_KEYCODE
Verbosity Indicators9 hits · 18 pts
SeverityFileLineSnippetContext
LOWcli/scripts/release-all.ts136 // Step 1: Update package.json versionCOMMENT
LOWcli/scripts/release-all.ts148 // Step 2: Build all platform binaries (with embedded web assets)COMMENT
LOWcli/scripts/release-all.ts156 // Step 3: Prepare and publish platform packagesCOMMENT
LOWcli/scripts/release-all.ts165 // Step 4: Verify all platform packages are live on npm before publishing the main package.COMMENT
LOWcli/scripts/release-all.ts175 // Step 5: Publish main packageCOMMENT
LOWcli/scripts/release-all.ts186 // Step 6: bun install to get complete lockfileCOMMENT
LOWcli/scripts/release-all.ts190 // Step 7: Git commit + tag + pushCOMMENT
LOWhub/src/cursor/cursorLegacyMigrator.ts302 // Step 1: canonical-path fast path. Skip readdir entirely if we hit.COMMENT
LOWhub/src/cursor/cursorLegacyMigrator.ts322 // Step 2: scan every <wsh>/<cursorSessionId>/store.db.COMMENT
Structural Annotation Overuse9 hits · 18 pts
SeverityFileLineSnippetContext
LOWcli/scripts/release-all.ts136 // Step 1: Update package.json versionCOMMENT
LOWcli/scripts/release-all.ts148 // Step 2: Build all platform binaries (with embedded web assets)COMMENT
LOWcli/scripts/release-all.ts156 // Step 3: Prepare and publish platform packagesCOMMENT
LOWcli/scripts/release-all.ts165 // Step 4: Verify all platform packages are live on npm before publishing the main package.COMMENT
LOWcli/scripts/release-all.ts175 // Step 5: Publish main packageCOMMENT
LOWcli/scripts/release-all.ts186 // Step 6: bun install to get complete lockfileCOMMENT
LOWcli/scripts/release-all.ts190 // Step 7: Git commit + tag + pushCOMMENT
LOWhub/src/cursor/cursorLegacyMigrator.ts302 // Step 1: canonical-path fast path. Skip readdir entirely if we hit.COMMENT
LOWhub/src/cursor/cursorLegacyMigrator.ts322 // Step 2: scan every <wsh>/<cursorSessionId>/store.db.COMMENT
Synthetic Comment Markers3 hits · 18 pts
SeverityFileLineSnippetContext
HIGHcli/src/claude/claudeLocalLauncher.ts15 // Preserve the AI-generated title emitted by Claude Code's nativeCOMMENT
HIGH…acp/__fixtures__/gemini-3-flash-preview-edit-file.json26 "text": "## 📂 Topic: **Updating demo-write.txt**\n\n**Summary:**\nThe user requested to replace the first liCODE
HIGH…acp/__fixtures__/gemini-3-flash-preview-read-file.json26 "text": "## 📂 Topic: **Initial Project Overview**\n\n**Summary:**\nI will start by reading the README.md filCODE
Modern AI Meta-Vocabulary3 hits · 8 pts
SeverityFileLineSnippetContext
MEDIUMshared/src/voicePromptLayers.ts151export const VOICE_PROVIDER_GUARDRAILS = `# Provider guardrailsCODE
MEDIUM…ges/HapiKit/Sources/HapiClient/HapiClientVersion.swift10 /// Version of the HapiKit client scaffold.COMMENT
MEDIUMandroid/gradle/libs.versions.toml2# All versions verified to exist on Google Maven / Maven Central at scaffold time.COMMENT
Fake / Example Data4 hits · 4 pts
SeverityFileLineSnippetContext
LOW…rc/components/ToolCard/RequestUserInputFooter.test.tsx61 expect(textarea).toHaveAttribute('placeholder', 'Describe the change')CODE
LOWcli/src/cursor/utils/cursorLegacyEventConverter.test.ts200 'Lorem ipsum ... Questions skipped by the user, continue with the information you alreadCODE
LOW…HapiKit/Sources/HapiClient/Chat/PermissionInputs.swift184 placeholder: object["placeholder"]?.stringValue,CODE
LOW…companion/feature/chat/permissions/PermissionInputs.kt143 placeholder = obj["placeholder"].stringOrNull,CODE
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWios/scripts/linux-test.sh8# Usage:COMMENT
Deep Nesting1 hit · 1 pts
SeverityFileLineSnippetContext
LOWios/scripts/pbxproj-audit.py28CODE