@gkorepanov/ccodex 0.4.2 → 0.4.3

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 (36) hide show
  1. package/config/compatibility.json +1 -1
  2. package/dist/claude/environment.d.ts +1 -0
  3. package/dist/claude/environment.js +6 -0
  4. package/dist/claude/environment.js.map +1 -0
  5. package/dist/claude/modelCatalog.js +2 -1
  6. package/dist/claude/modelCatalog.js.map +1 -1
  7. package/dist/claude/service.d.ts +1 -1
  8. package/dist/claude/service.js +7 -4
  9. package/dist/claude/service.js.map +1 -1
  10. package/dist/claude/session/providerRuntime.d.ts +1 -1
  11. package/dist/claude/session/providerRuntime.js +1 -1
  12. package/dist/claude/session/providerRuntime.js.map +1 -1
  13. package/dist/claude/session/providerRuntimeFactory.d.ts +1 -0
  14. package/dist/claude/session/providerRuntimeFactory.js +6 -3
  15. package/dist/claude/session/providerRuntimeFactory.js.map +1 -1
  16. package/dist/claude/session/runtime.d.ts +8 -0
  17. package/dist/claude/session/runtime.js +33 -5
  18. package/dist/claude/session/runtime.js.map +1 -1
  19. package/dist/claude/session/scopeState.d.ts +5 -3
  20. package/dist/claude/session/scopeState.js +3 -0
  21. package/dist/claude/session/scopeState.js.map +1 -1
  22. package/dist/claude/session/session.d.ts +4 -0
  23. package/dist/claude/session/session.js +239 -56
  24. package/dist/claude/session/session.js.map +1 -1
  25. package/dist/claude/session/shellRunner.js +2 -1
  26. package/dist/claude/session/shellRunner.js.map +1 -1
  27. package/dist/claude/toolMapper.js +8 -3
  28. package/dist/claude/toolMapper.js.map +1 -1
  29. package/dist/config/config.d.ts +1 -0
  30. package/dist/config/config.js +4 -1
  31. package/dist/config/config.js.map +1 -1
  32. package/dist/gateway/clientConnection.js +26 -26
  33. package/dist/gateway/clientConnection.js.map +1 -1
  34. package/examples/config.toml +1 -0
  35. package/legal/THIRD_PARTY_NOTICES.md +1 -28
  36. package/package.json +4 -4
@@ -1,6 +1,17 @@
1
1
  import { AsyncQueue } from "../asyncQueue.js";
2
2
  import { interruptAndCancelOwned } from "../interruptCompat.js";
3
3
  import { normalizeProviderMessage, } from "./providerFacts.js";
4
+ export class ClaudeRuntimeStartupError extends Error {
5
+ retryableEarlyExit;
6
+ constructor(message, retryableEarlyExit, options) {
7
+ super(message, options);
8
+ this.retryableEarlyExit = retryableEarlyExit;
9
+ this.name = "ClaudeRuntimeStartupError";
10
+ }
11
+ }
12
+ export function isRetryableClaudeRuntimeStartupError(error) {
13
+ return error instanceof ClaudeRuntimeStartupError && error.retryableEarlyExit;
14
+ }
4
15
  export class ClaudeRuntime {
5
16
  runtimeGeneration;
6
17
  submitFact;
@@ -15,6 +26,8 @@ export class ClaudeRuntime {
15
26
  exited = false;
16
27
  capabilities = new Set();
17
28
  ownedMessageIds = new Set();
29
+ stderrTail = "";
30
+ providerOutputSeen = false;
18
31
  constructor(runtimeGeneration, options, queryFactory, submitFact) {
19
32
  this.runtimeGeneration = runtimeGeneration;
20
33
  this.submitFact = submitFact;
@@ -29,9 +42,17 @@ export class ClaudeRuntime {
29
42
  pendingInputs: this.input.pendingCount,
30
43
  });
31
44
  });
45
+ const stderr = options.stderr;
32
46
  this.query = queryFactory({
33
47
  prompt: this.input,
34
- options: { ...options, abortController: this.abort },
48
+ options: {
49
+ ...options,
50
+ abortController: this.abort,
51
+ stderr: (line) => {
52
+ this.stderrTail = `${this.stderrTail}${line}`.slice(-8_192);
53
+ stderr?.(line);
54
+ },
55
+ },
35
56
  });
36
57
  }
37
58
  get pendingInputCount() {
@@ -41,7 +62,15 @@ export class ClaudeRuntime {
41
62
  return Promise.race([
42
63
  this.query.initializationResult(),
43
64
  this.initializationExit,
44
- ]);
65
+ ]).catch((error) => Promise.reject(this.initializationFailure(error)));
66
+ }
67
+ initializationFailure(error) {
68
+ if (error instanceof ClaudeRuntimeStartupError)
69
+ return error;
70
+ const cause = error instanceof Error ? error : new Error(String(error));
71
+ const stderr = this.stderrTail.trim();
72
+ const message = stderr ? `${cause.message}\nClaude stderr: ${stderr}` : cause.message;
73
+ return new ClaudeRuntimeStartupError(message, !this.providerOutputSeen && /Query closed before response received|exited during initialization|became unavailable during initialization/iu.test(cause.message), { cause });
45
74
  }
