@excitedjs/agent-runtime-codex 0.7.0-beta.264 → 0.7.0-beta.271

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 (113) hide show
  1. package/README.md +26 -17
  2. package/dist/activity/cursor.d.ts +0 -1
  3. package/dist/activity/cursor.d.ts.map +1 -1
  4. package/dist/activity/cursor.js +4 -8
  5. package/dist/activity/cursor.js.map +1 -1
  6. package/dist/activity/opened-file.d.ts.map +1 -1
  7. package/dist/activity/opened-file.js +13 -10
  8. package/dist/activity/opened-file.js.map +1 -1
  9. package/dist/activity/path.d.ts +9 -4
  10. package/dist/activity/path.d.ts.map +1 -1
  11. package/dist/activity/path.js +56 -50
  12. package/dist/activity/path.js.map +1 -1
  13. package/dist/activity/reader.d.ts +1 -4
  14. package/dist/activity/reader.d.ts.map +1 -1
  15. package/dist/activity/reader.js +31 -57
  16. package/dist/activity/reader.js.map +1 -1
  17. package/dist/args.d.ts +10 -38
  18. package/dist/args.d.ts.map +1 -1
  19. package/dist/args.js +11 -74
  20. package/dist/args.js.map +1 -1
  21. package/dist/codex-home.d.ts +10 -15
  22. package/dist/codex-home.d.ts.map +1 -1
  23. package/dist/codex-home.js +55 -40
  24. package/dist/codex-home.js.map +1 -1
  25. package/dist/config.d.ts +3 -32
  26. package/dist/config.d.ts.map +1 -1
  27. package/dist/config.js +14 -56
  28. package/dist/config.js.map +1 -1
  29. package/dist/diagnostic.d.ts +9 -3
  30. package/dist/diagnostic.d.ts.map +1 -1
  31. package/dist/diagnostic.js +14 -10
  32. package/dist/diagnostic.js.map +1 -1
  33. package/dist/events.d.ts +18 -47
  34. package/dist/events.d.ts.map +1 -1
  35. package/dist/events.js +27 -200
  36. package/dist/events.js.map +1 -1
  37. package/dist/handshake.d.ts +1 -1
  38. package/dist/handshake.d.ts.map +1 -1
  39. package/dist/handshake.js.map +1 -1
  40. package/dist/index.d.ts +10 -18
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +9 -24
  43. package/dist/index.js.map +1 -1
  44. package/dist/output-schema-codec.d.ts +0 -1
  45. package/dist/output-schema-codec.d.ts.map +1 -1
  46. package/dist/output-schema-codec.js +7 -23
  47. package/dist/output-schema-codec.js.map +1 -1
  48. package/dist/paths.d.ts +11 -6
  49. package/dist/paths.d.ts.map +1 -1
  50. package/dist/paths.js +29 -18
  51. package/dist/paths.js.map +1 -1
  52. package/dist/plugin.d.ts +14 -0
  53. package/dist/plugin.d.ts.map +1 -0
  54. package/dist/plugin.js +11 -0
  55. package/dist/plugin.js.map +1 -0
  56. package/dist/provider.d.ts +8 -34
  57. package/dist/provider.d.ts.map +1 -1
  58. package/dist/provider.js +16 -57
  59. package/dist/provider.js.map +1 -1
  60. package/dist/reasoning-effort.d.ts +9 -2
  61. package/dist/reasoning-effort.d.ts.map +1 -1
  62. package/dist/reasoning-effort.js +29 -9
  63. package/dist/reasoning-effort.js.map +1 -1
  64. package/dist/rpc.d.ts.map +1 -1
  65. package/dist/rpc.js.map +1 -1
  66. package/dist/runtime-deps.d.ts +8 -18
  67. package/dist/runtime-deps.d.ts.map +1 -1
  68. package/dist/runtime.d.ts.map +1 -1
  69. package/dist/runtime.js +86 -48
  70. package/dist/runtime.js.map +1 -1
  71. package/dist/skill-roots.d.ts +2 -2
  72. package/dist/skill-roots.d.ts.map +1 -1
  73. package/dist/skill-roots.js +3 -5
  74. package/dist/skill-roots.js.map +1 -1
  75. package/dist/supervisor.d.ts +2 -2
  76. package/dist/supervisor.d.ts.map +1 -1
  77. package/dist/supervisor.js +1 -1
  78. package/dist/supervisor.js.map +1 -1
  79. package/dist/system-prompt.d.ts +9 -0
  80. package/dist/system-prompt.d.ts.map +1 -0
  81. package/dist/{runtime-support.js → system-prompt.js} +2 -15
  82. package/dist/system-prompt.js.map +1 -0
  83. package/dist/tool-display.d.ts.map +1 -1
  84. package/dist/tool-display.js +70 -19
  85. package/dist/tool-display.js.map +1 -1
  86. package/dist/turn-manager.d.ts +9 -9
  87. package/dist/turn-manager.d.ts.map +1 -1
  88. package/dist/turn-manager.js +79 -47
  89. package/dist/turn-manager.js.map +1 -1
  90. package/dist/types.d.ts +0 -2
  91. package/dist/types.d.ts.map +1 -1
  92. package/dist/version.d.ts.map +1 -1
  93. package/dist/version.js.map +1 -1
  94. package/package.json +5 -4
  95. package/dist/activity/budget.d.ts +0 -8
  96. package/dist/activity/budget.d.ts.map +0 -1
  97. package/dist/activity/budget.js +0 -9
  98. package/dist/activity/budget.js.map +0 -1
  99. package/dist/activity/error.d.ts +0 -16
  100. package/dist/activity/error.d.ts.map +0 -1
  101. package/dist/activity/error.js +0 -22
  102. package/dist/activity/error.js.map +0 -1
  103. package/dist/approval.d.ts +0 -31
  104. package/dist/approval.d.ts.map +0 -1
  105. package/dist/approval.js +0 -43
  106. package/dist/approval.js.map +0 -1
  107. package/dist/provider-ref.d.ts +0 -8
  108. package/dist/provider-ref.d.ts.map +0 -1
  109. package/dist/provider-ref.js +0 -8
  110. package/dist/provider-ref.js.map +0 -1
  111. package/dist/runtime-support.d.ts +0 -20
  112. package/dist/runtime-support.d.ts.map +0 -1
  113. package/dist/runtime-support.js.map +0 -1
