open-agents-ai 0.187.519 → 0.187.520

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -525020,23 +525020,30 @@ __export(errorClusterTracker_exports, {
525020
525020
  ErrorClusterTracker: () => ErrorClusterTracker,
525021
525021
  parseErrors: () => parseErrors
525022
525022
  });
525023
+ function stripLogPacketLinePrefix(text) {
525024
+ return text.replace(/^[ \t]*\d+:[ \t]+/gm, "");
525025
+ }
525023
525026
  function parseErrors(output) {
525024
525027
  if (!output || typeof output !== "string")
525025
525028
  return [];
525026
525029
  const seen = /* @__PURE__ */ new Set();
525027
525030
  const out = [];
525028
- for (const { re, build } of ERROR_PATTERNS) {
525029
- re.lastIndex = 0;
525030
- let m2;
525031
- while ((m2 = re.exec(output)) !== null) {
525032
- const err = build(m2);
525033
- if (!err)
525034
- continue;
525035
- const key = `${err.file}|${err.line ?? ""}|${err.col ?? ""}|${err.code}|${err.message.slice(0, 32)}`;
525036
- if (seen.has(key))
525037
- continue;
525038
- seen.add(key);
525039
- out.push(err);
525031
+ const stripped = stripLogPacketLinePrefix(output);
525032
+ const inputs = stripped === output ? [output] : [output, stripped];
525033
+ for (const input of inputs) {
525034
+ for (const { re, build } of ERROR_PATTERNS) {
525035
+ re.lastIndex = 0;
525036
+ let m2;
525037
+ while ((m2 = re.exec(input)) !== null) {
525038
+ const err = build(m2);
525039
+ if (!err)
525040
+ continue;
525041
+ const key = `${err.file}|${err.line ?? ""}|${err.col ?? ""}|${err.code}|${err.message.slice(0, 32)}`;
525042
+ if (seen.has(key))
525043
+ continue;
525044
+ seen.add(key);
525045
+ out.push(err);
525046
+ }
525040
525047
  }
525041
525048
  }
525042
525049
  return out;
@@ -525134,6 +525141,40 @@ If your import expects a runtime value but the suggested name is a type, ADD a r
525134
525141
  code: m2[2],
525135
525142
  message: (m2[3] ?? "").trim().slice(0, 240)
525136
525143
  })
525144
+ },
525145
+ // Style E: Manifest invariant violated — the npm-install-thrash signature.
525146
+ // Generated by postActionVerifier when an install command claimed success
525147
+ // but the manifest's declared deps did not actually land in node_modules
525148
+ // (or equivalent install root). This is a SEMANTIC error not surfaced
525149
+ // by any compiler/linter — without a pattern here the cluster tracker
525150
+ // never sees it, REG-58/59/60 fire with rca3_preamble=none, and the agent
525151
+ // gets no targeted hint. Real-world impact: midi/seed-midi hit this 20×
525152
+ // in batch520 and never received guidance on the actual blocker.
525153
+ //
525154
+ // Tolerates an optional "Error: " prefix because the shell tool wraps
525155
+ // synthetic verifier errors in that shape before returning to the runner.
525156
+ {
525157
+ re: /^(?:Error:\s*)?Manifest invariant violated:\s+(\S+?(?:package\.json|requirements\.txt|Cargo\.toml|go\.mod|Gemfile|pyproject\.toml|composer\.json))\s+declares\s+\d+\s+deps,\s+but\s+\d+\s+are\s+not\s+present\s+in\s+(\S+?)\.\s*Missing:\s*([^.\n]+)/gm,
525158
+ build: (m2) => {
525159
+ const file = m2[1];
525160
+ const installRoot = m2[2];
525161
+ const missing = (m2[3] ?? "").trim().slice(0, 240);
525162
+ const hint = `Your last install command claimed success, but the declared dependencies are NOT actually present in '${installRoot}'. That means the install was a no-op — common causes:
525163
+ (1) ran install in the wrong cwd (verify with 'pwd' before installing)
525164
+ (2) used a flag that diverts target dir (--global, --prefix=/elsewhere, OS package mgr)
525165
+ (3) lockfile / registry mismatch silently failed
525166
+ (4) running pip/python and node side-by-side and confusing the two
525167
+ RECOVERY: cd to the directory containing '${file}', run a plain install with no flags, then VERIFY by listing '${installRoot}' AFTER install — do not trust the install's exit code alone. Missing deps for reference: ${missing.slice(0, 120)}`;
525168
+ const out = {
525169
+ file,
525170
+ severity: "error",
525171
+ code: "MANIFEST_INVARIANT",
525172
+ message: `Missing: ${missing}`.slice(0, 240)
525173
+ };
525174
+ if (process.env["OA_DISABLE_MANIFEST_HINT"] !== "1")
525175
+ out.hint = hint;
525176
+ return out;
525177
+ }
525137
525178
  }
525138
525179
  ];
525139
525180
  DEFAULTS = {
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "open-agents-ai",
3
- "version": "0.187.519",
3
+ "version": "0.187.520",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "open-agents-ai",
9
- "version": "0.187.519",
9
+ "version": "0.187.520",
10
10
  "hasInstallScript": true,
11
11
  "license": "CC-BY-NC-4.0",
12
12
  "dependencies": {
@@ -1571,25 +1571,25 @@
1571
1571
  }
1572
1572
  },
