@cotal-ai/cli 0.139.0 → 0.140.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.
@@ -4,7 +4,7 @@ import { credentialEnded } from "../lib/connect.js";
4
4
  import { shownTime } from "../lib/shown-time.js";
5
5
  import { c } from "../ui.js";
6
6
  import { historyClear } from "./history-clear.js";
7
- import { historyLimit, historyLimitRequest } from "./history-limit.js";
7
+ import { HISTORY_LIMIT_FLAGS, historyLimit, historyLimitRequest } from "./history-limit.js";
8
8
  import { declaredFrom } from "./send.js";
9
9
  import { completingFlagValue, positionalsForCompletion } from "../lib/completion.js";
10
10
  import { listDeclaredChannels } from "../lib/personas.js";
@@ -21,12 +21,16 @@ const limitFlag = { name: "limit", type: "string", value: "<n>", description: "h
21
21
  const fromFlag = { name: "from", type: "string", value: "<name>", description: "keep messages from this sender name or id (filters the window)" };
22
22
  const grepFlag = { name: "grep", type: "string", value: "<text>", description: "keep messages whose text contains this, case-insensitive (filters the window)" };
23
23
  const followFlag = { name: "follow", type: "boolean", description: "keep listening and print each new message (NDJSON with --json)" };
24
- const maxAgeFlag = { name: "max-age", type: "string", value: "<age>", description: "limit: delete a channel post once it is older than this, such as 30d or 12h (at least 2m)" };
25
- const perSenderFlag = { name: "per-sender", type: "string", value: "<n>", description: "limit: keep this many of each sender's newest posts on each channel" };
26
- export const historyFlags = [...targetFlags, dmsFlag, forceFlag, yesFlag, dryRunFlag, sinceFlag, limitFlag, fromFlag, grepFlag, followFlag, maxAgeFlag, perSenderFlag, jsonFlag, plainFlag];
24
+ const maxAgeFlag = { name: "max-age", type: "string", value: "<age|none>", description: "limit: delete a channel post once it is older than this, such as 30d or 12h (at least 2m), or none" };
25
+ const perSenderFlag = { name: "per-sender", type: "string", value: "<n|none>", description: "limit: keep this many of each sender's newest posts on each channel, or none" };
26
+ const inboxMaxAgeFlag = { name: "inbox-max-age", type: "string", value: "<age|none>", description: "limit: delete an agent's stored copy of a channel post once it is older than this (at least 2h), or none" };
27
+ const inboxPerAgentFlag = { name: "inbox-per-agent", type: "string", value: "<n|none>", description: "limit: keep this many of each agent's newest stored copies, or none" };
28
+ const dmMaxAgeFlag = { name: "dm-max-age", type: "string", value: "<age|none>", description: "limit: delete a DM once it is older than this (at least 2m), or none" };
29
+ const dmPerSenderFlag = { name: "dm-per-sender", type: "string", value: "<n|none>", description: "limit: keep this many of each sender's newest DMs to each agent, or none" };
30
+ export const historyFlags = [...targetFlags, dmsFlag, forceFlag, yesFlag, dryRunFlag, sinceFlag, limitFlag, fromFlag, grepFlag, followFlag, maxAgeFlag, perSenderFlag, inboxMaxAgeFlag, inboxPerAgentFlag, dmMaxAgeFlag, dmPerSenderFlag, jsonFlag, plainFlag];
27
31
  export const historySubcommands = [
28
32
  { name: "clear", flagNames: ["space", "server", "creds", "dms", "yes", "dry-run", "json", "plain"], summary: "confirm and purge all retained channel history in the space it targets", examples: [{ command: "cotal history clear --dry-run", note: "show what clearing history would delete" }, { command: "cotal history clear --yes", note: "delete the retained channel history" }], usage: "cotal history clear [--dms] [-y|--yes|--dry-run] [--json|--plain]", outputs: ["json", "plain"], prepareMeshTarget: false },
29
- { name: "limit", flagNames: ["space", "max-age", "per-sender", "yes", "json", "plain"], summary: "set how long the space keeps channel posts, by age and per sender; run it from the space root on the broker host", examples: [{ command: "cotal history limit --max-age 7d", note: "delete channel posts once they are a week old" }, { command: "cotal history limit --per-sender 500 --yes", note: "keep each sender's newest 500 posts on each channel, without a prompt" }], usage: "cotal history limit [--max-age <age>] [--per-sender <n>] [-y|--yes] [--json|--plain]", outputs: ["json", "plain"], prepareMeshTarget: false },
33
+ { name: "limit", flagNames: ["space", "max-age", "per-sender", "inbox-max-age", "inbox-per-agent", "dm-max-age", "dm-per-sender", "yes", "json", "plain"], summary: "show or set how long the space keeps channel posts, stored copies and DMs, by age and count; run it from the space root on the broker host", examples: [{ command: "cotal history limit", note: "show the limits the space holds" }, { command: "cotal history limit --max-age 7d", note: "delete channel posts once they are a week old" }, { command: "cotal history limit --per-sender 500 --yes", note: "keep each sender's newest 500 posts on each channel, without a prompt" }, { command: "cotal history limit --inbox-per-agent 5000", note: "keep each agent's newest 5000 stored copies" }, { command: "cotal history limit --dm-max-age 90d", note: "delete DMs once they are 90 days old" }], usage: "cotal history limit [--max-age <age|none>] [--per-sender <n|none>] [--inbox-max-age <age|none>] [--inbox-per-agent <n|none>] [--dm-max-age <age|none>] [--dm-per-sender <n|none>] [-y|--yes] [--json|--plain]", outputs: ["json", "plain"], prepareMeshTarget: false },
30
34
  ];
31
35
  /** Complete the subcommands and the channels the target space's personas declare, as `send -c` offers, then
32
36
  * the flags. */
@@ -181,20 +185,20 @@ export function validateHistoryArguments(args) {
181
185
  throw usage("history clear takes no channel; it clears all retained channel history in the space it targets");
182
186
  if (["since", "limit", "from", "grep", "follow"].some((flag) => values[flag] !== undefined))
183
187
  throw usage("history clear accepts no read-window or follow flags; use a separate history read");
184
- if (values["max-age"] !== undefined || values["per-sender"] !== undefined)
185
- throw usage("--max-age and --per-sender belong to history limit");
188
+ if (HISTORY_LIMIT_FLAGS.some((flag) => values[flag] !== undefined))
189
+ throw usage("the limit flags such as --max-age belong to history limit");
186
190
  return;
187
191
  }
188
192
  if (args.positionals[0] === "limit") {
189
193
  if (args.positionals.length !== 1)
190
194
  throw usage("history limit takes no channel; one limit holds for every channel in the space");
191
195
  if (["server", "creds", "dms", "dry-run", "since", "limit", "from", "grep", "follow"].some((flag) => values[flag] !== undefined))
192
- throw usage("history limit takes only --max-age, --per-sender, --yes, --space and an output flag; it reaches the broker from the space root");
196
+ throw usage("history limit takes only its limit flags, --yes, --space and an output flag; it reaches the broker from the space root");
193
197
  historyLimitRequest(values);
194
198
  return;
195
199
  }
196
- if (values["max-age"] !== undefined || values["per-sender"] !== undefined)
197
- throw usage("--max-age and --per-sender belong to history limit");
200
+ if (HISTORY_LIMIT_FLAGS.some((flag) => values[flag] !== undefined))
201
+ throw usage("the limit flags such as --max-age belong to history limit");
198
202
  if (values.yes !== undefined || values["dry-run"] !== undefined)
199
203
  throw usage("--yes belongs to history clear and history limit, and --dry-run to history clear");
200
204
  if (args.positionals.length > 1)
@@ -1 +1 @@
1
- {"version":3,"file":"history.js","sourceRoot":"","sources":["../../src/commands/history.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"history.js","sourceRoot":"","sources":["../../src/commands/history.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { type CotalEndpoint } from "@cotal-ai/core";
2
2
  import type { MeshSnapshot, MeshViewOptions } from "@cotal-ai/workspace/view";
3
- export type { FeedEntry, MeshViewOptions, FeedDelivery, MembershipView } from "@cotal-ai/workspace/view";
3
+ export type { FeedEntry, FeedDelivery, MembershipView } from "@cotal-ai/workspace/view";
4
4
  export type MeshState = MeshSnapshot;
5
5
  /** Focusable panes across the console (normal panels + the DM and topology lenses). */
6
6
  export type FocusId = "roster" | "feed" | "needsyou" | "dmpeers" | "dmthread" | "topo";
@@ -1 +1 @@
1
- {"version":3,"file":"mesh.d.ts","sourceRoot":"","sources":["../../src/console/mesh.ts"],"names":[],"mappings":"AAOA,OAAO,EAAW,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAI9E,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACzG,MAAM,MAAM,SAAS,GAAG,YAAY,CAAC;AAErC,uFAAuF;AACvF,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;AAEvF;;;sCAGsC;AACtC,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAM1C;AAED,wBAAgB,OAAO,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,YAAY,CAgB/E"}
1
+ {"version":3,"file":"mesh.d.ts","sourceRoot":"","sources":["../../src/console/mesh.ts"],"names":[],"mappings":"AAOA,OAAO,EAAW,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAI9E,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACxF,MAAM,MAAM,SAAS,GAAG,YAAY,CAAC;AAErC,uFAAuF;AACvF,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;AAEvF;;;sCAGsC;AACtC,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAM1C;AAED,wBAAgB,OAAO,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,YAAY,CAgB/E"}
@@ -1 +1 @@
1
- {"version":3,"file":"restore.d.ts","sourceRoot":"","sources":["../../src/lib/restore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"restore.d.ts","sourceRoot":"","sources":["../../src/lib/restore.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { hostname } from "node:os";
4
4
  import { basename, dirname, isAbsolute, join, relative, resolve } from "node:path";
5
5
  import { jetstreamManager } from "@nats-io/jetstream";
6
6
  import { Kvm } from "@nats-io/kv";
7
- import { canonicalBackupStreamConfig, chatHistoryLimitOf, chatHistoryRestoreStaging, chatStream, consumerConfigFromCheckpoint, deliveryBucket, downloadStreamSnapshot, finalizeStreamRestore, hardenPrivate, initiateStreamRestore, LEASE_TTL_MS, managerBucket, MANAGER_LEASE_TTL_MS, membershipStoreDefinition, PRESENCE_STORAGE, presenceBucket, recordsBucket, recreateConsumerCheckpoint, spaceBackupInventory, uploadStreamRestoreChunk, validateSpaceAuth, validateSpaceBackupInventory, validateBackupStreamState, validateCanonicalBackupStreamConfig, createEndpointStreams, ensureArtifactStore, hardenedAuthorityStreamNames, setChatHistoryLimit, wfjStreamName, } from "@cotal-ai/core";
7
+ import { canonicalBackupStreamConfig, historyLimitOf, historyLimitRestoreStaging, historyLimitStreamOf, consumerConfigFromCheckpoint, deliveryBucket, downloadStreamSnapshot, finalizeStreamRestore, hardenPrivate, initiateStreamRestore, LEASE_TTL_MS, managerBucket, MANAGER_LEASE_TTL_MS, membershipStoreDefinition, PRESENCE_STORAGE, presenceBucket, recordsBucket, recreateConsumerCheckpoint, spaceBackupInventory, uploadStreamRestoreChunk, validateSpaceAuth, validateSpaceBackupInventory, validateBackupStreamState, validateCanonicalBackupStreamConfig, createEndpointStreams, ensureArtifactStore, hardenedAuthorityStreamNames, setHistoryLimit, wfjStreamName, } from "@cotal-ai/core";
8
8
  import { CommandFailure, acquireMaintenanceLock, assessMaintenanceClaim, assessRestoreClaim, bindRestoreListener, bindRestoreTarget, codeSpan, cutController, getSpaceAuth, markRestoreActive, settleTokenHandoff, markRestoreDegraded, moveSamePathRestoreSource, prepareAlternateRestore, prepareMissingSourceRestore, prepareSamePathRestore, localProcessOwnerStatus, parsePositiveIntegerFlag, readMaintenanceJournal, restoreLeftOut, restoreOtherAccounts, restoreReplacedNewerCut, restoreRolledBackRuns, storeAccounts, readMaintenanceResumeDocument, recordRestoreAttemptResources, recordRestoreManagerCommit, replaceDeadRestoreListener, repairRestoreDegradedToActive, releaseMaintenanceLock, shellPath, workspaceSecretStore, writeRestoreCommitIntent, readStoreIdentity, } from "@cotal-ai/workspace";
9
9
  import { ArtifactFileFault, artifactStreams, BACKUP_MANIFEST_FORMAT_V1, missingBackupPath, missingBackupPathText, notAnArtifactRefusal, readStagedCheckpoints, stageArtifact } from "./backup-artifact.js";
10
10
  import { authorityFingerprint } from "./maintenance-files.js";
@@ -314,7 +314,8 @@ async function validateManifest(manifest, flags, ready, currentAuthority) {
314
314
  }
315
315
  }
316
316
  /** Smoke hook: `COTAL_SMOKE_FAIL_RESTORE_STREAM=<stream>` fires on any pass; `<pass>:<stream>`
317
- * fires only on that pass (so the target pass is reachable after quarantine succeeded). */
317
+ * fires only on that pass (so the target pass is reachable after quarantine succeeded), and
318
+ * `age:<stream>` as the restore applies that stream's recorded age. */
318
319
  function smokeFailRestoreStream(pass, stream) {
319
320
  const spec = process.env.COTAL_SMOKE_FAIL_RESTORE_STREAM;
320
321
  if (!spec)
@@ -324,14 +325,15 @@ function smokeFailRestoreStream(pass, stream) {
324
325
  return spec === stream;
325
326
  return spec.slice(0, separator) === pass && spec.slice(separator + 1) === stream;
326
327
  }
327
- /** The chat history limit the backup recorded, when `record` is the chat stream's. Every restore
328
- * check holds that stream at {@link chatHistoryRestoreStaging} of it, which keeps the recorded
329
- * count and sets no age, so nothing expires while the restored state is compared. */
330
- function recordedChatHistory(space, record) {
331
- return record.stream === chatStream(space) ? chatHistoryLimitOf(record.config) : undefined;
328
+ /** The history limit the backup recorded, when `record` is CHAT's, INBOX's, DLV's or DM's. Every
329
+ * restore check holds that stream at {@link historyLimitRestoreStaging} of it, which keeps the
330
+ * recorded count and sets no age, so nothing expires while the restored state is compared. */
331
+ function recordedHistoryLimit(space, record) {
332
+ const kind = historyLimitStreamOf(space, record.stream);
333
+ return kind && { kind, limit: historyLimitOf(record.config) };
332
334
  }
333
335
  async function restoreStream(broker, space, snapshotDir, pass, stream) {
334
- const recorded = recordedChatHistory(space, stream);
336
+ const recorded = recordedHistoryLimit(space, stream);
335
337
  const initLogin = await broker.addLogin({
336
338
  profile: "restore",
337
339
  scope: { operation: "initiate", stream: stream.stream },
@@ -339,7 +341,7 @@ async function restoreStream(broker, space, snapshotDir, pass, stream) {
339
341
  const init = await connectIsolatedBroker(broker, initLogin);
340
342
  let session;
341
343
  try {
342
- session = await initiateStreamRestore(init, space, stream.stream, canonicalBackupStreamConfig(space, stream.stream, recorded && chatHistoryRestoreStaging(recorded)), stream.state, RESTORE_TIMEOUT_MS);
344
+ session = await initiateStreamRestore(init, space, stream.stream, canonicalBackupStreamConfig(space, stream.stream, recorded && historyLimitRestoreStaging(recorded.kind, recorded.limit)), stream.state, RESTORE_TIMEOUT_MS);
343
345
  }
344
346
  finally {
345
347
  await init.drain().catch(() => { });
@@ -361,7 +363,7 @@ async function restoreStream(broker, space, snapshotDir, pass, stream) {
361
363
  await uploadStreamRestoreChunk(upload, session, buffer.subarray(0, count), RESTORE_TIMEOUT_MS);
362
364
  }
363
365
  const restored = await finalizeStreamRestore(upload, session, RESTORE_TIMEOUT_MS);
364
- validateCanonicalBackupStreamConfig(space, stream.stream, restored.config, { restoreStagingFor: recorded });
366
+ validateCanonicalBackupStreamConfig(space, stream.stream, restored.config, { restoreStagingFor: recorded?.limit });
365
367
  assertRestoredState(stream.stream, stream.state, restored.state);
366
368
  }
367
369
  finally {
@@ -399,7 +401,7 @@ async function sanitizeStreamSnapshot(broker, space, stream, destination) {
399
401
  }
400
402
  },
401
403
  });
402
- validateCanonicalBackupStreamConfig(space, stream.stream, metadata.config, { restoreStagingFor: recordedChatHistory(space, stream) });
404
+ validateCanonicalBackupStreamConfig(space, stream.stream, metadata.config, { restoreStagingFor: recordedHistoryLimit(space, stream)?.limit });
403
405
  assertRestoredState(stream.stream, stream.state, metadata.state);
404
406
  fsyncSync(fd);
405
407
  }
@@ -421,7 +423,7 @@ async function validateRestoredStream(broker, space, record, expectedConsumers)
421
423
  throw new Error(info.error.description ?? `${record.stream} validation failed`);
422
424
  if (!info.config || !info.state)
423
425
  throw new Error(`${record.stream} validation returned an incomplete response`);
424
- validateCanonicalBackupStreamConfig(space, record.stream, info.config, { restoreStagingFor: recordedChatHistory(space, record) });
426
+ validateCanonicalBackupStreamConfig(space, record.stream, info.config, { restoreStagingFor: recordedHistoryLimit(space, record)?.limit });
425
427
  assertRestoredState(record.stream, record.state, info.state);
426
428
  if (info.state.consumer_count !== expectedConsumers)
427
429
  throw new Error(`${record.stream} has ${info.state.consumer_count} consumers after restore; expected ${expectedConsumers}`);
@@ -430,20 +432,21 @@ async function validateRestoredStream(broker, space, record, expectedConsumers)
430
432
  await nc.drain().catch(() => { });
431
433
  }
432
434
  }
433
- /** Give the restored chat stream the age the backup recorded, after the target's last check, and
434
- * read it back; a failure fails the restore. No full-state comparison runs after it, since the
435
- * broker may expire posts as soon as it lands. A process that dies before this write leaves the
436
- * target at age 0, before commit intent, so the attempt rolls back with it. The login reaches the
437
- * chat stream alone. */
438
- async function applyRecordedChatAge(broker, space, record) {
439
- const recorded = chatHistoryLimitOf(record.config);
440
- if (recorded.maxAgeMs === 0)
435
+ /** Give a restored CHAT, INBOX, DLV or DM stream the age the backup recorded, after the target's last
436
+ * check, and read it back; a failure fails the restore. No full-state comparison runs after it,
437
+ * since the broker may expire entries as soon as it lands. A process that dies before this write
438
+ * leaves the target at age 0, before commit intent, so the attempt rolls back with it. Each login
439
+ * reaches its one stream alone and only updates it. */
440
+ async function applyRecordedAge(broker, space, record) {
441
+ const recorded = recordedHistoryLimit(space, record);
442
+ if (!recorded || recorded.limit.maxAgeMs === 0)
441
443
  return;
442
- const stream = chatStream(space);
443
- const login = await broker.addLogin({ profile: "infrastructure", streams: [stream], updateStreams: [stream] });
444
+ if (smokeFailRestoreStream("age", record.stream))
445
+ throw new Error(`smoke-injected failure applying the recorded age of ${record.stream}`);
446
+ const login = await broker.addLogin({ profile: "infrastructure", streams: [record.stream], updateStreams: [record.stream] });
444
447
  const nc = await connectIsolatedBroker(broker, login);
445
448
  try {
446
- await setChatHistoryLimit(await jetstreamManager(nc), space, recorded, chatHistoryRestoreStaging(recorded));
449
+ await setHistoryLimit(await jetstreamManager(nc), space, recorded.kind, recorded.limit, historyLimitRestoreStaging(recorded.kind, recorded.limit));
447
450
  }
448
451
  finally {
449
452
  await nc.drain().catch(() => { });
@@ -1051,9 +1054,9 @@ export async function prepareRestore(root, flags, progress) {
1051
1054
  // journals of both stores: the restored one here, the set-aside one from a private clone.
1052
1055
  const previousCutNewer = sourceExists && Date.parse(journal.cut.intentAt) > Date.parse(artifact.manifest.createdAt);
1053
1056
  const restoredRuns = previousCutNewer && wanted.includes(wfjStreamName(journal.space)) ? await readRunJournals(broker, journal.space) : undefined;
1054
- const chatRecord = artifact.manifest.streams.find((entry) => entry.stream === chatStream(journal.space));
1055
- if (chatRecord && wanted.includes(chatRecord.stream))
1056
- await applyRecordedChatAge(broker, journal.space, chatRecord);
1057
+ for (const record of artifact.manifest.streams)
1058
+ if (wanted.includes(record.stream))
1059
+ await applyRecordedAge(broker, journal.space, record);
1057
1060
  await broker.stop();
1058
1061
  broker = undefined;
1059
1062
  const previousStore = restoredRuns ? readMaintenanceJournal(root)?.restore.previousSource?.identity.path : undefined;