From 279e9f17eb62c237f92d404eb6b4a0d262e92868 Mon Sep 17 00:00:00 2001 From: imccyu Date: Wed, 17 Jun 2026 23:21:42 +0800 Subject: [PATCH] refactor: ts in packages/*/tests use extensionless import --- packages/acp/tests/bridge.spec.ts | 2 +- packages/acp/tests/codec.spec.ts | 2 +- packages/acp/tests/dispose.spec.ts | 2 +- packages/acp/tests/edges.spec.ts | 2 +- packages/acp/tests/harness.ts | 4 ++-- packages/acp/tests/load.spec.ts | 2 +- packages/acp/tests/multi-session.spec.ts | 2 +- packages/acp/tests/properties.spec.ts | 2 +- packages/acp/tests/stream-update.spec.ts | 2 +- packages/acp/tests/turns.spec.ts | 2 +- packages/agent-loop/tests/agent.spec.ts | 2 +- packages/agent-loop/tests/config-session-id.spec.ts | 2 +- packages/agent-loop/tests/coverage-edges.spec.ts | 2 +- packages/agent-loop/tests/loop.spec.ts | 2 +- packages/agent-loop/tests/resume.spec.ts | 2 +- packages/agent-loop/tests/review-fixes.spec.ts | 2 +- packages/llm-replay/tests/llm-replay.spec.ts | 2 +- packages/session-persistence-jsonl/tests/jsonl.spec.ts | 4 ++-- packages/session-persistence-sqlite/tests/sqlite.spec.ts | 4 ++-- packages/session-persistence/tests/contract.ts | 2 +- packages/session-persistence/tests/persistence.spec.ts | 4 ++-- packages/session/tests/repair.spec.ts | 4 ++-- packages/tool-bash/tests/integration.spec.ts | 2 +- packages/ui-stdio/tests/ui-stdio.spec.ts | 2 +- 24 files changed, 29 insertions(+), 29 deletions(-) diff --git a/packages/acp/tests/bridge.spec.ts b/packages/acp/tests/bridge.spec.ts index dd10a88bcb..af3b616aff 100644 --- a/packages/acp/tests/bridge.spec.ts +++ b/packages/acp/tests/bridge.spec.ts @@ -3,7 +3,7 @@ import { mkdtemp, rm } from 'node:fs/promises' import { tmpdir } from 'node:os' import { join } from 'node:path' import { PROTOCOL_VERSION } from '@agentclientprotocol/sdk' -import { makeBridgeHarness, textResponse, type BridgeHarness } from './harness.ts' +import { makeBridgeHarness, textResponse, type BridgeHarness } from './harness' /** * End-to-end bridge specs over an in-memory transport: a real diff --git a/packages/acp/tests/codec.spec.ts b/packages/acp/tests/codec.spec.ts index 38a7a6cb41..feb75e9a1a 100644 --- a/packages/acp/tests/codec.spec.ts +++ b/packages/acp/tests/codec.spec.ts @@ -6,7 +6,7 @@ import { harnessBlockToAcpContent, promptHasUnsupportedContent, turnEndToStopReason, -} from '../src/codec.ts' +} from '../src/codec' describe('turnEndToStopReason', () => { // The SDK rejects an unknown stopReason, so this must be total over every diff --git a/packages/acp/tests/dispose.spec.ts b/packages/acp/tests/dispose.spec.ts index 45e351ced5..dc179d9cd2 100644 --- a/packages/acp/tests/dispose.spec.ts +++ b/packages/acp/tests/dispose.spec.ts @@ -3,7 +3,7 @@ import { mkdtemp, rm } from 'node:fs/promises' import { tmpdir } from 'node:os' import { join } from 'node:path' import { PROTOCOL_VERSION } from '@agentclientprotocol/sdk' -import { makeBridgeHarness } from './harness.ts' +import { makeBridgeHarness } from './harness' describe('acp bridge — disposal & HMR safety', () => { let storageDir: string diff --git a/packages/acp/tests/edges.spec.ts b/packages/acp/tests/edges.spec.ts index 9484368322..b479b0b120 100644 --- a/packages/acp/tests/edges.spec.ts +++ b/packages/acp/tests/edges.spec.ts @@ -3,7 +3,7 @@ import { mkdtemp, rm } from 'node:fs/promises' import { tmpdir } from 'node:os' import { join } from 'node:path' import { PROTOCOL_VERSION } from '@agentclientprotocol/sdk' -import { makeBridgeHarness, textResponse, type BridgeHarness } from './harness.ts' +import { makeBridgeHarness, textResponse, type BridgeHarness } from './harness' describe('acp bridge — demux & config edges', () => { let storageDir: string diff --git a/packages/acp/tests/harness.ts b/packages/acp/tests/harness.ts index 4f6b5ac17a..4b41b013bd 100644 --- a/packages/acp/tests/harness.ts +++ b/packages/acp/tests/harness.ts @@ -30,8 +30,8 @@ import { type SessionNotification, type Stream, } from '@agentclientprotocol/sdk' -import * as AcpPlugin from '../src/index.ts' -import { type AcpConfig } from '../src/index.ts' +import * as AcpPlugin from '../src/index' +import { type AcpConfig } from '../src/index' /** A scripted mock adapter (mirrors the agent-loop test adapter). */ class MockAdapter extends LlmAdapter { diff --git a/packages/acp/tests/load.spec.ts b/packages/acp/tests/load.spec.ts index f06c707d85..c2a5237d89 100644 --- a/packages/acp/tests/load.spec.ts +++ b/packages/acp/tests/load.spec.ts @@ -4,7 +4,7 @@ import { tmpdir } from 'node:os' import { join } from 'node:path' import { PROTOCOL_VERSION } from '@agentclientprotocol/sdk' import { SessionId } from '@deepseek-ai/dsh-session' -import { makeBridgeHarness, textResponse, toolCallResponse, type BridgeHarness, type CapturedUpdate } from './harness.ts' +import { makeBridgeHarness, textResponse, toolCallResponse, type BridgeHarness, type CapturedUpdate } from './harness' /** Concatenate the text of all agent_message_chunk updates. */ function messageText(updates: CapturedUpdate[]): string { diff --git a/packages/acp/tests/multi-session.spec.ts b/packages/acp/tests/multi-session.spec.ts index 1c20d2ba39..0a52cb66c1 100644 --- a/packages/acp/tests/multi-session.spec.ts +++ b/packages/acp/tests/multi-session.spec.ts @@ -3,7 +3,7 @@ import { mkdtemp, rm } from 'node:fs/promises' import { tmpdir } from 'node:os' import { join } from 'node:path' import { PROTOCOL_VERSION } from '@agentclientprotocol/sdk' -import { makeBridgeHarness, textResponse, type BridgeHarness, type CapturedUpdate } from './harness.ts' +import { makeBridgeHarness, textResponse, type BridgeHarness, type CapturedUpdate } from './harness' /** Text of the agent_message_chunk updates scoped to one session id. */ function messageTextFor(updates: { sessionId?: string; update: CapturedUpdate }[], sessionId: string): string { diff --git a/packages/acp/tests/properties.spec.ts b/packages/acp/tests/properties.spec.ts index 5364c02d7b..4013dae163 100644 --- a/packages/acp/tests/properties.spec.ts +++ b/packages/acp/tests/properties.spec.ts @@ -19,7 +19,7 @@ import fc from 'fast-check' import { CallId } from '@deepseek-ai/dsh-llm' import type { SessionEvent } from '@deepseek-ai/dsh-session' import type { SessionNotification } from '@agentclientprotocol/sdk' -import { streamSessionEventUpdate } from '../src/index.ts' +import { streamSessionEventUpdate } from '../src/index' const LEGAL_UPDATE_KINDS = new Set([ 'agent_message_chunk', diff --git a/packages/acp/tests/stream-update.spec.ts b/packages/acp/tests/stream-update.spec.ts index cdba5a3bf3..13c4c445cf 100644 --- a/packages/acp/tests/stream-update.spec.ts +++ b/packages/acp/tests/stream-update.spec.ts @@ -3,7 +3,7 @@ import { CallId } from '@deepseek-ai/dsh-llm' import type { SessionEvent } from '@deepseek-ai/dsh-session' import type { SessionNotification } from '@agentclientprotocol/sdk' import type { ToolDefinition, ToolRegistry } from '@deepseek-ai/dsh-tools' -import { streamSessionEventUpdate, agentOptions, ToolPresenter } from '../src/index.ts' +import { streamSessionEventUpdate, agentOptions, ToolPresenter } from '../src/index' /** Collect the updates a single event produces (no presenter → generic fallback). */ function updatesFor(event: SessionEvent): SessionNotification['update'][] { diff --git a/packages/acp/tests/turns.spec.ts b/packages/acp/tests/turns.spec.ts index 19c3be2556..da4a38a554 100644 --- a/packages/acp/tests/turns.spec.ts +++ b/packages/acp/tests/turns.spec.ts @@ -11,7 +11,7 @@ import { textResponse, toolCallResponse, type BridgeHarness, -} from './harness.ts' +} from './harness' /** Boilerplate: initialize + create one session, returning its id. */ async function newSession(h: BridgeHarness, clientCapabilities: Record = {}): Promise { diff --git a/packages/agent-loop/tests/agent.spec.ts b/packages/agent-loop/tests/agent.spec.ts index 7c46df956c..1f04fb7de6 100644 --- a/packages/agent-loop/tests/agent.spec.ts +++ b/packages/agent-loop/tests/agent.spec.ts @@ -7,7 +7,7 @@ import SystemPrompt from '@deepseek-ai/dsh-system-prompt' import ToolRegistry from '@deepseek-ai/dsh-tools' import AgentRegistry from '@deepseek-ai/dsh-agent' import AgentLoop, { ReactLoopAgent } from '@deepseek-ai/dsh-agent-loop' -import { MockAdapter, textResponse } from './mock-adapter.ts' +import { MockAdapter, textResponse } from './mock-adapter' async function harness(adapter: MockAdapter) { const ctx = new Context() diff --git a/packages/agent-loop/tests/config-session-id.spec.ts b/packages/agent-loop/tests/config-session-id.spec.ts index 13a62bca8c..2dd911a178 100644 --- a/packages/agent-loop/tests/config-session-id.spec.ts +++ b/packages/agent-loop/tests/config-session-id.spec.ts @@ -10,7 +10,7 @@ import ToolRegistry from '@deepseek-ai/dsh-tools' import AgentRegistry from '@deepseek-ai/dsh-agent' import SessionPersistenceJsonl from '@deepseek-ai/dsh-session-persistence-jsonl' import AgentLoop, { ReactLoopAgent } from '@deepseek-ai/dsh-agent-loop' -import { MockAdapter, textResponse } from './mock-adapter.ts' +import { MockAdapter, textResponse } from './mock-adapter' const dirs: string[] = [] afterEach(async () => { for (const d of dirs.splice(0)) await rm(d, { recursive: true, force: true }) }) diff --git a/packages/agent-loop/tests/coverage-edges.spec.ts b/packages/agent-loop/tests/coverage-edges.spec.ts index 96c061d2dd..ee76a22f6a 100644 --- a/packages/agent-loop/tests/coverage-edges.spec.ts +++ b/packages/agent-loop/tests/coverage-edges.spec.ts @@ -6,7 +6,7 @@ import SystemPrompt from '@deepseek-ai/dsh-system-prompt' import ToolRegistry, { defineTool } from '@deepseek-ai/dsh-tools' import AgentRegistry from '@deepseek-ai/dsh-agent' import AgentLoop, { ReactLoopAgent } from '@deepseek-ai/dsh-agent-loop' -import { MockAdapter, textResponse, toolCallResponse } from './mock-adapter.ts' +import { MockAdapter, textResponse, toolCallResponse } from './mock-adapter' async function harness(adapter: MockAdapter) { const ctx = new Context() diff --git a/packages/agent-loop/tests/loop.spec.ts b/packages/agent-loop/tests/loop.spec.ts index f004e02f91..1d6cdee2d1 100644 --- a/packages/agent-loop/tests/loop.spec.ts +++ b/packages/agent-loop/tests/loop.spec.ts @@ -6,7 +6,7 @@ import SystemPrompt from '@deepseek-ai/dsh-system-prompt' import ToolRegistry, { defineTool } from '@deepseek-ai/dsh-tools' import AgentRegistry from '@deepseek-ai/dsh-agent' import AgentLoop, { ReactLoopAgent } from '@deepseek-ai/dsh-agent-loop' -import { MockAdapter, maxTokensResponse, textResponse, toolCallResponse } from './mock-adapter.ts' +import { MockAdapter, maxTokensResponse, textResponse, toolCallResponse } from './mock-adapter' async function harness(adapter: MockAdapter) { const ctx = new Context() diff --git a/packages/agent-loop/tests/resume.spec.ts b/packages/agent-loop/tests/resume.spec.ts index 10313fdd26..508753753b 100644 --- a/packages/agent-loop/tests/resume.spec.ts +++ b/packages/agent-loop/tests/resume.spec.ts @@ -11,7 +11,7 @@ import ToolRegistry from '@deepseek-ai/dsh-tools' import AgentRegistry from '@deepseek-ai/dsh-agent' import SessionPersistenceJsonl from '@deepseek-ai/dsh-session-persistence-jsonl' import AgentLoop, { ReactLoopAgent } from '@deepseek-ai/dsh-agent-loop' -import { MockAdapter, textResponse } from './mock-adapter.ts' +import { MockAdapter, textResponse } from './mock-adapter' const dirs: string[] = [] afterEach(async () => { for (const d of dirs.splice(0)) await rm(d, { recursive: true, force: true }) }) diff --git a/packages/agent-loop/tests/review-fixes.spec.ts b/packages/agent-loop/tests/review-fixes.spec.ts index 3f65ae737e..86306f9f9e 100644 --- a/packages/agent-loop/tests/review-fixes.spec.ts +++ b/packages/agent-loop/tests/review-fixes.spec.ts @@ -7,7 +7,7 @@ import ToolRegistry, { defineTool } from '@deepseek-ai/dsh-tools' import AgentRegistry, { AgentId } from '@deepseek-ai/dsh-agent' import AgentLoop, { ReactLoopAgent } from '@deepseek-ai/dsh-agent-loop' import * as Invariants from '@deepseek-ai/dsh-invariants' -import { MockAdapter, textResponse, toolCallResponse } from './mock-adapter.ts' +import { MockAdapter, textResponse, toolCallResponse } from './mock-adapter' /** * Regression tests for the findings of the first architecture review diff --git a/packages/llm-replay/tests/llm-replay.spec.ts b/packages/llm-replay/tests/llm-replay.spec.ts index f16e988035..6b8ed2e355 100644 --- a/packages/llm-replay/tests/llm-replay.spec.ts +++ b/packages/llm-replay/tests/llm-replay.spec.ts @@ -14,7 +14,7 @@ import { loadReplayScript, name, parseSessionLog, -} from '../src/index.ts' +} from '../src/index' /** * Unit tests for the replay llm/stream plugin. These drive the listener through diff --git a/packages/session-persistence-jsonl/tests/jsonl.spec.ts b/packages/session-persistence-jsonl/tests/jsonl.spec.ts index 8257a9853c..88a21b5705 100644 --- a/packages/session-persistence-jsonl/tests/jsonl.spec.ts +++ b/packages/session-persistence-jsonl/tests/jsonl.spec.ts @@ -6,8 +6,8 @@ import { join } from 'node:path' import SessionStore, { SessionId } from '@deepseek-ai/dsh-session' import type { Session, SessionEvent, SessionMeta } from '@deepseek-ai/dsh-session' import SessionPersistenceJsonl from '@deepseek-ai/dsh-session-persistence-jsonl' -import { encodeSegment, logPath, scanLog, sessionDir, sidecarPath } from '../src/format.ts' -import { runPersistenceContract, meta, oneTurnLog } from '../../session-persistence/tests/contract.ts' +import { encodeSegment, logPath, scanLog, sessionDir, sidecarPath } from '../src/format' +import { runPersistenceContract, meta, oneTurnLog } from '../../session-persistence/tests/contract' let root: string const dirs: string[] = [] diff --git a/packages/session-persistence-sqlite/tests/sqlite.spec.ts b/packages/session-persistence-sqlite/tests/sqlite.spec.ts index d6216b7b50..3eb7cbad2c 100644 --- a/packages/session-persistence-sqlite/tests/sqlite.spec.ts +++ b/packages/session-persistence-sqlite/tests/sqlite.spec.ts @@ -6,8 +6,8 @@ import { join } from 'node:path' import SessionStore, { SessionId } from '@deepseek-ai/dsh-session' import type { Session, SessionEvent, SessionMeta } from '@deepseek-ai/dsh-session' import SessionPersistenceSqlite, { SCHEMA_VERSION } from '@deepseek-ai/dsh-session-persistence-sqlite' -import { openDatabase, scanRows, type EventRow } from '../src/schema.ts' -import { runPersistenceContract, meta, oneTurnLog } from '../../session-persistence/tests/contract.ts' +import { openDatabase, scanRows, type EventRow } from '../src/schema' +import { runPersistenceContract, meta, oneTurnLog } from '../../session-persistence/tests/contract' const dirs: string[] = [] afterEach(async () => { for (const d of dirs.splice(0)) await rm(d, { recursive: true, force: true }) }) diff --git a/packages/session-persistence/tests/contract.ts b/packages/session-persistence/tests/contract.ts index 73f6f653bd..3be9fadba2 100644 --- a/packages/session-persistence/tests/contract.ts +++ b/packages/session-persistence/tests/contract.ts @@ -12,7 +12,7 @@ import { describe, expect, it, vi } from 'vitest' import { SessionId } from '@deepseek-ai/dsh-session' import type { SessionEvent, SessionMeta } from '@deepseek-ai/dsh-session' import { CallId } from '@deepseek-ai/dsh-llm' -import type { SessionPersistence } from '../src/index.ts' +import type { SessionPersistence } from '../src/index' /** A backend under test plus its teardown. */ export interface ContractBackend { diff --git a/packages/session-persistence/tests/persistence.spec.ts b/packages/session-persistence/tests/persistence.spec.ts index 5c0a29131f..2c65639060 100644 --- a/packages/session-persistence/tests/persistence.spec.ts +++ b/packages/session-persistence/tests/persistence.spec.ts @@ -2,8 +2,8 @@ import { describe, expect, it } from 'vitest' import { Context } from 'cordis' import { SessionId, isJsonValue, interruptedTurnClosers } from '@deepseek-ai/dsh-session' import type { SessionEvent, SessionMeta, SessionSummary } from '@deepseek-ai/dsh-session' -import { SessionPersistence, assertSerializable, seedCoversPrefix } from '../src/index.ts' -import { runPersistenceContract, meta, oneTurnLog } from './contract.ts' +import { SessionPersistence, assertSerializable, seedCoversPrefix } from '../src/index' +import { runPersistenceContract, meta, oneTurnLog } from './contract' /** * A minimal in-memory {@link SessionPersistence} used to (a) cover the abstract diff --git a/packages/session/tests/repair.spec.ts b/packages/session/tests/repair.spec.ts index 57422e7719..2fa1bfae27 100644 --- a/packages/session/tests/repair.spec.ts +++ b/packages/session/tests/repair.spec.ts @@ -1,7 +1,7 @@ import { describe, expect, it } from 'vitest' import { CallId } from '@deepseek-ai/dsh-llm' -import { interruptedTurnClosers } from '../src/index.ts' -import type { SessionEvent } from '../src/index.ts' +import { interruptedTurnClosers } from '../src/index' +import type { SessionEvent } from '../src/index' /** * Unit coverage for the crash-recovery closer synthesis. The persistence diff --git a/packages/tool-bash/tests/integration.spec.ts b/packages/tool-bash/tests/integration.spec.ts index d31b3a5a7e..e2687b2708 100644 --- a/packages/tool-bash/tests/integration.spec.ts +++ b/packages/tool-bash/tests/integration.spec.ts @@ -9,7 +9,7 @@ import AgentRegistry from '@deepseek-ai/dsh-agent' import AgentLoop, { ReactLoopAgent } from '@deepseek-ai/dsh-agent-loop' import { LocalBashExecutor } from '@deepseek-ai/dsh-bash-local' import * as ToolBash from '@deepseek-ai/dsh-tool-bash' -import { MockAdapter, textResponse, toolCallResponse } from '../../agent-loop/tests/mock-adapter.ts' +import { MockAdapter, textResponse, toolCallResponse } from '../../agent-loop/tests/mock-adapter' /** * Full-loop integration: a scripted mock model drives the REAL bash tool diff --git a/packages/ui-stdio/tests/ui-stdio.spec.ts b/packages/ui-stdio/tests/ui-stdio.spec.ts index bd5e0f7f91..72d82b539c 100644 --- a/packages/ui-stdio/tests/ui-stdio.spec.ts +++ b/packages/ui-stdio/tests/ui-stdio.spec.ts @@ -5,7 +5,7 @@ import type { Agent, AgentStatus } from '@deepseek-ai/dsh-agent' import AgentRegistry from '@deepseek-ai/dsh-agent' import type { ContentBlock } from '@deepseek-ai/dsh-llm' import type { Session, SessionEvent } from '@deepseek-ai/dsh-session' -import { createStdioChat, type Config, type StdioRuntime } from '../src/index.ts' +import { createStdioChat, type Config, type StdioRuntime } from '../src/index' /** * Unit tests for the stdio UI plugin. They drive the REAL plugin body