@codetreker/daynight 0.24.5 → 0.25.0

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 (44) hide show
  1. package/README.md +142 -16
  2. package/dist/commands/skill/skills/using-daynight/references/task-content.md +3 -0
  3. package/dist/commands/worker/coordinator.js +51 -28
  4. package/dist/commands/worker/coordinator.js.map +1 -1
  5. package/dist/commands/worker/definition.js +6 -1
  6. package/dist/commands/worker/definition.js.map +1 -1
  7. package/dist/commands/worker/diagnostics.js +2 -1
  8. package/dist/commands/worker/diagnostics.js.map +1 -1
  9. package/dist/commands/worker/execution.d.ts +2 -0
  10. package/dist/commands/worker/execution.js +5 -5
  11. package/dist/commands/worker/execution.js.map +1 -1
  12. package/dist/commands/worker/herdr/agents.d.ts +6 -9
  13. package/dist/commands/worker/herdr/agents.js +78 -37
  14. package/dist/commands/worker/herdr/agents.js.map +1 -1
  15. package/dist/commands/worker/herdr/codex-install-safety.d.ts +2 -0
  16. package/dist/commands/worker/herdr/codex-install-safety.js +104 -0
  17. package/dist/commands/worker/herdr/codex-install-safety.js.map +1 -0
  18. package/dist/commands/worker/herdr/instance.d.ts +2 -0
  19. package/dist/commands/worker/herdr/instance.js +44 -3
  20. package/dist/commands/worker/herdr/instance.js.map +1 -1
  21. package/dist/commands/worker/herdr/preflight.d.ts +1 -0
  22. package/dist/commands/worker/herdr/preflight.js +60 -7
  23. package/dist/commands/worker/herdr/preflight.js.map +1 -1
  24. package/dist/commands/worker/herdr.d.ts +2 -1
  25. package/dist/commands/worker/herdr.js +1 -0
  26. package/dist/commands/worker/herdr.js.map +1 -1
  27. package/dist/commands/worker/index.d.ts +5 -0
  28. package/dist/commands/worker/index.js +5 -0
  29. package/dist/commands/worker/index.js.map +1 -1
  30. package/dist/commands/worker/migration-state.d.ts +40 -0
  31. package/dist/commands/worker/migration-state.js +197 -0
  32. package/dist/commands/worker/migration-state.js.map +1 -0
  33. package/dist/commands/worker/migration.d.ts +21 -0
  34. package/dist/commands/worker/migration.js +406 -0
  35. package/dist/commands/worker/migration.js.map +1 -0
  36. package/dist/commands/worker/resource-owner.d.ts +5 -0
  37. package/dist/commands/worker/resource-owner.js +29 -0
  38. package/dist/commands/worker/resource-owner.js.map +1 -0
  39. package/dist/commands/worker/runtime.js +3 -0
  40. package/dist/commands/worker/runtime.js.map +1 -1
  41. package/dist/commands/worker/types.d.ts +0 -1
  42. package/dist/commands/worker/worktrees.js +5 -3
  43. package/dist/commands/worker/worktrees.js.map +1 -1
  44. package/package.json +3 -2
