@jrkropp/codex-js 0.1.2 → 0.1.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 (133) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/ClientNotification-B6-FhXQf.d.ts +5 -0
  3. package/dist/DynamicToolCallResponse-82DFjES2.d.ts +8 -0
  4. package/dist/DynamicToolSpec-CfnhqAYK.d.ts +29 -0
  5. package/dist/PermissionsRequestApprovalResponse-DxzPPDRb.d.ts +55 -0
  6. package/dist/ProviderStatusBanner-BlP6lzwE.d.ts +441 -0
  7. package/dist/ServerRequest-B5cKVJjr.d.ts +2181 -0
  8. package/dist/{session-DPhHN7RZ.d.ts → ThreadResumeResponse-DvmE1juU.d.ts} +3 -306
  9. package/dist/ToolRequestUserInputQuestion-CeZa5X1J.d.ts +23 -0
  10. package/dist/ToolRequestUserInputResponse-zcPLwbiK.d.ts +17 -0
  11. package/dist/TurnSteerResponse-0kBCfplh.d.ts +209 -0
  12. package/dist/WebSearchToolConfig-D3ep0625.d.ts +18 -0
  13. package/dist/chat-runtime-B6azJyKo.d.ts +381 -0
  14. package/dist/chunk-2DZRMCI2.js +1258 -0
  15. package/dist/chunk-2DZRMCI2.js.map +1 -0
  16. package/dist/chunk-4DPLJPB5.js +396 -0
  17. package/dist/chunk-4DPLJPB5.js.map +1 -0
  18. package/dist/chunk-5JMJ6OI5.js +3 -0
  19. package/dist/chunk-5JMJ6OI5.js.map +1 -0
  20. package/dist/chunk-6ZMJ34KE.js +1153 -0
  21. package/dist/chunk-6ZMJ34KE.js.map +1 -0
  22. package/dist/chunk-CGBS37IU.js +128 -0
  23. package/dist/chunk-CGBS37IU.js.map +1 -0
  24. package/dist/chunk-DCMKA2A6.js +18 -0
  25. package/dist/chunk-DCMKA2A6.js.map +1 -0
  26. package/dist/chunk-DYLHN3HG.js +937 -0
  27. package/dist/chunk-DYLHN3HG.js.map +1 -0
  28. package/dist/chunk-ILXA6HLX.js +1973 -0
  29. package/dist/chunk-ILXA6HLX.js.map +1 -0
  30. package/dist/{chunk-SVK6PLGO.js → chunk-LWQNX4LI.js} +12009 -18768
  31. package/dist/chunk-LWQNX4LI.js.map +1 -0
  32. package/dist/{chunk-JLDH4U5L.js → chunk-NCI4MAWZ.js} +317 -1967
  33. package/dist/chunk-NCI4MAWZ.js.map +1 -0
  34. package/dist/chunk-O44XP7LH.js +214 -0
  35. package/dist/chunk-O44XP7LH.js.map +1 -0
  36. package/dist/chunk-PST3ZWX2.js +555 -0
  37. package/dist/chunk-PST3ZWX2.js.map +1 -0
  38. package/dist/chunk-SYPHCDRD.js +1133 -0
  39. package/dist/chunk-SYPHCDRD.js.map +1 -0
  40. package/dist/chunk-V4BMZWBM.js +2401 -0
  41. package/dist/chunk-V4BMZWBM.js.map +1 -0
  42. package/dist/chunk-YHVCFD2D.js +117 -0
  43. package/dist/chunk-YHVCFD2D.js.map +1 -0
  44. package/dist/chunk-Z63UPBS3.js +152 -0
  45. package/dist/chunk-Z63UPBS3.js.map +1 -0
  46. package/dist/client/index.d.ts +16 -4
  47. package/dist/client/index.js +13 -1
  48. package/dist/codex-rs/app-server/index.d.ts +161 -0
  49. package/dist/codex-rs/app-server/index.js +13 -0
  50. package/dist/codex-rs/app-server/index.js.map +1 -0
  51. package/dist/codex-rs/app-server-protocol/index.d.ts +1722 -0
  52. package/dist/codex-rs/app-server-protocol/index.js +6 -0
  53. package/dist/codex-rs/app-server-protocol/index.js.map +1 -0
  54. package/dist/codex-rs/app-server-protocol/protocol.d.ts +19 -0
  55. package/dist/codex-rs/app-server-protocol/protocol.js +4 -0
  56. package/dist/codex-rs/app-server-protocol/protocol.js.map +1 -0
  57. package/dist/codex-rs/codex-api/index.d.ts +104 -0
  58. package/dist/codex-rs/codex-api/index.js +11 -0
  59. package/dist/codex-rs/codex-api/index.js.map +1 -0
  60. package/dist/codex-rs/config/index.d.ts +88 -0
  61. package/dist/codex-rs/config/index.js +4 -0
  62. package/dist/codex-rs/config/index.js.map +1 -0
  63. package/dist/codex-rs/core/config/index.d.ts +61 -0
  64. package/dist/codex-rs/core/config/index.js +5 -0
  65. package/dist/codex-rs/core/config/index.js.map +1 -0
  66. package/dist/codex-rs/core/index.d.ts +1393 -0
  67. package/dist/codex-rs/core/index.js +11 -0
  68. package/dist/codex-rs/core/index.js.map +1 -0
  69. package/dist/codex-rs/model-provider/index.d.ts +2 -0
  70. package/dist/codex-rs/model-provider/index.js +4 -0
  71. package/dist/codex-rs/model-provider/index.js.map +1 -0
  72. package/dist/codex-rs/models-manager/index.d.ts +2 -0
  73. package/dist/codex-rs/models-manager/index.js +4 -0
  74. package/dist/codex-rs/models-manager/index.js.map +1 -0
  75. package/dist/codex-rs/parity.d.ts +26 -0
  76. package/dist/codex-rs/parity.js +3 -0
  77. package/dist/codex-rs/parity.js.map +1 -0
  78. package/dist/codex-rs/thread-store/index.d.ts +5 -0
  79. package/dist/codex-rs/thread-store/index.js +4 -0
  80. package/dist/codex-rs/thread-store/index.js.map +1 -0
  81. package/dist/codex-rs/unsupported.d.ts +15 -0
  82. package/dist/codex-rs/unsupported.js +22 -0
  83. package/dist/codex-rs/unsupported.js.map +1 -0
  84. package/dist/codex-rs/utils/output-truncation.d.ts +21 -0
  85. package/dist/codex-rs/utils/output-truncation.js +4 -0
  86. package/dist/codex-rs/utils/output-truncation.js.map +1 -0
  87. package/dist/codex-rs/utils/string.d.ts +7 -0
  88. package/dist/codex-rs/utils/string.js +3 -0
  89. package/dist/codex-rs/utils/string.js.map +1 -0
  90. package/dist/common-CTyph5x8.d.ts +40 -0
  91. package/dist/event-mapping-CbISdQ1D.d.ts +43 -0
  92. package/dist/history-CfM-4V7b.d.ts +1654 -0
  93. package/dist/index-77U_Oc-a.d.ts +63 -0
  94. package/dist/index-CoDZosq0.d.ts +261 -0
  95. package/dist/index.d.ts +18 -7
  96. package/dist/index.js +16 -2
  97. package/dist/lib-nXlaKiS-.d.ts +48 -0
  98. package/dist/live-thread-BMvlflzM.d.ts +30 -0
  99. package/dist/merge-B_AWVmnI.d.ts +24 -0
  100. package/dist/mod-DYVLSWO4.d.ts +91 -0
  101. package/dist/plan-mode-Cv6KWb_S.d.ts +14 -0
  102. package/dist/proposed-plan-DpN1ma0Y.d.ts +53 -0
  103. package/dist/protocol-mpBcYHrm.d.ts +1655 -0
  104. package/dist/react/index.d.ts +20 -52
  105. package/dist/react/index.js +16 -2
  106. package/dist/{remote-_6TDvg-g.d.ts → remote-ClZbq9KN.d.ts} +3 -1
  107. package/dist/rendered-thread-AOxw3V5b.d.ts +29 -0
  108. package/dist/responses_websocket-BhxSgCzK.d.ts +183 -0
  109. package/dist/runtime-Cm6ml53h.d.ts +528 -0
  110. package/dist/server/index.d.ts +29 -2416
  111. package/dist/server/index.js +13 -1
  112. package/dist/session-BRYzi8OT.d.ts +46 -0
  113. package/dist/shadcn/index.d.ts +1 -1
  114. package/dist/{sidebar-DT2XoitN.d.ts → sidebar-DMMij22z.d.ts} +1 -1
  115. package/dist/spec_plan_types-CmsJ-Tfn.d.ts +260 -0
  116. package/dist/{store-GYldc9EJ.d.ts → store-AGRxhgQ3.d.ts} +2 -1
  117. package/dist/t3code/apps/web/components/chat.d.ts +508 -0
  118. package/dist/t3code/apps/web/components/chat.js +12 -0
  119. package/dist/t3code/apps/web/components/chat.js.map +1 -0
  120. package/dist/t3code/apps/web/index.d.ts +12 -0
  121. package/dist/t3code/apps/web/index.js +13 -0
  122. package/dist/t3code/apps/web/index.js.map +1 -0
  123. package/dist/testing/index.d.ts +9 -91
  124. package/dist/testing/index.js +13 -1
  125. package/dist/thread-history-builder-zW0zeqcS.d.ts +58 -0
  126. package/dist/thread_event_store-C0zYzukG.d.ts +77 -0
  127. package/dist/types-BTeabLYr.d.ts +126 -0
  128. package/package.json +65 -1
  129. package/dist/chat-runtime-D7wu_KbX.d.ts +0 -747
  130. package/dist/chunk-JLDH4U5L.js.map +0 -1
  131. package/dist/chunk-SVK6PLGO.js.map +0 -1
  132. package/dist/index-CB9la6xE.d.ts +0 -112
  133. package/dist/thread_event_store-B9CoQUIA.d.ts +0 -3868
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/upstream/codex-rs/thread-store/src/in_memory.ts","../src/upstream/codex-rs/thread-store/src/local/mod.ts"],"names":[],"mappings":"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","file":"chunk-4DPLJPB5.js","sourcesContent":["import { ThreadMemoryMode } from \"../../core/src/memory\";\nimport type { ThreadId } from \"../../core/src/ids\";\nimport type { RolloutItem } from \"../../core/src/protocol\";\nimport type {\n\tAppendThreadItemsParams,\n\tArchiveThreadParams,\n\tCreateThreadParams,\n\tListThreadsParams,\n\tLoadThreadHistoryParams,\n\tReadThreadByRolloutPathParams,\n\tReadThreadParams,\n\tResumeThreadParams,\n\tStoredThread,\n\tStoredThreadHistory,\n\tThreadPage,\n\tUpdateThreadMetadataParams,\n} from \"../../core/src/thread-store/types\";\nimport type { ThreadStore } from \"../../core/src/thread-store/store\";\n\nexport type InMemoryThreadStoreCalls = {\n\tarchiveThread: number;\n\tappendItems: number;\n\tcreateThread: number;\n\tdiscardThread: number;\n\tflushThread: number;\n\tlistThreads: number;\n\tloadHistory: number;\n\tpersistThread: number;\n\treadThread: number;\n\treadThreadByRolloutPath: number;\n\tresumeThread: number;\n\tshutdownThread: number;\n\tunarchiveThread: number;\n\tupdateThreadMetadata: number;\n};\n\ntype InMemoryThreadStoreState = {\n\tcalls: InMemoryThreadStoreCalls;\n\tcreatedThreads: Map<ThreadId, CreateThreadParams>;\n\thistories: Map<ThreadId, RolloutItem[]>;\n\trolloutPaths: Map<string, ThreadId>;\n\tthreads: Map<ThreadId, StoredThread>;\n};\n\nexport type InMemoryThreadStoreSnapshot = {\n\tcreatedThreads: Array<[ThreadId, CreateThreadParams]>;\n\thistories: Array<[ThreadId, RolloutItem[]]>;\n\trolloutPaths: Array<[string, ThreadId]>;\n\tthreads: Array<[ThreadId, StoredThread]>;\n};\n\nconst stores = new Map<string, InMemoryThreadStore>();\n\nexport class InMemoryThreadStore implements ThreadStore {\n\tprotected readonly state: InMemoryThreadStoreState = {\n\t\tcalls: emptyCalls(),\n\t\tcreatedThreads: new Map(),\n\t\thistories: new Map(),\n\t\trolloutPaths: new Map(),\n\t\tthreads: new Map(),\n\t};\n\n\tstatic forId(id: string): InMemoryThreadStore {\n\t\tconst existing = stores.get(id);\n\t\tif (existing) {\n\t\t\treturn existing;\n\t\t}\n\t\tconst store = new InMemoryThreadStore();\n\t\tstores.set(id, store);\n\t\treturn store;\n\t}\n\n\tstatic removeId(id: string): InMemoryThreadStore | null {\n\t\tconst store = stores.get(id) ?? null;\n\t\tstores.delete(id);\n\t\treturn store;\n\t}\n\n\tcalls(): InMemoryThreadStoreCalls {\n\t\treturn { ...this.state.calls };\n\t}\n\n\tsnapshot(): InMemoryThreadStoreSnapshot {\n\t\treturn {\n\t\t\tcreatedThreads: Array.from(this.state.createdThreads.entries()),\n\t\t\thistories: Array.from(this.state.histories.entries()).map(\n\t\t\t\t([threadId, items]) => [threadId, [...items]],\n\t\t\t),\n\t\t\trolloutPaths: Array.from(this.state.rolloutPaths.entries()),\n\t\t\tthreads: Array.from(this.state.threads.entries()).map(\n\t\t\t\t([threadId, thread]) => [threadId, { ...thread }],\n\t\t\t),\n\t\t};\n\t}\n\n\trestoreSnapshot(snapshot: InMemoryThreadStoreSnapshot): void {\n\t\tthis.state.createdThreads = new Map(snapshot.createdThreads);\n\t\tthis.state.histories = new Map(\n\t\t\tsnapshot.histories.map(([threadId, items]) => [threadId, [...items]]),\n\t\t);\n\t\tthis.state.rolloutPaths = new Map(snapshot.rolloutPaths);\n\t\tthis.state.threads = new Map(\n\t\t\tsnapshot.threads.map(([threadId, thread]) => [threadId, { ...thread }]),\n\t\t);\n\t}\n\n\tasync createThread(params: CreateThreadParams): Promise<void> {\n\t\tthis.state.calls.createThread += 1;\n\t\tconst now = new Date().toISOString();\n\t\tthis.state.createdThreads.set(params.thread_id, params);\n\t\tthis.state.histories.set(params.thread_id, []);\n\t\tthis.state.threads.set(params.thread_id, {\n\t\t\tarchived_at: null,\n\t\t\tcreated_at: now,\n\t\t\tcwd: String(params.metadata.cwd ?? \"/\"),\n\t\t\tforked_from_id: params.forked_from_id ?? null,\n\t\t\thistory: null,\n\t\t\tmodel: stringOrNull(params.metadata.model),\n\t\t\tmodel_provider: params.metadata.model_provider,\n\t\t\tname: null,\n\t\t\tpreview: \"\",\n\t\t\treasoning_effort: stringOrNull(params.metadata.reasoning_effort),\n\t\t\tsource: params.source,\n\t\t\tthread_id: params.thread_id,\n\t\t\tthread_source: params.thread_source ?? null,\n\t\t\ttoken_usage: null,\n\t\t\tupdated_at: now,\n\t\t});\n\t}\n\n\tasync resumeThread(params: ResumeThreadParams): Promise<void> {\n\t\tthis.state.calls.resumeThread += 1;\n\t\tif (!this.state.threads.has(params.thread_id)) {\n\t\t\tconst now = new Date().toISOString();\n\t\t\tthis.state.threads.set(params.thread_id, {\n\t\t\t\tarchived_at: null,\n\t\t\t\tcreated_at: now,\n\t\t\t\tcwd: String(params.metadata.cwd ?? \"/\"),\n\t\t\t\thistory: null,\n\t\t\t\tmodel: stringOrNull(params.metadata.model),\n\t\t\t\tmodel_provider: params.metadata.model_provider,\n\t\t\t\tpreview: \"\",\n\t\t\t\tsource: \"appServer\",\n\t\t\t\tthread_id: params.thread_id,\n\t\t\t\ttoken_usage: lastTokenInfoFromRolloutItems(params.history ?? []),\n\t\t\t\tupdated_at: now,\n\t\t\t});\n\t\t}\n\t\tthis.state.histories.set(\n\t\t\tparams.thread_id,\n\t\t\t[...(params.history ?? this.state.histories.get(params.thread_id) ?? [])],\n\t\t);\n\t\tthis.updateThreadTokenUsage(\n\t\t\tparams.thread_id,\n\t\t\tparams.history ?? this.state.histories.get(params.thread_id) ?? [],\n\t\t);\n\t\tif (params.rollout_path) {\n\t\t\tthis.state.rolloutPaths.set(params.rollout_path, params.thread_id);\n\t\t}\n\t}\n\n\tasync appendItems(params: AppendThreadItemsParams): Promise<void> {\n\t\tthis.state.calls.appendItems += 1;\n\t\tthis.history(params.thread_id).push(...params.items);\n\t\tthis.updateThreadTokenUsage(params.thread_id, params.items);\n\t\tthis.touch(params.thread_id);\n\t}\n\n\tasync persistThread(threadId: ThreadId): Promise<void> {\n\t\tvoid threadId;\n\t\tthis.state.calls.persistThread += 1;\n\t}\n\n\tasync flushThread(threadId: ThreadId): Promise<void> {\n\t\tvoid threadId;\n\t\tthis.state.calls.flushThread += 1;\n\t}\n\n\tasync shutdownThread(threadId: ThreadId): Promise<void> {\n\t\tvoid threadId;\n\t\tthis.state.calls.shutdownThread += 1;\n\t}\n\n\tasync discardThread(threadId: ThreadId): Promise<void> {\n\t\tvoid threadId;\n\t\tthis.state.calls.discardThread += 1;\n\t}\n\n\tasync loadHistory(\n\t\tparams: LoadThreadHistoryParams,\n\t): Promise<StoredThreadHistory> {\n\t\tthis.state.calls.loadHistory += 1;\n\t\treturn {\n\t\t\titems: [...this.history(params.thread_id)],\n\t\t\tthread_id: params.thread_id,\n\t\t};\n\t}\n\n\tasync readThread(params: ReadThreadParams): Promise<StoredThread> {\n\t\tthis.state.calls.readThread += 1;\n\t\treturn this.storedThread(params.thread_id, params.include_history);\n\t}\n\n\tasync readThreadByRolloutPath(\n\t\tparams: ReadThreadByRolloutPathParams,\n\t): Promise<StoredThread> {\n\t\tthis.state.calls.readThreadByRolloutPath += 1;\n\t\tconst threadId = this.state.rolloutPaths.get(params.rollout_path);\n\t\tif (!threadId) {\n\t\t\tthrow new Error(`Unknown rollout path: ${params.rollout_path}`);\n\t\t}\n\t\treturn this.storedThread(threadId, params.include_history);\n\t}\n\n\tasync listThreads(params: ListThreadsParams): Promise<ThreadPage> {\n\t\tthis.state.calls.listThreads += 1;\n\t\tconst items = Array.from(this.state.threads.values())\n\t\t\t.filter((thread) => params.archived || !thread.archived_at)\n\t\t\t.sort((left, right) =>\n\t\t\t\tparams.sort_direction === \"Asc\"\n\t\t\t\t\t? left.created_at.localeCompare(right.created_at)\n\t\t\t\t\t: right.created_at.localeCompare(left.created_at),\n\t\t\t)\n\t\t\t.slice(0, params.page_size)\n\t\t\t.map((thread) => ({ ...thread, history: null }));\n\t\treturn { items, next_cursor: null };\n\t}\n\n\tasync updateThreadMetadata(\n\t\tparams: UpdateThreadMetadataParams,\n\t): Promise<StoredThread> {\n\t\tthis.state.calls.updateThreadMetadata += 1;\n\t\tconst thread = this.storedThread(params.thread_id, false);\n\t\tconst next: StoredThread = {\n\t\t\t...thread,\n\t\t\tname: params.patch.name ?? thread.name,\n\t\t\tupdated_at: new Date().toISOString(),\n\t\t};\n\t\tif (params.patch.memory_mode === ThreadMemoryMode.Enabled) {\n\t\t\tnext.preview = thread.preview;\n\t\t}\n\t\tthis.state.threads.set(params.thread_id, next);\n\t\treturn { ...next };\n\t}\n\n\tasync archiveThread(params: ArchiveThreadParams): Promise<void> {\n\t\tthis.state.calls.archiveThread += 1;\n\t\tconst thread = this.storedThread(params.thread_id, false);\n\t\tthis.state.threads.set(params.thread_id, {\n\t\t\t...thread,\n\t\t\tarchived_at: new Date().toISOString(),\n\t\t});\n\t}\n\n\tasync unarchiveThread(params: ArchiveThreadParams): Promise<StoredThread> {\n\t\tthis.state.calls.unarchiveThread += 1;\n\t\tconst thread = this.storedThread(params.thread_id, false);\n\t\tconst next = { ...thread, archived_at: null };\n\t\tthis.state.threads.set(params.thread_id, next);\n\t\treturn next;\n\t}\n\n\tprivate history(threadId: ThreadId): RolloutItem[] {\n\t\tconst history = this.state.histories.get(threadId);\n\t\tif (!history) {\n\t\t\tthrow new Error(`Thread not found: ${threadId}`);\n\t\t}\n\t\treturn history;\n\t}\n\n\tprivate storedThread(threadId: ThreadId, includeHistory: boolean): StoredThread {\n\t\tconst thread = this.state.threads.get(threadId);\n\t\tif (!thread) {\n\t\t\tthrow new Error(`Thread not found: ${threadId}`);\n\t\t}\n\t\treturn {\n\t\t\t...thread,\n\t\t\thistory: includeHistory\n\t\t\t\t? { items: [...this.history(threadId)], thread_id: threadId }\n\t\t\t\t: null,\n\t\t};\n\t}\n\n\tprivate touch(threadId: ThreadId): void {\n\t\tconst thread = this.state.threads.get(threadId);\n\t\tif (thread) {\n\t\t\tthis.state.threads.set(threadId, {\n\t\t\t\t...thread,\n\t\t\t\tupdated_at: new Date().toISOString(),\n\t\t\t});\n\t\t}\n\t}\n\n\tprivate updateThreadTokenUsage(threadId: ThreadId, items: readonly RolloutItem[]): void {\n\t\tconst info = lastTokenInfoFromRolloutItems(items);\n\t\tif (!info) {\n\t\t\treturn;\n\t\t}\n\t\tconst thread = this.state.threads.get(threadId);\n\t\tif (!thread) {\n\t\t\treturn;\n\t\t}\n\t\tthis.state.threads.set(threadId, {\n\t\t\t...thread,\n\t\t\ttoken_usage: info,\n\t\t});\n\t}\n}\n\nfunction emptyCalls(): InMemoryThreadStoreCalls {\n\treturn {\n\t\tarchiveThread: 0,\n\t\tappendItems: 0,\n\t\tcreateThread: 0,\n\t\tdiscardThread: 0,\n\t\tflushThread: 0,\n\t\tlistThreads: 0,\n\t\tloadHistory: 0,\n\t\tpersistThread: 0,\n\t\treadThread: 0,\n\t\treadThreadByRolloutPath: 0,\n\t\tresumeThread: 0,\n\t\tshutdownThread: 0,\n\t\tunarchiveThread: 0,\n\t\tupdateThreadMetadata: 0,\n\t};\n}\n\nfunction stringOrNull(value: unknown): string | null {\n\treturn typeof value === \"string\" ? value : null;\n}\n\nfunction lastTokenInfoFromRolloutItems(items: readonly RolloutItem[]): unknown | null {\n\tfor (let index = items.length - 1; index >= 0; index -= 1) {\n\t\tconst item = items[index];\n\t\tif (\n\t\t\titem?.type === \"event_msg\" &&\n\t\t\titem.payload.type === \"token_count\" &&\n\t\t\titem.payload.info\n\t\t) {\n\t\t\treturn item.payload.info;\n\t\t}\n\t}\n\treturn null;\n}\n","import type { ThreadId } from \"../../../core/src/ids\";\nimport type {\n\tAppendThreadItemsParams,\n\tArchiveThreadParams,\n\tCreateThreadParams,\n\tListThreadsParams,\n\tLoadThreadHistoryParams,\n\tReadThreadByRolloutPathParams,\n\tReadThreadParams,\n\tResumeThreadParams,\n\tStoredThread,\n\tThreadPage,\n\tUpdateThreadMetadataParams,\n} from \"../../../core/src/thread-store/types\";\nimport { InMemoryThreadStore, type InMemoryThreadStoreSnapshot } from \"../in_memory\";\n\nexport type LocalThreadStoreConfig = {\n\tcodex_home: string;\n\tdefault_model_provider_id: string;\n};\n\ntype LocalThreadStoreData = InMemoryThreadStoreSnapshot & {\n\tversion: 1;\n};\n\nexport class LocalThreadStore extends InMemoryThreadStore {\n\tconstructor(readonly config: LocalThreadStoreConfig) {\n\t\tsuper();\n\t}\n\n\tstateDb(): null {\n\t\treturn null;\n\t}\n\n\tasync createThread(params: CreateThreadParams): Promise<void> {\n\t\tawait this.load();\n\t\tawait super.createThread(params);\n\t\tthis.attachRolloutPath(params.thread_id);\n\t\tawait this.save();\n\t}\n\n\tasync resumeThread(params: ResumeThreadParams): Promise<void> {\n\t\tawait this.load();\n\t\tawait super.resumeThread({\n\t\t\t...params,\n\t\t\trollout_path: params.rollout_path ?? this.rolloutPath(params.thread_id),\n\t\t});\n\t\tthis.attachRolloutPath(params.thread_id, params.rollout_path ?? undefined);\n\t\tawait this.save();\n\t}\n\n\tasync appendItems(params: AppendThreadItemsParams): Promise<void> {\n\t\tawait this.load();\n\t\tawait super.appendItems(params);\n\t\tawait this.save();\n\t}\n\n\tasync persistThread(threadId: ThreadId): Promise<void> {\n\t\tawait this.load();\n\t\tawait super.persistThread(threadId);\n\t\tawait this.save();\n\t}\n\n\tasync flushThread(threadId: ThreadId): Promise<void> {\n\t\tawait this.load();\n\t\tawait super.flushThread(threadId);\n\t\tawait this.save();\n\t}\n\n\tasync shutdownThread(threadId: ThreadId): Promise<void> {\n\t\tawait this.load();\n\t\tawait super.shutdownThread(threadId);\n\t\tawait this.save();\n\t}\n\n\tasync discardThread(threadId: ThreadId): Promise<void> {\n\t\tawait this.load();\n\t\tawait super.discardThread(threadId);\n\t\tawait this.save();\n\t}\n\n\tasync loadHistory(params: LoadThreadHistoryParams) {\n\t\tawait this.load();\n\t\treturn super.loadHistory(params);\n\t}\n\n\tasync readThread(params: ReadThreadParams): Promise<StoredThread> {\n\t\tawait this.load();\n\t\treturn super.readThread(params);\n\t}\n\n\tasync readThreadByRolloutPath(\n\t\tparams: ReadThreadByRolloutPathParams,\n\t): Promise<StoredThread> {\n\t\tawait this.load();\n\t\treturn super.readThreadByRolloutPath(params);\n\t}\n\n\tasync listThreads(params: ListThreadsParams): Promise<ThreadPage> {\n\t\tawait this.load();\n\t\treturn super.listThreads(params);\n\t}\n\n\tasync updateThreadMetadata(\n\t\tparams: UpdateThreadMetadataParams,\n\t): Promise<StoredThread> {\n\t\tawait this.load();\n\t\tconst thread = await super.updateThreadMetadata(params);\n\t\tawait this.save();\n\t\treturn thread;\n\t}\n\n\tasync archiveThread(params: ArchiveThreadParams): Promise<void> {\n\t\tawait this.load();\n\t\tawait super.archiveThread(params);\n\t\tawait this.save();\n\t}\n\n\tasync unarchiveThread(params: ArchiveThreadParams): Promise<StoredThread> {\n\t\tawait this.load();\n\t\tconst thread = await super.unarchiveThread(params);\n\t\tawait this.save();\n\t\treturn thread;\n\t}\n\n\tliveRolloutPath(threadId: ThreadId): string {\n\t\treturn this.rolloutPath(threadId);\n\t}\n\n\tprivate attachRolloutPath(threadId: ThreadId, rolloutPath?: string): void {\n\t\tconst snapshot = this.snapshot();\n\t\tconst path = rolloutPath ?? this.rolloutPath(threadId);\n\t\tconst threads = snapshot.threads.map(\n\t\t\t([candidateThreadId, thread]) =>\n\t\t\t\t[\n\t\t\t\t\tcandidateThreadId,\n\t\t\t\t\tcandidateThreadId === threadId\n\t\t\t\t\t\t? { ...thread, rollout_path: path }\n\t\t\t\t\t\t: thread,\n\t\t\t\t] satisfies [ThreadId, StoredThread],\n\t\t);\n\t\tconst rolloutPaths = new Map(snapshot.rolloutPaths);\n\t\trolloutPaths.set(path, threadId);\n\t\tthis.restoreSnapshot({\n\t\t\t...snapshot,\n\t\t\trolloutPaths: Array.from(rolloutPaths.entries()),\n\t\t\tthreads,\n\t\t});\n\t}\n\n\tprivate async load(): Promise<void> {\n\t\ttry {\n\t\t\tconst { readFile } = await nodeFsPromises();\n\t\t\tconst raw = await readFile(this.storePath(), \"utf8\");\n\t\t\tconst data = JSON.parse(raw) as LocalThreadStoreData;\n\t\t\tthis.restoreSnapshot(data);\n\t\t} catch (error) {\n\t\t\tif ((error as { code?: unknown }).code === \"ENOENT\") {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\tprivate async save(): Promise<void> {\n\t\tconst { mkdir, writeFile } = await nodeFsPromises();\n\t\tconst path = this.storePath();\n\t\tawait mkdir(dirname(path), { recursive: true });\n\t\tconst data: LocalThreadStoreData = {\n\t\t\tversion: 1,\n\t\t\t...this.snapshot(),\n\t\t};\n\t\tawait writeFile(path, `${JSON.stringify(data, null, 2)}\\n`, \"utf8\");\n\t}\n\n\tprivate rolloutPath(threadId: ThreadId): string {\n\t\treturn `${this.config.codex_home.replace(/\\/+$/, \"\")}/sessions/${threadId}.jsonl`;\n\t}\n\n\tprivate storePath(): string {\n\t\treturn `${this.config.codex_home.replace(/\\/+$/, \"\")}/thread-store/store.json`;\n\t}\n}\n\ntype NodeFsPromises = {\n\tmkdir(path: string, options: { recursive: true }): Promise<unknown>;\n\treadFile(path: string, encoding: \"utf8\"): Promise<string>;\n\twriteFile(path: string, data: string, encoding: \"utf8\"): Promise<void>;\n};\n\nasync function nodeFsPromises(): Promise<NodeFsPromises> {\n\tconst moduleName = \"node:fs/promises\";\n\treturn import(moduleName) as Promise<NodeFsPromises>;\n}\n\nfunction dirname(path: string): string {\n\tconst normalized = path.replace(/\\/+$/, \"\");\n\tconst separatorIndex = normalized.lastIndexOf(\"/\");\n\treturn separatorIndex <= 0 ? \"/\" : normalized.slice(0, separatorIndex);\n}\n"]}
@@ -0,0 +1,3 @@
1
+
2
+ //# sourceMappingURL=chunk-5JMJ6OI5.js.map
3
+ //# sourceMappingURL=chunk-5JMJ6OI5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-5JMJ6OI5.js"}