cotal-ai 0.92.0 → 0.92.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cotal-ai",
3
- "version": "0.92.0",
3
+ "version": "0.92.1",
4
4
  "description": "Cotal — lateral agent coordination over NATS. Run `npx cotal-ai` for the CLI.",
5
5
  "license": "Apache-2.0",
6
6
  "keywords": [
@@ -33,25 +33,25 @@
33
33
  "node": ">=22"
34
34
  },
35
35
  "dependencies": {
36
- "@cotal-ai/auth": "0.92.0",
37
- "@cotal-ai/cli": "0.92.0",
38
- "@cotal-ai/connector-core": "0.92.0",
39
- "@cotal-ai/core": "0.92.0",
40
- "@cotal-ai/delivery": "0.92.0",
41
- "@cotal-ai/manager": "0.92.0",
42
- "@cotal-ai/runtime": "0.92.0",
43
- "@cotal-ai/workspace": "0.92.0"
36
+ "@cotal-ai/auth": "0.92.1",
37
+ "@cotal-ai/cli": "0.92.1",
38
+ "@cotal-ai/connector-core": "0.92.1",
39
+ "@cotal-ai/core": "0.92.1",
40
+ "@cotal-ai/delivery": "0.92.1",
41
+ "@cotal-ai/manager": "0.92.1",
42
+ "@cotal-ai/runtime": "0.92.1",
43
+ "@cotal-ai/workspace": "0.92.1"
44
44
  },
45
45
  "devDependencies": {
46
- "@cotal-ai/connector-claude-code": "0.92.0",
47
- "@cotal-ai/connector-codex": "0.92.0",
48
- "@cotal-ai/connector-hermes": "0.92.0",
49
- "@cotal-ai/connector-jcode": "0.92.0",
50
- "@cotal-ai/connector-opencode": "0.92.0",
51
- "@cotal-ai/linear": "0.92.0",
52
- "@cotal-ai/pi": "0.92.0",
46
+ "@cotal-ai/connector-claude-code": "0.92.1",
47
+ "@cotal-ai/connector-codex": "0.92.1",
48
+ "@cotal-ai/connector-hermes": "0.92.1",
49
+ "@cotal-ai/connector-jcode": "0.92.1",
50
+ "@cotal-ai/connector-opencode": "0.92.1",
51
+ "@cotal-ai/linear": "0.92.1",
52
+ "@cotal-ai/pi": "0.92.1",
53
53
  "@cotal-ai/smoke-kit": "0.0.0",
54
- "@cotal-ai/web": "0.92.0",
54
+ "@cotal-ai/web": "0.92.1",
55
55
  "@nats-io/jetstream": "^3.4.0",
56
56
  "@nats-io/transport-node": "^3.4.0",
57
57
  "typescript": "^5.9.3"
@@ -6567,9 +6567,9 @@ var require_ajv = __commonJS({
6567
6567
  }
6568
6568
  });
6569
6569
 