package/README.md CHANGED
@@ -22,6 +22,7 @@ GitHub CLI and Copilot CLI on `PATH`.
22
22
  - [Task deletion](#task-deletion)
23
23
  - [Task attachments](#task-attachments)
24
24
  - [Worker configuration and startup](#worker-configuration-and-startup)
25
+ - [Worker workspace upgrade](#worker-workspace-upgrade)
25
26
  - [Worker manual management](#worker-manual-management)
26
27
  - [Review configuration and startup](#review-configuration-and-startup)
27
28
  - [Review status listing](#review-status-listing)
@@ -101,6 +102,7 @@ daynight worker # Show worker help
101
102
  daynight worker setup # Check prerequisites and choose an agent and Projects
102
103
  daynight worker run # Run until interrupted
103
104
  daynight worker attach # Open the worker Herdr session
105
+ daynight worker migrate-workspaces [--rollback]
104
106
  daynight worker repo list [--json]
105
107
  daynight worker repo add [--project <project-id>]
106
108
  daynight worker repo remove [--project <project-id>]
@@ -841,14 +843,47 @@ worker state or acquire tasks. Unconfirmed probe-process cleanup is a failure,
841
843
  including during cancellation.
842
844
 
843
845
  Install Git, Herdr 0.9.5 or newer with protocol 22 capabilities, and the selected
844
- native agent on PATH. Configure native/provider credentials and the current
845
- official Herdr SessionStart integration explicitly. Codex must be 0.135 or newer
846
- and support hooks, `--no-daemon` and the fixed full-access/hook-trust flags;
847
- Unix hooks need bash and python3, while Windows hooks need
848
- PowerShell. Inspect official integration with `herdr integration status`. Missing
849
- capabilities and native launch failures remain visible;
850
- the worker does not install or change global native configuration. Git transport
851
- and task tools, such as authenticated GitHub CLI for PR delivery, must be ready.
846
+ native agent on PATH and configure native/provider credentials. Before each
847
+ fresh or resumed native launch, runtime preflight reads the selected agent's
848
+ official integration through the private daemon. A `current` integration causes
849
+ no installation write. Only `not_installed` or `outdated` triggers the official
850
+ `integration.install` RPC with `{target: agent}`; preflight then reads the state
851
+ again and requires `current`. Missing, duplicate, malformed or unknown integration
852
+ metadata fails without repair. Each launch makes its own integration requests to
853
+ the private daemon, whose official handler performs the installation.
854
+
855
+ The official installer can update native configuration and hook assets in the
856
+ provider home used by the private daemon. Codex repair requires a live private
857
+ daemon started by the current worker, so its native environment matches the
858
+ configuration being checked. An adopted daemon's environment cannot be verified
859
+ through the API; stop and restart the worker normally before attempting Codex
860
+ repair in that case. Repair also requires the audited Herdr 0.9.5 installer and
861
+ checks its projected TOML edit without writing files.
862
+ The original and projected configurations must parse and differ only by enabling
863
+ `features.hooks` and removing the deprecated integration key
864
+ `features.codex_hooks`. Configurations containing date/time values or parser
865
+ constructs whose exact semantics cannot be compared are refused. Inline, dotted
866
+ or quoted feature layouts and multiline strings that this installer would damage
867
+ fail before `integration.install`;
868
+ reformat the affected configuration or use an integration installed safely by
869
+ its owner before retrying. Unknown installer versions also fail before repair;
870
+ already-current integrations keep their ordinary verification path. The check
871
+ compares configuration values; it does not preserve comments or lock out external
872
+ configuration edits between inspection and installation.
873
+
874
+ Preflight still verifies effective hooks and the SessionStart command in the
875
+ actual task directory before launch; installation success alone is insufficient. Installation, verification and
876
+ cancellation failures remain visible and prevent that native launch. An uncertain
877
+ installation outcome is not automatically replayed; a later attempt first reads
878
+ current state. Setup retains its read-only inspection and repair instructions.
879
+ Inspect shell-side integration with `herdr integration status`; its environment
880
+ can differ from the running private daemon's.
881
+
882
+ Codex must be 0.135 or newer and support hooks, `--no-daemon` and the fixed
883
+ full-access/hook-trust flags. Unix hooks need bash and python3, while Windows
884
+ hooks need PowerShell. Native capability and launch failures remain visible.
885
+ Git transport and task tools, such as authenticated GitHub CLI for PR delivery,
886
+ must be ready.
852
887
 
853
888
  Manage individual Project registrations with:
854
889
 
@@ -967,6 +1002,31 @@ private Herdr. Each task uses branch `daynight/<task-id>` and directory
967
1002
  `<repository>/.worktrees/daynight/<task-id>`. Valid claims retain their dirty
968
1003
  worktree; task branches and commits remain after terminal cleanup.
969
1004
 
1005
+ A workspace label starts with the task title and ends with its full stable owner:
1006
+
1007
+ ```text
1008
+ Fix worker startup | daynight:{"projectId":"…","taskId":"…","claimId":"…","worktreeId":"…"}
1009
+ ```
1010
+
1011
+ The title is display text. Ownership checks and the managed agent name use only
1012
+ those four canonical UUIDs; renaming a task does not change its claim, worktree,
1013
+ agent name or native conversation. Herdr and Git ownership markers share that
1014
+ four-field identity. The configured service address remains available to API
1015
+ requests and the managed assignment, outside resource identity. One retained
1016
+ worker state directory belongs to one configured service.
1017
+
1018
+ The next successful complete claim inventory supplies the latest task title.
1019
+ Changed names are synchronized through Herdr in the task's existing serialized
1020
+ operation, including when execution recovery has reached its limit. An unchanged
1021
+ name sends no rename request. A naming RPC failure reports `workspace-name-error`
1022
+ without spending execution recovery budget or restarting a healthy agent; an
1023
+ unknown result is observed again before a later decision. Ownership, binding and
1024
+ cancellation failures retain their lifecycle semantics. Titles may contain the
1025
+ label delimiter because parsing uses the final owner suffix. Control characters,
1026
+ line separators and bidirectional display controls are escaped as visible text;
1027
+ Unicode titles and emoji remain readable. Full titles and owner IDs are retained,
1028
+ with Herdr responsible for fitting the label into its current terminal width.
1029
+
970
1030
  The local database has exactly these business fields:
971
1031
 
972
1032
  ```text
@@ -1020,7 +1080,7 @@ Native recovery uses current resources and the recorded session ID:
1020
1080
  |---|---|
1021
1081
  | Matching agent is alive | Reconnect and observe without resending the startup prompt. |
1022
1082
  | Agent needs starting, session_id is present | Resume that native session using the recorded agent type. |
1023
- | Agent needs starting, session_id is NULL | Emit Warning, start a fresh native conversation, and save its ID in the same row. |
1083
+ | Agent needs starting, session_id is NULL | Emit `info`, start a fresh native conversation, and save its ID in the same row. |
1024
1084
 
1025
1085
  When a native process must restart, the worker stops/closes an existing
1026
1086
  inactive workspace and creates a new one with the current native environment
@@ -1143,9 +1203,13 @@ current configuration does not establish that historical type. Unproven Git-only
1143
1203
  resources remain untouched.
1144
1204
 
1145
1205
  stderr and JSONL logs identify worker, platform, Project/task/claim, agent and
1146
- known session ID. Startup prints the log location and attach guidance. Routine
1147
- observations report the first connection and changes to a claim’s waiting or
1148
- executing phase, terminal or native session. Unchanged polls stay quiet, including
1206
+ known session ID. After credential redaction, the terminal renderer shortens each
1207
+ full hyphenated GUID in context, messages and error chains to its first eight
1208
+ hexadecimal characters, preserving case. Other text stays unchanged. JSONL keeps
1209
+ complete IDs in fields, messages and errors for precise lookup. Startup prints
1210
+ the log location and attach guidance. Routine observations report the first
1211
+ connection and changes to a claim’s waiting or executing phase, terminal or native
1212
+ session. Unchanged polls stay quiet, including
1149
1213
  the first poll after a successful start. Claims are tracked independently.
1150
1214
  Resource-preservation warnings appear once while continuously observed and
1151
1215
  appear again if they clear and return. Actual starts, recoveries, cleanup, manual
@@ -1155,6 +1219,68 @@ recovery ledger. The
1155
1219
  [worker requirements](../../docs/spec/daynight-worker.md) and
1156
1220
  [design](../../docs/design/daynight-worker.md) own full behavior and validation.
1157
1221
 
1222
+ ## Worker workspace upgrade
1223
+
1224
+ Stop `daynight worker run` and confirm that its private Herdr and native agents
1225
+ have stopped before changing an existing workspace identity format. Normal
1226
+ execution accepts the current four-ID format and reports old labels or Git
1227
+ markers with a migration instruction. It does not interpret legacy ownership
1228
+ while running tasks.
1229
+
1230
+ ```bash
1231
+ daynight worker migrate-workspaces
1232
+ ```
1233
+
1234
+ This explicit local operation uses the worker instance lock. It validates the old
1235
+ service identity against the configured service, canonical owner IDs, task and
1236
+ native-session records, actual workspace directories and Git administrative
1237
+ ownership fingerprints. Configured project paths keep their logical spelling;
1238
+ ancestor-directory aliases are accepted when Git registration pointers and saved
1239
+ and restored pane working directories resolve to the same physical task path,
1240
+ while the worktree leaf must remain an ordinary directory with matching physical
1241
+ fingerprints. It preserves the SQLite claim/session index, task
1242
+ branches, dirty worktrees and original native conversations. An unfinished
1243
+ execution with legacy resources must have its recorded native session ID;
1244
+ a fresh pending claim without resources does not block migration. Unknown
1245
+ formats, conflicting identities and missing original resources are errors,
1246
+ with the original resources retained. A current-format or resource-free state
1247
+ needs no conversion, and the command returns without starting a daemon.
1248
+
1249
+ Before mutation, migration backs up its affected files below
1250
+ `~/.daynight/worker/workspace-migration-backups/<UUID>/` and persists
1251
+ `~/.daynight/worker/workspace-migration.json`. Run and manual management refuse
1252
+ to proceed while that blocking manifest remains. The backup retains its original
1253
+ manifest, file hashes, private Herdr tree and completion outcome.
1254
+ A maintenance Herdr keeps automatic native-agent restoration disabled and closes
1255
+ only verified legacy task workspaces. Migration waits for its shutdown and reads
1256
+ back the saved layout before rewriting the Git administration `locked` markers
1257
+ with four IDs and their original physical fingerprints. Old automatic recovery
1258
+ snapshots stay with the migration backup so they cannot restore legacy labels.
1259
+ Herdr owns its snapshot and terminal-history writes; the operation does not edit
1260
+ its history fingerprint.
1261
+
1262
+ After successful migration, start `daynight worker run`. It creates task-title
1263
+ workspaces and resumes the original SQLite native session IDs. Workspace/pane
1264
+ IDs and the closed Herdr terminal scrollback are replaced; the native conversation
1265
+ history and task work remain. The operation changes local resource representation,
1266
+ not remote claims or business task status.
1267
+
1268
+ A failed or interrupted migration keeps normal startup blocked. Restore and verify
1269
+ the complete saved state through the same command before retrying the migration:
1270
+
1271
+ ```bash
1272
+ daynight worker migrate-workspaces --rollback
1273
+ ```
1274
+
1275
+ Rollback requires an incomplete blocking manifest; it cannot revert a completed
1276
+ migration or later execution state. It restores the backed-up Herdr state,
1277
+ database and Git markers as one verified old-format set. It leaves an error and
1278
+ the startup block when restoration cannot be verified. A normal migration request
1279
+ with an incomplete manifest directs the operator to rollback before retrying.
1280
+ Resume an old-format runner only after a successful rollback;
1281
+ use the new runner after migration completes. The [workspace naming decision](../../.agents/notes/implemented/architecture/2026-10-28-worker-workspace-names.md)
1282
+ records the format and the costs of rebuilding the Herdr workspace.
1283
+
1158
1284
  ## Worker manual management
1159
1285
 
1160
1286
  Stop `daynight worker run` before retry, release or resume. Each command
@@ -1168,10 +1294,10 @@ Retry performs one attempt for an active claim still owned by this worker:
1168
1294
  daynight worker retry <task-id> --claim-id <claim-id> --project <project-id>
1169
1295
  ```
1170
1296
 
1171
- It connects the live agent or resumes its recorded native session. NULL emits
1172
- Warning and starts a fresh conversation in the same task worktree. The claim
1173
- and agent type remain; pending rows are started through normal run scheduling.
1174
- After the attempt, run connects to the actual surviving resource. Retry does not
1297
+ It connects the live agent or resumes its recorded native session. A NULL ID
1298
+ starts a fresh conversation in the same task worktree with an `info` event. The
1299
+ claim and agent type remain; pending rows are started through normal run
1300
+ scheduling. After the attempt, run connects to the actual surviving resource. Retry does not
1175
1301
  persist a permit or a cumulative cross-restart budget.
1176
1302
 
1177
1303
  Release validates current Project access, source owner/admin, original claim
@@ -6,6 +6,9 @@ private worktree, temporary files, or session-only authorization. The descriptio
6
6
  and its readable references must together explain the current task completely.
7
7
  Use the target repository's document and language rules.
8
8
 
9
+ Distinguish task requirements from session-only constraints, and record only
10
+ task-specific information in the task.
11
+
9
12
  ## Six content requirements
10
13
 
11
14
  These are content requirements, not six mandatory headings. Provide each item
@@ -1,19 +1,21 @@
1
1
  import { randomUUID } from "node:crypto";
2
2
  import path from "node:path";
3
3
  import { setTimeout as delay } from "node:timers/promises";
4
+ import { OperationError } from "../../api/operation.js";
4
5
  import { createCleanupDriver } from "./cleanup.js";
5
- import { actualTaskPane, createExecutionDriver, isWorkerCancellation, liveAgent, sameClaim, settleWorkerStops, workerOperation } from "./execution.js";
6
+ import { actualTaskPane, createExecutionDriver, executionContext, isWorkerCancellation, liveAgent, sameClaim, settleWorkerStops, workerOperation } from "./execution.js";
7
+ import { HerdrAgentActionError, HerdrRpcError } from "./herdr.js";
6
8
  const key = (identity) => `${identity.projectId}/${identity.taskId}/${identity.claimId}`;
7
9
  const taskKey = (identity) => `${identity.projectId}/${identity.taskId}`;
8
- const remoteOwner = (origin, task) => {
10
+ const remoteOwner = (task) => {
9
11
  const claim = task.properties.worker;
10
12
  if (claim === null || claim.state !== "active")
11
13
  throw new Error("An actual active remote claim is required.");
12
- return { serverOrigin: origin, projectId: task.projectId, taskId: task.id, claimId: claim.claimId, worktreeId: claim.worktreeId };
14
+ return { projectId: task.projectId, taskId: task.id, claimId: claim.claimId, worktreeId: claim.worktreeId };
13
15
  };
14
16
  export const createWorkerCoordinator = (options) => {
15
17
  const now = options.now === undefined ? Date.now : options.now;
16
- const deps = { store: options.store, git: options.git, herdr: options.herdr, platform: options.platform, workerId: options.workerId, buildPrompt: options.buildPrompt, emit: options.emit, now };
18
+ const deps = { store: options.store, git: options.git, herdr: options.herdr, platform: options.platform, workerId: options.workerId, serverOrigin: options.serverOrigin, buildPrompt: options.buildPrompt, emit: options.emit, now };
17
19
  const execution = createExecutionDriver(deps);
18
20
  const cleanup = createCleanupDriver(deps);
19
21
  const normalSignal = options.signal === undefined ? new AbortController().signal : options.signal;
@@ -56,13 +58,11 @@ export const createWorkerCoordinator = (options) => {
56
58
  };
57
59
  const snapshot = async (signal, scope, currentClaims = []) => {
58
60
  const observed = await workerOperation((operation) => options.herdr.tasks.listResources(operation), signal);
59
- const herdr = scope === undefined ? observed : observed.filter((resource) => resource.owner.projectId === scope.projectId && resource.owner.serverOrigin === options.serverOrigin);
61
+ const herdr = scope === undefined ? observed : observed.filter((resource) => resource.owner.projectId === scope.projectId);
60
62
  const owners = new Map();
61
63
  const proven = new Set([...options.store.listTasks().map(key), ...currentClaims.map(key)]);
62
64
  const currentWarnings = new Map();
63
65
  const observe = (owner) => {
64
- if (owner.serverOrigin !== options.serverOrigin)
65
- throw new Error("An owned resource belongs to another configured service; retain it and restore its original configuration.");
66
66
  if (options.store.getProject(owner) === null)
67
67
  throw new Error(`Restore the project configuration for owned resources in ${owner.projectId}.`);
68
68
  const previous = owners.get(key(owner));
@@ -78,14 +78,10 @@ export const createWorkerCoordinator = (options) => {
78
78
  const warnings = new Map();
79
79
  currentWarnings.set(project.projectId, warnings);
80
80
  const warn = (category, owner, message) => {
81
- warnings.set(JSON.stringify([category, owner.serverOrigin, owner.projectId, owner.taskId, owner.claimId, owner.worktreeId]), message);
81
+ warnings.set(JSON.stringify([category, owner.projectId, owner.taskId, owner.claimId, owner.worktreeId]), message);
82
82
  };
83
83
  const worktrees = await workerOperation((operation) => options.git.listWorktrees(project, operation), signal);
84
84
  for (const worktree of worktrees) {
85
- if (worktree.owner.serverOrigin !== options.serverOrigin) {
86
- warn("foreign-service", worktree.owner, `Preserved a worktree from another service in project ${project.projectId}.`);
87
- continue;
88
- }
89
85
  observe(worktree.owner);
90
86
  if (!proven.has(key(worktree.owner)))
91
87
  warn("unproven-ownership", worktree.owner, `Preserved unproven Git ownership for ${key(worktree.owner)}; a static marker does not identify this worker.`);
@@ -104,7 +100,7 @@ export const createWorkerCoordinator = (options) => {
104
100
  const tasks = await options.remote.ownInventory(options.store.listProjects(), options.workerId, signal);
105
101
  const result = new Map();
106
102
  for (const task of tasks) {
107
- const owner = remoteOwner(options.serverOrigin, task);
103
+ const owner = remoteOwner(task);
108
104
  if (task.properties.worker.workerId !== options.workerId)
109
105
  throw new Error("The claim inventory contains another worker's claim.");
110
106
  if (result.has(key(owner)))
@@ -153,7 +149,7 @@ export const createWorkerCoordinator = (options) => {
153
149
  const task = options.store.getTask(owner);
154
150
  if (task !== null)
155
151
  return task;
156
- if (pane === undefined && !options.herdr.tasks.pendingStops().some((stop) => sameClaim(stop.context, owner) && stop.context.serverOrigin === owner.serverOrigin))
152
+ if (pane === undefined && !options.herdr.tasks.pendingStops().some((stop) => sameClaim(stop.context, owner)))
157
153
  return null;
158
154
  const agent = pane?.kind ?? pane?.nativeSession?.agent;
159
155
  if (agent === undefined)
@@ -181,13 +177,42 @@ export const createWorkerCoordinator = (options) => {
181
177
  startJob(owner, async (signal) => { await runCleanup(owner, true, signal); ending.delete(identityKey); }, true);
182
178
  }
183
179
  };
184
- const ensure = async (task, remoteTask, signal) => {
180
+ const syncWorkspaceName = async (task, owner, title, signal) => {
181
+ const pending = options.herdr.tasks.pendingStops().filter((stop) => sameClaim(stop.context, owner));
182
+ if (pending.some((stop) => stop.context.worktreeId !== owner.worktreeId))
183
+ throw new Error("The claim has conflicting pending Herdr stop identities.");
184
+ if (pending.length > 0)
185
+ return;
186
+ let workspaceId = null;
187
+ try {
188
+ const resources = await workerOperation((operation) => options.herdr.tasks.listResources(operation), signal);
189
+ const pane = actualTaskPane(owner, resources);
190
+ if (pane === undefined)
191
+ return;
192
+ workspaceId = pane.binding.workspaceId;
193
+ await workerOperation((operation) => options.herdr.tasks.syncWorkspaceName(executionContext({ task, owner, project: projectFor(task) }), pane.binding, title, operation), signal);
194
+ }
195
+ catch (error) {
196
+ if (isWorkerCancellation(error, signal))
197
+ throw error;
198
+ const snapshotFailure = (error instanceof HerdrRpcError && error.method === "session.snapshot")
199
+ || (error instanceof OperationError && error.kind === "deadline");
200
+ if (!snapshotFailure && (!(error instanceof HerdrAgentActionError) || error.action !== "workspace.rename"))
201
+ throw error;
202
+ const subject = workspaceId === null ? `workspace discovery for worktree ${owner.worktreeId}` : `workspace ${workspaceId}, worktree ${owner.worktreeId}`;
203
+ options.emit({ kind: "workspace-name-error", task, message: `Could not confirm workspace.rename for ${subject}; the next inventory will observe its name again.`, error });
204
+ }
205
+ };
206
+ const ensure = async (task, remoteTask, signal, execute = true) => {
185
207
  if (ending.has(key(task)))
186
208
  return;
187
- const owner = remoteOwner(options.serverOrigin, remoteTask);
209
+ const owner = remoteOwner(remoteTask);
188
210
  if (!sameClaim(task, owner) || remoteTask.properties.worker.workerId !== options.workerId || remoteTask.properties.worker.agent !== task.agent)
189
211
  throw new Error("The local execution does not match the observed original worker claim.");
190
- const input = { task, project: projectFor(task), owner, configuration: configurationFor(task) };
212
+ await syncWorkspaceName(task, owner, remoteTask.title, signal);
213
+ if (!execute)
214
+ return;
215
+ const input = { task, project: projectFor(task), owner, title: remoteTask.title, configuration: configurationFor(task) };
191
216
  const observed = await execution.advance(input, signal);
192
217
  const latest = options.store.getTask(task);
193
218
  await publishSummary(latest, observed, remoteTask, signal);
@@ -202,9 +227,7 @@ export const createWorkerCoordinator = (options) => {
202
227
  if (jobs.has(key(task)) || ending.has(key(task)))
203
228
  return;
204
229
  const count = failures.get(key(task)) ?? 0;
205
- if (count > configurationFor(task).recoveryLimit)
206
- return;
207
- startJob(task, (signal) => ensure(task, remoteTask, signal), false);
230
+ startJob(task, (signal) => ensure(task, remoteTask, signal, count <= configurationFor(task).recoveryLimit), false);
208
231
  };
209
232
  const reconcile = async () => {
210
233
  launchCleanups();
@@ -223,17 +246,17 @@ export const createWorkerCoordinator = (options) => {
223
246
  const observed = await workerOperation((operation) => options.herdr.tasks.listResources(operation), normalSignal);
224
247
  const knownOwners = [...observed.map((workspace) => workspace.owner), ...options.herdr.tasks.pendingStops().map((stop) => stop.context)];
225
248
  for (const owner of knownOwners) {
226
- if (owner.serverOrigin !== options.serverOrigin || options.store.getProject(owner) === null || inventory.has(key(owner)))
249
+ if (options.store.getProject(owner) === null || inventory.has(key(owner)))
227
250
  continue;
228
251
  ending.set(key(owner), owner);
229
252
  }
230
253
  launchCleanups();
231
254
  for (const remoteTask of inventory.values()) {
232
- const local = options.store.getTask(remoteOwner(options.serverOrigin, remoteTask));
255
+ const local = options.store.getTask(remoteOwner(remoteTask));
233
256
  if (local.status === "active" && !blockedByOldClaim(local, knownOwners))
234
257
  schedule(local, remoteTask);
235
258
  }
236
- const resources = await snapshot(normalSignal, undefined, [...inventory.values()].map((task) => remoteOwner(options.serverOrigin, task)));
259
+ const resources = await snapshot(normalSignal, undefined, [...inventory.values()].map((task) => remoteOwner(task)));
237
260
  for (const [identityKey, owner] of resources.owners) {
238
261
  if (resources.proven.has(identityKey) && !inventory.has(identityKey))
239
262
  ending.set(identityKey, owner);
@@ -249,7 +272,7 @@ export const createWorkerCoordinator = (options) => {
249
272
  }
250
273
  launchCleanups();
251
274
  for (const [identityKey, remoteTask] of inventory) {
252
- let local = options.store.getTask(remoteOwner(options.serverOrigin, remoteTask));
275
+ let local = options.store.getTask(remoteOwner(remoteTask));
253
276
  if (resources.owners.has(identityKey) && local.status === "pending" && !blockedByOldClaim(local, resources.owners.values())) {
254
277
  local = options.store.activateTask(local);
255
278
  schedule(local, remoteTask);
@@ -297,7 +320,7 @@ export const createWorkerCoordinator = (options) => {
297
320
  const claimId = randomUUID();
298
321
  try {
299
322
  const granted = await options.remote.claim(candidate, { claimId, workerId: options.workerId, machine: options.machine, platform: options.platform, agent: repository.configuration.agent, worktreeId: randomUUID() }, normalSignal);
300
- const owner = remoteOwner(options.serverOrigin, granted);
323
+ const owner = remoteOwner(granted);
301
324
  const local = options.store.registerPending({ projectId: granted.projectId, taskId: granted.id, claimId: owner.claimId, agent: granted.properties.worker.agent });
302
325
  if (!blockedByOldClaim(local, resources.owners.values()) && capacity(resources) < options.maxConcurrent)
303
326
  schedule(options.store.activateTask(local), granted);
@@ -322,7 +345,7 @@ export const createWorkerCoordinator = (options) => {
322
345
  const worker = remoteTask.properties.worker;
323
346
  if (worker === null || worker.claimId !== identity.claimId || worker.workerId !== options.workerId || worker.state !== "active")
324
347
  throw new Error("The original claim is no longer active on this worker.");
325
- return { task, owner: remoteOwner(options.serverOrigin, remoteTask), remoteTask };
348
+ return { task, owner: remoteOwner(remoteTask), remoteTask };
326
349
  };
327
350
  return {
328
351
  tick: async () => {
@@ -362,7 +385,7 @@ export const createWorkerCoordinator = (options) => {
362
385
  let complete = true;
363
386
  const owners = new Map(ending);
364
387
  for (const { context } of options.herdr.tasks.pendingStops()) {
365
- if (context.serverOrigin !== options.serverOrigin || options.store.getProject(context) === null) {
388
+ if (options.store.getProject(context) === null) {
366
389
  complete = false;
367
390
  options.emit({ kind: "shutdown-error", message: `Retained an unhandled stop operation for ${context.projectId}/${context.taskId}/${context.claimId}.` });
368
391
  }
@@ -372,7 +395,7 @@ export const createWorkerCoordinator = (options) => {
372
395
  try {
373
396
  const workspaces = await workerOperation((operation) => options.herdr.tasks.listResources(operation));
374
397
  for (const workspace of workspaces) {
375
- if (workspace.owner.serverOrigin !== options.serverOrigin || options.store.getProject(workspace.owner) === null) {
398
+ if (options.store.getProject(workspace.owner) === null) {
376
399
  complete = false;
377
400
  options.emit({ kind: "shutdown-error", message: `Retained unhandled Herdr resources for ${workspace.owner.projectId}/${workspace.owner.taskId}/${workspace.owner.claimId}; restore their original project configuration before stopping the private instance.` });
378
401
  }
@@ -1 +1 @@
1
- {"version":3,"file":"coordinator.js","sourceRoot":"","sources":["../../../src/commands/worker/coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,IAAI,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,SAAS,EAAE,SAAS,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAiBvJ,MAAM,GAAG,GAAG,CAAC,QAAuB,EAAU,EAAE,CAAC,GAAG,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;AAChH,MAAM,OAAO,GAAG,CAAC,QAAqD,EAAU,EAAE,CAAC,GAAG,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;AAC9H,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,IAAU,EAAiB,EAAE;IAChE,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;IACrC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAC9G,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC;AACpI,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,OAAiC,EAAE,EAAE;IAC3E,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;IAC/D,MAAM,IAAI,GAA0B,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC;IACxN,MAAM,SAAS,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,eAAe,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAClG,MAAM,KAAK,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC/C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC9C,MAAM,WAAW,GAAG,IAAI,GAAG,EAA8D,CAAC;IAC1F,MAAM,MAAM,GAAG,IAAI,GAAG,EAAyB,CAAC;IAChD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC3C,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAuB,CAAC;IACxD,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,kBAAkB,GAAG,CAAC,CAAC;IAC3B,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,MAAM,SAAS,GAAG,KAAK,EAAK,QAAuB,EAAE,MAAwB,EAAc,EAAE;QAC3F,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7D,IAAI,OAAoB,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACpE,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QACvC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC7B,MAAM,QAAQ,CAAC;QACf,IAAI,CAAC;YAAC,OAAO,MAAM,MAAM,EAAE,CAAC;QAAC,CAAC;gBACtB,CAAC;YAAC,OAAO,EAAE,CAAC;YAAC,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,IAAI;gBAAE,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAAC,CAAC;IACxF,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,CAAC,QAA+B,EAAiB,EAAE;QACpE,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,OAAO,KAAK,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC;QACnG,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IACF,MAAM,gBAAgB,GAAG,CAAC,IAAe,EAA0B,EAAE;QACnE,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,IAAI,OAAO,CAAC,mBAAmB,CAAC;QACzJ,OAAO,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;IACrI,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,KAAK,EAAE,MAAoB,EAAE,KAAqB,EAAE,aAAa,GAA6B,EAAE,EAAqB,EAAE;QACtI,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;QAC5G,MAAM,KAAK,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;QACnL,MAAM,MAAM,GAAG,IAAI,GAAG,EAAyB,CAAC;QAChD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3F,MAAM,eAAe,GAAG,IAAI,GAAG,EAA+B,CAAC;QAC/D,MAAM,OAAO,GAAG,CAAC,KAAoB,EAAQ,EAAE;YAC7C,IAAI,KAAK,CAAC,YAAY,KAAK,OAAO,CAAC,YAAY;gBAAE,MAAM,IAAI,KAAK,CAAC,4GAA4G,CAAC,CAAC;YAC/K,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,4DAA4D,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;YAC9I,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YACxC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,UAAU,KAAK,KAAK,CAAC,UAAU;gBAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;YAC/I,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;QAChC,CAAC,CAAC;QACF,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE,CAAC;YAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAAC,CAAC;QAC9F,KAAK,MAAM,OAAO,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YACnF,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;YAC3C,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,CAAC,QAAgB,EAAE,KAAoB,EAAE,OAAe,EAAQ,EAAE;gBAC7E,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACxI,CAAC,CAAC;YACF,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;YAC9G,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,KAAK,OAAO,CAAC,YAAY,EAAE,CAAC;oBACzD,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,KAAK,EAAE,wDAAwD,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;oBACtH,SAAS;gBACX,CAAC;gBACD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBAAE,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC,KAAK,EAAE,wCAAwC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;YAClM,CAAC;QACH,CAAC;QACD,KAAK,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,eAAe,EAAE,CAAC;YACpD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACjD,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,QAAQ;gBAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC;oBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;YACrH,gBAAgB,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC5D,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IACnC,CAAC,CAAC;IACF,MAAM,YAAY,GAAG,KAAK,EAAE,MAAmB,EAA8B,EAAE;QAC7E,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACxG,MAAM,MAAM,GAAG,IAAI,GAAG,EAAgB,CAAC;QACvC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YACtD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;YACnI,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;YAC9F,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;YAC7B,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,MAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAC9I,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,MAAM,cAAc,GAAG,KAAK,EAAE,IAAe,EAAE,QAA+B,EAAE,UAAgB,EAAE,MAAmB,EAAiB,EAAE;QACtI,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,MAAO,CAAC;QAC7C,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAChI,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAkB,CAAC,CAAC,CAAC,WAAoB,CAAC;QACxF,MAAM,eAAe,GAAG,QAAQ,CAAC,aAAa,EAAE,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;QAC5E,IAAI,MAAM,CAAC,KAAK,KAAK,KAAK,IAAI,MAAM,CAAC,eAAe,KAAK,eAAe,IAAI,MAAM,CAAC,KAAK,EAAE,OAAO,KAAK,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,KAAK,KAAK,CAAC,WAAW,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAAE,OAAO;QACtN,IAAI,CAAC;YAAC,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE,MAAM,CAAC,CAAC;QAAC,CAAC;QAC3F,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,sFAAsF,EAAE,KAAK,EAAE,CAAC,CAAC;QAAC,CAAC;IACpN,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,CAAC,QAAuB,EAAE,MAA8C,EAAE,QAAiB,EAAQ,EAAE;QACpH,MAAM,WAAW,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClC,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;YAAE,OAAO;QAClC,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;QACvD,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QACjG,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAC7E,IAAI,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC;gBAAE,OAAO;YAChD,IAAI,CAAC,QAAQ;gBAAE,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/E,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC7C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,EAAE,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,2EAA2E,CAAC,CAAC,CAAC,qEAAqE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7R,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,GAAG,EAAE,CAAC;YAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAAC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxH,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAC7B,CAAC,CAAC;IACF,MAAM,kBAAkB,GAAG,CAAC,KAAoB,EAAE,IAAsD,EAAoB,EAAE;QAC5H,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC/B,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,KAAK,KAAK,CAAC,YAAY,CAAC;YAAE,OAAO,IAAI,CAAC;QAC9K,MAAM,KAAK,GAAG,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,aAAa,EAAE,KAAK,CAAC;QACvD,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,GAAG,CAAC,KAAK,CAAC,0FAA0F,CAAC,CAAC;QAC/K,2EAA2E;QAC3E,OAAO,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,KAAK,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACnL,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,KAAK,EAAE,KAAoB,EAAE,cAAuB,EAAE,MAAoB,EAAiB,EAAE;QAC9G,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;YAC7G,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,EAAE,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;YACzE,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;YACtJ,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,cAAc,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;oBAAE,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBACjG,OAAO;YACT,CAAC;YACD,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QACzH,CAAC;IACH,CAAC,CAAC;IACF,MAAM,cAAc,GAAG,GAAS,EAAE;QAChC,KAAK,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;YAC1C,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;gBAAE,SAAS;YACpC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAClH,CAAC;IACH,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,KAAK,EAAE,IAAe,EAAE,UAAgB,EAAE,MAAmB,EAAiB,EAAE;QAC7F,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAAE,OAAO;QAClC,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QAC5D,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,MAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,IAAI,UAAU,CAAC,UAAU,CAAC,MAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;QAC5O,MAAM,KAAK,GAAmB,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;QAChH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAE,CAAC;QAC5C,MAAM,cAAc,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC7D,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,CAAC,SAAmB,EAAU,EAAE,CAAC,IAAI,GAAG,CAAC;QACxD,GAAG,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChL,GAAG,MAAM,CAAC,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACzF,CAAC,CAAC,IAAI,CAAC;IACR,MAAM,iBAAiB,GAAG,CAAC,IAAe,EAAE,MAA+B,EAAW,EAAE,CACtF,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC;WACnL,CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9N,MAAM,QAAQ,GAAG,CAAC,IAAe,EAAE,UAAgB,EAAQ,EAAE;QAC3D,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAAE,OAAO;QACzD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,aAAa;YAAE,OAAO;QACzD,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;IACtE,CAAC,CAAC;IACF,MAAM,SAAS,GAAG,KAAK,IAAmB,EAAE;QAC1C,cAAc,EAAE,CAAC;QACjB,MAAM,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,CAAC;QACnD,sFAAsF;QACtF,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAE,CAAC;YACxD,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAAE,SAAS;YACxC,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5C,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,QAAQ;gBAAE,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC,CAAC;YAC5I,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;QACD,MAAM,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,YAAY,CAAC,CAAC;QAC5F,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,YAAY,CAAC,CAAC;QAClH,MAAM,WAAW,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QACzI,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;YAChC,IAAI,KAAK,CAAC,YAAY,KAAK,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAAE,SAAS;YACnI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;QAChC,CAAC;QACD,cAAc,EAAE,CAAC;QACjB,KAAK,MAAM,UAAU,IAAI,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;YAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,CAAE,CAAC;YACpF,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,WAAW,CAAC;gBAAE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QACvG,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,SAAS,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1I,KAAK,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YACpD,IAAI,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC;gBAAE,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QACvG,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAE,CAAC;YACxD,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAAE,SAAS;YACxC,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/C,IAAI,KAAK,KAAK,SAAS;gBAAE,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;iBAClD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAAE,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACpE,CAAC;QACD,cAAc,EAAE,CAAC;QACjB,KAAK,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,IAAI,SAAS,EAAE,CAAC;YAClD,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,CAAE,CAAC;YAClF,IAAI,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;gBAC5H,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBAC1C,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QAC9C,OAAO,QAAQ,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,aAAa,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1E,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;gBAClD,MAAM,OAAO,GAAG,QAAQ,CAAC,kBAAkB,GAAG,QAAQ,CAAC,MAAM,CAAE,CAAC;gBAChE,kBAAkB,GAAG,CAAC,kBAAkB,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;gBAChE,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBACvM,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACtH,IAAI,KAAK,KAAK,SAAS;oBAAE,SAAS;gBAClC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAE,CAAC,CAAC;gBACxE,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM;YACR,CAAC;YACD,IAAI,CAAC,OAAO;gBAAE,MAAM;QACtB,CAAC;QACD,IAAI,QAAQ,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC9F,MAAM,UAAU,GAAG,IAAI,GAAG,EAAgC,CAAC;QAC3D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACpC,IAAI,CAAC;YACH,OAAO,QAAQ,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,aAAa,IAAI,SAAS,CAAC,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;gBACnG,MAAM,KAAK,GAAG,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC;gBAC3D,cAAc,GAAG,CAAC,cAAc,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC;gBACpE,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;oBAAE,SAAS;gBACnC,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,KAAK,CAAE,CAAC;gBAChD,IAAI,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACvB,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;oBAC/F,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC9B,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC/B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;oBAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBAAC,SAAS;gBAAC,CAAC;gBAClD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;gBAC7B,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;gBAC7B,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC;oBACpO,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;oBACzD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,MAAO,CAAC,KAAK,EAAE,CAAC,CAAC;oBACnK,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,aAAa;wBAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;gBAChK,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,oBAAoB,CAAC,KAAK,EAAE,YAAY,CAAC;wBAAE,MAAM,KAAK,CAAC;oBAC3D,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,qBAAqB,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,EAAE,IAAI,OAAO,0EAA0E,EAAE,KAAK,EAAE,CAAC,CAAC;oBACjM,OAAO;gBACT,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACpF,CAAC;IACH,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,KAAK,EAAE,QAAuB,EAAwE,EAAE;QACzH,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QAChH,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACpG,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC;QAC5C,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,KAAK,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC3M,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC;IACpF,CAAC,CAAC;IACF,OAAO;QACL,IAAI,EAAE,KAAK,IAAmB,EAAE;YAC9B,IAAI,YAAY,IAAI,OAAO;gBAAE,OAAO;YACpC,OAAO,GAAG,IAAI,CAAC;YACf,IAAI,CAAC;gBAAC,MAAM,SAAS,EAAE,CAAC;YAAC,CAAC;oBAAS,CAAC;gBAAC,OAAO,GAAG,KAAK,CAAC;YAAC,CAAC;QACzD,CAAC;QACD,YAAY,EAAE,KAAK,EAAE,QAAuB,EAAiB,EAAE;YAC7D,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;YACxD,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,sFAAsF,CAAC,CAAC;YACtI,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/B,MAAM,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,YAAY,CAAC,CAAC;YAC5F,MAAM,SAAS,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;QAC1E,CAAC;QACD,aAAa,EAAE,KAAK,EAAE,QAAuB,EAAE,QAAQ,GAAiC,EAAE,EAA0B,EAAE;YACpH,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;YAC7C,MAAM,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,YAAY,CAAC,CAAC;YAC5F,MAAM,SAAS,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,cAAc,KAAK,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;YACnG,OAAO,KAAK,CAAC;QACf,CAAC;QACD,cAAc,EAAE,KAAK,EAAE,KAAoB,EAAiB,EAAE;YAC5D,MAAM,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,YAAY,CAAC,CAAC;YAC5F,MAAM,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;QACtE,CAAC;QACD,QAAQ,EAAE,KAAK,IAAsB,EAAE;YACrC,YAAY,GAAG,IAAI,CAAC;YACpB,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,MAAM,EAAE;gBAAE,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC;YAC9G,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACjC,IAAI,QAAQ,GAAG,IAAI,CAAC;YACpB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;YAC/B,KAAK,MAAM,EAAE,OAAO,EAAE,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC;gBAC7D,IAAI,OAAO,CAAC,YAAY,KAAK,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;oBAChG,QAAQ,GAAG,KAAK,CAAC;oBACjB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,4CAA4C,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;gBAC3J,CAAC;;oBAAM,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;YAC3C,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;gBACtG,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;oBACnC,IAAI,SAAS,CAAC,KAAK,CAAC,YAAY,KAAK,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;wBAChH,QAAQ,GAAG,KAAK,CAAC;wBACjB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,0CAA0C,SAAS,CAAC,KAAK,CAAC,SAAS,IAAI,SAAS,CAAC,KAAK,CAAC,MAAM,IAAI,SAAS,CAAC,KAAK,CAAC,OAAO,sFAAsF,EAAE,CAAC,CAAC;oBACpQ,CAAC;;wBAAM,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,QAAQ,GAAG,KAAK,CAAC;gBACjB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,gEAAgE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC7H,CAAC;YACD,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBACnE,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;oBACrD,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,SAAS,CAAC,MAAM;wBAAE,IAAI,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;4BAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACpH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,QAAQ,GAAG,KAAK,CAAC;oBACjB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,gDAAgD,OAAO,CAAC,SAAS,mBAAmB,EAAE,KAAK,EAAE,CAAC,CAAC;gBACjJ,CAAC;YACH,CAAC,CAAC,CAAC,CAAC;YACJ,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACzD,IAAI,CAAC;oBACH,MAAM,SAAS,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;wBAChC,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;4BAC1C,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;4BACpG,kBAAkB,CAAC,KAAK,EAAE,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;wBAC7D,CAAC;wBACD,MAAM,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;wBACrC,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;wBACrG,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;wBAC9C,IAAI,IAAI,KAAK,SAAS;4BAAE,OAAO;wBAC/B,MAAM,OAAO,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;wBAClH,MAAM,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;oBAC3G,CAAC,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO,KAAK,EAAE,CAAC;oBAAC,QAAQ,GAAG,KAAK,CAAC;oBAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAE,EAAE,CAAC,EAAE,OAAO,EAAE,6CAA6C,EAAE,KAAK,EAAE,CAAC,CAAC;gBAAC,CAAC;YACzO,CAAC,CAAC,CAAC,CAAC;YACJ,OAAO,QAAQ,CAAC;QAClB,CAAC;KACF,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"coordinator.js","sourceRoot":"","sources":["../../../src/commands/worker/coordinator.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,11 @@ export const workerDefinition = {
22
22
  description: "Attach an interactive terminal to the running worker's Herdr session",
23
23
  options: [help],
24
24
  details: "Connect to the existing private worker Herdr session. Start it with daynight worker run first. Requires an interactive terminal. Detaching leaves the worker and its agents running.",
25
+ }, {
26
+ name: "migrate-workspaces",
27
+ description: "Migrate retained worker workspaces to stable identities and task titles",
28
+ options: [{ names: ["--rollback"], description: "Restore the verified backup of an interrupted workspace migration" }, help],
29
+ details: "Stop worker run first. Take the exclusive worker lock and validate the original service, claims, native session IDs and Git ownership.\nBack up retained state, close the old Herdr workspaces without starting native agents, and migrate Git ownership markers.\nThe next worker run resumes the original native sessions and worktrees with task titles in workspace names.\nAn interrupted migration blocks normal startup until migration or verified rollback completes. Herdr workspace IDs and terminal scrollback are replaced; native conversation history is retained.",
25
30
  }, {
26
31
  name: "repo",
27
32
  description: "Manage repositories selected from existing Daynight Projects",
@@ -46,7 +51,7 @@ export const workerDefinition = {
46
51
  description: "Attempt recovery once for an active original claim",
47
52
  arguments: task,
48
53
  options: [claim, project, help],
49
- details: "Stop worker run first. Attempt one reconnection or recovery for the active claim under the same exclusive lock. Keep its recorded agent and native session ID, using current applicable settings. A missing session ID logs a warning and starts a fresh conversation. Pending claims use normal run scheduling.",
54
+ details: "Stop worker run first. Attempt one reconnection or recovery for the active claim under the same exclusive lock. Keep its recorded agent and native session ID, using current applicable settings. A NULL session ID logs an informational message and starts a fresh conversation. Pending claims use normal run scheduling.",
50
55
  }, {
51
56
  name: "release",
52
57
  description: "Clean the original execution and release its claim to todo",
@@ -1 +1 @@
1
- {"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../src/commands/worker/definition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../src/commands/worker/definition.ts"],"names":[],"mappings":"AAEA,MAAM,IAAI,GAAkB,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AACvG,MAAM,KAAK,GAAkB,EAAE,KAAK,EAAE,CAAC,YAAY,CAAC,EAAE,WAAW,EAAE,uCAAuC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACxK,MAAM,OAAO,GAAkB,EAAE,KAAK,EAAE,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,wCAAwC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;AAC5J,MAAM,OAAO,GAAkB,EAAE,KAAK,EAAE,CAAC,cAAc,CAAC,EAAE,WAAW,EAAE,wCAAwC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5K,MAAM,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;AAC7D,MAAM,cAAc,GAAG,0aAA0a,CAAC;AAElc,MAAM,CAAC,MAAM,gBAAgB,GAAsB;IACjD,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,kEAAkE;IAC/E,QAAQ,EAAE,CAAC;YACT,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,wEAAwE;YACrF,OAAO,EAAE,CAAC,IAAI,CAAC;YACf,OAAO,EAAE,yhBAAyhB;SACniB,EAAE;YACD,IAAI,EAAE,KAAK;YACX,WAAW,EAAE,kDAAkD;YAC/D,OAAO,EAAE,CAAC,IAAI,CAAC;YACf,OAAO,EAAE,oaAAoa;SAC9a,EAAE;YACD,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,sEAAsE;YACnF,OAAO,EAAE,CAAC,IAAI,CAAC;YACf,OAAO,EAAE,sLAAsL;SAChM,EAAE;YACD,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,yEAAyE;YACtF,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,YAAY,CAAC,EAAE,WAAW,EAAE,mEAAmE,EAAE,EAAE,IAAI,CAAC;YAC5H,OAAO,EAAE,mjBAAmjB;SAC7jB,EAAE;YACD,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,8DAA8D;YAC3E,QAAQ,EAAE,CAAC;oBACT,IAAI,EAAE,MAAM;oBACZ,WAAW,EAAE,qCAAqC;oBAClD,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,+CAA+C,EAAE,EAAE,IAAI,CAAC;iBACrG,EAAE;oBACD,IAAI,EAAE,KAAK;oBACX,WAAW,EAAE,6DAA6D;oBAC1E,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,wDAAwD,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC;oBAC7J,OAAO,EAAE,4OAA4O;iBACtP,EAAE;oBACD,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,+DAA+D;oBAC5E,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,2DAA2D,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC;oBAChK,OAAO,EAAE,+LAA+L;iBACzM,CAAC;YACF,OAAO,EAAE,CAAC,IAAI,CAAC;SAChB,EAAE;YACD,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,oDAAoD;YACjE,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC;YAC/B,OAAO,EAAE,8TAA8T;SACxU,EAAE;YACD,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,4DAA4D;YACzE,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;YACxC,OAAO,EAAE,GAAG,cAAc,6DAA6D;SACxF,EAAE;YACD,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,2DAA2D;YACxE,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;YACxC,OAAO,EAAE,6cAA6c;SACvd,CAAC;IACF,OAAO,EAAE,CAAC,IAAI,CAAC;IACf,OAAO,EAAE,mIAAmI;CAC7I,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { appendFile, mkdir } from "node:fs/promises";
2
2
  import path from "node:path";
3
+ const abbreviateGuids = (value) => value.replace(/\b([0-9a-f]{8})-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/gi, "$1");
3
4
  export const createWorkerDiagnostics = async (options) => {
4
5
  await mkdir(options.paths.logsDirectory, { recursive: true, mode: 0o700 });
5
6
  const filename = path.join(options.paths.logsDirectory, `worker-${new Date().toISOString().slice(0, 10)}.jsonl`);
@@ -38,7 +39,7 @@ export const createWorkerDiagnostics = async (options) => {
38
39
  if (failed === undefined)
39
40
  pending = pending.then(() => appendFile(filename, `${serialized}\n`, { mode: 0o600 })).catch((cause) => { failed = cause; });
40
41
  try {
41
- options.log?.(`${record.timestamp} ${record.kind}${task === undefined ? "" : ` ${task.projectId}/${task.taskId}/${task.claimId} ${task.status}`} ${record.message}${event.error === undefined ? "" : ` ${JSON.stringify(describeError(event.error))}`}\n`);
42
+ options.log?.(abbreviateGuids(redact(`${record.timestamp} ${record.kind}${task === undefined ? "" : ` ${task.projectId}/${task.taskId}/${task.claimId} ${task.status}`} ${record.message}${record.error === undefined ? "" : ` ${JSON.stringify(record.error)}`}\n`)));
42
43
  }
43
44
  catch (cause) {
44
45
  if (failed === undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/commands/worker/diagnostics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/commands/worker/diagnostics.ts"],"names":[],"mappings":"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"}