agent-conveyor 0.1.7 → 0.1.9

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.
package/dist/index.d.ts CHANGED
@@ -7,6 +7,8 @@ export { configureConnectionSync, databaseHealthSync, initializeDatabaseSync, op
7
7
  export type { DatabaseCheck, DatabaseHealth } from "./state/database.js";
8
8
  export { taskAuditSync, TaskAuditError } from "./runtime/audit.js";
9
9
  export type { TaskAuditCorrelationChain, TaskAuditEvent, TaskAuditManagerDecision, TaskAuditResult, TaskAuditRoutedNotification, TaskAuditTask, } from "./runtime/audit.js";
10
+ export { appHeartbeatPollCommand, appLoopStatusCommand, appLoopStatusSync, appWakeupDispatchPlanSync, appWakeupPlanCommand, appWakeupPlanSync, directInboxPollCommand, } from "./runtime/app-autonomy.js";
11
+ export type { AppLoopDispatchState, AppLoopLeaseState, AppLoopNextAction, AppLoopRole, AppLoopRoleStatus, AppLoopStatus, AppWakeup, AppWakeupDispatchAction, AppWakeupDispatchActionStatus, AppWakeupDispatchPlan, AppWakeupPlan, } from "./runtime/app-autonomy.js";
10
12
  export { exportTaskAuditSubsetSync, exportTaskSync, TaskExportError } from "./runtime/export.js";
11
13
  export type { TaskExportManifest, TaskExportResult } from "./runtime/export.js";
12
14
  export { replayEntriesFromAudit, replayResultFromAudit } from "./runtime/replay.js";
package/dist/index.js CHANGED
@@ -3,6 +3,7 @@ export { captureMetaPath, configPath, defaultDbPath, eventsPath, loadJsonSync, s
3
3
  export { latestStatusSync } from "./state/status.js";
4
4
  export { configureConnectionSync, databaseHealthSync, initializeDatabaseSync, openDatabaseSync, WorkerctlDatabaseError, } from "./state/database.js";
5
5
  export { taskAuditSync, TaskAuditError } from "./runtime/audit.js";
6
+ export { appHeartbeatPollCommand, appLoopStatusCommand, appLoopStatusSync, appWakeupDispatchPlanSync, appWakeupPlanCommand, appWakeupPlanSync, directInboxPollCommand, } from "./runtime/app-autonomy.js";
6
7
  export { exportTaskAuditSubsetSync, exportTaskSync, TaskExportError } from "./runtime/export.js";
7
8
  export { replayEntriesFromAudit, replayResultFromAudit } from "./runtime/replay.js";
8
9
  export { classifyBusyWait, classifyStartupOutput } from "./runtime/classify.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EACL,eAAe,EACf,UAAU,EACV,aAAa,EACb,UAAU,EACV,YAAY,EACZ,SAAS,EACT,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,SAAS,EACT,mBAAmB,EACnB,aAAa,GACd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AASnE,OAAO,EAAE,yBAAyB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEjG,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEpF,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEhF,OAAO,EACL,6BAA6B,EAC7B,4BAA4B,EAC5B,iBAAiB,EACjB,wBAAwB,EACxB,uCAAuC,EACvC,8BAA8B,EAC9B,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,mCAAmC,EACnC,0BAA0B,EAC1B,+BAA+B,EAC/B,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,8BAA8B,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhG,OAAO,EACL,+BAA+B,EAC/B,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,GAC5B,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,+BAA+B,EAC/B,2CAA2C,EAC3C,gCAAgC,EAChC,4BAA4B,EAC5B,4BAA4B,EAC5B,2CAA2C,EAC3C,uBAAuB,EACvB,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,4BAA4B,CAAC;AAOpC,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAEhJ,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAEjH,OAAO,EACL,6BAA6B,EAC7B,qBAAqB,EACrB,iCAAiC,EACjC,sBAAsB,EACtB,gCAAgC,EAChC,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AASpC,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhG,OAAO,EACL,wBAAwB,EACxB,gBAAgB,EAChB,cAAc,EACd,+BAA+B,EAC/B,aAAa,EACb,cAAc,EACd,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,6BAA6B,EAC7B,uBAAuB,EACvB,2BAA2B,EAC3B,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,yBAAyB,EACzB,0BAA0B,EAC1B,WAAW,EACX,kBAAkB,EAClB,UAAU,GACX,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EACL,eAAe,EACf,UAAU,EACV,aAAa,EACb,UAAU,EACV,YAAY,EACZ,SAAS,EACT,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,SAAS,EACT,mBAAmB,EACnB,aAAa,GACd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AASnE,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,iBAAiB,EACjB,yBAAyB,EACzB,oBAAoB,EACpB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,2BAA2B,CAAC;AAcnC,OAAO,EAAE,yBAAyB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEjG,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEpF,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEhF,OAAO,EACL,6BAA6B,EAC7B,4BAA4B,EAC5B,iBAAiB,EACjB,wBAAwB,EACxB,uCAAuC,EACvC,8BAA8B,EAC9B,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,mCAAmC,EACnC,0BAA0B,EAC1B,+BAA+B,EAC/B,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,8BAA8B,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhG,OAAO,EACL,+BAA+B,EAC/B,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,GAC5B,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,+BAA+B,EAC/B,2CAA2C,EAC3C,gCAAgC,EAChC,4BAA4B,EAC5B,4BAA4B,EAC5B,2CAA2C,EAC3C,uBAAuB,EACvB,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,4BAA4B,CAAC;AAOpC,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAEhJ,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAEjH,OAAO,EACL,6BAA6B,EAC7B,qBAAqB,EACrB,iCAAiC,EACjC,sBAAsB,EACtB,gCAAgC,EAChC,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AASpC,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhG,OAAO,EACL,wBAAwB,EACxB,gBAAgB,EAChB,cAAc,EACd,+BAA+B,EAC/B,aAAa,EACb,cAAc,EACd,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,6BAA6B,EAC7B,uBAAuB,EACvB,2BAA2B,EAC3B,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,yBAAyB,EACzB,0BAA0B,EAC1B,WAAW,EACX,kBAAkB,EAClB,UAAU,GACX,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,109 @@
1
+ import type { DatabaseSync } from "node:sqlite";
2
+ export type AppLoopLeaseState = "healthy" | "missing" | "stale";
3
+ export type AppLoopDispatchState = "healthy" | "missing" | "stale";
4
+ export type AppLoopRole = "manager" | "worker";
5
+ export interface AppLoopRoleStatus {
6
+ codex_app_thread_id: string | null;
7
+ codex_app_thread_title: string | null;
8
+ direct_inbox_command: string | null;
9
+ lease: {
10
+ age_seconds: number | null;
11
+ last_heartbeat_at: string | null;
12
+ stale_after_seconds: number;
13
+ state: AppLoopLeaseState;
14
+ };
15
+ name: string | null;
16
+ poll_command: string | null;
17
+ receive_style: "pull" | "push" | null;
18
+ session_id: string | null;
19
+ session_kind: "codex_app" | "no_tmux" | "tmux" | null;
20
+ }
21
+ export interface AppLoopNextAction {
22
+ kind: "start_dispatch" | "wake_manager" | "wake_worker";
23
+ prompt?: string;
24
+ reason: string;
25
+ role?: AppLoopRole;
26
+ }
27
+ export interface AppLoopStatus {
28
+ dispatch: {
29
+ dispatcher_id: string;
30
+ last_heartbeat_at: string | null;
31
+ state: AppLoopDispatchState;
32
+ };
33
+ manager: AppLoopRoleStatus;
34
+ next_actions: AppLoopNextAction[];
35
+ ok: boolean;
36
+ task: {
37
+ id: string;
38
+ name: string;
39
+ };
40
+ worker: AppLoopRoleStatus;
41
+ }
42
+ export interface AppWakeupPlan {
43
+ dispatcher: {
44
+ command: string;
45
+ required: boolean;
46
+ state: AppLoopDispatchState;
47
+ };
48
+ status: AppLoopStatus;
49
+ wakeups: AppWakeup[];
50
+ }
51
+ export interface AppWakeup {
52
+ prompt: string;
53
+ reason: string;
54
+ role: AppLoopRole;
55
+ thread: {
56
+ id: string | null;
57
+ title: string | null;
58
+ };
59
+ }
60
+ export type AppWakeupDispatchActionStatus = "blocked_missing_thread" | "ready_to_send" | "skipped_healthy";
61
+ export interface AppWakeupDispatchAction {
62
+ blocker: string | null;
63
+ prompt: string | null;
64
+ reason: string;
65
+ role: AppLoopRole;
66
+ send_ready: boolean;
67
+ status: AppWakeupDispatchActionStatus;
68
+ thread: {
69
+ id: string | null;
70
+ title: string | null;
71
+ };
72
+ }
73
+ export interface AppWakeupDispatchPlan {
74
+ actions: AppWakeupDispatchAction[];
75
+ dispatcher: AppWakeupPlan["dispatcher"];
76
+ status: AppLoopStatus;
77
+ summary: {
78
+ blocked: number;
79
+ dispatcher_required: boolean;
80
+ ready_to_send: number;
81
+ skipped: number;
82
+ total_actions: number;
83
+ };
84
+ }
85
+ export declare function appLoopStatusSync(database: DatabaseSync, options: {
86
+ dbPath?: string | null;
87
+ dispatcherId: string;
88
+ heartbeatStaleSeconds: number;
89
+ now: string;
90
+ taskName: string;
91
+ }): AppLoopStatus;
92
+ export declare function appWakeupPlanSync(database: DatabaseSync, options: {
93
+ dbPath?: string | null;
94
+ dispatcherId: string;
95
+ heartbeatStaleSeconds: number;
96
+ now: string;
97
+ taskName: string;
98
+ }): AppWakeupPlan;
99
+ export declare function appWakeupDispatchPlanSync(database: DatabaseSync, options: {
100
+ dbPath?: string | null;
101
+ dispatcherId: string;
102
+ heartbeatStaleSeconds: number;
103
+ now: string;
104
+ taskName: string;
105
+ }): AppWakeupDispatchPlan;
106
+ export declare function appHeartbeatPollCommand(role: AppLoopRole, taskName: string, dbPath?: string | null): string;
107
+ export declare function appLoopStatusCommand(taskName: string, dbPath?: string | null): string;
108
+ export declare function appWakeupPlanCommand(taskName: string, dbPath?: string | null): string;
109
+ export declare function directInboxPollCommand(role: AppLoopRole, taskName: string, dbPath?: string | null): string;
@@ -0,0 +1,263 @@
1
+ export function appLoopStatusSync(database, options) {
2
+ const task = database.prepare("select id, name from tasks where name = ?").get(options.taskName);
3
+ if (!task) {
4
+ throw new Error(`Task not found: ${options.taskName}`);
5
+ }
6
+ const binding = database.prepare(`
7
+ select ws.id as worker_session_id,
8
+ ws.name as worker_name,
9
+ ws.last_heartbeat_at as worker_last_heartbeat_at,
10
+ ws.codex_app_thread_id as worker_thread_id,
11
+ ws.codex_app_thread_title as worker_thread_title,
12
+ ws.tmux_session as worker_tmux_session,
13
+ ms.id as manager_session_id,
14
+ ms.name as manager_name,
15
+ ms.last_heartbeat_at as manager_last_heartbeat_at,
16
+ ms.codex_app_thread_id as manager_thread_id,
17
+ ms.codex_app_thread_title as manager_thread_title,
18
+ ms.tmux_session as manager_tmux_session
19
+ from bindings
20
+ left join sessions ws on ws.id = bindings.worker_session_id
21
+ left join sessions ms on ms.id = bindings.manager_session_id
22
+ where bindings.task_id = ? and bindings.state in ('active', 'ending')
23
+ order by bindings.created_at desc
24
+ limit 1
25
+ `).get(task.id);
26
+ if (!binding) {
27
+ throw new Error(`No active binding for task: ${options.taskName}`);
28
+ }
29
+ const dispatchHeartbeat = database.prepare(`
30
+ select timestamp
31
+ from telemetry_events
32
+ where actor = 'dispatch'
33
+ and event_type = 'dispatch_watch_heartbeat'
34
+ and json_extract(correlation_json, '$.dispatcher_id') = ?
35
+ order by timestamp desc, id desc
36
+ limit 1
37
+ `).get(options.dispatcherId);
38
+ const manager = roleStatus({
39
+ dbPath: options.dbPath ?? null,
40
+ heartbeatStaleSeconds: options.heartbeatStaleSeconds,
41
+ lastHeartbeatAt: binding.manager_last_heartbeat_at,
42
+ name: binding.manager_name,
43
+ now: options.now,
44
+ role: "manager",
45
+ sessionId: binding.manager_session_id,
46
+ taskName: options.taskName,
47
+ threadId: binding.manager_thread_id,
48
+ threadTitle: binding.manager_thread_title,
49
+ tmuxSession: binding.manager_tmux_session,
50
+ });
51
+ const worker = roleStatus({
52
+ dbPath: options.dbPath ?? null,
53
+ heartbeatStaleSeconds: options.heartbeatStaleSeconds,
54
+ lastHeartbeatAt: binding.worker_last_heartbeat_at,
55
+ name: binding.worker_name,
56
+ now: options.now,
57
+ role: "worker",
58
+ sessionId: binding.worker_session_id,
59
+ taskName: options.taskName,
60
+ threadId: binding.worker_thread_id,
61
+ threadTitle: binding.worker_thread_title,
62
+ tmuxSession: binding.worker_tmux_session,
63
+ });
64
+ const dispatchState = dispatchLeaseState(dispatchHeartbeat?.timestamp ?? null, options.now, options.heartbeatStaleSeconds);
65
+ const dispatch = {
66
+ dispatcher_id: options.dispatcherId,
67
+ last_heartbeat_at: dispatchHeartbeat?.timestamp ?? null,
68
+ state: dispatchState,
69
+ };
70
+ const nextActions = [];
71
+ if (dispatch.state !== "healthy") {
72
+ nextActions.push({
73
+ kind: "start_dispatch",
74
+ prompt: `Run: conveyor dispatch --watch --dispatcher-id ${shellQuote(options.dispatcherId)}${pathFlag(options.dbPath ?? null)}`,
75
+ reason: `Dispatch ${options.dispatcherId} is ${dispatch.state}.`,
76
+ });
77
+ }
78
+ if (manager.lease.state !== "healthy") {
79
+ nextActions.push({
80
+ kind: "wake_manager",
81
+ prompt: manager.poll_command ?? undefined,
82
+ reason: `Manager heartbeat is ${manager.lease.state}.`,
83
+ role: "manager",
84
+ });
85
+ }
86
+ if (worker.lease.state !== "healthy") {
87
+ nextActions.push({
88
+ kind: "wake_worker",
89
+ prompt: worker.poll_command ?? undefined,
90
+ reason: `Worker heartbeat is ${worker.lease.state}.`,
91
+ role: "worker",
92
+ });
93
+ }
94
+ return {
95
+ dispatch,
96
+ manager,
97
+ next_actions: nextActions,
98
+ ok: dispatch.state === "healthy" && manager.lease.state === "healthy" && worker.lease.state === "healthy",
99
+ task,
100
+ worker,
101
+ };
102
+ }
103
+ export function appWakeupPlanSync(database, options) {
104
+ const status = appLoopStatusSync(database, options);
105
+ const wakeups = [];
106
+ if (status.manager.lease.state !== "healthy") {
107
+ wakeups.push(roleWakeup("manager", status.manager, status.task.name, options.dbPath ?? null, status.manager.lease.state));
108
+ }
109
+ if (status.worker.lease.state !== "healthy") {
110
+ wakeups.push(roleWakeup("worker", status.worker, status.task.name, options.dbPath ?? null, status.worker.lease.state));
111
+ }
112
+ return {
113
+ dispatcher: {
114
+ command: `conveyor dispatch --watch --dispatcher-id ${shellQuote(options.dispatcherId)}${pathFlag(options.dbPath ?? null)}`,
115
+ required: status.dispatch.state !== "healthy",
116
+ state: status.dispatch.state,
117
+ },
118
+ status,
119
+ wakeups,
120
+ };
121
+ }
122
+ export function appWakeupDispatchPlanSync(database, options) {
123
+ const plan = appWakeupPlanSync(database, options);
124
+ const wakeupsByRole = new Map(plan.wakeups.map((wakeup) => [wakeup.role, wakeup]));
125
+ const actions = ["manager", "worker"].map((role) => {
126
+ const roleStatus = role === "manager" ? plan.status.manager : plan.status.worker;
127
+ const wakeup = wakeupsByRole.get(role);
128
+ if (!wakeup) {
129
+ return {
130
+ blocker: null,
131
+ prompt: null,
132
+ reason: `${role} heartbeat is healthy.`,
133
+ role,
134
+ send_ready: false,
135
+ status: "skipped_healthy",
136
+ thread: {
137
+ id: roleStatus.codex_app_thread_id,
138
+ title: roleStatus.codex_app_thread_title,
139
+ },
140
+ };
141
+ }
142
+ if (!wakeup.thread.id) {
143
+ return {
144
+ blocker: `No Codex app thread id is registered for the ${role}; use the prompt manually or register app thread metadata before calling send_message_to_thread.`,
145
+ prompt: wakeup.prompt,
146
+ reason: wakeup.reason,
147
+ role,
148
+ send_ready: false,
149
+ status: "blocked_missing_thread",
150
+ thread: wakeup.thread,
151
+ };
152
+ }
153
+ return {
154
+ blocker: null,
155
+ prompt: wakeup.prompt,
156
+ reason: wakeup.reason,
157
+ role,
158
+ send_ready: true,
159
+ status: "ready_to_send",
160
+ thread: wakeup.thread,
161
+ };
162
+ });
163
+ const ready = actions.filter((action) => action.status === "ready_to_send").length;
164
+ const blocked = actions.filter((action) => action.status === "blocked_missing_thread").length;
165
+ const skipped = actions.filter((action) => action.status === "skipped_healthy").length;
166
+ return {
167
+ actions,
168
+ dispatcher: plan.dispatcher,
169
+ status: plan.status,
170
+ summary: {
171
+ blocked,
172
+ dispatcher_required: plan.dispatcher.required,
173
+ ready_to_send: ready,
174
+ skipped,
175
+ total_actions: actions.length,
176
+ },
177
+ };
178
+ }
179
+ export function appHeartbeatPollCommand(role, taskName, dbPath) {
180
+ return `conveyor app-heartbeat ${shellQuote(taskName)} --role ${role}${pathFlag(dbPath ?? null)} --json`;
181
+ }
182
+ export function appLoopStatusCommand(taskName, dbPath) {
183
+ return `conveyor app-loop-status ${shellQuote(taskName)}${pathFlag(dbPath ?? null)} --json`;
184
+ }
185
+ export function appWakeupPlanCommand(taskName, dbPath) {
186
+ return `conveyor app-wakeup-plan ${shellQuote(taskName)}${pathFlag(dbPath ?? null)} --json`;
187
+ }
188
+ export function directInboxPollCommand(role, taskName, dbPath) {
189
+ const inbox = role === "manager" ? "manager-inbox" : "worker-inbox";
190
+ return `conveyor ${inbox} ${shellQuote(taskName)} --consume-next --wait --timeout 60${pathFlag(dbPath ?? null)} --json`;
191
+ }
192
+ function roleStatus(options) {
193
+ const hasTmux = Boolean(options.tmuxSession);
194
+ return {
195
+ codex_app_thread_id: options.threadId,
196
+ codex_app_thread_title: options.threadTitle,
197
+ direct_inbox_command: directInboxPollCommand(options.role, options.taskName, options.dbPath),
198
+ lease: {
199
+ age_seconds: ageSeconds(options.lastHeartbeatAt, options.now),
200
+ last_heartbeat_at: options.lastHeartbeatAt,
201
+ stale_after_seconds: options.heartbeatStaleSeconds,
202
+ state: leaseState(options.lastHeartbeatAt, options.now, options.heartbeatStaleSeconds),
203
+ },
204
+ name: options.name,
205
+ poll_command: appHeartbeatPollCommand(options.role, options.taskName, options.dbPath),
206
+ receive_style: hasTmux ? "push" : "pull",
207
+ session_id: options.sessionId,
208
+ session_kind: hasTmux ? "tmux" : options.threadId ? "codex_app" : "no_tmux",
209
+ };
210
+ }
211
+ function roleWakeup(role, status, taskName, dbPath, state) {
212
+ const pollCommand = appHeartbeatPollCommand(role, taskName, dbPath);
213
+ const directInboxCommand = directInboxPollCommand(role, taskName, dbPath);
214
+ const roleInstruction = role === "manager"
215
+ ? "If an item is consumed, verify worker claims before recording conclusions, require concrete evidence, update Conveyor state as appropriate, and produce exactly one next worker task."
216
+ : "If an item is consumed, execute only that single worker instruction and return exact commands, compact evidence, blockers or residual risk, and exactly one next recommended worker task.";
217
+ return {
218
+ prompt: [
219
+ "Use the manage-codex-workers skill.",
220
+ `This is the ${role} heartbeat wakeup for task ${taskName}.`,
221
+ `Run: ${pollCommand}`,
222
+ `If the heartbeat result asks for direct inbox polling, run: ${directInboxCommand}`,
223
+ roleInstruction,
224
+ "If no item is consumed, stop after a one-line idle receipt.",
225
+ "Idle polling is not completion and does not authorize heartbeat teardown.",
226
+ ].join("\n"),
227
+ reason: `${role} heartbeat is ${state}.`,
228
+ role,
229
+ thread: {
230
+ id: status.codex_app_thread_id,
231
+ title: status.codex_app_thread_title,
232
+ },
233
+ };
234
+ }
235
+ function dispatchLeaseState(value, now, staleSeconds) {
236
+ const state = leaseState(value, now, staleSeconds);
237
+ return state === "healthy" ? "healthy" : state === "stale" ? "stale" : "missing";
238
+ }
239
+ function leaseState(value, now, staleSeconds) {
240
+ if (!value) {
241
+ return "missing";
242
+ }
243
+ const age = ageSeconds(value, now);
244
+ return age !== null && age <= staleSeconds ? "healthy" : "stale";
245
+ }
246
+ function ageSeconds(value, now) {
247
+ if (!value) {
248
+ return null;
249
+ }
250
+ const parsedNow = Date.parse(now);
251
+ const parsedValue = Date.parse(value);
252
+ if (!Number.isFinite(parsedNow) || !Number.isFinite(parsedValue)) {
253
+ return null;
254
+ }
255
+ return Math.max(0, Math.floor((parsedNow - parsedValue) / 1000));
256
+ }
257
+ function pathFlag(dbPath) {
258
+ return dbPath ? ` --path ${shellQuote(dbPath)}` : "";
259
+ }
260
+ function shellQuote(value) {
261
+ return `'${value.replace(/'/g, "'\"'\"'")}'`;
262
+ }
263
+ //# sourceMappingURL=app-autonomy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-autonomy.js","sourceRoot":"","sources":["../../src/runtime/app-autonomy.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,8 @@ export interface CodexSessionDiscovery {
16
16
  pid: number;
17
17
  }
18
18
  export interface RegisteredSessionRecord {
19
+ codex_app_thread_id: string | null;
20
+ codex_app_thread_title: string | null;
19
21
  codex_session_id: string | null;
20
22
  codex_session_path: string | null;
21
23
  communication: SessionCommunication;
@@ -45,6 +47,8 @@ interface SessionCommunication {
45
47
  tmux_session: string | null;
46
48
  }
47
49
  export interface RegisterSessionResult {
50
+ codex_app_thread_id: string | null;
51
+ codex_app_thread_title: string | null;
48
52
  codex_session_id: string;
49
53
  codex_session_path: string;
50
54
  communication: SessionCommunication;
@@ -73,6 +77,8 @@ export declare function discoverSession(options: {
73
77
  pid: number;
74
78
  }): CodexSessionDiscovery;
75
79
  export declare function registerSessionSync(database: DatabaseSync, options: {
80
+ codexAppThreadId?: string | null;
81
+ codexAppThreadTitle?: string | null;
76
82
  codexSessionPath: string;
77
83
  cwd?: string | null;
78
84
  name: string;
@@ -1,5 +1,7 @@
1
1
  import { randomUUID } from "node:crypto";
2
- import { readFileSync } from "node:fs";
2
+ import { accessSync, constants, readFileSync } from "node:fs";
3
+ import { dirname, join, resolve } from "node:path";
4
+ import { fileURLToPath } from "node:url";
3
5
  class CodexSessionError extends Error {
4
6
  constructor(message) {
5
7
  super(message);
@@ -92,22 +94,27 @@ export function registerSessionSync(database, options) {
92
94
  id, name, role, identity_token,
93
95
  tmux_session, tmux_pane_id,
94
96
  codex_session_path, codex_session_id, pid,
97
+ codex_app_thread_id, codex_app_thread_title,
95
98
  cwd, registered_at, last_heartbeat_at, state
96
99
  )
97
- values (?, ?, ?, ?, ?, null, ?, ?, ?, ?, ?, ?, 'active')
100
+ values (?, ?, ?, ?, ?, null, ?, ?, ?, ?, ?, ?, ?, ?, 'active')
98
101
  on conflict(name) do update set
99
102
  tmux_session = excluded.tmux_session,
100
103
  tmux_pane_id = coalesce(excluded.tmux_pane_id, sessions.tmux_pane_id),
101
104
  codex_session_path = excluded.codex_session_path,
102
105
  codex_session_id = excluded.codex_session_id,
106
+ codex_app_thread_id = excluded.codex_app_thread_id,
107
+ codex_app_thread_title = excluded.codex_app_thread_title,
103
108
  pid = excluded.pid,
104
109
  cwd = excluded.cwd,
105
110
  last_heartbeat_at = excluded.last_heartbeat_at,
106
111
  last_ingest_offset = null,
107
112
  state = 'active'
108
- `).run(sessionId, options.name, options.role, identityToken, options.tmuxSession ?? null, options.codexSessionPath, meta.id, options.pid, cwd, timestamp, timestamp);
113
+ `).run(sessionId, options.name, options.role, identityToken, options.tmuxSession ?? null, options.codexSessionPath, meta.id, options.pid, options.codexAppThreadId ?? null, options.codexAppThreadTitle ?? null, cwd, timestamp, timestamp);
109
114
  const session = sessionRow(database, options.name, options.role);
110
115
  return {
116
+ codex_app_thread_id: session.codex_app_thread_id,
117
+ codex_app_thread_title: session.codex_app_thread_title,
111
118
  codex_session_id: meta.id,
112
119
  codex_session_path: options.codexSessionPath,
113
120
  communication: sessionCommunication(session),
@@ -244,13 +251,26 @@ function sessionCommunication(session, options) {
244
251
  }
245
252
  function sessionPollCommand(role, options) {
246
253
  if (role === "worker") {
247
- return `conveyor worker-inbox ${pollTaskArg(options?.taskName)} --consume-next --wait --timeout 60${pollPathSuffix(options?.dbPath)} --json`;
254
+ return `${conveyorPollInvocation()} worker-inbox ${pollTaskArg(options?.taskName)} --consume-next --wait --timeout 60${pollPathSuffix(options?.dbPath)} --json`;
248
255
  }
249
256
  if (role === "manager") {
250
- return `conveyor manager-inbox ${pollTaskArg(options?.taskName)} --consume-next --wait --timeout 60${pollPathSuffix(options?.dbPath)} --json`;
257
+ return `${conveyorPollInvocation()} manager-inbox ${pollTaskArg(options?.taskName)} --consume-next --wait --timeout 60${pollPathSuffix(options?.dbPath)} --json`;
251
258
  }
252
259
  return null;
253
260
  }
261
+ function conveyorPollInvocation() {
262
+ const binDir = join(resolve(dirname(fileURLToPath(import.meta.url)), "../.."), "bin");
263
+ return pathIsExecutable(join(binDir, "conveyor")) ? `PATH=${shellQuote(binDir)}:$PATH conveyor` : "conveyor";
264
+ }
265
+ function pathIsExecutable(path) {
266
+ try {
267
+ accessSync(path, constants.X_OK);
268
+ return true;
269
+ }
270
+ catch {
271
+ return false;
272
+ }
273
+ }
254
274
  function pollTaskArg(taskName) {
255
275
  return taskName ? shellQuote(taskName) : "<task>";
256
276
  }
@@ -262,6 +282,8 @@ function shellQuote(value) {
262
282
  }
263
283
  function sessionRecord(row) {
264
284
  return {
285
+ codex_app_thread_id: row.codex_app_thread_id,
286
+ codex_app_thread_title: row.codex_app_thread_title,
265
287
  codex_session_id: row.codex_session_id,
266
288
  codex_session_path: row.codex_session_path,
267
289
  cwd: row.cwd,
@@ -1 +1 @@
1
- {"version":3,"file":"codex-session.js","sourceRoot":"","sources":["../../src/runtime/codex-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAGvC,MAAM,iBAAkB,SAAQ,KAAK;IACnC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAwED,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,IAAI,SAAiB,CAAC;IACtB,IAAI,CAAC;QACH,CAAC,SAAS,GAAG,EAAE,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAClE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvD,MAAM,IAAI,iBAAiB,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;IACD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,iBAAiB,CAAC,0BAA0B,IAAI,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,iBAAiB,CAAC,wCAAwC,IAAI,EAAE,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QACxD,MAAM,IAAI,iBAAiB,CAAC,kDAAkD,IAAI,EAAE,CAAC,CAAC;IACxF,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,iBAAiB,CAAC,kDAAkD,IAAI,EAAE,CAAC,CAAC;IACxF,CAAC;IACD,IAAI,OAAO,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;QAC1C,MAAM,IAAI,iBAAiB,CAAC,+CAA+C,IAAI,EAAE,CAAC,CAAC;IACrF,CAAC;IACD,OAAO,MAAM,CAAC,OAAsC,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,GAAW,EAAE,QAAkB;IAChE,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAAc,EAAE,GAAW;IAC/D,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9C,SAAS;QACX,CAAC;QACD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzF,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,MAAM,IAAI,iBAAiB,CAAC,wCAAwC,GAAG,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAAW,EAAE,UAAmC;IACpF,OAAO,qBAAqB,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAI/B;IACC,MAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IACvF,MAAM,WAAW,GAAG,qBAAqB,CAAC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IACzE,MAAM,IAAI,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;IAC1C,OAAO;QACL,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;QACnC,gBAAgB,EAAE,IAAI,CAAC,EAAE;QACzB,kBAAkB,EAAE,WAAW;QAC/B,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,EAAE;QACnB,UAAU,EAAE,SAAS;QACrB,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE;QACjC,GAAG,EAAE,OAAO,CAAC,GAAG;KACjB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,QAAsB,EACtB,OAQC;IAED,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACvD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC1D,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC;;;;GAIjC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAqE,CAAC;IACzF,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;QAC/C,MAAM,IAAI,iBAAiB,CACzB,gBAAgB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI;cACxG,8BAA8B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAC/D,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,QAAQ,EAAE,EAAE,IAAI,WAAW,UAAU,EAAE,EAAE,CAAC;IAC5D,MAAM,aAAa,GAAG,QAAQ,EAAE,cAAc,IAAI,iBAAiB,UAAU,EAAE,EAAE,CAAC;IAClF,QAAQ,CAAC,OAAO,CAAC;;;;;;;;;;;;;;;;;;GAkBhB,CAAC,CAAC,GAAG,CACJ,SAAS,EACT,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,IAAI,EACZ,aAAa,EACb,OAAO,CAAC,WAAW,IAAI,IAAI,EAC3B,OAAO,CAAC,gBAAgB,EACxB,IAAI,CAAC,EAAE,EACP,OAAO,CAAC,GAAG,EACX,GAAG,EACH,SAAS,EACT,SAAS,CACV,CAAC;IACF,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,OAAO;QACL,gBAAgB,EAAE,IAAI,CAAC,EAAE;QACzB,kBAAkB,EAAE,OAAO,CAAC,gBAAgB;QAC5C,aAAa,EAAE,oBAAoB,CAAC,OAAO,CAAC;QAC5C,GAAG;QACH,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,UAAU,EAAE,SAAS;QACrB,YAAY,EAAE,OAAO,CAAC,YAAY;KACnC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAAsB,EAAE,OAAuC;IACnG,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC1D,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,wCAAwC,CAAC;SACxE,GAAG,CAAC,OAAO,CAAC,IAAI,CAA+B,CAAC;IACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,iBAAiB,CAAC,mCAAmC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjG,CAAC;IACD,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC;;;;;;GAMtC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAgD,CAAC;IAChF,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,IAAI,iBAAiB,CACzB,6BAA6B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B;cACrF,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,2BAA2B,CACnH,CAAC;IACJ,CAAC;IACD,QAAQ,CAAC,OAAO,CAAC,0EAA0E,CAAC;SACzF,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,QAAsB,EACtB,OAOC;IAED,MAAM,IAAI,GAAG,eAAe,CAAC,QAAQ,EAAE;QACrC,aAAa,EAAE,OAAO,EAAE,aAAa;QACrC,IAAI,EAAE,OAAO,EAAE,IAAI;QACnB,KAAK,EAAE,OAAO,EAAE,KAAK;KACtB,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC5C,OAAO,IAAI;SACR,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SAChE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QACf,MAAM,MAAM,GAAG;YACb,GAAG,OAAO;YACV,aAAa,EAAE,oBAAoB,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;SAC1E,CAAC;QACF,IAAI,OAAO,EAAE,mBAAmB,IAAI,MAAM,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;YACnE,OAAO,EAAE,GAAG,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC;QACrD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;AACP,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,QAAsB,EACtB,OAAmF;IAEnF,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5C,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC;IACpF,MAAM,QAAQ,GAAG,0BAA0B,CAAC,QAAQ,EAAE;QACpD,MAAM,EAAE,OAAO,EAAE,MAAM;QACvB,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ;KACvC,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxF,MAAM,YAAY,GAAG,KAAK;SACvB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;SACpF,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACnB,MAAM,eAAe,GAAG,QAAQ;SAC7B,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,OAA6C,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,kBAAkB,CAAC,CAAC,CAAC;SAChK,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACnB,MAAM,eAAe,GAAG,QAAQ;SAC7B,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC;SACxH,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACnB,OAAO;QACL,QAAQ,EAAE,eAAe;QACzB,KAAK;QACL,QAAQ,EAAE,eAAe;QACzB,WAAW,EAAE,mBAAmB,CAAC,YAAY,EAAE,eAAe,EAAE,eAAe,CAAC;QAChF,KAAK,EAAE,YAAY;QACnB,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;KACrC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,QAAsB,EACtB,IAAY,EACZ,IAAkC;IAElC,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,uCAAuC,CAAC,CAAC,GAAG,CAAC,IAAI,CAA2B,CAAC;IAC1G,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,iBAAiB,CAAC,mCAAmC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzF,CAAC;IACD,IAAI,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC9B,MAAM,IAAI,iBAAiB,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxI,CAAC;IACD,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,eAAe,CACtB,QAAsB,EACtB,OAIC;IAED,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,IAAI,CAAC;IACrC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;QAChF,MAAM,IAAI,iBAAiB,CAAC,yBAAyB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAChF,CAAC;IACD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACjC,CAAC;SAAM,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;QAC3B,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAClC,CAAC;IACD,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC;QAC9C,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAClC,CAAC;SAAM,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1E,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,yBAAyB,KAAK,yBAAyB,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAA4B,CAAC;IACjI,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,oBAAoB,CAC3B,OAA0H,EAC1H,OAA8D;IAE9D,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9C,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,kBAAkB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACzF,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC/G,OAAO;QACL,gBAAgB,EAAE,WAAW,KAAK,IAAI;QACtC,gBAAgB,EAAE,OAAO;QACzB,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe;QACjD,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,sBAAsB;QACrH,GAAG,CAAC,OAAO,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,qBAAqB,EAAE,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QACpF,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;QACxC,gBAAgB,EAAE,CAAC,OAAO;QAC1B,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QAC3E,YAAY,EAAE,OAAO,CAAC,YAAY;KACnC,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CACzB,IAAmB,EACnB,OAA8D;IAE9D,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO,yBAAyB,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,sCAAsC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC;IAC/I,CAAC;IACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO,0BAA0B,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,sCAAsC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC;IAChJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,WAAW,CAAC,QAAwB;IAC3C,OAAO,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AACpD,CAAC;AAED,SAAS,cAAc,CAAC,MAAsB;IAC5C,OAAO,MAAM,CAAC,CAAC,CAAC,WAAW,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC;AAC/C,CAAC;AAmBD,SAAS,aAAa,CAAC,GAAe;IACpC,OAAO;QACL,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;QACtC,kBAAkB,EAAE,GAAG,CAAC,kBAAkB;QAC1C,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,cAAc,EAAE,GAAG,CAAC,cAAc;QAClC,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;QACxC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,GAAG,CAAC,kBAAkB,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3G,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,YAAY,EAAE,GAAG,CAAC,YAAY;QAC9B,YAAY,EAAE,GAAG,CAAC,YAAY;KAC/B,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAsB,EAAE,OAAkC;IACnF,MAAM,KAAK,GAAG,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,yDAAyD,CAAC,CAAC,CAAC,EAAE,CAAC;IACnG,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC;;;;;;MAM1B,KAAK;;GAER,CAAC,CAAC,GAAG,EAWJ,CAAC;IACH,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACxB,MAAM,EAAE,GAAG,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACvC,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,gBAAgB,EAAE,GAAG,CAAC,UAAU,GAAG,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC;YACzD,WAAW,EAAE,GAAG,CAAC,WAAW;SAC7B;QACD,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,UAAU,EAAE,GAAG,CAAC,UAAU;KAC3B,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,cAAc,CAAC,QAAsB;IAC5C,OAAO,QAAQ,CAAC,OAAO,CAAC;;;;;;;;;;;GAWvB,CAAC,CAAC,GAAG,EAAoC,CAAC;AAC7C,CAAC;AAED,SAAS,mBAAmB,CAC1B,KAAqC,EACrC,QAAmC,EACnC,QAAwC;IAExC,MAAM,WAAW,GAAmC,EAAE,CAAC;IACvD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/F,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;IACtG,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;IACxG,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YACrE,SAAS;QACX,CAAC;QACD,IAAI,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,SAAS;QACX,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,WAAW,CAAC,IAAI,CAAC;gBACf,OAAO,EAAE,wBAAwB,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,aAAa,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;gBAClJ,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;gBACzB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;aACxB,CAAC,CAAC;YACH,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,WAAW,CAAC,IAAI,CAAC;YACf,IAAI,EAAE,iBAAiB;YACvB,MAAM,EAAE,6IAA6I;SACtJ,CAAC,CAAC;IACL,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC;YACf,IAAI,EAAE,kBAAkB;YACxB,MAAM,EAAE,+IAA+I;SACxJ,CAAC,CAAC;IACL,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,oBAAoB,CAC3B,QAAsB,EACtB,OAA0C;IAE1C,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC;;;;;;;;;;;;;;;GAe7B,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAWrE,CAAC;IACH,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACxB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC;QAC3C,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC;QAC7C,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,GAAG,CAAC,SAAS;KACzB,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAc;IACvC,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACxG,CAAC;AAED,SAAS,eAAe,CAAC,GAA4B,EAAE,KAAa,EAAE,MAAgB;IACpF,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,YAAY,CAAC,KAAc,EAAE,KAAa;IACjD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC1C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9G,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
1
+ {"version":3,"file":"codex-session.js","sourceRoot":"","sources":["../../src/runtime/codex-session.ts"],"names":[],"mappings":"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"}