1573
1573
  "node_modules/@peculiar/utils": {
1574
- "version": "2.0.2",
1575
- "resolved": "https://registry.npmjs.org/@peculiar/utils/-/utils-2.0.2.tgz",
1576
- "integrity": "sha512-lHhrK/1QAXGn0GUYkme7t4zo0mQ5QIp+/8YED6pzu8AQFdjA9bAXeNURAHk4sw7n9i89MMNQVom0LkuuLUZMog==",
1574
+ "version": "2.0.3",
1575
+ "resolved": "https://registry.npmjs.org/@peculiar/utils/-/utils-2.0.3.tgz",
1576
+ "integrity": "sha512-+oL3HPFRIZ1St2K50lWCXiioIgSoxzz7R1J3uF6neO2yl1sgmpgY6XXJH4BdpoDkMWznQTeYF6oWNDZLCdQ4eQ==",
1577
1577
  "license": "MIT",
1578
1578
  "dependencies": {
1579
1579
  "tslib": "^2.8.1"
1580
1580
  }
1581
1581
  },
1582
1582
  "node_modules/@peculiar/webcrypto": {
1583
- "version": "1.7.0",
1584
- "resolved": "https://registry.npmjs.org/@peculiar/webcrypto/-/webcrypto-1.7.0.tgz",
1585
- "integrity": "sha512-04vwLd8VKfvsq3CsW5Xix6Xs9wAMK/xci/TO2T/VFLRGlYa06RGiUS9eClwnAx3z5XIjf0EdmHlmGcNzlBJLmA==",
1583
+ "version": "1.7.1",
1584
+ "resolved": "https://registry.npmjs.org/@peculiar/webcrypto/-/webcrypto-1.7.1.tgz",
1585
+ "integrity": "sha512-ODOov0sGMJMf3jPonOkgGqPknTsu+DdQ7kD++gz8aI+aFMOMHFbWAA2taqXXVTdP+OTOQR/znGvSpmkeI0WTYQ==",
1586
1586
  "license": "MIT",
1587
1587
  "dependencies": {
1588
- "@peculiar/asn1-schema": "^2.6.0",
1588
+ "@peculiar/asn1-schema": "^2.7.0",
1589
1589
  "@peculiar/json-schema": "^1.1.12",
1590
- "@peculiar/utils": "^2.0.1",
1590
+ "@peculiar/utils": "^2.0.2",
1591
1591
  "tslib": "^2.8.1",
1592
- "webcrypto-core": "^1.9.0"
1592
+ "webcrypto-core": "^1.9.2"
1593
1593
  },
1594
1594
  "engines": {
1595
1595
  "node": ">=14.18.0"
@@ -4930,9 +4930,9 @@
4930
4930
  }
4931
4931
  },
4932
4932
  "node_modules/node-abi": {
4933
- "version": "3.89.0",
4934
- "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.89.0.tgz",
4935
- "integrity": "sha512-6u9UwL0HlAl21+agMN3YAMXcKByMqwGx+pq+P76vii5f7hTPtKDp08/H9py6DY+cfDw7kQNTGEj/rly3IgbNQA==",
4933
+ "version": "3.90.0",
4934
+ "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.90.0.tgz",
4935
+ "integrity": "sha512-pZNQT7UnYlMwMBy5N1lV5X/YLTbZM5ncytN3xL7CHEzhDN8uVe0u55yaPUJICIJjaCW8NrM5BFdqr7HLweStNA==",
4936
4936
  "license": "MIT",
4937
4937
  "dependencies": {
4938
4938
  "semver": "^7.3.5"
@@ -6827,14 +6827,14 @@
6827
6827
  }
6828
6828
  },
6829
6829
  "node_modules/webcrypto-core": {
6830
- "version": "1.9.0",
6831
- "resolved": "https://registry.npmjs.org/webcrypto-core/-/webcrypto-core-1.9.0.tgz",
6832
- "integrity": "sha512-ULMJZdRaACcQym3tuBEVcFHRfIbO2sbgBd2eIzo+KYk5eRk9wNxB8td9mX3mmAytLrtE4MRfYSwE1irSw1iGAg==",
6830
+ "version": "1.9.2",
6831
+ "resolved": "https://registry.npmjs.org/webcrypto-core/-/webcrypto-core-1.9.2.tgz",
6832
+ "integrity": "sha512-gsXecm82UQNlTBURJGuqOWy1Ww08S3kZUcr3aOJS02Pk0xLtkfeUAVC0u0xhgdonFme80edSJUIJyuvL/7250Q==",
6833
6833
  "license": "MIT",
6834
6834
  "dependencies": {
6835
- "@peculiar/asn1-schema": "^2.6.0",
6835
+ "@peculiar/asn1-schema": "^2.7.0",
6836
6836
  "@peculiar/json-schema": "^1.1.12",
6837
- "@peculiar/utils": "^2.0.1",
6837
+ "@peculiar/utils": "^2.0.2",
6838
6838
  "asn1js": "^3.0.10",
6839
6839
  "tslib": "^2.8.1"
6840
6840
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "open-agents-ai",
3
- "version": "0.187.519",
3
+ "version": "0.187.520",
4
4
  "description": "AI coding agent powered by open-source models (Ollama/vLLM) — interactive TUI with agentic tool-calling loop",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",