6570
- // ../../node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.20.0/node_modules/ajv-formats/dist/formats.js
6570
+ // ../../node_modules/.pnpm/ajv-formats@3.0.1/node_modules/ajv-formats/dist/formats.js
6571
6571
  var require_formats = __commonJS({
6572
- "../../node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.20.0/node_modules/ajv-formats/dist/formats.js"(exports) {
6572
+ "../../node_modules/.pnpm/ajv-formats@3.0.1/node_modules/ajv-formats/dist/formats.js"(exports) {
6573
6573
  "use strict";
6574
6574
  Object.defineProperty(exports, "__esModule", { value: true });
6575
6575
  exports.formatNames = exports.fastFormats = exports.fullFormats = void 0;
@@ -6770,9 +6770,9 @@ var require_formats = __commonJS({
6770
6770
  }
6771
6771
  });
6772
6772
 
6773
- // ../../node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.20.0/node_modules/ajv-formats/dist/limit.js
6773
+ // ../../node_modules/.pnpm/ajv-formats@3.0.1/node_modules/ajv-formats/dist/limit.js
6774
6774
  var require_limit = __commonJS({
6775
- "../../node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.20.0/node_modules/ajv-formats/dist/limit.js"(exports) {
6775
+ "../../node_modules/.pnpm/ajv-formats@3.0.1/node_modules/ajv-formats/dist/limit.js"(exports) {
6776
6776
  "use strict";
6777
6777
  Object.defineProperty(exports, "__esModule", { value: true });
6778
6778
  exports.formatLimitDefinition = void 0;
@@ -6842,9 +6842,9 @@ var require_limit = __commonJS({
6842
6842
  }
6843
6843
  });
6844
6844
 
6845
- // ../../node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.20.0/node_modules/ajv-formats/dist/index.js
6845
+ // ../../node_modules/.pnpm/ajv-formats@3.0.1/node_modules/ajv-formats/dist/index.js
6846
6846
  var require_dist = __commonJS({
6847
- "../../node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.20.0/node_modules/ajv-formats/dist/index.js"(exports, module) {
6847
+ "../../node_modules/.pnpm/ajv-formats@3.0.1/node_modules/ajv-formats/dist/index.js"(exports, module) {
6848
6848
  "use strict";
6849
6849
  Object.defineProperty(exports, "__esModule", { value: true });
6850
6850
  var formats_1 = require_formats();
@@ -23826,8 +23826,8 @@ function verify(name, scope, expectedVersion) {
23826
23826
  if (!match) throw new Error(`plugin ${name}@${MARKETPLACE} (${where}) is not installed`);
23827
23827
  if (match.enabled !== true || match.errors?.length)
23828
23828
  throw new Error(`plugin ${name}@${MARKETPLACE} (${where}) did not load: ${JSON.stringify({ enabled: match.enabled, errors: match.errors })}`);
23829
- if (expectedVersion && match.version !== expectedVersion)
23830
- throw new Error(`plugin ${name}@${MARKETPLACE} loaded version ${String(match.version)}; expected ${expectedVersion}`);
23829
+ if (expectedVersion && !resolvedPluginCurrent(match, expectedVersion, name))
23830
+ throw new Error(`plugin ${name}@${MARKETPLACE} resolved payload does not match version ${expectedVersion}`);
23831
23831
  }
23832
23832
  function install(name, scope, expectedVersion) {
23833
23833
  writeMarketplace();
@@ -23849,12 +23849,12 @@ function refreshInstalls(name, entries, version2) {
23849
23849
  const cwd = scope === "user" ? cotalHome() : entry.projectPath;
23850
23850
  if (typeof cwd !== "string") throw new Error(`${name}@${MARKETPLACE} (${scope} scope) has no project path`);
23851
23851
  if (!statSync2(cwd, { throwIfNoEntry: false })?.isDirectory()) continue;
23852
- if (entry.version === version2 && resolvedPluginCurrent(entry, version2, name)) continue;
23852
+ if (resolvedPluginCurrent(entry, version2, name)) continue;
23853
23853
  const update = commandIn(cwd, "plugin", "update", `${name}@${MARKETPLACE}`, "--scope", scope);
23854
23854
  if (update.status !== 0) throw new Error(`plugin update failed (${name}, ${scope} scope):
23855
23855
  ${update.output}`);
23856
23856
  const current = listPlugins(cwd).find((candidate) => candidate.id === entry.id && candidate.scope === scope && (scope === "user" || candidate.projectPath === entry.projectPath));
23857
- if (!current || current.version !== version2 || !resolvedPluginCurrent(current, version2, name))
23857
+ if (!current || !resolvedPluginCurrent(current, version2, name))
23858
23858
  throw new Error(`${name}@${MARKETPLACE} (${scope} scope) did not load the updated plugin ${version2}`);
23859
23859
  }
23860
23860
  }
@@ -23919,7 +23919,7 @@ function skillsRow(entries, { version: version2, skillsRemedy }) {
23919
23919
  if (!match || match.enabled === false) return row("off", `not installed \xB7 ${skillsRemedy}`);
23920
23920
  const errors = match.errors ?? match.error;
23921
23921
  if (Array.isArray(errors) ? errors.length > 0 : Boolean(errors)) return row("error", `load error \xB7 ${skillsRemedy}`);
23922
- if (match.version === version2) return row("ok", "current");
23922
+ if (resolvedPluginCurrent(match, version2, "cotal-skills")) return row("ok", "current");
23923
23923
  return row("warn", `${typeof match.version === "string" ? `v${match.version} \u2260 v${version2} \xB7 ` : ""}stale \xB7 ${skillsRemedy}`);
23924
23924
  }
23925
23925
  function pluginRow(entries, { version: version2 }) {
@@ -23937,7 +23937,7 @@ function pluginRow(entries, { version: version2 }) {
23937
23937
  }
23938
23938
  if (typeof materialized !== "string" || !materialized.startsWith(`${version2}+`)) return row("warn", "stale \xB7 run `cotal setup`");
23939
23939
  const active = installs.filter((entry) => entry.scope === "user" || typeof entry.projectPath !== "string" || statSync2(entry.projectPath, { throwIfNoEntry: false })?.isDirectory());
23940
- if (active.some((entry) => entry.version !== materialized || !resolvedPluginCurrent(entry, materialized)))
23940
+ if (active.some((entry) => !resolvedPluginCurrent(entry, materialized)))
23941
23941
  return row("warn", "stale \xB7 run `cotal setup`");
23942
23942
  if (installs.some((entry) => entry.scope === "user")) return row("ok", "current (user scope)");
23943
23943
  return row("ok", `current (${installs.length} install${installs.length === 1 ? "" : "s"})`);