@roj-ai/sdk 0.1.14 → 0.1.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/dist/bootstrap.d.ts +1 -0
  2. package/dist/bootstrap.d.ts.map +1 -1
  3. package/dist/core/agents/agent.d.ts +25 -1
  4. package/dist/core/agents/agent.d.ts.map +1 -1
  5. package/dist/core/agents/agent.js +117 -21
  6. package/dist/core/agents/agent.js.map +1 -1
  7. package/dist/core/agents/config.d.ts +7 -0
  8. package/dist/core/agents/config.d.ts.map +1 -1
  9. package/dist/core/agents/context.d.ts +10 -0
  10. package/dist/core/agents/context.d.ts.map +1 -1
  11. package/dist/core/agents/state.d.ts +11 -3
  12. package/dist/core/agents/state.d.ts.map +1 -1
  13. package/dist/core/agents/state.js.map +1 -1
  14. package/dist/core/file-store/file-store.d.ts +5 -1
  15. package/dist/core/file-store/file-store.d.ts.map +1 -1
  16. package/dist/core/file-store/file-store.js +31 -21
  17. package/dist/core/file-store/file-store.js.map +1 -1
  18. package/dist/core/image/vips-resizer.test.js +26 -14
  19. package/dist/core/image/vips-resizer.test.js.map +1 -1
  20. package/dist/core/llm/anthropic.d.ts.map +1 -1
  21. package/dist/core/llm/anthropic.js +11 -8
  22. package/dist/core/llm/anthropic.js.map +1 -1
  23. package/dist/core/llm/cache-breakpoints.d.ts +5 -1
  24. package/dist/core/llm/cache-breakpoints.d.ts.map +1 -1
  25. package/dist/core/llm/cache-breakpoints.js +10 -5
  26. package/dist/core/llm/cache-breakpoints.js.map +1 -1
  27. package/dist/core/sessions/session.d.ts.map +1 -1
  28. package/dist/core/sessions/session.js +3 -0
  29. package/dist/core/sessions/session.js.map +1 -1
  30. package/dist/core/sessions/session.test.js +5 -0
  31. package/dist/core/sessions/session.test.js.map +1 -1
  32. package/dist/core/sessions/state.d.ts.map +1 -1
  33. package/dist/core/sessions/state.js +5 -1
  34. package/dist/core/sessions/state.js.map +1 -1
  35. package/dist/core/tools/executor.test.js +1 -0
  36. package/dist/core/tools/executor.test.js.map +1 -1
  37. package/dist/plugins/agent-status/plugin.d.ts.map +1 -1
  38. package/dist/plugins/agent-status/plugin.js +18 -26
  39. package/dist/plugins/agent-status/plugin.js.map +1 -1
  40. package/dist/plugins/context-compact/compaction-live.test.d.ts +17 -0
  41. package/dist/plugins/context-compact/compaction-live.test.d.ts.map +1 -0
  42. package/dist/plugins/context-compact/compaction-live.test.js +177 -0
  43. package/dist/plugins/context-compact/compaction-live.test.js.map +1 -0
  44. package/dist/plugins/context-compact/context-compact.integration.test.js +123 -3
  45. package/dist/plugins/context-compact/context-compact.integration.test.js.map +1 -1
  46. package/dist/plugins/context-compact/context-compactor.d.ts +47 -17
  47. package/dist/plugins/context-compact/context-compactor.d.ts.map +1 -1
  48. package/dist/plugins/context-compact/context-compactor.js +60 -36
  49. package/dist/plugins/context-compact/context-compactor.js.map +1 -1
  50. package/dist/plugins/context-compact/context-compactor.test.js +69 -103
  51. package/dist/plugins/context-compact/context-compactor.test.js.map +1 -1
  52. package/dist/plugins/context-compact/plugin.d.ts +9 -2
  53. package/dist/plugins/context-compact/plugin.d.ts.map +1 -1
  54. package/dist/plugins/context-compact/plugin.js +8 -4
  55. package/dist/plugins/context-compact/plugin.js.map +1 -1
  56. package/dist/plugins/filesystem/filesystem.integration.test.js +36 -0
  57. package/dist/plugins/filesystem/filesystem.integration.test.js.map +1 -1
  58. package/dist/plugins/filesystem/plugin.d.ts.map +1 -1
  59. package/dist/plugins/filesystem/plugin.js +8 -6
  60. package/dist/plugins/filesystem/plugin.js.map +1 -1
  61. package/dist/plugins/mailbox/mailbox.integration.test.js +9 -16
  62. package/dist/plugins/mailbox/mailbox.integration.test.js.map +1 -1
  63. package/dist/plugins/resources/plugin.d.ts.map +1 -1
  64. package/dist/plugins/resources/plugin.js +4 -1
  65. package/dist/plugins/resources/plugin.js.map +1 -1
  66. package/dist/plugins/uploads/preprocessors/image-classifier.d.ts.map +1 -1
  67. package/dist/plugins/uploads/preprocessors/image-classifier.js +15 -2
  68. package/dist/plugins/uploads/preprocessors/image-classifier.js.map +1 -1
  69. package/dist/plugins/uploads/preprocessors/markitdown-preprocessor.d.ts.map +1 -1
  70. package/dist/plugins/uploads/preprocessors/markitdown-preprocessor.js +72 -19
  71. package/dist/plugins/uploads/preprocessors/markitdown-preprocessor.js.map +1 -1
  72. package/dist/plugins/user-chat/plugin.d.ts +2 -0
  73. package/dist/plugins/user-chat/plugin.d.ts.map +1 -1
  74. package/dist/plugins/user-chat/plugin.js +47 -3
  75. package/dist/plugins/user-chat/plugin.js.map +1 -1
  76. package/dist/plugins/user-chat/schema.d.ts +10 -0
  77. package/dist/plugins/user-chat/schema.d.ts.map +1 -1
  78. package/dist/plugins/user-chat/schema.js +1 -0
  79. package/dist/plugins/user-chat/schema.js.map +1 -1
  80. package/dist/plugins/user-chat/user-chat.integration.test.js +86 -0
  81. package/dist/plugins/user-chat/user-chat.integration.test.js.map +1 -1
  82. package/package.json +2 -2
  83. package/src/core/agents/agent.ts +134 -20
  84. package/src/core/agents/config.ts +7 -0
  85. package/src/core/agents/context.ts +11 -0
  86. package/src/core/agents/state.ts +11 -4
  87. package/src/core/file-store/file-store.ts +38 -18
  88. package/src/core/image/vips-resizer.test.ts +26 -15
  89. package/src/core/llm/anthropic.ts +19 -12
  90. package/src/core/llm/cache-breakpoints.ts +15 -6
  91. package/src/core/sessions/session.test.ts +6 -0
  92. package/src/core/sessions/session.ts +4 -0
  93. package/src/core/sessions/state.ts +5 -1
  94. package/src/core/tools/executor.test.ts +1 -0
  95. package/src/plugins/agent-status/plugin.ts +18 -25
  96. package/src/plugins/context-compact/compaction-live.test.ts +221 -0
  97. package/src/plugins/context-compact/context-compact.integration.test.ts +135 -3
  98. package/src/plugins/context-compact/context-compactor.test.ts +71 -110
  99. package/src/plugins/context-compact/context-compactor.ts +88 -43
  100. package/src/plugins/context-compact/plugin.ts +19 -10
  101. package/src/plugins/filesystem/filesystem.integration.test.ts +44 -0
  102. package/src/plugins/filesystem/plugin.ts +8 -6
  103. package/src/plugins/mailbox/mailbox.integration.test.ts +12 -18
  104. package/src/plugins/resources/plugin.ts +4 -1
  105. package/src/plugins/uploads/preprocessors/image-classifier.ts +15 -2
  106. package/src/plugins/uploads/preprocessors/markitdown-preprocessor.ts +89 -20
  107. package/src/plugins/user-chat/plugin.ts +60 -3
  108. package/src/plugins/user-chat/schema.ts +10 -1
  109. package/src/plugins/user-chat/user-chat.integration.test.ts +99 -0
