mirror of
https://github.com/stablyai/orca.git
synced 2026-10-30 16:47:34 +00:00
refactor: group Claude structured session lifecycle owners (#34449)
* refactor: group Claude structured session lifecycle owners * refactor: consolidate retargeted Claude state type imports
This commit is contained in:
@@ -14,13 +14,13 @@ import { ClaudeStructuredSessionAdapter } from './claude-structured-session-adap
|
||||
import type {
|
||||
ClaudeLateDispatchOutcome,
|
||||
ClaudeStructuredSessionAdapterDeps
|
||||
} from './claude-structured-session-state'
|
||||
} from './structured/claude-structured-session-state'
|
||||
import {
|
||||
fakeClaude,
|
||||
identityFor,
|
||||
PROVIDER_SESSION_ID,
|
||||
claudeStartupSettled
|
||||
PROVIDER_SESSION_ID
|
||||
} from './claude-structured-session-test-support'
|
||||
import { claudeStartupSettled } from './claude-structured-startup-settled-test-support'
|
||||
|
||||
type CapturedEvent =
|
||||
| { at: number; kind: 'meta'; providerSessionId: string }
|
||||
|
||||
@@ -4,7 +4,10 @@ import type {
|
||||
AgentChildWorkLiveObservation
|
||||
} from '../../shared/agent-status-child-work-evidence'
|
||||
import { taskText, taskUsageTotalTokens } from './claude-background-task-frames'
|
||||
import type { ClaudeSession, ClaudeStructuredSessionEvent } from './claude-structured-session-state'
|
||||
import type {
|
||||
ClaudeSession,
|
||||
ClaudeStructuredSessionEvent
|
||||
} from './structured/claude-structured-session-state'
|
||||
import { deriveToolInputPreview } from '../../shared/agent-hook-listener/tool-input-preview'
|
||||
import {
|
||||
claudeRecord,
|
||||
|
||||
@@ -7,7 +7,7 @@ import type {
|
||||
} from '../../shared/agent-session-journal-types'
|
||||
import { readAgentJournalTurn } from '../../shared/agent-session-turn-record'
|
||||
import type { StructuredAgentSessionEventSink } from '../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
PROVIDER_SESSION_ID,
|
||||
adapterFor,
|
||||
|
||||
@@ -14,14 +14,14 @@ import { agentSessionFailureFact } from '../../shared/agent-session-failure'
|
||||
import { ClaudeControlRequestError } from './claude-agent-sdk-control-requests'
|
||||
import { claudeDispatchRejection } from './claude-structured-dispatch-content'
|
||||
import { ClaudeStructuredSessionAdapter } from './claude-structured-session-adapter'
|
||||
import type { ClaudeLateDispatchOutcome } from './claude-structured-session-state'
|
||||
import type { ClaudeLateDispatchOutcome } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
fakeClaude,
|
||||
identityFor,
|
||||
PROVIDER_SESSION_ID,
|
||||
type FakeConnection,
|
||||
claudeStartupSettled
|
||||
type FakeConnection
|
||||
} from './claude-structured-session-test-support'
|
||||
import { claudeStartupSettled } from './claude-structured-startup-settled-test-support'
|
||||
|
||||
type CapturedEvent =
|
||||
| { kind: 'meta'; providerSessionId: string }
|
||||
|
||||
@@ -12,9 +12,9 @@ import {
|
||||
rejectClaudeDispatchWaiters,
|
||||
releaseClaudeDispatchWaitersInDoubt
|
||||
} from './claude-structured-dispatch'
|
||||
import { readClaudeFrameString } from './claude-structured-init-proof'
|
||||
import { readClaudeFrameString } from './structured/claude-structured-init-proof'
|
||||
import type { ClaudeLateDispatchSettlement } from './claude-replay-turn-resolution'
|
||||
import type { ClaudeSession, ClaudeStartedSend } from './claude-structured-session-state'
|
||||
import type { ClaudeSession, ClaudeStartedSend } from './structured/claude-structured-session-state'
|
||||
|
||||
const UNSTARTED_VERDICT = {
|
||||
cancelled: 'cancelled',
|
||||
|
||||
@@ -12,14 +12,14 @@ import { ClaudeStructuredSessionAdapter } from './claude-structured-session-adap
|
||||
import type {
|
||||
ClaudeStructuredSessionAdapterDeps,
|
||||
ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-state'
|
||||
} from './structured/claude-structured-session-state'
|
||||
import type { ClaudeStructuredLaunch } from './claude-structured-launch-resolution'
|
||||
import {
|
||||
fakeClaude,
|
||||
identityFor,
|
||||
PROVIDER_SESSION_ID,
|
||||
claudeStartupSettled
|
||||
PROVIDER_SESSION_ID
|
||||
} from './claude-structured-session-test-support'
|
||||
import { claudeStartupSettled } from './claude-structured-startup-settled-test-support'
|
||||
import {
|
||||
assistantText,
|
||||
initFrame,
|
||||
|
||||
@@ -7,7 +7,7 @@ import type {
|
||||
import type { ClaudeChildToolQueries } from './claude-child-tool-queries'
|
||||
import type { ClaudeContextReportPart, ClaudeContextReportTarget } from './claude-context-facts'
|
||||
import type { ClaudeJournalPrompts } from './claude-structured-journal-prompts'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import type { ClaudeCommandStart } from './claude-command-turn'
|
||||
|
||||
import type { AgentSessionDeltaCoalescerDeps } from '../native-chat/agent-session-wire/agent-session-delta-coalescer'
|
||||
|
||||
@@ -17,7 +17,7 @@ import type { ClaudeCommandTurn } from './claude-command-turn'
|
||||
import { createClaudeTurnOpener, type ClaudeTurnSource } from './claude-turn-opening'
|
||||
import { refineClaudeQuotaTurnEnd } from './claude-terminal-failure'
|
||||
import type { ClaudeUsageLimitEvidence } from './claude-usage-limits'
|
||||
import type { ClaudeStartedSend } from './claude-structured-session-state'
|
||||
import type { ClaudeStartedSend } from './structured/claude-structured-session-state'
|
||||
|
||||
export type ClaudeOpenTurnDeps = {
|
||||
sink: StructuredAgentSessionEventSink
|
||||
|
||||
@@ -12,8 +12,8 @@ import type {
|
||||
ClaudeDispatchWaiter,
|
||||
ClaudeLateDispatchOutcome,
|
||||
ClaudeSession
|
||||
} from './claude-structured-session-state'
|
||||
import { readClaudeFrameString } from './claude-structured-init-proof'
|
||||
} from './structured/claude-structured-session-state'
|
||||
import { readClaudeFrameString } from './structured/claude-structured-init-proof'
|
||||
import { claudeDispatchContentKey } from './claude-structured-dispatch-content'
|
||||
|
||||
/** Settle provider-proven delivery independently of replay-row acceptance reconciliation. */
|
||||
|
||||
@@ -5,7 +5,7 @@ import {
|
||||
claudeStoppedRequestEndWait,
|
||||
settleClaudeTurnEndWaiters
|
||||
} from './claude-request-end-wait'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
|
||||
type InFlight = { translator: { currentTurnId: string | null }; dispatchWaiters: unknown[] }
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// Stop grace follows the provider request, including sends whose echo has not opened a turn yet.
|
||||
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
|
||||
/** Interrupt acknowledgement and request wind-down share this budget. */
|
||||
export const CLAUDE_STOP_GRACE_MS = 3_000
|
||||
|
||||
@@ -10,7 +10,7 @@ import { getClaudeProfileRouter } from '../claude-accounts/claude-profile-instal
|
||||
import type { StructuredAgentSessionAdapter } from '../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import { resolveSessionFilePath } from '../native-chat/session-file-resolver'
|
||||
import { splitTranscriptStreamLines } from '../native-chat/transcript-stream-lines'
|
||||
import { claudeSessionIdForRewind } from './claude-structured-session-id'
|
||||
import { claudeSessionIdForRewind } from './structured/claude-structured-session-id'
|
||||
import { materializeClaudeRewindTranscript } from './claude-rewind-transcript'
|
||||
|
||||
type TranscriptPromptRow = { type: 'user'; uuid: string; parentUuid?: unknown }
|
||||
|
||||
@@ -17,7 +17,7 @@ import {
|
||||
} from './claude-stream-json-connection'
|
||||
import { stopClaudeBackgroundTasks } from './claude-structured-control-actions'
|
||||
import { CLAUDE_STRUCTURED_BASE_OPTIONS } from './claude-structured-launch-resolution'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
|
||||
const FAKE_CLI = join(__dirname, '__fixtures__', 'claude-agent-sdk-scripted-cli.mjs')
|
||||
const SESSION_ID = '5348c19f-6a54-4c2e-9c68-9c2b1a3d4e5f'
|
||||
|
||||
@@ -15,7 +15,7 @@ import {
|
||||
} from './claude-stream-json-connection'
|
||||
import { openAgentSessionJournal } from '../native-chat/agent-session-journal/journal-store-factory'
|
||||
import { createDeferredStructuredAgentSessionEventSink } from '../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import { claudeAuthDiagnostic } from './claude-structured-init-proof'
|
||||
import { claudeAuthDiagnostic } from './structured/claude-structured-init-proof'
|
||||
import { createClaudeJournalTranslator } from './claude-structured-journal-translation'
|
||||
import { CLAUDE_STRUCTURED_BASE_OPTIONS } from './claude-structured-launch-resolution'
|
||||
import { openTestJournalHostDatabase } from '../native-chat/agent-session-journal/journal-host-database-test-support'
|
||||
|
||||
@@ -19,7 +19,7 @@ import {
|
||||
type ClaudeSession,
|
||||
type ClaudeSessionExit,
|
||||
type ClaudeStructuredSessionAdapterDeps
|
||||
} from './claude-structured-session-state'
|
||||
} from './structured/claude-structured-session-state'
|
||||
import {
|
||||
claudeAcquisitionCleanupError,
|
||||
closeClaudePublishedSessionForDeps
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
import { describe, expect, it } from 'vitest'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
PROVIDER_SESSION_ID,
|
||||
acquired,
|
||||
adapterFor,
|
||||
fakeClaude,
|
||||
identityFor,
|
||||
claudeOpened
|
||||
identityFor
|
||||
} from './claude-structured-session-test-support'
|
||||
import { claudeOpened } from './claude-structured-startup-settled-test-support'
|
||||
|
||||
/** Claude Code 2.1.280 list_models fixture; default and opus[1m] resolve to the same model. */
|
||||
const CATALOG = [
|
||||
|
||||
@@ -4,7 +4,7 @@ import type {
|
||||
StructuredAgentSessionCommandRun
|
||||
} from '../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import { dispatchClaudeTurn } from './claude-structured-dispatch'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
|
||||
/** Open the command turn before sending; its result settles the waiter and closes that turn. */
|
||||
export async function dispatchClaudeCommand(
|
||||
|
||||
@@ -11,7 +11,10 @@ import {
|
||||
runClaudeControl
|
||||
} from './claude-agent-sdk-control-requests'
|
||||
import { buildClaudePromptReply, ClaudePromptRegistry } from './claude-structured-prompt-replies'
|
||||
import type { ClaudeDispatchWaiter, ClaudeSession } from './claude-structured-session-state'
|
||||
import type {
|
||||
ClaudeDispatchWaiter,
|
||||
ClaudeSession
|
||||
} from './structured/claude-structured-session-state'
|
||||
import { ClaudeChildWorkDecoder } from './claude-child-work-decoder'
|
||||
import { sessionFor, userMessage } from './claude-structured-dispatch-test-support'
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ import { ClaudeControlRequestError } from './claude-stream-json-connection'
|
||||
import { ClaudeControlRequestTimeoutError } from './claude-agent-sdk-control-requests'
|
||||
import { settleCancelledClaudeDispatchWaiters } from './claude-structured-dispatch'
|
||||
import type { ClaudeLateDispatchSettlement } from './claude-replay-turn-resolution'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
import { CLAUDE_STOP_GRACE_MS } from './claude-request-end-wait'
|
||||
|
||||
const INTERRUPT_CANCEL_QUEUED_CAPABILITY = 'interrupt_cancel_queued_v1'
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
import { vi, type Mock } from 'vitest'
|
||||
import type { AgentJournalMessageItem } from '../../shared/agent-session-journal-types'
|
||||
import { retireClaudeDispatchWaiters } from './claude-structured-dispatch'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
import { ClaudeBackgroundTaskTracker } from './claude-background-task-tracker'
|
||||
import { ClaudeChildWorkDecoder } from './claude-child-work-decoder'
|
||||
import { ClaudeSlashCommandCatalog } from './claude-slash-command-catalog'
|
||||
import { createClaudeInitProof } from './claude-structured-init-proof'
|
||||
import { claudeProviderHandleLink } from './claude-structured-owner-identity'
|
||||
import { createClaudeInitProof } from './structured/claude-structured-init-proof'
|
||||
import { claudeProviderHandleLink } from './structured/claude-structured-owner-identity'
|
||||
|
||||
export function sessionFor(send: Mock = vi.fn().mockResolvedValue(undefined)): ClaudeSession {
|
||||
return {
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
import type { ClaudeDispatchWaiter, ClaudeSession } from './claude-structured-session-state'
|
||||
import type {
|
||||
ClaudeDispatchWaiter,
|
||||
ClaudeSession
|
||||
} from './structured/claude-structured-session-state'
|
||||
|
||||
const MAX_RETIRED_DISPATCH_WAITERS = 64
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ import { dispatchClaudeTurn } from './claude-structured-dispatch'
|
||||
import { resolveClaudeReplayTurn } from './claude-replay-turn-resolution'
|
||||
import { ClaudeDispatchContentError, readClaudeImage } from './claude-structured-dispatch-content'
|
||||
import { claudeUnwrittenUserMessageError } from './claude-agent-sdk-user-message-queue'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
childExited,
|
||||
sessionFor,
|
||||
|
||||
@@ -8,7 +8,10 @@ import {
|
||||
} from './claude-structured-dispatch-waiters'
|
||||
import type { AgentJournalMessageItem } from '../../shared/agent-session-journal-types'
|
||||
import type { AgentSessionDispatchOutcome } from '../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import type { ClaudeDispatchWaiter, ClaudeSession } from './claude-structured-session-state'
|
||||
import type {
|
||||
ClaudeDispatchWaiter,
|
||||
ClaudeSession
|
||||
} from './structured/claude-structured-session-state'
|
||||
import type { ClaudeLateDispatchSettlement } from './claude-replay-turn-resolution'
|
||||
import {
|
||||
claudeDispatchContentKey,
|
||||
|
||||
@@ -21,18 +21,18 @@ import { structuredAgentSessionSendSelection } from '../../shared/structured-age
|
||||
import { claudeAndCodexAgents } from '../native-chat/agent-session-wire/structured-agent-session-adapter-router-test-support'
|
||||
import { composeCodexSessionOptionCatalog } from '../codex/codex-structured-model-catalog'
|
||||
import { listedModels } from './claude-structured-model-catalog'
|
||||
import {
|
||||
ClaudeStructuredSessionAdapter,
|
||||
type ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-adapter'
|
||||
import { ClaudeStructuredSessionAdapter } from './claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
PROVIDER_SESSION_ID,
|
||||
fakeClaude,
|
||||
identityFor,
|
||||
recordingJournalSink,
|
||||
recordingJournalSink
|
||||
} from './claude-structured-session-test-support'
|
||||
import {
|
||||
claudeStartupSettled,
|
||||
claudeOpened
|
||||
} from './claude-structured-session-test-support'
|
||||
} from './claude-structured-startup-settled-test-support'
|
||||
|
||||
const SESSION = 'session-1'
|
||||
const ACCOUNT_HOME = '/accounts/claude'
|
||||
|
||||
@@ -1,8 +1,11 @@
|
||||
import { describe, expect, it } from 'vitest'
|
||||
import { setClaudeStructuredOption } from './claude-structured-options'
|
||||
import { readClaudeSettingsEffort } from './claude-structured-session-options'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-adapter'
|
||||
import type {
|
||||
ClaudeSession,
|
||||
ClaudeStructuredSessionEvent
|
||||
} from './structured/claude-structured-session-state'
|
||||
|
||||
import { USER_MESSAGE, acquired, fakeClaude } from './claude-structured-session-test-support'
|
||||
|
||||
/** Verbatim from Claude Code 2.1.258's get_settings response. */
|
||||
|
||||
@@ -7,7 +7,7 @@ import type {
|
||||
ClaudeSession,
|
||||
ClaudeStructuredSessionAdapterDeps,
|
||||
ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-state'
|
||||
} from './structured/claude-structured-session-state'
|
||||
|
||||
type ClaudeEventDelivery = {
|
||||
session: ClaudeSession | null
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
|
||||
/** Provider observations only; requested choices and picker defaults cannot vouch for a run. */
|
||||
export function claudeExecutionObservations(session: ClaudeSession): Record<string, string> {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import type { CanUseTool, OnUserDialog, PermissionResult } from '@anthropic-ai/claude-agent-sdk'
|
||||
import type { ClaudePromptRegistry } from './claude-structured-prompt-replies'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
claudePermissionPresentation,
|
||||
claudePermissionSubject
|
||||
|
||||
@@ -2,7 +2,7 @@ import { describe, expect, it, vi } from 'vitest'
|
||||
import { AGENT_JOURNAL_THREAD_SCOPE } from '../../shared/agent-session-journal-types'
|
||||
import type { StructuredAgentSessionSinkBarrier } from '../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import { ClaudeJournalPrompts } from './claude-structured-journal-prompts'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
|
||||
const PROMPT: Extract<ClaudeStructuredSessionEvent, { type: 'prompt' }> = {
|
||||
type: 'prompt',
|
||||
|
||||
@@ -17,7 +17,7 @@ import {
|
||||
claudeQuestionItems,
|
||||
type ClaudeQuestionItem
|
||||
} from './claude-structured-prompt-items'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
|
||||
const ADMITTED = { accepted: true } as const
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ import type {
|
||||
} from '../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import { readAgentJournalTurn } from '../../shared/agent-session-turn-record'
|
||||
import { createClaudeJournalTranslator } from './claude-structured-journal-translation'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import { acquired, fakeClaude } from './claude-structured-session-test-support'
|
||||
|
||||
type Append = {
|
||||
|
||||
@@ -10,9 +10,9 @@ import { FLOATING_TERMINAL_WORKTREE_ID } from '../../shared/constants'
|
||||
import {
|
||||
CLAUDE_DEFAULT_SETTING_SOURCES,
|
||||
CLAUDE_SESSION_STATE_EVENTS_ENV,
|
||||
CLAUDE_STRUCTURED_BASE_OPTIONS,
|
||||
claudeSessionIdForOrcaSession
|
||||
CLAUDE_STRUCTURED_BASE_OPTIONS
|
||||
} from './claude-structured-launch-resolution'
|
||||
import { claudeSessionIdForOrcaSession } from './structured/claude-structured-session-id'
|
||||
import { CLAUDE_THINKING_DISPLAY_FLAG, type ClaudeCliFlag } from './claude-cli-flag-support'
|
||||
import { claudeProviderHandle } from '../../shared/agent-session-provider-handle-encoding'
|
||||
|
||||
|
||||
@@ -31,14 +31,12 @@ import {
|
||||
resolveClaudeStructuredLaunchHome
|
||||
} from './claude-structured-launch-home'
|
||||
import type { StructuredAgentLaunchPartResolver } from '../runtime/structured-agent-launch-composition'
|
||||
import { claudeSessionIdForOrcaSession } from './claude-structured-session-id'
|
||||
import { claudeSessionIdForOrcaSession } from './structured/claude-structured-session-id'
|
||||
import {
|
||||
pendingAgentSessionRewindFork,
|
||||
type AgentSessionRewindFork
|
||||
} from '../../shared/agent-session-rewind'
|
||||
|
||||
export { claudeSessionIdForOrcaSession }
|
||||
|
||||
export const CLAUDE_DEFAULT_SETTING_SOURCES = ['user', 'project', 'local'] as const
|
||||
export const CLAUDE_SESSION_STATE_EVENTS_ENV = 'CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS'
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ import {
|
||||
} from './claude-structured-session-test-support'
|
||||
import { captureStructuredExecutionOptions } from '../native-chat/agent-session-wire/structured-agent-session-execution-options'
|
||||
import { claudeAndCodexAgents } from '../native-chat/agent-session-wire/structured-agent-session-adapter-router-test-support'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import * as dispatchContent from './claude-structured-dispatch-content'
|
||||
import { ClaudeControlRequestError } from './claude-stream-json-connection'
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ import {
|
||||
} from '../native-chat/agent-session-wire/structured-agent-session-logger'
|
||||
import { listedModels } from './claude-structured-model-catalog'
|
||||
import { setClaudeStructuredOption } from './claude-structured-options'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
isAbortSignalReason,
|
||||
throwIfSignalAborted,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { describe, expect, it } from 'vitest'
|
||||
import { setClaudeStructuredOption } from './claude-structured-options'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
PROVIDER_SESSION_ID,
|
||||
USER_MESSAGE,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { describe, expect, it } from 'vitest'
|
||||
import { setClaudeStructuredOption } from './claude-structured-options'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
|
||||
/** Verbatim row shapes from Claude Code 2.1.260's list_models response. */
|
||||
const DEFAULT_ROW = { value: 'default', resolvedModel: 'claude-opus-5', displayName: 'Default' }
|
||||
|
||||
@@ -8,7 +8,7 @@ import { CLAUDE_SESSION_OPTION_CATALOG } from '../../shared/agent-session-option
|
||||
import type { AgentSessionOptionsResult } from '../../shared/agent-session-wire'
|
||||
import type { SessionOptionDescriptor } from '../../shared/native-chat/input/native-chat-session-options'
|
||||
import { setClaudeStructuredOption } from './claude-structured-options'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
import { PROVIDER_SESSION_ID, acquired, fakeClaude } from './claude-structured-session-test-support'
|
||||
|
||||
/** Claude Code 2.1.260 list_models fixture; Haiku omits both effort keys. */
|
||||
|
||||
@@ -6,7 +6,7 @@ import { sessionFor } from './claude-structured-dispatch-test-support'
|
||||
import { createClaudeJournalTranslator } from './claude-structured-journal-translation'
|
||||
import { setClaudeStructuredOption } from './claude-structured-options'
|
||||
import { adoptClaudeStructuredSpawnOptions } from './claude-structured-spawn-options'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
|
||||
function ringSession(catalog: unknown[] = []) {
|
||||
const session = sessionFor()
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
import { describe, expect, it, vi } from 'vitest'
|
||||
import { setClaudeStructuredOption } from './claude-structured-options'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
import { ClaudeControlRequestTimeoutError } from './claude-agent-sdk-control-requests'
|
||||
import { ClaudeBackgroundTaskTracker } from './claude-background-task-tracker'
|
||||
import { ClaudeChildWorkDecoder } from './claude-child-work-decoder'
|
||||
import { ClaudeSlashCommandCatalog } from './claude-slash-command-catalog'
|
||||
import { createClaudeInitProof } from './claude-structured-init-proof'
|
||||
import { claudeProviderHandleLink } from './claude-structured-owner-identity'
|
||||
import { createClaudeInitProof } from './structured/claude-structured-init-proof'
|
||||
import { claudeProviderHandleLink } from './structured/claude-structured-owner-identity'
|
||||
import {
|
||||
observeClaudeFastModeFacts,
|
||||
readClaudeStructuredSessionOptions
|
||||
|
||||
@@ -6,7 +6,7 @@ import {
|
||||
readClaudeSettingsEffort,
|
||||
readClaudeSettingsFastMode
|
||||
} from './claude-structured-session-options'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
import type { StructuredAgentSessionAdapter } from '../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import { decodeStructuredAgentSessionOptionValue } from '../../shared/structured-agent-session-option-codec'
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ import type {
|
||||
import { ClaudeJournalPrompts } from './claude-structured-journal-prompts'
|
||||
import { claudeQuestionItems } from './claude-structured-prompt-items'
|
||||
import type { ClaudePendingPrompt } from './claude-structured-prompt-replies'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
USER_MESSAGE,
|
||||
acquired,
|
||||
|
||||
@@ -7,7 +7,7 @@ import type { StructuredAgentSessionAdapterStop } from '../native-chat/agent-ses
|
||||
import { answerClaudePrompt, cancelClaudeTurn } from './claude-structured-control-actions'
|
||||
import type { ClaudeLateDispatchSettlement } from './claude-replay-turn-resolution'
|
||||
import { buildClaudePromptReply, claudePromptDismissal } from './claude-structured-prompt-replies'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
import type { ClaudePendingPrompt } from './claude-prompt-registry'
|
||||
import { CLAUDE_STOP_GRACE_MS } from './claude-request-end-wait'
|
||||
import type { PermissionResult } from '@anthropic-ai/claude-agent-sdk'
|
||||
|
||||
@@ -9,7 +9,7 @@ import type {
|
||||
import { openAgentSessionJournal } from '../native-chat/agent-session-journal/journal-store-factory'
|
||||
import { createDeferredStructuredAgentSessionEventSink } from '../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import { createClaudeJournalTranslator } from './claude-structured-journal-translation'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import { openTestJournalHostDatabase } from '../native-chat/agent-session-journal/journal-host-database-test-support'
|
||||
import { testEventSinkLogging } from '../native-chat/agent-session-wire/structured-agent-session-logger-test-support'
|
||||
import { claudeProviderHandle } from '../../shared/agent-session-provider-handle-encoding'
|
||||
|
||||
@@ -3,7 +3,7 @@ import type { AgentJournalItemBody } from '../../shared/agent-session-journal-ty
|
||||
import { agentJournalItemKey } from '../../shared/agent-session-journal-item-key'
|
||||
import { readAgentJournalTurn } from '../../shared/agent-session-turn-record'
|
||||
import { DISPATCH_REJECTED_CANCELLED } from '../../shared/structured-agent-session-dispatch-rejection'
|
||||
import type { ClaudeStructuredSessionAdapterDeps } from './claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionAdapterDeps } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
PROVIDER_SESSION_ID,
|
||||
USER_MESSAGE,
|
||||
|
||||
@@ -10,17 +10,15 @@ import type {
|
||||
import { readAgentJournalTurn } from '../../shared/agent-session-turn-record'
|
||||
import type { StructuredAgentSessionEventSink } from '../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import { CLAUDE_STRUCTURED_BASE_OPTIONS } from './claude-structured-launch-resolution'
|
||||
import {
|
||||
ClaudeStructuredSessionAdapter,
|
||||
type ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-adapter'
|
||||
import { ClaudeStructuredSessionAdapter } from './claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
realClaudeAuthenticated,
|
||||
realClaudeAvailable,
|
||||
realClaudeCommand,
|
||||
realClaudeLaunchHome
|
||||
} from './claude-real-cli-availability-test-support'
|
||||
import { claudeStartupSettled } from './claude-structured-session-test-support'
|
||||
import { claudeStartupSettled } from './claude-structured-startup-settled-test-support'
|
||||
import { claudeProviderHandle } from '../../shared/agent-session-provider-handle-encoding'
|
||||
|
||||
const SESSION_ID = 'real-cli-fold'
|
||||
|
||||
@@ -15,17 +15,15 @@ import {
|
||||
claudeStructuredPermissionOptions
|
||||
} from './claude-structured-launch-resolution'
|
||||
import { listedModels } from './claude-structured-model-catalog'
|
||||
import {
|
||||
ClaudeStructuredSessionAdapter,
|
||||
type ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-adapter'
|
||||
import { ClaudeStructuredSessionAdapter } from './claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
realClaudeAuthenticated,
|
||||
realClaudeAvailable,
|
||||
realClaudeCommand,
|
||||
realClaudeLaunchHome
|
||||
} from './claude-real-cli-availability-test-support'
|
||||
import { claudeStartupSettled } from './claude-structured-session-test-support'
|
||||
import { claudeStartupSettled } from './claude-structured-startup-settled-test-support'
|
||||
import { journal } from './claude-context-usage-test-support'
|
||||
|
||||
const SESSION_ID = 'real-cli-options'
|
||||
|
||||
@@ -17,11 +17,9 @@ import {
|
||||
CLAUDE_STRUCTURED_BASE_OPTIONS,
|
||||
type ClaudeStructuredSdkOptions
|
||||
} from './claude-structured-launch-resolution'
|
||||
import {
|
||||
ClaudeStructuredSessionAdapter,
|
||||
type ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-adapter'
|
||||
import { claudeStartupSettled } from './claude-structured-session-test-support'
|
||||
import { ClaudeStructuredSessionAdapter } from './claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import { claudeStartupSettled } from './claude-structured-startup-settled-test-support'
|
||||
|
||||
const SESSION_ID = 'real-cli-rewind'
|
||||
|
||||
|
||||
@@ -6,17 +6,15 @@ import { describe, expect, it } from 'vitest'
|
||||
import type { AgentSessionJournalIdentity } from '../../shared/agent-session-journal-types'
|
||||
import type { StructuredAgentSessionEventSink } from '../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import { CLAUDE_STRUCTURED_BASE_OPTIONS } from './claude-structured-launch-resolution'
|
||||
import {
|
||||
ClaudeStructuredSessionAdapter,
|
||||
type ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-adapter'
|
||||
import { ClaudeStructuredSessionAdapter } from './claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
realClaudeAuthenticated,
|
||||
realClaudeAvailable,
|
||||
realClaudeCommand,
|
||||
realClaudeLaunchHome
|
||||
} from './claude-real-cli-availability-test-support'
|
||||
import { claudeStartupSettled } from './claude-structured-session-test-support'
|
||||
import { claudeStartupSettled } from './claude-structured-startup-settled-test-support'
|
||||
import { claudeProviderHandle } from '../../shared/agent-session-provider-handle-encoding'
|
||||
|
||||
const SESSION_ID = 'real-cli-stop-task'
|
||||
|
||||
@@ -10,7 +10,7 @@ import { createNativeChatVisualsDelivery } from '../native-chat/native-chat-visu
|
||||
import { nativeChatScratchFolderFor } from '../native-chat/native-chat-scratch-folder'
|
||||
import { NATIVE_CHAT_VISUALS_SKILL_NAME } from '../native-chat/native-chat-visuals-skill-location'
|
||||
import { createClaudeCliFlagSupport } from './claude-cli-flag-support'
|
||||
import { readClaudeInit } from './claude-structured-init-proof'
|
||||
import { readClaudeInit } from './structured/claude-structured-init-proof'
|
||||
import {
|
||||
realClaudeAuthenticated,
|
||||
realClaudeAvailable,
|
||||
@@ -18,10 +18,8 @@ import {
|
||||
realClaudeCommand,
|
||||
realClaudeLaunchHome
|
||||
} from './claude-real-cli-availability-test-support'
|
||||
import {
|
||||
ClaudeStructuredSessionAdapter,
|
||||
type ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-adapter'
|
||||
import { ClaudeStructuredSessionAdapter } from './claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
|
||||
const SESSION_ID = 'real-cli-visuals'
|
||||
const listed = (value: unknown): unknown[] => (Array.isArray(value) ? value : [])
|
||||
|
||||
@@ -11,7 +11,7 @@ import {
|
||||
CLAUDE_STRUCTURED_BASE_OPTIONS,
|
||||
claudeStructuredPermissionOptions
|
||||
} from './claude-structured-launch-resolution'
|
||||
import { readClaudeInit } from './claude-structured-init-proof'
|
||||
import { readClaudeInit } from './structured/claude-structured-init-proof'
|
||||
import {
|
||||
realClaudeAuthenticated,
|
||||
realClaudeAuthStatus,
|
||||
@@ -20,12 +20,16 @@ import {
|
||||
realClaudeCommand,
|
||||
realClaudeLaunchHome
|
||||
} from './claude-real-cli-availability-test-support'
|
||||
import { ClaudeStructuredSessionAdapter } from './claude-structured-session-adapter'
|
||||
import type {
|
||||
ClaudeStructuredSessionEvent,
|
||||
ClaudeStructuredSessionAdapterDeps
|
||||
} from './structured/claude-structured-session-state'
|
||||
|
||||
import {
|
||||
ClaudeStructuredSessionAdapter,
|
||||
type ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionAdapterDeps } from './claude-structured-session-state'
|
||||
import { claudeOpened, claudeStartupSettled } from './claude-structured-session-test-support'
|
||||
claudeOpened,
|
||||
claudeStartupSettled
|
||||
} from './claude-structured-startup-settled-test-support'
|
||||
import { claudeProviderHandle } from '../../shared/agent-session-provider-handle-encoding'
|
||||
|
||||
const command = realClaudeCommand
|
||||
|
||||
@@ -3,7 +3,7 @@ import { agentJournalItemKey } from '../../shared/agent-session-journal-item-key
|
||||
import type { AgentJournalItemBody } from '../../shared/agent-session-journal-types'
|
||||
import type { StructuredAgentSessionAppendOptions } from '../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import { createClaudeJournalTranslator } from './claude-structured-journal-translation'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
|
||||
type Write = {
|
||||
key: string
|
||||
|
||||
@@ -5,7 +5,7 @@ import type {
|
||||
} from '../../shared/agent-session-journal-types'
|
||||
import { readAgentJournalTurn } from '../../shared/agent-session-turn-record'
|
||||
import type { StructuredAgentSessionEventSink } from '../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
PROVIDER_SESSION_ID,
|
||||
USER_MESSAGE,
|
||||
|
||||
@@ -5,16 +5,16 @@ import { afterEach, describe, expect, it, vi } from 'vitest'
|
||||
import { createTrackedJournalOpener } from '../native-chat/agent-session-journal/journal-host-database-test-support'
|
||||
import { createDeferredStructuredAgentSessionEventSink } from '../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import { testEventSinkLogging } from '../native-chat/agent-session-wire/structured-agent-session-logger-test-support'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
adapterFor,
|
||||
fakeClaude,
|
||||
identityFor,
|
||||
PROVIDER_SESSION_ID,
|
||||
recordingJournalSink,
|
||||
tick,
|
||||
claudeOpened
|
||||
tick
|
||||
} from './claude-structured-session-test-support'
|
||||
import { claudeOpened } from './claude-structured-startup-settled-test-support'
|
||||
|
||||
const journals = createTrackedJournalOpener()
|
||||
const cleanups: (() => Promise<void>)[] = []
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import type {
|
||||
ClaudeSession,
|
||||
ClaudeStructuredSessionAdapterDeps
|
||||
} from './claude-structured-session-state'
|
||||
} from './structured/claude-structured-session-state'
|
||||
import { settleClaudeTurnEndWaiters } from './claude-request-end-wait'
|
||||
import { isRootClaudeFrame } from './claude-turn-opening'
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@ import { retireClaudeLaunchedModel } from './claude-structured-retired-model'
|
||||
import {
|
||||
adapterFor,
|
||||
claudeFrame,
|
||||
claudeStartupSettled,
|
||||
fakeClaude,
|
||||
tick,
|
||||
identityFor,
|
||||
@@ -11,6 +10,7 @@ import {
|
||||
recordingJournalSink,
|
||||
USER_MESSAGE
|
||||
} from './claude-structured-session-test-support'
|
||||
import { claudeStartupSettled } from './claude-structured-startup-settled-test-support'
|
||||
|
||||
const RETIRED = 'claude-retired-1'
|
||||
/** Claude Code 2.1.280 lists native rows plus the custom model passed at launch. */
|
||||
|
||||
@@ -2,7 +2,7 @@ import { beginClaudeOptionMutation } from './claude-structured-execution-observa
|
||||
import type {
|
||||
ClaudeSession,
|
||||
ClaudeStructuredSessionAdapterDeps
|
||||
} from './claude-structured-session-state'
|
||||
} from './structured/claude-structured-session-state'
|
||||
|
||||
/** Retire only a still-selected launch model after a root model_not_found reply; preserve saved picks. */
|
||||
export function retireClaudeLaunchedModel(
|
||||
|
||||
@@ -7,10 +7,8 @@ import {
|
||||
} from '../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import type { ClaudeStreamJsonConnection } from './claude-stream-json-connection'
|
||||
import { ORCA_AGENT_SESSION_SPAWN_TOKEN_ENV as SPAWN_TOKEN_ENV } from '../../shared/agent-session-caller-env'
|
||||
import type {
|
||||
ClaudeStructuredSessionAdapter,
|
||||
ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionAdapter } from './claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
acquired,
|
||||
adapterFor,
|
||||
@@ -20,9 +18,9 @@ import {
|
||||
PROVIDER_SESSION_ID,
|
||||
tick,
|
||||
USER_MESSAGE,
|
||||
type FakeConnection,
|
||||
claudeOpened
|
||||
type FakeConnection
|
||||
} from './claude-structured-session-test-support'
|
||||
import { claudeOpened } from './claude-structured-startup-settled-test-support'
|
||||
import { invokeCanUseTool } from './claude-can-use-tool-test-support'
|
||||
import { claudeProviderHandle } from '../../shared/agent-session-provider-handle-encoding'
|
||||
import { providerRequestTimeoutOf } from '../provider-process/provider-request-timeout'
|
||||
|
||||
@@ -7,8 +7,8 @@ import type {
|
||||
} from '../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import { stopCurrentClaudeBackgroundTasks } from './claude-structured-control-actions'
|
||||
import { claudeHeldSends, claudeHoldsDispatch } from './claude-command-lifecycle'
|
||||
import { releaseClaudeAcquisition } from './claude-structured-acquisition-release'
|
||||
import { acquireClaudeSession } from './claude-structured-session-acquisition'
|
||||
import { releaseClaudeAcquisition } from './structured/claude-structured-acquisition-release'
|
||||
import { acquireClaudeSession } from './structured/claude-structured-session-acquisition'
|
||||
import { supportsClaudeStructuredLocation } from './claude-structured-location-support'
|
||||
import * as claudeOptions from './claude-structured-options'
|
||||
import { dispatchClaudeMessage } from './claude-structured-message-options'
|
||||
@@ -20,7 +20,7 @@ import {
|
||||
type ClaudeSessionExit,
|
||||
type ClaudeStructuredSessionAdapterDeps,
|
||||
type ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-state'
|
||||
} from './structured/claude-structured-session-state'
|
||||
import {
|
||||
closeAllClaudeSessions,
|
||||
closeClaudeSession,
|
||||
@@ -44,14 +44,9 @@ import {
|
||||
} from './claude-structured-prompt-ownership'
|
||||
import { claudePromptCancelRoute } from './claude-structured-prompt-replies'
|
||||
import { claudeForkForRewind } from './claude-rewind-fork'
|
||||
import { openClaudeStructuredSession } from './claude-structured-session-open'
|
||||
import { openClaudeStructuredSession } from './structured/claude-structured-session-open'
|
||||
|
||||
export type { ClaudeStructuredLaunch } from './claude-structured-launch-resolution'
|
||||
export type {
|
||||
ClaudeAuthDiagnostic,
|
||||
ClaudeStructuredSessionAdapterDeps,
|
||||
ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-state'
|
||||
|
||||
export class ClaudeStructuredSessionAdapter implements StructuredAgentSessionAdapter {
|
||||
private readonly sessions = new Map<string, ClaudeSession>()
|
||||
|
||||
@@ -3,7 +3,7 @@ import type { StructuredAgentSessionEventSink } from '../native-chat/agent-sessi
|
||||
import type {
|
||||
ClaudeStructuredSessionAdapterDeps,
|
||||
ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-adapter'
|
||||
} from './structured/claude-structured-session-state'
|
||||
import {
|
||||
PROVIDER_SESSION_ID,
|
||||
adapterFor,
|
||||
@@ -14,7 +14,7 @@ import type { AgentChildWorkEvidence } from '../../shared/agent-status-child-wor
|
||||
import { AgentSessionAcquisitionRootExitObservedError } from '../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import { ClaudePromptRegistry } from './claude-structured-prompt-replies'
|
||||
import { claudeRootExitObserved, closeClaudeSession } from './claude-structured-session-close'
|
||||
import { ClaudeAcquisitionRegistry } from './claude-structured-session-state'
|
||||
import { ClaudeAcquisitionRegistry } from './structured/claude-structured-session-state'
|
||||
|
||||
describe('Claude published session close lifecycle', () => {
|
||||
it('never reads a failed spawn as an observed root exit, whatever checks it first', async () => {
|
||||
|
||||
@@ -4,8 +4,8 @@ import type {
|
||||
ClaudeSession,
|
||||
ClaudeSessionExit,
|
||||
ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-state'
|
||||
import { cancelClaudeAcquisitionAttempt } from './claude-structured-session-state'
|
||||
} from './structured/claude-structured-session-state'
|
||||
import { cancelClaudeAcquisitionAttempt } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
AgentSessionAcquisitionExitProvenError,
|
||||
AgentSessionAcquisitionExitUnprovenError,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { describe, expect, it, vi } from 'vitest'
|
||||
import type { StructuredAgentSessionEventSink } from '../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
adapterFor,
|
||||
fakeClaude,
|
||||
|
||||
@@ -16,7 +16,7 @@ import type {
|
||||
ClaudeSessionExit,
|
||||
ClaudeStructuredSessionAdapterDeps,
|
||||
ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-state'
|
||||
} from './structured/claude-structured-session-state'
|
||||
|
||||
export type ClaudeExitLifecycle = {
|
||||
sessions: Map<string, ClaudeSession>
|
||||
|
||||
@@ -10,11 +10,11 @@ import type { ClaudeStreamJsonConnection } from './claude-stream-json-connection
|
||||
import type { ClaudeJournalTranslator } from './claude-journal-translator-contract'
|
||||
import { createClaudeJournalTranslator } from './claude-structured-journal-translation'
|
||||
import type { ClaudeGoalBackgroundWork } from './claude-background-task-tracker'
|
||||
import type { ClaudeInitProof } from './claude-structured-init-proof'
|
||||
import type { ClaudeInitProof } from './structured/claude-structured-init-proof'
|
||||
import type {
|
||||
ClaudeAcquisitionAttempt,
|
||||
ClaudeAcquireCallbacks
|
||||
} from './claude-structured-session-state'
|
||||
} from './structured/claude-structured-session-state'
|
||||
|
||||
export function createClaudeSessionJournalTranslator(
|
||||
sink: StructuredAgentSessionEventSink | undefined,
|
||||
|
||||
@@ -6,7 +6,7 @@ import {
|
||||
seedModels,
|
||||
text
|
||||
} from './claude-structured-model-catalog'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
import { structuredAgentSessionOptionModels } from '../native-chat/agent-session-wire/structured-agent-session-option-models'
|
||||
import {
|
||||
claudeFastModeSupport,
|
||||
|
||||
@@ -1,20 +1,22 @@
|
||||
import { describe, expect, it, vi } from 'vitest'
|
||||
import type { StructuredAgentSessionEventSink } from '../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import {
|
||||
ClaudeStructuredSessionAdapter,
|
||||
type ClaudeStructuredSessionAdapterDeps,
|
||||
type ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-adapter'
|
||||
import { ClaudeStructuredSessionAdapter } from './claude-structured-session-adapter'
|
||||
import type {
|
||||
ClaudeStructuredSessionAdapterDeps,
|
||||
ClaudeStructuredSessionEvent
|
||||
} from './structured/claude-structured-session-state'
|
||||
import {
|
||||
adapterFor,
|
||||
fakeClaude,
|
||||
identityFor,
|
||||
PROVIDER_SESSION_ID,
|
||||
tick,
|
||||
recordingJournalSink,
|
||||
recordingJournalSink
|
||||
} from './claude-structured-session-test-support'
|
||||
import {
|
||||
claudeStartupSettled,
|
||||
claudeOpened
|
||||
} from './claude-structured-session-test-support'
|
||||
} from './claude-structured-startup-settled-test-support'
|
||||
import { invokeCanUseTool } from './claude-can-use-tool-test-support'
|
||||
import {
|
||||
claudeProviderHandle,
|
||||
|
||||
@@ -11,17 +11,15 @@ import type {
|
||||
} from './claude-stream-json-connection'
|
||||
import {
|
||||
ClaudeStructuredSessionAdapter,
|
||||
type ClaudeStructuredSessionAdapterDeps,
|
||||
type ClaudeStructuredLaunch,
|
||||
type ClaudeStructuredSessionEvent
|
||||
type ClaudeStructuredLaunch
|
||||
} from './claude-structured-session-adapter'
|
||||
import type {
|
||||
ClaudeStructuredSessionAdapterDeps,
|
||||
ClaudeStructuredSessionEvent
|
||||
} from './structured/claude-structured-session-state'
|
||||
import type { StructuredAgentSessionEventSink } from '../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import { claudeProviderHandle } from '../../shared/agent-session-provider-handle-encoding'
|
||||
import { claudeStartupSettled } from './claude-structured-startup-settled-test-support'
|
||||
export {
|
||||
claudeStartupSettled,
|
||||
claudeOpened
|
||||
} from './claude-structured-startup-settled-test-support'
|
||||
|
||||
export const PROVIDER_SESSION_ID = '819cf9f8-e43c-4ad7-b50f-54aa158a726a'
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ import type {
|
||||
ClaudeStructuredLaunch,
|
||||
ClaudeStructuredSdkOptions
|
||||
} from './claude-structured-launch-resolution'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import type { ClaudeSession } from './structured/claude-structured-session-state'
|
||||
import { restoredClaudeStructuredSessionOptions } from './claude-structured-options'
|
||||
|
||||
const EFFORT_LEVELS: ReadonlySet<string> = new Set<EffortLevel>([
|
||||
|
||||
@@ -3,9 +3,9 @@ import {
|
||||
adapterFor,
|
||||
fakeClaude,
|
||||
identityFor,
|
||||
claudeOpened,
|
||||
USER_MESSAGE
|
||||
} from './claude-structured-session-test-support'
|
||||
import { claudeOpened } from './claude-structured-startup-settled-test-support'
|
||||
|
||||
it("applies a resumed conversation's saved Fast off before message input beside the Arguments' settings", async () => {
|
||||
let fastMode = true
|
||||
|
||||
@@ -14,18 +14,18 @@ import type { AgentSessionRecord } from '../../shared/agent-session-record'
|
||||
import { LOCAL_EXECUTION_HOST_ID } from '../../shared/execution-host'
|
||||
import type { AgentSessionRecordStore } from '../runtime/agent-session-record-store'
|
||||
import { reviseAgentSessionProviderResumePoint } from '../runtime/agent-session/ownership/agent-session-provider-handle-transition'
|
||||
import {
|
||||
ClaudeStructuredSessionAdapter,
|
||||
type ClaudeStructuredSessionAdapterDeps,
|
||||
type ClaudeStructuredSessionEvent
|
||||
} from './claude-structured-session-adapter'
|
||||
import { ClaudeStructuredSessionAdapter } from './claude-structured-session-adapter'
|
||||
import type {
|
||||
ClaudeStructuredSessionAdapterDeps,
|
||||
ClaudeStructuredSessionEvent
|
||||
} from './structured/claude-structured-session-state'
|
||||
import {
|
||||
fakeClaude,
|
||||
identityFor,
|
||||
PROVIDER_SESSION_ID,
|
||||
claudeStartupSettled,
|
||||
tick
|
||||
} from './claude-structured-session-test-support'
|
||||
import { claudeStartupSettled } from './claude-structured-startup-settled-test-support'
|
||||
import { claudeProviderHandle } from '../../shared/agent-session-provider-handle-encoding'
|
||||
|
||||
const FENCE = 7
|
||||
|
||||
@@ -27,13 +27,13 @@ import { indexedStatusFeedSession } from '../native-chat/agent-session-wire/stru
|
||||
import { invokeCanUseTool } from './claude-can-use-tool-test-support'
|
||||
import { system, toolUse } from './claude-child-work-producer-harness.test-fixture'
|
||||
import { ClaudeStructuredSessionAdapter } from './claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
fakeClaude,
|
||||
identityFor,
|
||||
PROVIDER_SESSION_ID,
|
||||
claudeStartupSettled
|
||||
PROVIDER_SESSION_ID
|
||||
} from './claude-structured-session-test-support'
|
||||
import { claudeStartupSettled } from './claude-structured-startup-settled-test-support'
|
||||
|
||||
const SESSION = 'session-1'
|
||||
const FENCE = 7
|
||||
|
||||
@@ -5,7 +5,7 @@ import {
|
||||
type ClaudeMessageEnvelope
|
||||
} from './claude-structured-item-translation'
|
||||
import { agentJournalSubmissionKey } from '../../shared/agent-session-journal-item-key'
|
||||
import type { ClaudeStartedSend } from './claude-structured-session-state'
|
||||
import type { ClaudeStartedSend } from './structured/claude-structured-session-state'
|
||||
import {
|
||||
claudeProviderResumedTurnTimingAnchor,
|
||||
type ClaudeCurrentTurn
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
import {
|
||||
closeClaudeSession,
|
||||
claudeAcquisitionCleanupError
|
||||
} from './claude-structured-session-close'
|
||||
} from '../claude-structured-session-close'
|
||||
import type {
|
||||
ClaudeAcquisitionRegistry,
|
||||
ClaudeSession,
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
import type { AgentSessionAccountKind } from '../../shared/agent-session-availability'
|
||||
import { CLAUDE_DEFAULT_SETTING_SOURCES } from './claude-structured-launch-resolution'
|
||||
import type { AgentSessionAccountKind } from '../../../shared/agent-session-availability'
|
||||
import { CLAUDE_DEFAULT_SETTING_SOURCES } from '../claude-structured-launch-resolution'
|
||||
import type { ClaudeAuthDiagnostic, ClaudeSession } from './claude-structured-session-state'
|
||||
import { AgentSessionAcquisitionRefusal } from '../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import { AgentSessionAcquisitionRefusal } from '../../native-chat/agent-session-wire/structured-agent-session-adapter-errors'
|
||||
|
||||
export type ClaudeInitObservation = {
|
||||
providerSessionId: string
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
import { describe, expect, it, vi } from 'vitest'
|
||||
import { claudeProcessIdentity } from './claude-structured-owner-identity'
|
||||
import { ORCA_AGENT_SESSION_SPAWN_TOKEN_ENV } from '../../shared/agent-session-caller-env'
|
||||
import { claudeProviderHandle } from '../../shared/agent-session-provider-handle-encoding'
|
||||
import { ORCA_AGENT_SESSION_SPAWN_TOKEN_ENV } from '../../../shared/agent-session-caller-env'
|
||||
import { claudeProviderHandle } from '../../../shared/agent-session-provider-handle-encoding'
|
||||
|
||||
const IDENTITY = {
|
||||
sessionId: 'session-identity',
|
||||
+5
-5
@@ -1,8 +1,8 @@
|
||||
import type { AgentSessionJournalIdentity } from '../../shared/agent-session-journal-types'
|
||||
import type { AgentSessionProviderHandleLink } from '../../shared/agent-session-provider-handle'
|
||||
import { claudeProviderHandle } from '../../shared/agent-session-provider-handle-encoding'
|
||||
import type { AgentSessionProcessIdentity } from '../../shared/agent-session-record'
|
||||
import { readProcessStartTimeMs } from '../runtime/agent-session/ownership/agent-session-process-identity-probe'
|
||||
import type { AgentSessionJournalIdentity } from '../../../shared/agent-session-journal-types'
|
||||
import type { AgentSessionProviderHandleLink } from '../../../shared/agent-session-provider-handle'
|
||||
import { claudeProviderHandle } from '../../../shared/agent-session-provider-handle-encoding'
|
||||
import type { AgentSessionProcessIdentity } from '../../../shared/agent-session-record'
|
||||
import { readProcessStartTimeMs } from '../../runtime/agent-session/ownership/agent-session-process-identity-probe'
|
||||
|
||||
export function claudeProviderHandleLink(input: {
|
||||
sessionId: string
|
||||
+4
-4
@@ -1,11 +1,11 @@
|
||||
import { describe, expect, it, vi } from 'vitest'
|
||||
import type { AgentSessionJournalIdentity } from '../../shared/agent-session-journal-types'
|
||||
import { AgentSessionPreSpawnError } from '../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import type { AgentSessionJournalIdentity } from '../../../shared/agent-session-journal-types'
|
||||
import { AgentSessionPreSpawnError } from '../../native-chat/agent-session-wire/structured-agent-session-adapter-errors'
|
||||
import type {
|
||||
ClaudeStreamJsonConnection,
|
||||
openClaudeStreamJsonConnection
|
||||
} from './claude-stream-json-connection'
|
||||
import { ClaudeStructuredSessionAdapter } from './claude-structured-session-adapter'
|
||||
} from '../claude-stream-json-connection'
|
||||
import { ClaudeStructuredSessionAdapter } from '../claude-structured-session-adapter'
|
||||
|
||||
const PROVIDER_SESSION_ID = '819cf9f8-e43c-4ad7-b50f-54aa158a726a'
|
||||
const IDENTITY: AgentSessionJournalIdentity = {
|
||||
+20
-20
@@ -1,10 +1,10 @@
|
||||
import type { AgentSessionAcquisition } from '../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import { openClaudeStreamJsonConnection } from './claude-stream-json-connection'
|
||||
import { buildClaudePermissionCallbacks } from './claude-structured-inbound-control'
|
||||
import { resolveClaudeReplayTurn } from './claude-replay-turn-resolution'
|
||||
import { claudeStartedUnechoedSend } from './claude-command-lifecycle'
|
||||
import { claudeSessionStateEndsTurn } from './claude-session-state-turn-over'
|
||||
import { settleClaudeTurnEndWaiters } from './claude-request-end-wait'
|
||||
import type { AgentSessionAcquisition } from '../../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import { openClaudeStreamJsonConnection } from '../claude-stream-json-connection'
|
||||
import { buildClaudePermissionCallbacks } from '../claude-structured-inbound-control'
|
||||
import { resolveClaudeReplayTurn } from '../claude-replay-turn-resolution'
|
||||
import { claudeStartedUnechoedSend } from '../claude-command-lifecycle'
|
||||
import { claudeSessionStateEndsTurn } from '../claude-session-state-turn-over'
|
||||
import { settleClaudeTurnEndWaiters } from '../claude-request-end-wait'
|
||||
import {
|
||||
createClaudeInitProof,
|
||||
readClaudeCapabilities,
|
||||
@@ -12,25 +12,25 @@ import {
|
||||
readClaudeFrameString,
|
||||
readClaudeInit
|
||||
} from './claude-structured-init-proof'
|
||||
import { claudeConfigDirEnvPatch } from './claude-config-dir-pin'
|
||||
import { claudeConfigDirEnvPatch } from '../claude-config-dir-pin'
|
||||
import { claudeProcessIdentity } from './claude-structured-owner-identity'
|
||||
import { ClaudePromptRegistry } from './claude-structured-prompt-replies'
|
||||
import { adoptClaudeStructuredSpawnOptions } from './claude-structured-spawn-options'
|
||||
import { observeClaudeExecutionModel } from './claude-structured-execution-observations'
|
||||
import { observeClaudeFastModeFacts } from './claude-structured-session-options'
|
||||
import { ClaudePromptRegistry } from '../claude-prompt-registry'
|
||||
import { adoptClaudeStructuredSpawnOptions } from '../claude-structured-spawn-options'
|
||||
import { observeClaudeExecutionModel } from '../claude-structured-execution-observations'
|
||||
import { observeClaudeFastModeFacts } from '../claude-structured-session-options'
|
||||
import { createClaudeSessionPublication } from './claude-structured-session-publication'
|
||||
import * as sessionState from './claude-structured-session-state'
|
||||
import { resolveClaudeAcquisitionError } from './claude-structured-session-close'
|
||||
import { withObservedProviderExit } from '../native-chat/agent-session-wire/structured-agent-session-failure-text'
|
||||
import { readClaudeTranscriptEntryUuid } from './claude-transcript-entry-uuid'
|
||||
import { claudeTurnResumePointWriter } from './claude-structured-resume-point'
|
||||
import { withAgentSessionCreatePhase } from '../observability/agent-session-instrumentation'
|
||||
import { resolveClaudeAcquisitionLaunch } from './claude-structured-acquisition-launch'
|
||||
import { resolveClaudeAcquisitionError } from '../claude-structured-session-close'
|
||||
import { withObservedProviderExit } from '../../native-chat/agent-session-wire/structured-agent-session-failure-text'
|
||||
import { readClaudeTranscriptEntryUuid } from '../claude-transcript-entry-uuid'
|
||||
import { claudeTurnResumePointWriter } from '../claude-structured-resume-point'
|
||||
import { withAgentSessionCreatePhase } from '../../observability/agent-session-instrumentation'
|
||||
import { resolveClaudeAcquisitionLaunch } from '../claude-structured-acquisition-launch'
|
||||
import {
|
||||
bindClaudeConnectionJournalControls,
|
||||
createClaudeSessionJournalTranslator
|
||||
} from './claude-structured-session-journal-control'
|
||||
import { isRootClaudeFrame } from './claude-turn-opening'
|
||||
} from '../claude-structured-session-journal-control'
|
||||
import { isRootClaudeFrame } from '../claude-turn-opening'
|
||||
|
||||
export async function acquireClaudeSession({
|
||||
input,
|
||||
+4
-4
@@ -1,11 +1,11 @@
|
||||
import type {
|
||||
StructuredAgentSessionProviderOpenInput,
|
||||
StructuredAgentSessionProviderOpenResult
|
||||
} from '../native-chat/agent-session-wire/structured-agent-session-provider-open-contract'
|
||||
import { waitForPromiseWithSignal } from '../../shared/abort-signal-reason'
|
||||
import { readClaudeStructuredSessionSettings } from './claude-structured-session-acquisition-options'
|
||||
} from '../../native-chat/agent-session-wire/structured-agent-session-provider-open-contract'
|
||||
import { waitForPromiseWithSignal } from '../../../shared/abort-signal-reason'
|
||||
import { readClaudeStructuredSessionSettings } from '../claude-structured-session-acquisition-options'
|
||||
import { openClaudeSession, readClaudeStartupFacts } from './claude-structured-session-startup'
|
||||
import { catchUpClaudeTranscript } from './claude-transcript-catch-up'
|
||||
import { catchUpClaudeTranscript } from '../claude-transcript-catch-up'
|
||||
import type {
|
||||
ClaudeSession,
|
||||
ClaudeStructuredSessionAdapterDeps,
|
||||
+6
-6
@@ -1,11 +1,11 @@
|
||||
import type { AgentSessionAcquisition } from '../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import type { AgentSessionAcquisition } from '../../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import { claudeProviderHandleLink } from './claude-structured-owner-identity'
|
||||
import type { ClaudePromptRegistry } from './claude-structured-prompt-replies'
|
||||
import type { ClaudeJournalTranslator } from './claude-journal-translator-contract'
|
||||
import type { ClaudePromptRegistry } from '../claude-prompt-registry'
|
||||
import type { ClaudeJournalTranslator } from '../claude-journal-translator-contract'
|
||||
import type { ClaudeSession } from './claude-structured-session-state'
|
||||
import { ClaudeBackgroundTaskTracker } from './claude-background-task-tracker'
|
||||
import { ClaudeChildWorkDecoder } from './claude-child-work-decoder'
|
||||
import { ClaudeSlashCommandCatalog } from './claude-slash-command-catalog'
|
||||
import { ClaudeBackgroundTaskTracker } from '../claude-background-task-tracker'
|
||||
import { ClaudeChildWorkDecoder } from '../claude-child-work-decoder'
|
||||
import { ClaudeSlashCommandCatalog } from '../claude-slash-command-catalog'
|
||||
|
||||
export function createClaudeSessionPublication(input: {
|
||||
connection: ClaudeSession['connection']
|
||||
+3
-3
@@ -4,12 +4,12 @@ import {
|
||||
fakeClaude,
|
||||
claudeFrame,
|
||||
identityFor,
|
||||
claudeOpened,
|
||||
USER_MESSAGE
|
||||
} from './claude-structured-session-test-support'
|
||||
} from '../claude-structured-session-test-support'
|
||||
import { claudeOpened } from '../claude-structured-startup-settled-test-support'
|
||||
import type { ClaudeStructuredSessionEvent } from './claude-structured-session-state'
|
||||
import { CLAUDE_INITIALIZE_TIMEOUT_MS } from './claude-structured-session-startup'
|
||||
import { providerRequestTimeoutOf } from '../provider-process/provider-request-timeout'
|
||||
import { providerRequestTimeoutOf } from '../../provider-process/provider-request-timeout'
|
||||
|
||||
const ACQUIRE = { identity: identityFor(), fence: 7, spawnToken: 'spawn-9' }
|
||||
|
||||
+8
-8
@@ -1,10 +1,10 @@
|
||||
// Initialize gates host open after process publication; settings enrichment runs independently.
|
||||
|
||||
import type { AgentSessionAccountKind } from '../../shared/agent-session-availability'
|
||||
import type { StructuredAgentSessionProviderOpenResult } from '../native-chat/agent-session-wire/structured-agent-session-provider-open-contract'
|
||||
import { withProviderRequestTimeout } from '../provider-process/provider-request-timeout'
|
||||
import type { ClaudeStreamJsonConnection } from './claude-stream-json-connection'
|
||||
import { ClaudeSlashCommandCatalog } from './claude-slash-command-catalog'
|
||||
import type { AgentSessionAccountKind } from '../../../shared/agent-session-availability'
|
||||
import type { StructuredAgentSessionProviderOpenResult } from '../../native-chat/agent-session-wire/structured-agent-session-provider-open-contract'
|
||||
import { withProviderRequestTimeout } from '../../provider-process/provider-request-timeout'
|
||||
import type { ClaudeStreamJsonConnection } from '../claude-stream-json-connection'
|
||||
import { ClaudeSlashCommandCatalog } from '../claude-slash-command-catalog'
|
||||
import {
|
||||
claudeAuthDiagnostic,
|
||||
claudeInitializationAuthError,
|
||||
@@ -17,15 +17,15 @@ import {
|
||||
import {
|
||||
claudeStructuredSessionPublicationOptions,
|
||||
prepareClaudeStructuredSessionAcquisitionOptions
|
||||
} from './claude-structured-session-acquisition-options'
|
||||
} from '../claude-structured-session-acquisition-options'
|
||||
import {
|
||||
claudeStructuredSessionOptionsFrom,
|
||||
observeClaudeSettingsApplied,
|
||||
readClaudeSettingsApplied,
|
||||
readClaudeFastModeFacts,
|
||||
readClaudeSettingsEffort
|
||||
} from './claude-structured-session-options'
|
||||
import { claudeExecutionObservations } from './claude-structured-execution-observations'
|
||||
} from '../claude-structured-session-options'
|
||||
import { claudeExecutionObservations } from '../claude-structured-execution-observations'
|
||||
import type {
|
||||
ClaudeAuthDiagnostic,
|
||||
ClaudeSession,
|
||||
+19
-19
@@ -1,28 +1,28 @@
|
||||
import type { StructuredAgentSessionChildWorkProducer } from '../native-chat/agent-session-wire/structured-agent-session-subagent-rows'
|
||||
import type { StructuredAgentSessionLogger } from '../native-chat/agent-session-wire/structured-agent-session-logger'
|
||||
import type { AgentJournalDispatchRejection } from '../../shared/agent-session-failure-words'
|
||||
import type { SubmissionRejectionFact } from '../../shared/agent-session-failure'
|
||||
import type { AgentJournalItemIdentity } from '../../shared/agent-session-journal-types'
|
||||
import type { StructuredAgentSessionEventSink } from '../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import type * as SessionAdapter from '../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import type { StructuredAgentSessionChildWorkProducer } from '../../native-chat/agent-session-wire/structured-agent-session-subagent-rows'
|
||||
import type { StructuredAgentSessionLogger } from '../../native-chat/agent-session-wire/structured-agent-session-logger'
|
||||
import type { AgentJournalDispatchRejection } from '../../../shared/agent-session-failure-words'
|
||||
import type { SubmissionRejectionFact } from '../../../shared/agent-session-failure'
|
||||
import type { AgentJournalItemIdentity } from '../../../shared/agent-session-journal-types'
|
||||
import type { StructuredAgentSessionEventSink } from '../../native-chat/agent-session-wire/structured-agent-session-event-sink'
|
||||
import type * as SessionAdapter from '../../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import type {
|
||||
ClaudeStreamJsonConnection,
|
||||
openClaudeStreamJsonConnection
|
||||
} from './claude-stream-json-connection'
|
||||
import type { ClaudeStructuredLaunch } from './claude-structured-launch-resolution'
|
||||
import type { StructuredLaunchRequest } from '../runtime/structured-agent-launch-composition'
|
||||
import type { ClaudeJournalTranslator } from './claude-journal-translator-contract'
|
||||
import type { ClaudePendingPrompt, ClaudePromptRegistry } from './claude-structured-prompt-replies'
|
||||
} from '../claude-stream-json-connection'
|
||||
import type { ClaudeStructuredLaunch } from '../claude-structured-launch-resolution'
|
||||
import type { StructuredLaunchRequest } from '../../runtime/structured-agent-launch-composition'
|
||||
import type { ClaudeJournalTranslator } from '../claude-journal-translator-contract'
|
||||
import type { ClaudePendingPrompt, ClaudePromptRegistry } from '../claude-prompt-registry'
|
||||
import { cancelProcessAcquisition } from '@orca/process-host/cancel-process-acquisition'
|
||||
import { randomUUID } from 'node:crypto'
|
||||
import type { AgentSessionFastModeState } from '../../shared/agent-session-wire'
|
||||
import type { AgentChildWorkEvidence } from '../../shared/agent-status-child-work-evidence'
|
||||
import type { ClaudeBackgroundTaskTracker } from './claude-background-task-tracker'
|
||||
import type { ClaudeChildWorkDecoder } from './claude-child-work-decoder'
|
||||
import type { ClaudeSlashCommandCatalog } from './claude-slash-command-catalog'
|
||||
import type { ClaudeAtRestCommandCatalog } from './claude-at-rest-commands'
|
||||
import type { AgentSessionFastModeState } from '../../../shared/agent-session-wire'
|
||||
import type { AgentChildWorkEvidence } from '../../../shared/agent-status-child-work-evidence'
|
||||
import type { ClaudeBackgroundTaskTracker } from '../claude-background-task-tracker'
|
||||
import type { ClaudeChildWorkDecoder } from '../claude-child-work-decoder'
|
||||
import type { ClaudeSlashCommandCatalog } from '../claude-slash-command-catalog'
|
||||
import type { ClaudeAtRestCommandCatalog } from '../claude-at-rest-commands'
|
||||
import type { ClaudeInitProof } from './claude-structured-init-proof'
|
||||
import type { AgentSessionProviderHandleLink } from '../../shared/agent-session-provider-handle'
|
||||
import type { AgentSessionProviderHandleLink } from '../../../shared/agent-session-provider-handle'
|
||||
|
||||
export type ClaudeAuthDiagnostic = {
|
||||
apiKeySourceConfigured: boolean
|
||||
+1
-1
@@ -18,7 +18,7 @@ import {
|
||||
} from '../../claude/claude-agent-sdk-control-requests'
|
||||
import { CLAUDE_STOP_GRACE_MS } from '../../claude/claude-request-end-wait'
|
||||
import { ClaudeStructuredSessionAdapter } from '../../claude/claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionEvent } from '../../claude/claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from '../../claude/structured/claude-structured-session-state'
|
||||
import {
|
||||
claudeFrame as frame,
|
||||
claudeWasSent as wrote,
|
||||
|
||||
+1
-1
@@ -13,11 +13,11 @@ import { RESUMED_BY_MESSAGE } from '../../claude/claude-captured-task-frames.tes
|
||||
import { WAKES_AFTER_ITS_SHELL } from '../../claude/claude-captured-wake-frames.test-fixture'
|
||||
import { ClaudeStructuredSessionAdapter } from '../../claude/claude-structured-session-adapter'
|
||||
import {
|
||||
claudeStartupSettled,
|
||||
fakeClaude,
|
||||
PROVIDER_SESSION_ID,
|
||||
type FakeConnection
|
||||
} from '../../claude/claude-structured-session-test-support'
|
||||
import { claudeStartupSettled } from '../../claude/claude-structured-startup-settled-test-support'
|
||||
import type { AgentSessionRecordStore } from '../../runtime/agent-session-record-store'
|
||||
import { openTestAgentSessionRecordStore } from '../../runtime/agent-session-record-store-test-harness'
|
||||
import { structuredClaudeLifecycleEvent } from '../../runtime/structured-claude-runtime-adapter'
|
||||
|
||||
@@ -34,7 +34,7 @@ import {
|
||||
subscribeRemoteRuntimeRequest,
|
||||
type RemoteRuntimeSubscription
|
||||
} from '../../shared/remote-runtime/remote-runtime-client'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/claude-structured-session-id'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/structured/claude-structured-session-id'
|
||||
import { quotePosixShell } from '../../shared/shell-argument-quoting'
|
||||
import { materializeOrcadArtifact } from './orcad-artifact-materializer'
|
||||
import {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// Unproven first starts have no transcript: retry the same provider id fresh until a start proves its root.
|
||||
|
||||
import { afterEach, describe, expect, it, vi } from 'vitest'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/claude-structured-launch-resolution'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/structured/claude-structured-session-id'
|
||||
import { waitForStructuredAgentSessionRecovery } from './structured-agent-session-runtime'
|
||||
import { createScriptedClaudeRuntime } from './structured-claude-scripted-runtime-test-support'
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
import { afterEach, describe, expect, it, vi } from 'vitest'
|
||||
import { computeAgentSessionPayloadFingerprint } from '../../shared/agent-session-mutation-envelope'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/claude-structured-launch-resolution'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/structured/claude-structured-session-id'
|
||||
import {
|
||||
DISPATCH_DOUBT_PROVIDER_ENDED_UNANSWERED,
|
||||
DISPATCH_DOUBT_PROVIDER_IDLE,
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
import { afterEach, describe, expect, it, vi } from 'vitest'
|
||||
import { computeAgentSessionPayloadFingerprint } from '../../shared/agent-session-mutation-envelope'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/claude-structured-launch-resolution'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/structured/claude-structured-session-id'
|
||||
import type { StructuredAgentSessionHost } from '../native-chat/agent-session-wire/structured-agent-session-host'
|
||||
import { hostTestMessage } from '../native-chat/agent-session-wire/structured-agent-session-host-test-data'
|
||||
import { createScriptedClaudeRuntime } from './structured-claude-scripted-runtime-test-support'
|
||||
|
||||
@@ -11,7 +11,7 @@ import {
|
||||
STRUCTURED_AGENT_SESSION_RUNTIME_CAPABILITY
|
||||
} from '../../shared/protocol-version'
|
||||
import { fakeClaude } from './claude-structured-fake-connection-test-fixture'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/claude-structured-launch-resolution'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/structured/claude-structured-session-id'
|
||||
import { ORCA_AGENT_SESSION_SPAWN_TOKEN_ENV } from '../../shared/agent-session-caller-env'
|
||||
import { attachFingerprintFields } from '../native-chat/agent-session-wire/structured-agent-session-attach'
|
||||
import { getStructuredAgentSessionHost } from '../native-chat/agent-session-wire/structured-agent-session-registry'
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
import { afterEach, describe, expect, it, vi } from 'vitest'
|
||||
import { computeAgentSessionPayloadFingerprint } from '../../shared/agent-session-mutation-envelope'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/claude-structured-launch-resolution'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/structured/claude-structured-session-id'
|
||||
import { hostTestMessage } from '../native-chat/agent-session-wire/structured-agent-session-host-test-data'
|
||||
import type { StructuredAgentSessionHost } from '../native-chat/agent-session-wire/structured-agent-session-host'
|
||||
import { createScriptedClaudeRuntime } from './structured-claude-scripted-runtime-test-support'
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import type { CodexModelCatalogProbeDeps } from '../codex/codex-model-catalog-probe'
|
||||
import type { AcpStructuredSessionAdapterDeps } from '../acp/acp-structured-session-adapter-deps'
|
||||
import type { AcpStructuredLaunchPartDeps } from '../acp/acp-structured-launch-resolution'
|
||||
import type { ClaudeStructuredSessionAdapterDeps } from '../claude/claude-structured-session-adapter'
|
||||
import type { ClaudeStructuredSessionAdapterDeps } from '../claude/structured/claude-structured-session-state'
|
||||
import type { CodexStructuredSessionAdapterDeps } from '../codex/codex-structured-session-adapter'
|
||||
import type { AgentCliVersionReader } from '../agent-cli-version-probe'
|
||||
import type { StructuredAgentSessionStartupLimits } from '../native-chat/agent-session-wire/structured-agent-session-startup-attempt-contract'
|
||||
|
||||
@@ -8,7 +8,7 @@ import { agentJournalItemKey } from '../../shared/agent-session-journal-item-key
|
||||
import { computeAgentSessionPayloadFingerprint } from '../../shared/agent-session-mutation-envelope'
|
||||
import type { AgentSessionRecord } from '../../shared/agent-session-record'
|
||||
import type { AgentSessionRewindFork } from '../../shared/agent-session-rewind'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/claude-structured-launch-resolution'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/structured/claude-structured-session-id'
|
||||
import { fakeClaude } from '../claude/claude-structured-session-test-support'
|
||||
import { claudeAndCodexAgents } from '../native-chat/agent-session-wire/structured-agent-session-adapter-router-test-support'
|
||||
import { StructuredAgentSessionAdapterRouter } from '../native-chat/agent-session-wire/structured-agent-session-adapter-router'
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
import type { AgentSessionRecord } from '../../shared/agent-session-record'
|
||||
import { claudeProviderHandle } from '../../shared/agent-session-provider-handle-encoding'
|
||||
import { resolveClaudeCommand } from '../codex-cli/command'
|
||||
import {
|
||||
ClaudeStructuredSessionAdapter,
|
||||
type ClaudeStructuredSessionAdapterDeps
|
||||
} from '../claude/claude-structured-session-adapter'
|
||||
import { claudeProviderHandleLink } from '../claude/claude-structured-owner-identity'
|
||||
import { ClaudeStructuredSessionAdapter } from '../claude/claude-structured-session-adapter'
|
||||
import type {
|
||||
ClaudeStructuredSessionAdapterDeps,
|
||||
ClaudeStructuredSessionEvent
|
||||
} from '../claude/structured/claude-structured-session-state'
|
||||
import { claudeProviderHandleLink } from '../claude/structured/claude-structured-owner-identity'
|
||||
import type { StructuredAgentSessionLifecycleEvent } from '../native-chat/agent-session-wire/structured-agent-session-adapter'
|
||||
import type { ClaudeStructuredSessionEvent } from '../claude/claude-structured-session-state'
|
||||
|
||||
import {
|
||||
recordAgentSessionProviderHandle,
|
||||
reviseAgentSessionProviderResumePoint
|
||||
|
||||
@@ -11,7 +11,7 @@ import type {
|
||||
openClaudeStreamJsonConnection
|
||||
} from '../claude/claude-stream-json-connection'
|
||||
import { runClaudeControl } from '../claude/claude-agent-sdk-control-requests'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/claude-structured-launch-resolution'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/structured/claude-structured-session-id'
|
||||
import type { AgentSessionAttachParams } from '../native-chat/agent-session-wire/structured-agent-session-attach'
|
||||
import { hostTestAttachParams } from '../native-chat/agent-session-wire/structured-agent-session-host-test-data'
|
||||
import type { StructuredAgentSessionHost } from '../native-chat/agent-session-wire/structured-agent-session-host'
|
||||
|
||||
@@ -13,7 +13,7 @@ import {
|
||||
subscribeRemoteRuntimeRequest,
|
||||
type RemoteRuntimeSubscription
|
||||
} from '../../shared/remote-runtime/remote-runtime-client'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/claude-structured-session-id'
|
||||
import { claudeSessionIdForOrcaSession } from '../claude/structured/claude-structured-session-id'
|
||||
import { packagedClaudeChatScenario } from '../orcad/orcad-structured-chat-scenario'
|
||||
import { quotePosixShell } from '../../shared/shell-argument-quoting'
|
||||
import { wslClaudeChatScenario } from './wsl-orcad-chat-scenario'
|
||||
|
||||
@@ -4,7 +4,7 @@ import { cleanup, fireEvent, render, screen } from '@testing-library/react'
|
||||
import { createElement } from 'react'
|
||||
import { afterEach, expect, it, vi } from 'vitest'
|
||||
import { computeAgentSessionPayloadFingerprint } from '../../src/shared/agent-session-mutation-envelope'
|
||||
import { claudeSessionIdForOrcaSession } from '../../src/main/claude/claude-structured-launch-resolution'
|
||||
import { claudeSessionIdForOrcaSession } from '../../src/main/claude/structured/claude-structured-session-id'
|
||||
import { hostTestMessage } from '../../src/main/native-chat/agent-session-wire/structured-agent-session-host-test-data'
|
||||
import { StructuredAgentSessionStartupAttempts } from '../../src/main/native-chat/agent-session-wire/structured-agent-session-startup-attempt'
|
||||
import { createScriptedClaudeRuntime } from '../../src/main/runtime/structured-claude-scripted-runtime-test-support'
|
||||
|
||||
@@ -5,7 +5,7 @@ import { waitForActiveWorktree, waitForSessionReady } from './helpers/store'
|
||||
import { buildFakeAgentCommandOverride } from './helpers/fake-agent-command-override'
|
||||
import { SUPPORTED, createChatOnHost, test } from './helpers/structured-claude-stub'
|
||||
import { resolveCliCommand } from '../../src/shared/node-cli-command-resolution'
|
||||
import { claudeSessionIdForOrcaSession } from '../../src/main/claude/claude-structured-session-id'
|
||||
import { claudeSessionIdForOrcaSession } from '../../src/main/claude/structured/claude-structured-session-id'
|
||||
|
||||
type ChatTab = { id: string; entityId: string }
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ import {
|
||||
USER_MESSAGE,
|
||||
PROVIDER_SESSION_ID
|
||||
} from '../../src/main/claude/claude-structured-session-test-support'
|
||||
import type { ClaudeStructuredSessionEvent } from '../../src/main/claude/claude-structured-session-state'
|
||||
import type { ClaudeStructuredSessionEvent } from '../../src/main/claude/structured/claude-structured-session-state'
|
||||
import { structuredClaudeLifecycleEvent } from '../../src/main/runtime/structured-claude-runtime-adapter'
|
||||
import {
|
||||
hostTestState,
|
||||
|
||||
Reference in New Issue
Block a user