zan-browser 3.0.16 → 3.0.17
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/agent/parser.d.ts.map +1 -1
- package/dist/agent/parser.js +42 -11
- package/dist/agent/parser.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/agent/parser.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAOD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/agent/parser.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAOD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CA8CtD"}
|
package/dist/agent/parser.js
CHANGED
|
@@ -14,18 +14,36 @@ function parseDecision(raw) {
|
|
|
14
14
|
const parsed = tryParseJson(cleaned);
|
|
15
15
|
if (parsed)
|
|
16
16
|
return toDecision(parsed);
|
|
17
|
-
// Try 2:
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
.
|
|
21
|
-
|
|
22
|
-
|
|
17
|
+
// Try 2: extract content from inside <function_calls>...</function_calls>
|
|
18
|
+
const fcMatch = raw.match(/<function_calls?>([\s\S]*?)<\/function_calls?>/);
|
|
19
|
+
if (fcMatch) {
|
|
20
|
+
const inner = fcMatch[1].trim();
|
|
21
|
+
const fromFc = tryParseJson(inner) ?? tryParseJsonArray(inner);
|
|
22
|
+
if (fromFc)
|
|
23
|
+
return toDecision(fromFc);
|
|
24
|
+
// Inner might still have nested tags — strip and retry
|
|
25
|
+
const innerClean = inner
|
|
26
|
+
.replace(/<\/?[a-z_:][^>]*>/g, "")
|
|
27
|
+
.trim();
|
|
28
|
+
const fromInner = tryParseJson(innerClean) ?? tryParseJsonArray(innerClean);
|
|
29
|
+
if (fromInner)
|
|
30
|
+
return toDecision(fromInner);
|
|
31
|
+
}
|
|
32
|
+
// Try 3: strip all XML tags and parse what remains
|
|
33
|
+
const xmlStripped = raw.replace(/<\/?[a-z_:][^>]*>/g, "").trim();
|
|
34
|
+
const fromXml = tryParseJson(xmlStripped) ?? tryParseJsonArray(xmlStripped);
|
|
23
35
|
if (fromXml)
|
|
24
36
|
return toDecision(fromXml);
|
|
25
|
-
// Try
|
|
26
|
-
const
|
|
27
|
-
if (
|
|
28
|
-
const extracted = tryParseJson(
|
|
37
|
+
// Try 4: extract the first JSON object or array from free-text
|
|
38
|
+
const jsonObjMatch = raw.match(/\{[\s\S]*\}/);
|
|
39
|
+
if (jsonObjMatch) {
|
|
40
|
+
const extracted = tryParseJson(jsonObjMatch[0]);
|
|
41
|
+
if (extracted)
|
|
42
|
+
return toDecision(extracted);
|
|
43
|
+
}
|
|
44
|
+
const jsonArrMatch = raw.match(/\[[\s\S]*\]/);
|
|
45
|
+
if (jsonArrMatch) {
|
|
46
|
+
const extracted = tryParseJsonArray(jsonArrMatch[0]);
|
|
29
47
|
if (extracted)
|
|
30
48
|
return toDecision(extracted);
|
|
31
49
|
}
|
|
@@ -41,7 +59,20 @@ function parseDecision(raw) {
|
|
|
41
59
|
}
|
|
42
60
|
function tryParseJson(text) {
|
|
43
61
|
try {
|
|
44
|
-
|
|
62
|
+
const v = JSON.parse(text);
|
|
63
|
+
return (v && typeof v === "object" && !Array.isArray(v)) ? v : null;
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
return null;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
/** Parse a JSON array and return its first object element. */
|
|
70
|
+
function tryParseJsonArray(text) {
|
|
71
|
+
try {
|
|
72
|
+
const v = JSON.parse(text);
|
|
73
|
+
if (Array.isArray(v) && v.length > 0 && typeof v[0] === "object" && v[0] !== null)
|
|
74
|
+
return v[0];
|
|
75
|
+
return null;
|
|
45
76
|
}
|
|
46
77
|
catch {
|
|
47
78
|
return null;
|
package/dist/agent/parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/agent/parser.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0DAA0D;AAC1D,qEAAqE;;AAgBrE,
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/agent/parser.ts"],"names":[],"mappings":"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"}
|