@@ -1 +1 @@
1
- {"version":3,"file":"user-chat.integration.test.js","sourceRoot":"","sources":["../../../src/plugins/user-chat/user-chat.integration.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user-chat.integration.test.js","sourceRoot":"","sources":["../../../src/plugins/user-chat/user-chat.integration.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@roj-ai/sdk",
3
- "version": "0.1.14",
3
+ "version": "0.1.16",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "exports": {
@@ -135,7 +135,7 @@
135
135
  "type-check": "tsc --noEmit"
136
136
  },
137
137
  "dependencies": {
138
- "@roj-ai/transport": "^0.1.14",
138
+ "@roj-ai/transport": "^0.1.16",
139
139
  "@hono/zod-validator": "0.7.6",
140
140
  "hono": "4.12.5",
141
141
  "ignore": "7.0.5",
@@ -46,7 +46,7 @@ import { toolEvents } from '~/core/tools/state.js'
46
46
  import { getAgentUnconsumedMailbox, selectMailboxState } from '~/plugins/mailbox/query.js'
47
47
  import { AGENT_BASE_BRIEFING } from '~/prompts/base.js'
48
48
  import { buildEnvironmentSection } from '~/prompts/builder.js'
49
- import { Err, type Result } from '~/lib/utils/result.js'
49
+ import { Err, Ok, type Result } from '~/lib/utils/result.js'
50
50
  import type { Logger } from '../../lib/logger/logger.js'
51
51
  import type { SessionContext } from '../sessions/context.js'
52
52
  import type { SessionStore } from '../sessions/session-store.js'
@@ -54,7 +54,7 @@ import type { SessionState } from '../sessions/state.js'
54
54
  import type { SessionEnvironment, ToolExecutor } from '../tools/index.js'
55
55
  import type { AgentContext } from './context.js'
56
56
  import { sanitizeLLMResponse } from './response-sanitizer.js'
57
- import { withLLMRetry } from './retry.js'
57
+ import { isRetryableLLMError, withLLMRetry } from './retry.js'
58
58
 
59
59
  // ============================================================================
60
60
  // Types
@@ -81,6 +81,14 @@ export interface AgentConfig<TInput = unknown> {
81
81
  input?: z.ZodType<TInput>
82
82
  /** Per-plugin agent-level configs */
83
83
  plugins?: AgentPluginConfig[]
84
+ /**
85
+ * Prompt cache TTL for breakpoints emitted by this agent's inference calls.
86
+ * '1h' opts into Anthropic's extended cache tier (write 2× input, read 0.1×)
87
+ * — useful for long-lived agents (e.g. an orchestrator that waits minutes
88
+ * between user turns) where the default 5-minute TTL would expire and force
89
+ * full re-uploads. Omit (or '5m') for the standard tier.
90
+ */
91
+ cacheTtl?: '5m' | '1h'
84
92
  }
85
93
 
86
94
  /**
@@ -378,6 +386,58 @@ export class Agent {
378
386
  return this.scheduled
379
387
  }
380
388
 
389
+ /**
390
+ * Run a one-off LLM call using the agent's current system prompt, tools, and
391
+ * conversation prefix, with extra trailing messages appended. Does not emit
392
+ * agent inference events and does not mutate conversation history; the call
393
+ * is logged via the LLM provider's normal logging pipeline.
394
+ *
395
+ * Intended for plugins that need a constrained side-channel inference
396
+ * leveraging the agent's already-warm prompt cache — e.g. context-compact
397
+ * uses this to ask the same model for a summary, paying only the trailing
398
+ * uncached portion plus output tokens.
399
+ *
400
+ * The cache breakpoint is placed so that everything up to (but excluding)
401
+ * `extraMessages` is cacheable, matching the previous regular inference.
402
+ */
403
+ async runAuxiliaryInference(extraMessages: LLMMessage[]): Promise<Result<InferenceResponse, LLMError>> {
404
+ const agentState = this.state
405
+ if (!agentState) {
406
+ return Err({ type: 'invalid_request', message: `Agent ${this.id} has no state` })
407
+ }
408
+
409
+ // pendingToolResults aren't in conversationHistory yet (they get committed
410
+ // by the next inference_completed), but the assistant tool_use that
411
+ // demands them IS at the tail of history. Without these inlined, an
412
+ // aux call placed mid-tool-turn (e.g. by the context-compact plugin's
413
+ // beforeInference hook) lands as `[…, assistant(tool_use), extraMessages]`
414
+ // and Anthropic rejects with "tool_use blocks must be followed by
415
+ // tool_result blocks".
416
+ const pendingToolResultMessages = this.buildPendingMessages(agentState)
417
+ const baseMessages: LLMMessage[] = [
418
+ ...agentState.preamble,
419
+ ...agentState.conversationHistory,
420
+ ...pendingToolResultMessages,
421
+ ]
422
+ const messages = [...baseMessages, ...extraMessages]
423
+ const cachedMessages = applyCacheBreakpoint(messages, extraMessages.length, this.config.cacheTtl)
424
+
425
+ const request: InferenceRequest = {
426
+ model: this.config.model,
427
+ systemPrompt: this.buildSystemPrompt(),
428
+ messages: cachedMessages,
429
+ tools: this.tools.size > 0 ? [...this.tools.values()] : undefined,
430
+ }
431
+
432
+ return this.llmProvider.inference(request, {
433
+ sessionId: this.store.sessionId,
434
+ agentId: this.id,
435
+ signal: this.abortController.signal,
436
+ fileStore: this.fileStore,
437
+ providers: this.llmProviders,
438
+ })
439
+ }
440
+
381
441
  // ============================================================================
382
442
  // Private methods - Processing
383
443
  // ============================================================================
@@ -485,7 +545,11 @@ export class Agent {
485
545
 
486
546
  // Mark cache breakpoint — ephemeral session-context suffix is excluded
487
547
  // so it doesn't invalidate the cache on every inference.
488
- const cachedMessages = applyCacheBreakpoint(messages, ephemeralParts.length > 0 ? 1 : 0)
548
+ const cachedMessages = applyCacheBreakpoint(
549
+ messages,
550
+ ephemeralParts.length > 0 ? 1 : 0,
551
+ this.config.cacheTtl,
552
+ )
489
553
 
490
554
  // 5. LLM inference (with retry)
491
555
  const request: InferenceRequest = {
@@ -513,6 +577,7 @@ export class Agent {
513
577
  // can notify the parent.
514
578
  let llmResponse: Result<InferenceResponse, LLMError>
515
579
  let emptyAttempts = 0
580
+ let nudgeInjected = false
516
581
  while (true) {
517
582
  llmResponse = await withLLMRetry(
518
583
  () =>
@@ -538,13 +603,20 @@ export class Agent {
538
603
  if (!isEmptyStop) break
539
604
 
540
605
  if (emptyAttempts >= Agent.MAX_EMPTY_RESPONSE_RETRIES) {
541
- this.logger.error('LLM returned empty stop response after retries', undefined, {
606
+ this.logger.warn('LLM returned empty stop response after retries, coalescing to WAITING', {
542
607
  agentId: this.id,
543
608
  attempts: emptyAttempts + 1,
544
609
  })
545
- llmResponse = Err({
546
- type: 'server_error',
547
- message: `LLM returned empty response (no content, no tool calls) after ${emptyAttempts + 1} attempts`,
610
+ // Coalesce to WAITING instead of hard-erroring. The LLM accepted the
611
+ // message but couldn't produce output 3× in a row — treating this as
612
+ // a terminal failure was too aggressive (errored state, error message
613
+ // to parent, mailbox tokens stuck unconsumed). Synthetic WAITING goes
614
+ // through the normal success path: mailbox tokens get consumed,
615
+ // limits-guard skips it in dedup (existing WAITING exception), and
616
+ // the agent quietly transitions to pending → complete.
617
+ llmResponse = Ok({
618
+ ...llmResponse.value,
619
+ content: 'WAITING',
548
620
  })
549
621
  break
550
622
  }
@@ -553,24 +625,51 @@ export class Agent {
553
625
  agentId: this.id,
554
626
  attempt: emptyAttempts,
555
627
  })
556
- }
557
628
 
558
- // Mark plugin messages as consumed (regardless of inference outcome
559
- // messages are already appended to conversationHistory via inference_started)
560
- {
561
- const currentAgentState = this.state
562
- if (currentAgentState) {
563
- const ctx = this.buildAgentContext(currentAgentState)
564
- for (const dequeued of pluginDequeued) {
565
- if (!dequeued.plugin.dequeue) continue
566
- const pluginCtx = this.buildPluginHookContext(dequeued.plugin, ctx)
567
- await dequeued.plugin.dequeue.markConsumed(pluginCtx, dequeued.token)
568
- }
629
+ // Inject a one-shot nudge after the first empty response. Appended after the
630
+ // existing cache breakpoint, so the cached prefix still hits — only the new
631
+ // tail is uncached. Uses the canonical "WAITING" literal so the response is
632
+ // recognized by the sanitizer and limits-guard plugin.
633
+ if (!nudgeInjected) {
634
+ request.messages.push({
635
+ role: 'user',
636
+ content:
637
+ '<system-nudge>Your previous response was empty (no text and no tool calls). '
638
+ + 'Either produce a meaningful response — text or tool calls — or, if you '
639
+ + 'have nothing to do, output only the word WAITING on its own line per the '
640
+ + 'waiting protocol.</system-nudge>',
641
+ })
642
+ nudgeInjected = true
569
643
  }
570
644
  }
571
645
 
572
646
  if (!llmResponse.ok) {
573
- // 4a. Inference failed
647
+ // Aborted (shutdown / interruption): bail silently. Emitting inference_failed
648
+ // would leave the agent in 'errored' with unconsumed plugin tokens — decide()
649
+ // would then loop resume_from_error ↔ infer forever (each retry re-aborts).
650
+ if (llmResponse.error.type === 'aborted') return
651
+
652
+ // Non-retryable failures (invalid_request, context_length) will fail the same
653
+ // way on every retry. Mark plugin tokens consumed before emitting
654
+ // inference_failed so decide()'s resume_from_error path doesn't re-feed the
655
+ // same message into a doomed retry loop. Retryable errors (rate_limit,
656
+ // server_error, network_error, timeout) keep the preserve-for-retry semantics.
657
+ if (!isRetryableLLMError(llmResponse.error)) {
658
+ const errorAgentState = this.state
659
+ if (errorAgentState) {
660
+ const errorCtx = this.buildAgentContext(errorAgentState)
661
+ for (const dequeued of pluginDequeued) {
662
+ if (!dequeued.plugin.dequeue) continue
663
+ const pluginCtx = this.buildPluginHookContext(dequeued.plugin, errorCtx)
664
+ await dequeued.plugin.dequeue.markConsumed(pluginCtx, dequeued.token)
665
+ }
666
+ }
667
+ }
668
+
669
+ // 4a. Inference failed — emit inference_failed without marking plugin messages
670
+ // consumed. The reducer leaves pendingToolResults / mailbox tokens intact so the
671
+ // next inference rebuilds the same turn; marking consumed here would drop the
672
+ // mailbox tokens and the retry would be missing the user message.
574
673
  await this.store.emit(withSessionId(
575
674
  this.store.sessionId,
576
675
  llmEvents.create('inference_failed', {
@@ -587,6 +686,20 @@ export class Agent {
587
686
  return
588
687
  }
589
688
 
689
+ // Mark plugin messages as consumed only after successful inference. They've been
690
+ // appended to conversationHistory via the inference_completed reducer below.
691
+ {
692
+ const currentAgentState = this.state
693
+ if (currentAgentState) {
694
+ const ctx = this.buildAgentContext(currentAgentState)
695
+ for (const dequeued of pluginDequeued) {
696
+ if (!dequeued.plugin.dequeue) continue
697
+ const pluginCtx = this.buildPluginHookContext(dequeued.plugin, ctx)
698
+ await dequeued.plugin.dequeue.markConsumed(pluginCtx, dequeued.token)
699
+ }
700
+ }
701
+ }
702
+
590
703
  // 4c. Sanitize response to prevent hallucination
591
704
  const sanitized = sanitizeLLMResponse(llmResponse.value.content)
592
705
 
@@ -866,6 +979,7 @@ export class Agent {
866
979
  agentConfig: this.config,
867
980
  input: agentState.typedInput,
868
981
  parentId: agentState.parentId,
982
+ runAuxiliaryInference: (extraMessages) => this.runAuxiliaryInference(extraMessages),
869
983
  }
870
984
  }
871
985
 
@@ -52,6 +52,13 @@ export interface BaseAgentConfig<TInput = unknown> {
52
52
  services?: ServiceConfig[]
53
53
  /** LLM middleware chain applied per-agent (runs after preset-level middleware) */
54
54
  llmMiddleware?: LLMMiddleware[]
55
+ /**
56
+ * Prompt cache TTL for this agent's inference breakpoints.
57
+ * '1h' opts into Anthropic's extended cache tier for long-lived agents
58
+ * (e.g. an orchestrator that waits minutes between user turns). Defaults
59
+ * to the standard 5-minute tier.
60
+ */
61
+ cacheTtl?: '5m' | '1h'
55
62
  }
56
63
 
57
64
  /**
@@ -1,3 +1,5 @@
1
+ import type { InferenceResponse, LLMError, LLMMessage } from '~/core/llm/provider.js'
2
+ import type { Result } from '~/lib/utils/result.js'
1
3
  import { SessionContext } from '../sessions/context.js'
2
4
  import { AgentConfig } from './agent.js'
3
5
  import { AgentId } from './schema.js'
@@ -16,4 +18,13 @@ export type AgentContext<TInput = unknown> =
16
18
  input: TInput
17
19
  /** The parent agent ID (null for root agents) */
18
20
  parentId: AgentId | null
21
+
22
+ /**
23
+ * Run a one-off LLM call reusing the agent's current system prompt, tools,
24
+ * and conversation prefix, with extra trailing messages appended. Lets
25
+ * plugins do side-channel inferences (e.g. summarization) while sharing
26
+ * the agent's warm prompt cache. See Agent.runAuxiliaryInference for the
27
+ * full contract.
28
+ */
29
+ runAuxiliaryInference: (extraMessages: LLMMessage[]) => Promise<Result<InferenceResponse, LLMError>>
19
30
  }
@@ -8,6 +8,7 @@ import { agentIdSchema } from '~/core/agents/schema.js'
8
8
  import { createEventsFactory } from '~/core/events/types'
9
9
  import type { ToolResultContent } from '~/core/llm/llm-log-types.js'
10
10
  import type { ChatMessageContentItem } from '~/core/llm/llm-log-types.js'
11
+ import type { LLMMetrics } from '~/core/llm/state.js'
11
12
  import type { PendingToolResult, ToolCallId } from '~/core/tools/schema.js'
12
13
  import { MessageId } from '../../plugins/mailbox/schema.js'
13
14
 
@@ -107,11 +108,15 @@ export type AgentPauseReason = 'limit' | 'handler' | 'manual'
107
108
 
108
109
  /**
109
110
  * Prompt cache breakpoint marker.
110
- * When set on an LLMMessage, providers place `cache_control: { type: 'ephemeral' }`
111
- * on the LAST content block of the mapped message (regardless of block type),
112
- * marking it as a prompt cache checkpoint.
111
+ * When set on an LLMMessage, providers place `cache_control` on the LAST
112
+ * content block of the mapped message (regardless of block type), marking it
113
+ * as a prompt cache checkpoint.
114
+ *
115
+ * `ttl: '1h'` opts into Anthropic's 1-hour cache tier (write cost 2× input,
116
+ * read still 0.1×). Useful for long-lived agents whose prompt cache would
117
+ * otherwise expire between user turns. Omit for the default 5-minute tier.
113
118
  */
114
- export type LLMMessageCacheControl = { type: 'ephemeral' }
119
+ export type LLMMessageCacheControl = { type: 'ephemeral'; ttl?: '5m' | '1h' }
115
120
 
116
121
  /**
117
122
  * User message - from mailbox or direct input.
@@ -204,6 +209,8 @@ export interface AgentState {
204
209
  pauseReason?: AgentPauseReason
205
210
  /** Human-readable pause message */
206
211
  pauseMessage?: string
212
+ /** Metrics from the most recent completed inference — used by plugins (e.g. context-compact) to size context against the provider-reported truth. */
213
+ lastInferenceMetrics?: LLMMetrics
207
214
  }
208
215
 
209
216
  // ============================================================================
@@ -92,35 +92,55 @@ export class SessionFileStore implements FileStore {
92
92
  }
93
93
  }
94
94
 
95
- async list(path: string): Promise<Result<FileEntry[], string>> {
95
+ async list(
96
+ path: string,
97
+ options?: { maxDepth?: number; gitIgnore?: boolean },
98
+ ): Promise<Result<FileEntry[], string>> {
96
99
  const resolved = this.resolvePath(path)
97
100
  if (!resolved.ok) return resolved
98
101
 
102
+ const maxDepth = options?.maxDepth ?? 1
103
+ if (maxDepth < 1) return Ok([])
104
+
99
105
  try {
100
- const items = await this.fs.readdir(resolved.value, { withFileTypes: true })
101
106
  const entries: FileEntry[] = []
102
- for (const item of items) {
103
- let type: FileEntry['type']
104
- let size: number | undefined
105
- if (item.isFile()) {
106
- type = 'file'
107
- const s = await this.fs.stat(join(resolved.value, item.name))
108
- size = s.size
109
- } else if (item.isDirectory()) {
110
- type = 'directory'
111
- } else if (item.isSymbolicLink()) {
112
- type = 'symlink'
113
- } else {
114
- type = 'other'
115
- }
116
- entries.push({ name: item.name, type, size })
117
- }
107
+ await this.walkInto(resolved.value, '', maxDepth, entries)
118
108
  return Ok(entries)
119
109
  } catch {
120
110
  return Err(`Directory not found: ${path}`)
121
111
  }
122
112
  }
123
113
 
114
+ private async walkInto(
115
+ absDir: string,
116
+ relPrefix: string,
117
+ remainingDepth: number,
118
+ out: FileEntry[],
119
+ ): Promise<void> {
120
+ const items = await this.fs.readdir(absDir, { withFileTypes: true })
121
+ for (const item of items) {
122
+ const relName = relPrefix ? `${relPrefix}/${item.name}` : item.name
123
+ let type: FileEntry['type']
124
+ let size: number | undefined
125
+ if (item.isFile()) {
126
+ type = 'file'
127
+ const s = await this.fs.stat(join(absDir, item.name))
128
+ size = s.size
129
+ } else if (item.isDirectory()) {
130
+ type = 'directory'
131
+ } else if (item.isSymbolicLink()) {
132
+ type = 'symlink'
133
+ } else {
134
+ type = 'other'
135
+ }
136
+ out.push({ name: relName, type, size })
137
+
138
+ if (type === 'directory' && remainingDepth > 1) {
139
+ await this.walkInto(join(absDir, item.name), relName, remainingDepth - 1, out)
140
+ }
141
+ }
142
+ }
143
+
124
144
  async remove(path: string): Promise<Result<void, string>> {
125
145
  const resolved = this.resolvePath(path)
126
146
  if (!resolved.ok) return resolved
@@ -1,25 +1,36 @@
1
- import { afterEach, describe, expect, it, mock, spyOn } from 'bun:test'
2
- import * as childProcess from 'node:child_process'
1
+ import { afterEach, describe, expect, it, spyOn } from 'bun:test'
2
+ import { tmpdir } from 'node:os'
3
+ import { VipsImageResizer } from './vips-resizer.js'
4
+ import { createNodeFileSystem } from '~/testing/node-platform.js'
5
+ import type { ExecFileResult, ProcessRunner } from '~/platform/process.js'
3
6
 
4
7
  type ExecFileCallback = (error: Error | null, stdout: string, stderr: string) => void
5
8
  let execFileImpl: (cmd: string, args: string[], opts: unknown, cb: ExecFileCallback) => void = () => {}
6
9
 
7
- mock.module('node:child_process', () => ({
8
- ...childProcess,
9
- execFile: (cmd: string, args: string[], opts: unknown, cb: ExecFileCallback) => execFileImpl(cmd, args, opts, cb),
10
- }))
11
-
12
- const { VipsImageResizer } = await import('./vips-resizer.js')
13
- const { createNodePlatform } = await import('~/testing/node-platform.js')
10
+ // Fake ProcessRunner — wires execFile calls through the test-controlled
11
+ // `execFileImpl`. Avoids `mock.module('node:child_process')` because
12
+ // node-platform.ts promisifies execFile at module-load and other test files
13
+ // may load it first, freezing the binding to the real implementation.
14
+ function createFakeProcessRunner(): ProcessRunner {
15
+ return {
16
+ execFile: (file, args, options) =>
17
+ new Promise<ExecFileResult>((resolve, reject) => {
18
+ execFileImpl(file, args, options ?? {}, (err, stdout, stderr) => {
19
+ if (err) reject(err)
20
+ else resolve({ stdout: stdout ?? '', stderr: stderr ?? '' })
21
+ })
22
+ }),
23
+ spawn: () => {
24
+ throw new Error('spawn not implemented in test fake')
25
+ },
26
+ }
27
+ }
14
28
 
15
- // Test-scoped helper — routes through createNodePlatform so the module-level
16
- // node:child_process mock still intercepts execFile calls made by ProcessRunner.
17
29
  function createResizer(maxDimension?: number): InstanceType<typeof VipsImageResizer> {
18
- const platform = createNodePlatform()
19
30
  return new VipsImageResizer({
20
- fs: platform.fs,
21
- process: platform.process,
22
- tmpDir: platform.tmpDir,
31
+ fs: createNodeFileSystem(),
32
+ process: createFakeProcessRunner(),
33
+ tmpDir: tmpdir(),
23
34
  maxDimension,
24
35
  })
25
36
  }