46
75
  start() {
47
76
  if (this.consumer)
@@ -110,6 +139,7 @@ export class ClaudeRuntime {
110
139
  let exitSubmitted = false;
111
140
  try {
112
141
  for await (const message of this.query) {
142
+ this.providerOutputSeen = true;
113
143
  await this.submitFact(normalizeProviderMessage(this.runtimeGeneration, message));
114
144
  }
115
145
  this.markExited();
@@ -132,9 +162,7 @@ export class ClaudeRuntime {
132
162
  }
133
163
  markExited(error) {
134
164
  this.exited = true;
135
- this.rejectInitializationExit(error instanceof Error
136
- ? error
137
- : new Error(`Claude runtime generation ${this.runtimeGeneration} exited during initialization.`));
165
+ this.rejectInitializationExit(this.initializationFailure(error ?? new Error(`Claude runtime generation ${this.runtimeGeneration} exited during initialization.`)));
138
166
  }
139
167
  }
140
168
  //# sourceMappingURL=runtime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../src/claude/session/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../src/claude/session/runtime.ts"],"names":[],"mappings":"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"}
@@ -23,9 +23,10 @@ export interface SessionTool extends ActiveTool {
23
23
  export interface ScopeTask {
24
24
  readonly taskId: string;
25
25
  readonly ownerThreadId: string;
26
- readonly itemId: string;
27
- readonly providerId: string;
28
- readonly turnId: string;
26
+ itemId: string;
27
+ providerId: string;
28
+ readonly providerIds: Set<string>;
29
+ turnId: string;
29
30
  childThreadId: string | undefined;
30
31
  outputFile: string | undefined;
31
32
  terminal: boolean;
@@ -38,6 +39,7 @@ export interface ScopeTask {
38
39
  stopped: boolean;
39
40
  };
40
41
  }
42
+ export declare function taskUsesProvider(task: ScopeTask, providerId: string): boolean;
41
43
  export declare function newMainStreamState(ownerThreadId: string, turnId: string, record: ClaudeThreadRecord, review?: string): MainStreamState;
42
44
  export declare function toolAt(state: MainStreamState, index: number): SessionTool | undefined;
43
45
  export declare function streamItem(turn: Turn, state: MainStreamState, index: number): ThreadItem | undefined;
@@ -1,4 +1,7 @@
1
1
  import { v7 as uuidv7 } from "uuid";
2
+ export function taskUsesProvider(task, providerId) {
3
+ return task.providerIds.has(providerId);
4
+ }
2
5
  export function newMainStreamState(ownerThreadId, turnId, record, review) {
3
6
  return {
4
7
  ownerThreadId,
@@ -1 +1 @@
1
- {"version":3,"file":"scopeState.js","sourceRoot":"","sources":["../../../src/claude/session/scopeState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scopeState.js","sourceRoot":"","sources":["../../../src/claude/session/scopeState.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,7 @@ export interface ClaudeSessionRuntimeDependencies {
23
23
  readonly invalidateModelCatalog: () => void;
24
24
  readonly isClosing: () => boolean;
25
25
  readonly persistUserSideSessions: boolean;
26
+ readonly interactiveQuestions?: boolean;
26
27
  }
27
28
  export interface PreparedRuntimeTurn {
28
29
  readonly messageUuid: string;
@@ -93,6 +94,7 @@ export declare class ClaudeSession implements ClaudeSessionHandle<ClaudeSessionC
93
94
  private beginRuntimeReplacement;
94
95
  get isLoaded(): boolean;
95
96
  ensureRuntime(reinitialize?: boolean): Promise<void>;
97
+ ensureEphemeralRuntime(): Promise<void>;
96
98
  materializeRuntime(): Promise<void>;
97
99
  prepareRuntimeTurn(params: TurnStartParams, readOnly?: boolean): Promise<PreparedRuntimeTurn>;
98
100
  interruptRuntime(expectedTurnId?: string): Promise<void>;
@@ -266,10 +268,12 @@ export declare class ClaudeSession implements ClaudeSessionHandle<ClaudeSessionC
266
268
  private cancelRuntimeInjections;
267
269
  private hasOutputDrains;
268
270
  private projectTaskFact;
271
+ private projectDetachedTaskFact;
269
272
  private updateTool;
270
273
  private beginTool;
271
274
  private completeTool;
272
275
  private createChildScope;
276
+ private resumeChildScope;
273
277
  private finishChildScope;
274
278
  private reconcileAssistant;
275
279
  private ensureStreamItem;