acp-kernel 0.0.59-pr.228.78 → 0.0.59-pr.232.80
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hide-consumed.d.ts","sourceRoot":"","sources":["../src/hide-consumed.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAYhE,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAClB;
|
|
1
|
+
{"version":3,"file":"hide-consumed.d.ts","sourceRoot":"","sources":["../src/hide-consumed.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAYhE,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAClB;AA0ED,wBAAgB,yBAAyB,CACrC,KAAK,EAAE,gBAAgB,EACvB,QAAQ,EAAE,WAAW,EAAE,GACxB,kBAAkB,CAwFpB"}
|
package/dist/index.js
CHANGED
|
@@ -666,25 +666,57 @@ var KEEP_LAST_ORPHANED = 2;
|
|
|
666
666
|
function rangeKey(startRef, endRef) {
|
|
667
667
|
return `${startRef}::${endRef}`;
|
|
668
668
|
}
|
|
669
|
-
function
|
|
669
|
+
function parseCallText(text) {
|
|
670
|
+
const raw = text ?? "";
|
|
671
|
+
const start = raw.indexOf("{");
|
|
672
|
+
if (start < 0) return null;
|
|
670
673
|
let parsed;
|
|
671
674
|
try {
|
|
672
|
-
parsed = JSON.parse(
|
|
675
|
+
parsed = JSON.parse(raw.slice(start));
|
|
673
676
|
} catch {
|
|
674
677
|
return null;
|
|
675
678
|
}
|
|
676
679
|
if (!parsed || typeof parsed !== "object") return null;
|
|
677
680
|
const obj = parsed;
|
|
678
|
-
|
|
679
|
-
|
|
681
|
+
if (!Array.isArray(obj.content) || obj.content.length === 0) return null;
|
|
682
|
+
return { prefix: raw.slice(0, start), obj, content: obj.content };
|
|
683
|
+
}
|
|
684
|
+
function rewriteCompressText(text, liveKeys) {
|
|
685
|
+
const parsed = parseCallText(text);
|
|
686
|
+
if (!parsed) return null;
|
|
687
|
+
const { prefix, obj, content } = parsed;
|
|
680
688
|
const kept = content.filter((entry) => {
|
|
681
689
|
if (!entry || typeof entry !== "object") return false;
|
|
682
|
-
const
|
|
683
|
-
const
|
|
684
|
-
|
|
690
|
+
const e = entry;
|
|
691
|
+
const s = typeof e.startId === "string" ? e.startId : typeof e.messageId === "string" ? e.messageId : "";
|
|
692
|
+
const end = typeof e.endId === "string" ? e.endId : typeof e.messageId === "string" ? e.messageId : "";
|
|
693
|
+
return liveKeys.has(rangeKey(s, end));
|
|
685
694
|
});
|
|
686
|
-
if (kept.length ===
|
|
687
|
-
return
|
|
695
|
+
if (kept.length === 0) return null;
|
|
696
|
+
return prefix + serializeCompacted(obj, kept).text;
|
|
697
|
+
}
|
|
698
|
+
var SUMMARY_STUB_CHARS = 200;
|
|
699
|
+
function compactEntry(entry) {
|
|
700
|
+
if (!entry || typeof entry !== "object") return entry;
|
|
701
|
+
const e = entry;
|
|
702
|
+
if (typeof e.summary !== "string" || e.summary.length <= SUMMARY_STUB_CHARS) return entry;
|
|
703
|
+
return { ...e, summary: `${e.summary.slice(0, SUMMARY_STUB_CHARS - 1)}\u2026` };
|
|
704
|
+
}
|
|
705
|
+
function serializeCompacted(obj, content) {
|
|
706
|
+
let changed = false;
|
|
707
|
+
const compacted = content.map((entry) => {
|
|
708
|
+
const out = compactEntry(entry);
|
|
709
|
+
if (out !== entry) changed = true;
|
|
710
|
+
return out;
|
|
711
|
+
});
|
|
712
|
+
return { text: JSON.stringify({ ...obj, content: compacted }), changed };
|
|
713
|
+
}
|
|
714
|
+
function compactCompressText(text) {
|
|
715
|
+
const parsed = parseCallText(text);
|
|
716
|
+
if (!parsed) return null;
|
|
717
|
+
const { prefix, obj, content } = parsed;
|
|
718
|
+
const { text: out, changed } = serializeCompacted(obj, content);
|
|
719
|
+
return changed ? prefix + out : null;
|
|
688
720
|
}
|
|
689
721
|
function hideConsumedCompressCalls(state, messages) {
|
|
690
722
|
const allBlockCallIds = /* @__PURE__ */ new Set();
|
|
@@ -743,6 +775,11 @@ function hideConsumedCompressCalls(state, messages) {
|
|
|
743
775
|
continue;
|
|
744
776
|
}
|
|
745
777
|
}
|
|
778
|
+
const compacted = compactCompressText(message.text);
|
|
779
|
+
if (compacted !== null) {
|
|
780
|
+
result.push({ ...message, text: compacted });
|
|
781
|
+
continue;
|
|
782
|
+
}
|
|
746
783
|
}
|
|
747
784
|
result.push(message);
|
|
748
785
|
}
|
|
@@ -3862,21 +3899,14 @@ var fuzzyAlgorithm = {
|
|
|
3862
3899
|
// src/search/algorithms/hybrid.ts
|
|
3863
3900
|
var W_BM25 = 0.7;
|
|
3864
3901
|
var W_FUZZY = 0.3;
|
|
3865
|
-
function maxScore(results, floor) {
|
|
3866
|
-
let max = floor;
|
|
3867
|
-
for (const r of results) {
|
|
3868
|
-
if (r.score > max) max = r.score;
|
|
3869
|
-
}
|
|
3870
|
-
return max;
|
|
3871
|
-
}
|
|
3872
3902
|
var hybridAlgorithm = {
|
|
3873
3903
|
name: "hybrid",
|
|
3874
3904
|
description: "Weighted BM25(stem) + fuzzy n-gram. Default \u2014 best precision + recall.",
|
|
3875
3905
|
score(docs, query) {
|
|
3876
3906
|
const bm = bm25Algorithm.score(docs, query);
|
|
3877
3907
|
const fz = fuzzyAlgorithm.score(docs, query);
|
|
3878
|
-
const maxBm =
|
|
3879
|
-
const maxFz =
|
|
3908
|
+
const maxBm = Math.max(...bm.map((r) => r.score), 1e-9);
|
|
3909
|
+
const maxFz = Math.max(...fz.map((r) => r.score), 1e-9);
|
|
3880
3910
|
const bmMap = new Map(bm.map((r) => [r.ref, r.score / maxBm]));
|
|
3881
3911
|
const fzMap = new Map(fz.map((r) => [r.ref, r.score / maxFz]));
|
|
3882
3912
|
return docs.map((d) => ({
|