package/README.md CHANGED
@@ -1,10 +1,13 @@
1
1
  # @excitedjs/agent-runtime-codex
2
2
 
3
- The built-in **Codex** Agent Runtime provider for
4
- [Dreamux](https://github.com/excitedjs/dreamux), published behind the stable
5
- `builtin:codex` alias.
6
-
7
- It implements the public `AgentRuntimeProvider` contract from
3
+ The built-in **Codex** Dreamux plugin, always loaded by
4
+ [Dreamux](https://github.com/excitedjs/dreamux). Its default export is the neutral provider
5
+ factory for `npm:@excitedjs/agent-runtime-codex`. `createCodexPlugin()` is the
6
+ named plugin factory: Dreamux always loads it to contribute `builtin:codex`.
7
+ Named bare-provider constructors retain their own options.
8
+
9
+ The provider it contributes implements the public `AgentRuntimeProvider`
10
+ contract from
8
11
  [`@excitedjs/dreamux-types`](../../dreamux-types) against the Codex
9
12
  `app-server`: process supervision, the WebSocket RPC client, the `initialize`
10
13
  handshake, thread start/resume, the per-runtime turn manager, teammate
@@ -29,17 +32,21 @@ contract; see
29
32
 
30
33
  ## Logger
31
34
 
32
- The package logs through the optional `DreamuxLogger` the host passes in. With
33
- no logger it falls back to a minimal `console.error`-backed sink for standalone
34
- use and tests.
35
+ The package logs through the required `DreamuxLogger` in the neutral runtime
36
+ create context. The provider binds that logger, skill sources, and extra CLI
37
+ arguments when it constructs the runtime. Each successful thread start/resume
38
+ constructs a TurnManager bound to that thread id; socket allocation remains
39
+ per process start. Optional process/client factories remain available for
40
+ embedders.
35
41
 
36
42
  ## Ultrathink
37
43
 
38
- Include `ultrathink` anywhere in a submission to request the current model's
39
- highest supported reasoning effort. Matching is case-insensitive and includes
40
- quoted text in that submission. The provider only picks the `turn/start` effort
41
- parameter: submission text is passed through unchanged, with no explanation
42
- appended. It does not scan history or tools.
44
+ Include `ultrathink` as a whole word in a submission to request the current
45
+ model's highest supported reasoning effort. Matching is case-insensitive and
46
+ includes quoted text in that submission; a word it is only part of, such as
47
+ `ultrathinking`, does not match. The submission text is passed through
48
+ unchanged, and the turn carries one added text item holding the same sentence
49
+ Claude Code injects for this keyword. It does not scan history or tools.
43
50
 
44
51
  The next ordinary submission explicitly restores the original effort. Busy
45
52
  submissions use the same rule without waiting for completion; Codex owns input
@@ -53,15 +60,17 @@ modified. The feature uses stock `turn/start` parameters without a proxy.
53
60
 
54
61
  ## Standalone use
55
62
 
56
- External callers can register this provider directly:
63
+ External callers can construct the bare provider directly, without going
64
+ through the plugin:
57
65
 
58
66
  ```ts
59
67
  import { createCodexAgentRuntimeProvider } from '@excitedjs/agent-runtime-codex';
60
68
  ```
61
69
 
62
- The factory accepts the neutral create context plus optional host hooks
63
- (socket allocator, base process env, workspace skill preparation, and test
64
- factories for the Codex process / WS client / home doctor).
70
+ The provider accepts `restartBackoffBaseMs` and `restartBackoffMaxMs` options.
71
+ It constructs the native process and WebSocket client directly. Each runtime
72
+ start allocates a fresh socket from the neutral path capability; restart never
73
+ reuses a construction-time socket allocation.
65
74
 
66
75
  ## Portable Structured Output
67
76
 
@@ -11,7 +11,6 @@ interface CodexCursorEnvelope {
11
11
  pos: CodexCursorPosition;
12
12
  bd: string;
13
13
  }
14
- export declare function codexQueryFingerprint(includeTools: boolean): string;
15
14
  export declare function encodeCodexCursor(input: {
16
15
  fingerprint: string;
17
16
  generation: string;
@@ -1 +1 @@
1
- {"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../src/activity/cursor.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EACX,MAAM,0BAA0B,CAAC;AAIlC,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,mBAAmB;IAC3B,CAAC,EAAE,CAAC,CAAC;IACL,CAAC,EAAE,OAAO,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,mBAAmB,CAAC;IACzB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,OAAO,GAAG,MAAM,CAEnE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;CACxB,GAAG,MAAM,CAUT;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,mBAAmB,EAAE,MAAM,GAC1B,mBAAmB,CA0BrB;AAyBD,OAAO,EAAE,UAAU,IAAI,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../src/activity/cursor.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,UAAU,EACX,MAAM,0BAA0B,CAAC;AAElC,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,mBAAmB;IAC3B,CAAC,EAAE,CAAC,CAAC;IACL,CAAC,EAAE,OAAO,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,mBAAmB,CAAC;IACzB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;CACxB,GAAG,MAAM,CAUT;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,mBAAmB,EAAE,MAAM,GAC1B,mBAAmB,CA0BrB;AAyBD,OAAO,EAAE,UAAU,IAAI,MAAM,EAAE,CAAC"}
@@ -1,8 +1,4 @@
1
- import { isScanDigest, scanDigest, } from '@excitedjs/dreamux-utils';
2
- import { CodexActivityError } from './error.js';
3
- export function codexQueryFingerprint(includeTools) {
4
- return scanDigest(JSON.stringify({ include_tools: includeTools }));
5
- }
1
+ import { ActivityError, isScanDigest, scanDigest, } from '@excitedjs/dreamux-utils';
6
2
  export function encodeCodexCursor(input) {
7
3
  const envelope = {
8
4
  v: 1,
@@ -23,13 +19,13 @@ export function decodeCodexCursor(cursor, expectedFingerprint) {
23
19
  value = JSON.parse(decoded.toString('utf8'));
24
20
  }
25
21
  catch (error) {
26
- throw new CodexActivityError('cursor_invalid', 'Codex activity cursor is invalid', { cause: error });
22
+ throw new ActivityError('cursor_invalid', 'Codex activity cursor is invalid', { cause: error });
27
23
  }
28
24
  if (!isCursorEnvelope(value)) {
29
- throw new CodexActivityError('cursor_invalid', 'Codex activity cursor is invalid');
25
+ throw new ActivityError('cursor_invalid', 'Codex activity cursor is invalid');
30
26
  }
31
27
  if (value.fp !== expectedFingerprint) {
32
- throw new CodexActivityError('cursor_query_mismatch', 'Codex activity cursor belongs to a different query');
28
+ throw new ActivityError('cursor_query_mismatch', 'Codex activity cursor belongs to a different query');
33
29
  }
34
30
  return value;
35
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../src/activity/cursor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../src/activity/cursor.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,YAAY,EACZ,UAAU,GACX,MAAM,0BAA0B,CAAC;AAgBlC,MAAM,UAAU,iBAAiB,CAAC,KAKjC;IACC,MAAM,QAAQ,GAAwB;QACpC,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,OAAO;QACV,EAAE,EAAE,KAAK,CAAC,WAAW;QACrB,GAAG,EAAE,KAAK,CAAC,UAAU;QACrB,GAAG,EAAE,KAAK,CAAC,QAAQ;QACnB,EAAE,EAAE,KAAK,CAAC,cAAc;KACzB,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,MAAc,EACd,mBAA2B;IAE3B,IAAI,KAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACjD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3E,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,aAAa,CACrB,gBAAgB,EAChB,kCAAkC,EAClC,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,aAAa,CACrB,gBAAgB,EAChB,kCAAkC,CACnC,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,EAAE,KAAK,mBAAmB,EAAE,CAAC;QACrC,MAAM,IAAI,aAAa,CACrB,uBAAuB,EACvB,oDAAoD,CACrD,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,OAAO,CACL,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC;QAChC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;QACjB,MAAM,CAAC,GAAG,CAAC,KAAK,OAAO;QACvB,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1B,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3B,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1B,QAAQ,KAAK,IAAI;QACjB,OAAO,QAAQ,KAAK,QAAQ;QAC5B,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;QACxB,MAAM,CAAC,SAAS,CAAE,QAAoC,CAAC,SAAS,CAAC,CAAC;QAChE,QAAoC,CAAC,SAAS,CAAY,IAAI,CAAC;QACjE,MAAM,CAAC,aAAa,CAAE,QAAoC,CAAC,QAAQ,CAAC,CAAC;QACnE,QAAoC,CAAC,QAAQ,CAAY,IAAI,CAAC,CACjE,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,UAAU,IAAI,MAAM,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"opened-file.d.ts","sourceRoot":"","sources":["../../src/activity/opened-file.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAMnE,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACtB;AAED,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,SAAS,MAAM,EAAE,GAChC,OAAO,CAAC,kBAAkB,CAAC,CA4D7B"}
1
+ {"version":3,"file":"opened-file.d.ts","sourceRoot":"","sources":["../../src/activity/opened-file.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAInE,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACtB;AAED,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,SAAS,MAAM,EAAE,GAChC,OAAO,CAAC,kBAAkB,CAAC,CA0D7B"}
@@ -1,7 +1,6 @@
1
1
  import { constants } from 'node:fs';
2
2
  import { open, realpath } from 'node:fs/promises';
3
- import { isPathWithin } from '@excitedjs/dreamux-utils';
4
- import { CodexActivityError } from './error.js';
3
+ import { ActivityError, isPathWithin } from '@excitedjs/dreamux-utils';
5
4
  export async function openCodexRollout(candidate, canonicalRoots) {
6
5
  let handle;
7
6
  try {
@@ -16,10 +15,10 @@ export async function openCodexRollout(candidate, canonicalRoots) {
16
15
  realpath(candidate),
17
16
  ]);
18
17
  if (!opened.isFile()) {
19
- throw new CodexActivityError('invalid', 'Codex activity source is not a regular file');
18
+ throw new ActivityError('invalid', 'Codex activity source is not a regular file');
20
19
  }
21
20
  if (!canonicalRoots.some((root) => isPathWithin(root, canonicalPath))) {
22
- throw new CodexActivityError('locator_outside_root', 'Codex activity is unavailable for this session');
21
+ throw new ActivityError('locator_outside_root', 'Codex activity is unavailable for this session');
23
22
  }
24
23
  const current = await open(canonicalPath, constants.O_RDONLY | (constants.O_NOFOLLOW ?? 0)).catch((error) => {
25
24
  throw classifyOpenError(error);
@@ -27,7 +26,7 @@ export async function openCodexRollout(candidate, canonicalRoots) {
27
26
  try {
28
27
  const currentStat = await current.stat();
29
28
  if (opened.dev !== currentStat.dev || opened.ino !== currentStat.ino) {
30
- throw new CodexActivityError('unreadable', 'Codex activity source changed while opening');
29
+ throw new ActivityError('unreadable', 'Codex activity source changed while opening');
31
30
  }
32
31
  }
33
32
  finally {
@@ -43,19 +42,23 @@ export async function openCodexRollout(candidate, canonicalRoots) {
43
42
  }
44
43
  catch (error) {
45
44
  await handle.close().catch(() => undefined);
46
- if (error instanceof CodexActivityError)
45
+ if (error instanceof ActivityError)
47
46
  throw error;
48
- throw new CodexActivityError('unreadable', 'Codex activity is unreadable', { cause: error });
47
+ throw new ActivityError('unreadable', 'Codex activity is unreadable', {
48
+ cause: error,
49
+ });
49
50
  }
50
51
  }
51
52
  function classifyOpenError(error) {
52
53
  const code = error.code;
53
54
  if (code === 'ENOENT') {
54
- return new CodexActivityError('not_found', 'Codex activity is unavailable for this session', { cause: error });
55
+ return new ActivityError('not_found', 'Codex activity is unavailable for this session', { cause: error });
55
56
  }
56
57
  if (code === 'ELOOP') {
57
- return new CodexActivityError('locator_outside_root', 'Codex activity is unavailable for this session', { cause: error });
58
+ return new ActivityError('locator_outside_root', 'Codex activity is unavailable for this session', { cause: error });
58
59
  }
59
- return new CodexActivityError('unreadable', 'Codex activity is unreadable', { cause: error });
60
+ return new ActivityError('unreadable', 'Codex activity is unreadable', {
61
+ cause: error,
62
+ });
60
63
  }
61
64
  //# sourceMappingURL=opened-file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"opened-file.js","sourceRoot":"","sources":["../../src/activity/opened-file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opened-file.js","sourceRoot":"","sources":["../../src/activity/opened-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAmB,MAAM,kBAAkB,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAUvE,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,SAAiB,EACjB,cAAiC;IAEjC,IAAI,MAAkB,CAAC;IACvB,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,IAAI,CACjB,SAAS,EACT,SAAS,CAAC,QAAQ,GAAG,CAAC,SAAS,CAAC,UAAU,IAAI,CAAC,CAAC,CACjD,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,CAAC;QACH,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAChD,MAAM,CAAC,IAAI,EAAE;YACb,QAAQ,CAAC,SAAS,CAAC;SACpB,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YACrB,MAAM,IAAI,aAAa,CACrB,SAAS,EACT,6CAA6C,CAC9C,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;YACtE,MAAM,IAAI,aAAa,CACrB,sBAAsB,EACtB,gDAAgD,CACjD,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CACxB,aAAa,EACb,SAAS,CAAC,QAAQ,GAAG,CAAC,SAAS,CAAC,UAAU,IAAI,CAAC,CAAC,CACjD,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YACzB,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;YACzC,IAAI,MAAM,CAAC,GAAG,KAAK,WAAW,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,KAAK,WAAW,CAAC,GAAG,EAAE,CAAC;gBACrE,MAAM,IAAI,aAAa,CACrB,YAAY,EACZ,6CAA6C,CAC9C,CAAC;YACJ,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC;QACD,OAAO;YACL,MAAM;YACN,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,GAAG,EAAE,MAAM,CAAC,GAAG;SAChB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,KAAK,YAAY,aAAa;YAAE,MAAM,KAAK,CAAC;QAChD,MAAM,IAAI,aAAa,CAAC,YAAY,EAAE,8BAA8B,EAAE;YACpE,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,MAAM,IAAI,GAAI,KAA+B,CAAC,IAAI,CAAC;IACnD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,aAAa,CACtB,WAAW,EACX,gDAAgD,EAChD,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,OAAO,IAAI,aAAa,CACtB,sBAAsB,EACtB,gDAAgD,EAChD,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,aAAa,CAAC,YAAY,EAAE,8BAA8B,EAAE;QACrE,KAAK,EAAE,KAAK;KACb,CAAC,CAAC;AACL,CAAC"}
@@ -1,6 +1,11 @@
1
1
  import type { DreamuxEnvironment } from '@excitedjs/dreamux-types';
2
- import { type CodexScanBudget } from './budget.js';
2
+ import { type ScanBudget } from '@excitedjs/dreamux-utils';
3
3
  import { type CodexOpenedRollout } from './opened-file.js';
4
+ /** The default bounded budget for a Codex activity discovery scan. */
5
+ export declare function createCodexScanBudget(input?: {
6
+ maxEntries?: number;
7
+ maxElapsedMs?: number;
8
+ }): ScanBudget;
4
9
  export interface CodexRolloutRoots {
5
10
  home: string;
6
11
  sessions: string;
@@ -19,9 +24,9 @@ export interface CodexHistoryBase {
19
24
  rolloutId: string;
20
25
  endByteOffset: number;
21
26
  }
22
- export declare function resolveCodexRolloutRoots(env?: DreamuxEnvironment): Promise<CodexRolloutRoots>;
27
+ export declare function resolveCodexRolloutRoots(env: DreamuxEnvironment): Promise<CodexRolloutRoots>;
23
28
  export declare function validateCodexRolloutPath(candidate: string, expectedSessionId: string, roots: CodexRolloutRoots): Promise<CodexValidatedRollout>;
24
- export declare function locateCodexRollout(locator: string | null | undefined, expectedSessionId: string, roots: CodexRolloutRoots, budget?: CodexScanBudget): Promise<CodexValidatedRollout>;
25
- export declare function findCodexRolloutById(roots: CodexRolloutRoots, rolloutId: string, budget?: CodexScanBudget): Promise<CodexValidatedRollout>;
29
+ export declare function locateCodexRollout(locator: string | null | undefined, expectedSessionId: string, roots: CodexRolloutRoots, budget?: ScanBudget): Promise<CodexValidatedRollout>;
30
+ export declare function findCodexRolloutById(roots: CodexRolloutRoots, rolloutId: string, budget?: ScanBudget): Promise<CodexValidatedRollout>;
26
31
  export declare function readCodexRolloutText(opened: CodexOpenedRollout, maxDecodedBytes: number): Promise<string>;
27
32
  //# sourceMappingURL=path.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../src/activity/path.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAGnE,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,aAAa,CAAC;AAErB,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,kBAAkB,CAAC;AAM1B,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,wBAAwB,CAC5C,GAAG,GAAE,kBAAgC,GACpC,OAAO,CAAC,iBAAiB,CAAC,CAuC5B;AAED,wBAAsB,wBAAwB,CAC5C,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,MAAM,EACzB,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,qBAAqB,CAAC,CAMhC;AAED,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAClC,iBAAiB,EAAE,MAAM,EACzB,KAAK,EAAE,iBAAiB,EACxB,MAAM,GAAE,eAAyC,GAChD,OAAO,CAAC,qBAAqB,CAAC,CA4ChC;AAED,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,iBAAiB,EACxB,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,eAAyC,GAChD,OAAO,CAAC,qBAAqB,CAAC,CA2BhC;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,kBAAkB,EAC1B,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC,CAwCjB"}
1
+ {"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../src/activity/path.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAIL,KAAK,UAAU,EAChB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAoB,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAQ7E,sEAAsE;AACtE,wBAAgB,qBAAqB,CACnC,KAAK,GAAE;IACL,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CAClB,GACL,UAAU,CAMZ;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,kBAAkB,GACtB,OAAO,CAAC,iBAAiB,CAAC,CAgD5B;AAED,wBAAsB,wBAAwB,CAC5C,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,MAAM,EACzB,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,qBAAqB,CAAC,CAMhC;AAED,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAClC,iBAAiB,EAAE,MAAM,EACzB,KAAK,EAAE,iBAAiB,EACxB,MAAM,GAAE,UAAoC,GAC3C,OAAO,CAAC,qBAAqB,CAAC,CAgChC;AAED,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,iBAAiB,EACxB,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,UAAoC,GAC3C,OAAO,CAAC,qBAAqB,CAAC,CAuBhC;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,kBAAkB,EAC1B,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC,CAsCjB"}
@@ -1,38 +1,52 @@
1
1
  import { opendir, realpath, stat } from 'node:fs/promises';
2
2
  import { basename, isAbsolute, join, resolve } from 'node:path';
3
3
  import { createZstdDecompress } from 'node:zlib';
4
- import { isPathWithin } from '@excitedjs/dreamux-utils';
5
- import { createCodexScanBudget, } from './budget.js';
6
- import { CodexActivityError } from './error.js';
7
- import { openCodexRollout, } from './opened-file.js';
4
+ import { ActivityError, createScanBudget, isPathWithin, } from '@excitedjs/dreamux-utils';
5
+ import { resolveCodexHomeDir } from '../paths.js';
6
+ import { openCodexRollout } from './opened-file.js';
8
7
  const ROLLOUT_FILENAME = /^rollout-[^/]+-[0-9a-f-]{36}(?:_[0-9a-f-]{36})?\.jsonl(?:\.zst)?$/i;
9
8
  const MAX_METADATA_BYTES = 1_048_576;
10
- export async function resolveCodexRolloutRoots(env = process.env) {
9
+ const SCAN_BUDGET_EXCEEDED_MESSAGE = 'Codex activity read exceeded its bounded limit';
10
+ /** The default bounded budget for a Codex activity discovery scan. */
11
+ export function createCodexScanBudget(input = {}) {
12
+ return createScanBudget({
13
+ ...input,
14
+ limitError: () => new ActivityError('scan_unsupported', SCAN_BUDGET_EXCEEDED_MESSAGE),
15
+ });
16
+ }
17
+ export async function resolveCodexRolloutRoots(env) {
11
18
  const configured = env['CODEX_HOME'];
19
+ if (configured === undefined &&
20
+ (env['HOME'] === undefined || env['HOME'] === '')) {
21
+ throw new ActivityError('not_found', 'Codex home directory is unavailable');
22
+ }
23
+ // resolveCodexHomeDir is pure/non-throwing (it also backs the doctor, which
24
+ // has no missing-HOME failure mode of its own); the guard above preserves
25
+ // this reader's own typed-error contract for that case.
26
+ const candidate = resolveCodexHomeDir(env);
12
27
  let home;
13
28
  if (configured !== undefined) {
14
- if (!isAbsolute(configured)) {
15
- throw new CodexActivityError('invalid', 'Explicit Codex home must be an absolute directory');
29
+ if (!isAbsolute(candidate)) {
30
+ throw new ActivityError('invalid', 'Explicit Codex home must be an absolute directory');
16
31
  }
17
32
  let info;
18
33
  try {
19
- info = await stat(configured);
34
+ info = await stat(candidate);
20
35
  }
21
36
  catch (error) {
22
37
  throw classifyRootError(error);
23
38
  }
24
39
  if (!info.isDirectory()) {
25
- throw new CodexActivityError('invalid', 'Explicit Codex home must be a directory');
40
+ throw new ActivityError('invalid', 'Explicit Codex home must be a directory');
26
41
  }
27
- home = await realpath(configured).catch((error) => {
42
+ home = await realpath(candidate).catch((error) => {
28
43
  throw classifyRootError(error);
29
44
  });
30
45
  }
31
46
  else {
32
- const fallback = join(homeDirectory(env), '.codex');
33
- home = await realpath(fallback).catch((error) => {
47
+ home = await realpath(candidate).catch((error) => {
34
48
  if (error.code === 'ENOENT') {
35
- return resolve(fallback);
49
+ return resolve(candidate);
36
50
  }
37
51
  throw classifyRootError(error);
38
52
  });
@@ -56,8 +70,7 @@ export async function locateCodexRollout(locator, expectedSessionId, roots, budg
56
70
  return await validateCodexRolloutPath(locator, expectedSessionId, roots);
57
71
  }
58
72
  catch (error) {
59
- if (!(error instanceof CodexActivityError) ||
60
- error.detail !== 'not_found') {
73
+ if (!(error instanceof ActivityError) || error.detail !== 'not_found') {
61
74
  throw error;
62
75
  }
63
76
  }
@@ -68,15 +81,14 @@ export async function locateCodexRollout(locator, expectedSessionId, roots, budg
68
81
  return await validateCodexRolloutPath(candidate, expectedSessionId, roots);
69
82
  }
70
83
  catch (error) {
71
- if (error instanceof CodexActivityError &&
72
- (error.detail === 'session_mismatch' ||
73
- error.detail === 'not_found')) {
84
+ if (error instanceof ActivityError &&
85
+ (error.detail === 'session_mismatch' || error.detail === 'not_found')) {
74
86
  continue;
75
87
  }
76
88
  throw error;
77
89
  }
78
90
  }
79
- throw new CodexActivityError('not_found', 'Codex activity is unavailable for this session');
91
+ throw new ActivityError('not_found', 'Codex activity is unavailable for this session');
80
92
  }
81
93
  export async function findCodexRolloutById(roots, rolloutId, budget = createCodexScanBudget()) {
82
94
  const candidates = await discoverRollouts(roots, rolloutId, budget);
@@ -92,19 +104,18 @@ export async function findCodexRolloutById(roots, rolloutId, budget = createCode
92
104
  });
93
105
  }
94
106
  catch (error) {
95
- if (error instanceof CodexActivityError &&
96
- (error.detail === 'session_mismatch' ||
97
- error.detail === 'not_found')) {
107
+ if (error instanceof ActivityError &&
108
+ (error.detail === 'session_mismatch' || error.detail === 'not_found')) {
98
109
  continue;
99
110
  }
100
111
  throw error;
101
112
  }
102
113
  }
103
- throw new CodexActivityError('not_found', 'Codex activity history is unavailable');
114
+ throw new ActivityError('not_found', 'Codex activity history is unavailable');
104
115
  }
105
116
  export async function readCodexRolloutText(opened, maxDecodedBytes) {
106
117
  if (opened.path.endsWith('.zst') && opened.size > maxDecodedBytes) {
107
- throw new CodexActivityError('scan_unsupported', 'Codex activity requires a native read index');
118
+ throw new ActivityError('scan_unsupported', 'Codex activity requires a native read index');
108
119
  }
109
120
  const source = opened.handle.createReadStream({
110
121
  autoClose: false,
@@ -120,15 +131,17 @@ export async function readCodexRolloutText(opened, maxDecodedBytes) {
120
131
  const buffer = Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk);
121
132
  decodedBytes += buffer.length;
122
133
  if (decodedBytes > maxDecodedBytes) {
123
- throw new CodexActivityError('scan_unsupported', 'Codex activity exceeds the bounded limit');
134
+ throw new ActivityError('scan_unsupported', 'Codex activity exceeds the bounded limit');
124
135
  }
125
136
  chunks.push(buffer);
126
137
  }
127
138
  }
128
139
  catch (error) {
129
- if (error instanceof CodexActivityError)
140
+ if (error instanceof ActivityError)
130
141
  throw error;
131
- throw new CodexActivityError('unreadable', 'Codex activity is unreadable', { cause: error });
142
+ throw new ActivityError('unreadable', 'Codex activity is unreadable', {
143
+ cause: error,
144
+ });
132
145
  }
133
146
  finally {
134
147
  stream.destroy();
@@ -168,15 +181,15 @@ async function readCodexSessionMetadata(opened) {
168
181
  }
169
182
  }
170
183
  catch (error) {
171
- if (error instanceof CodexActivityError)
184
+ if (error instanceof ActivityError)
172
185
  throw error;
173
- throw new CodexActivityError('unreadable', 'Codex activity metadata is unreadable', { cause: error });
186
+ throw new ActivityError('unreadable', 'Codex activity metadata is unreadable', { cause: error });
174
187
  }
175
188
  finally {
176
189
  stream.destroy();
177
190
  source.destroy();
178
191
  }
179
- throw new CodexActivityError('invalid', 'Codex activity metadata is invalid');
192
+ throw new ActivityError('invalid', 'Codex activity metadata is invalid');
180
193
  }
181
194
  async function discoverRollouts(roots, id, budget) {
182
195
  const matches = [];
@@ -191,7 +204,7 @@ async function discoverRollouts(roots, id, budget) {
191
204
  catch (error) {
192
205
  if (error.code === 'ENOENT')
193
206
  continue;
194
- throw new CodexActivityError('unreadable', 'Codex activity source is unreadable', { cause: error });
207
+ throw new ActivityError('unreadable', 'Codex activity source is unreadable', { cause: error });
195
208
  }
196
209
  try {
197
210
  for await (const entry of opened) {
@@ -207,11 +220,11 @@ async function discoverRollouts(roots, id, budget) {
207
220
  }
208
221
  }
209
222
  catch (error) {
210
- if (error instanceof CodexActivityError)
223
+ if (error instanceof ActivityError)
211
224
  throw error;
212
225
  if (error.code === 'ENOENT')
213
226
  continue;
214
- throw new CodexActivityError('unreadable', 'Codex activity source is unreadable', { cause: error });
227
+ throw new ActivityError('unreadable', 'Codex activity source is unreadable', { cause: error });
215
228
  }
216
229
  }
217
230
  }
@@ -228,11 +241,11 @@ async function existingRepresentation(path) {
228
241
  }
229
242
  catch (error) {
230
243
  if (error.code !== 'ENOENT') {
231
- throw new CodexActivityError('unreadable', 'Codex activity source is unreadable', { cause: error });
244
+ throw new ActivityError('unreadable', 'Codex activity source is unreadable', { cause: error });
232
245
  }
233
246
  }
234
247
  }
235
- throw new CodexActivityError('not_found', 'Codex activity is unavailable for this session');
248
+ throw new ActivityError('not_found', 'Codex activity is unavailable for this session');
236
249
  }
237
250
  async function canonicalExistingRoots(roots) {
238
251
  const result = [];
@@ -240,13 +253,13 @@ async function canonicalExistingRoots(roots) {
240
253
  const canonical = await realpath(root).catch((error) => {
241
254
  if (error.code === 'ENOENT')
242
255
  return null;
243
- throw new CodexActivityError('unreadable', 'Codex activity source is unreadable', { cause: error });
256
+ throw new ActivityError('unreadable', 'Codex activity source is unreadable', { cause: error });
244
257
  });
245
258
  if (canonical !== null)
246
259
  result.push(canonical);
247
260
  }
248
261
  if (result.length === 0) {
249
- throw new CodexActivityError('not_found', 'Codex activity is unavailable');
262
+ throw new ActivityError('not_found', 'Codex activity is unavailable');
250
263
  }
251
264
  return result;
252
265
  }
@@ -259,12 +272,12 @@ async function validateCodexRollout(input) {
259
272
  const rolloutId = rolloutIdFromPath(opened.path);
260
273
  if (input.expectedRolloutId !== undefined &&
261
274
  rolloutId.toLowerCase() !== input.expectedRolloutId.toLowerCase()) {
262
- throw new CodexActivityError('session_mismatch', 'Codex activity identity does not match');
275
+ throw new ActivityError('session_mismatch', 'Codex activity identity does not match');
263
276
  }
264
277
  const metadata = await readCodexSessionMetadata(opened);
265
278
  if (input.expectedSessionId !== undefined &&
266
279
  metadata.sessionId !== input.expectedSessionId) {
267
- throw new CodexActivityError('session_mismatch', 'Codex activity does not belong to the selected session');
280
+ throw new ActivityError('session_mismatch', 'Codex activity does not belong to the selected session');
268
281
  }
269
282
  return {
270
283
  path: opened.path,
@@ -288,7 +301,7 @@ function metadataFromLine(line) {
288
301
  const meta = asRecord(payload?.['meta']) ?? payload;
289
302
  const id = stringValue(meta?.['id']) ?? stringValue(meta?.['session_id']);
290
303
  if (id === null) {
291
- throw new CodexActivityError('invalid', 'Codex activity metadata is invalid');
304
+ throw new ActivityError('invalid', 'Codex activity metadata is invalid');
292
305
  }
293
306
  const historyBaseRecord = asRecord(meta?.['history_base']);
294
307
  const rolloutId = stringValue(historyBaseRecord?.['thread_id']);
@@ -301,10 +314,10 @@ function metadataFromLine(line) {
301
314
  };
302
315
  }
303
316
  function metadataTooLarge() {
304
- return new CodexActivityError('invalid', 'Codex activity metadata exceeds its bounded record size');
317
+ return new ActivityError('invalid', 'Codex activity metadata exceeds its bounded record size');
305
318
  }
306
319
  function classifyRootError(error) {
307
- return new CodexActivityError(error.code === 'ENOENT'
320
+ return new ActivityError(error.code === 'ENOENT'
308
321
  ? 'not_found'
309
322
  : 'unreadable', 'Codex home directory is unavailable', { cause: error });
310
323
  }
@@ -318,15 +331,8 @@ function rolloutIdsFromPath(path) {
318
331
  }
319
332
  function assertNativeRolloutPath(candidate) {
320
333
  if (!isAbsolute(candidate) || !ROLLOUT_FILENAME.test(basename(candidate))) {
321
- throw new CodexActivityError('invalid', 'Codex activity source is not a native rollout path');
322
- }
323
- }
324
- function homeDirectory(env) {
325
- const value = env['HOME'];
326
- if (value === undefined || value === '') {
327
- throw new CodexActivityError('not_found', 'Codex home directory is unavailable');
334
+ throw new ActivityError('invalid', 'Codex activity source is not a native rollout path');
328
335
  }
329
- return value;
330
336
  }
331
337
  function parseObject(value) {
332
338
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"path.js","sourceRoot":"","sources":["../../src/activity/path.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"path.js","sourceRoot":"","sources":["../../src/activity/path.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,5 @@ import type { DispatcherCodexConfig } from '../config.js';
7
7
  * session after its live runtime has closed: it discovers the rollout lineage
8
8
  * from the session id alone, and never depends on a persisted native path.
9
9
  */
10
- export declare function readCodexRecentActivity(query: AgentActivityQuery, context: AgentActivityReadContext<DispatcherCodexConfig>, testHooks?: {
11
- afterLocate?: () => void | Promise<void>;
12
- maxReadChunkBytes?: number;
13
- }): Promise<AgentActivityPage>;
10
+ export declare function readCodexRecentActivity(query: AgentActivityQuery, context: AgentActivityReadContext<DispatcherCodexConfig>): Promise<AgentActivityPage>;
14
11
  //# sourceMappingURL=reader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../src/activity/reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAoD1D;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,kBAAkB,EACzB,OAAO,EAAE,wBAAwB,CAAC,qBAAqB,CAAC,EACxD,SAAS,GAAE;IACT,WAAW,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CACvB,GACL,OAAO,CAAC,iBAAiB,CAAC,CA0E5B"}
1
+ {"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../src/activity/reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAOlC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAmD1D;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,kBAAkB,EACzB,OAAO,EAAE,wBAAwB,CAAC,qBAAqB,CAAC,GACvD,OAAO,CAAC,iBAAiB,CAAC,CAiE5B"}