odai-dsh-agent 0.3.5 → 0.3.7

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.
Files changed (33) hide show
  1. package/README.md +4 -0
  2. package/client/client.js +66 -1
  3. package/package.json +2 -1
  4. package/preset/odai/odai-governance.mjs +2 -1
  5. package/preset/odai/runtime/bootstrap.d.mts +16 -0
  6. package/preset/odai/runtime/bootstrap.d.mts.map +1 -0
  7. package/preset/odai/runtime/bootstrap.mjs +72 -0
  8. package/preset/odai/runtime/bootstrap.mjs.map +1 -0
  9. package/preset/odai/runtime/compaction-engine.d.mts +4 -0
  10. package/preset/odai/runtime/compaction-engine.d.mts.map +1 -0
  11. package/preset/odai/runtime/compaction-engine.mjs +11 -0
  12. package/preset/odai/runtime/compaction-engine.mjs.map +1 -0
  13. package/preset/odai/runtime/compaction-policy.d.mts +37 -0
  14. package/preset/odai/runtime/compaction-policy.d.mts.map +1 -0
  15. package/preset/odai/runtime/compaction-policy.mjs +71 -0
  16. package/preset/odai/runtime/compaction-policy.mjs.map +1 -0
  17. package/preset/odai/runtime/compaction-pressure-runtime.d.mts +15 -0
  18. package/preset/odai/runtime/compaction-pressure-runtime.d.mts.map +1 -0
  19. package/preset/odai/runtime/compaction-pressure-runtime.mjs +194 -0
  20. package/preset/odai/runtime/compaction-pressure-runtime.mjs.map +1 -0
  21. package/preset/odai/runtime/compaction-pressure-store.d.mts +13 -0
  22. package/preset/odai/runtime/compaction-pressure-store.d.mts.map +1 -0
  23. package/preset/odai/runtime/compaction-pressure-store.mjs +60 -0
  24. package/preset/odai/runtime/compaction-pressure-store.mjs.map +1 -0
  25. package/preset/odai/runtime/control-center-runtime.d.mts +9 -0
  26. package/preset/odai/runtime/control-center-runtime.d.mts.map +1 -1
  27. package/preset/odai/runtime/control-center-runtime.mjs +10 -2
  28. package/preset/odai/runtime/control-center-runtime.mjs.map +1 -1
  29. package/preset/odai/runtime/index.d.mts +2 -1
  30. package/preset/odai/runtime/index.d.mts.map +1 -1
  31. package/preset/odai/runtime/index.mjs +2 -1
  32. package/preset/odai/runtime/index.mjs.map +1 -1
  33. package/preset.cordis.patch.yml +1 -1
package/README.md CHANGED
@@ -92,6 +92,10 @@ An authenticated `这个会话放开上限` directive removes only Odai's contro
92
92
 
93
93
  A same-provider/model compaction inherits controller reasoning while keeping its independent summary budget. Odai leaves prompt-cache retention unset by default; `ODAI_COMPACTION_CACHE_RETENTION` can explicitly select `short`, `long`, or `none`. `provider-default` means Odai adds no retention, while any explicit incoming retention remains authoritative; configured retention still applies when host routing has already supplied reasoning. Custom preset compositions can set the same value through runtime `compaction.cacheRetention`. The first controller request after a landed summary still rebuilds the changed summary prefix.
94
94
 
95
+ ## Automatic compaction
96
+
97
+ Control Center → Routing → 自动压缩 offers **宿主默认 / 按窗口比例**. Host mode is the default. Window-ratio mode triggers at 80% of the model context window, without subtracting output reservations or safety headroom. Agent and Plugin share `$DSH_HOME/odai/compaction.json.pressure`; the selection survives restart and summary-model reset. The UI shows the current session's effective mode and disables ratio mode when the native engine cannot be intercepted reliably. Manual compaction and actual context-overflow recovery remain host-owned.
98
+
95
99
  ## Compaction model
96
100
 
97
101
  The default compaction-summary model is `inherit`, which preserves the conversation's current provider/model behavior. A user can explicitly set a separate target and optional reasoning effort in natural language, such as `压缩模型用 provider-x/model-summary,推理档 high`; `odai_compaction_config` persists those explicit values in `$DSH_HOME/odai/compaction.json`. Removing the target restores inheritance. Agent and Plugin share the store when both are deliberately present.
package/client/client.js CHANGED
@@ -640,7 +640,59 @@ window.__ModuleLoader__.load({
640
640
  }, [tab, routingAttempted]);
641
641
  return ReactDOM.createPortal(h("div", { className: "odaiCC", "data-odai-control-center": PACKAGE_ID }, h("button", { type: "button", className: "odaiCC__backdrop", onClick: onClose, "aria-label": "关闭 Odai 控制中心" }), h("section", { className: "odaiCC__drawer", role: "dialog", "aria-modal": true, "aria-label": "Odai 控制中心" }, h("header", { className: "odaiCC__header" }, h("div", { className: "odaiCC__brand" }, h(GraphIcon), h("div", null, h("h2", null, "Odai 控制中心"), h("span", null, "会话证据 · 路由配置"))), h("nav", { className: "odaiCC__tabs", "aria-label": "控制中心视图" }, h("button", { type: "button", className: tab === "live" ? "is-active" : "", onClick: () => setTab("live") }, "执行"), h("button", { type: "button", className: tab === "routing" ? "is-active" : "", onClick: () => setTab("routing") }, "路由")), h("button", { ref: closeRef, type: "button", className: "odaiCC__close", onClick: onClose, "aria-label": "关闭" }, "×")), h("main", { className: "odaiCC__body" }, tab === "live"
642
642
  ? h(LiveView, { trace, evidenceError })
643
- : h(RoutingView, { connection, config, setConfig, loading, error, reload })))), document.body);
643
+ : h("div", { className: "odaiCC__routingPage" }, h(RoutingView, { connection, config, setConfig, loading, error, reload }), h(CompactionPressureSettings, { key: sessionId, connection, sessionId }))))), document.body);
644
+ }
645
+ function CompactionPressureSettings({ sessionId, connection }) {
646
+ const [state, setState] = useState(null);
647
+ const [error, setError] = useState("");
648
+ const [busy, setBusy] = useState(false);
649
+ const lifetime = useRef(null);
650
+ const inFlight = useRef(false);
651
+ const request = async (action, signal, mode) => {
652
+ const response = await connection.rpc.call("/api", "odai-control-center/compaction-pressure", { action, sessionId, ...(mode === undefined ? {} : { mode }) }, signal);
653
+ if (!response?.ok || !response.value?.ok || !response.value.pressure)
654
+ throw new Error(response?.value?.error?.message || response?.error?.message || "自动压缩设置不可用");
655
+ if (!signal.aborted) {
656
+ setState(response.value.pressure);
657
+ setError("");
658
+ }
659
+ };
660
+ useEffect(() => {
661
+ const controller = new AbortController();
662
+ lifetime.current = controller;
663
+ inFlight.current = false;
664
+ setState(null);
665
+ setError("");
666
+ setBusy(false);
667
+ void request("show", controller.signal).catch(e => { if (!controller.signal.aborted)
668
+ setError(String(e)); });
669
+ return () => controller.abort();
670
+ }, [connection, sessionId]);
671
+ const change = async (mode) => {
672
+ const controller = lifetime.current;
673
+ if (!controller || inFlight.current)
674
+ return;
675
+ inFlight.current = true;
676
+ setBusy(true);
677
+ try {
678
+ await request("set", controller.signal, mode);
679
+ }
680
+ catch (e) {
681
+ if (!controller.signal.aborted)
682
+ setError(String(e));
683
+ }
684
+ finally {
685
+ if (lifetime.current === controller) {
686
+ inFlight.current = false;
687
+ if (!controller.signal.aborted)
688
+ setBusy(false);
689
+ }
690
+ }
691
+ };
692
+ return h("section", { className: "odaiCC__pressure", "aria-label": "自动压缩设置" }, h("div", { className: "odaiCC__pressureRow" }, h("div", null, h("h3", null, "自动压缩"), h("p", null, "选择自动压缩的触发方式,设置自动保存。")), h("select", {
693
+ "aria-label": "自动压缩触发方式", disabled: busy || !state, value: state?.configuredMode ?? "host",
694
+ onChange: (event) => void change(event.target.value),
695
+ }, h("option", { value: "host" }, "宿主默认"), h("option", { value: "window-ratio", disabled: !state?.supported }, "按窗口比例"))), h("p", { className: "odaiCC__pressureHint" }, "按窗口比例:达到模型窗口的 80% 时压缩,不扣除输出预留或额外余量。"), state ? h("p", { role: "status" }, `当前会话实际生效:${state.effectiveMode === "window-ratio" ? "按窗口比例" : "宿主默认"}`) : null, state?.reason ? h("p", { className: "odaiCC__alert", role: "status" }, state.reason) : null, error ? h("p", { className: "odaiCC__alert is-error", role: "alert" }, error) : null);
644
696
  }
645
697
  function SessionControls({ sessionId, connection }) {
646
698
  const [state, setState] = useState(null);
@@ -759,6 +811,19 @@ window.__ModuleLoader__.load({
759
811
  @media(max-width:900px){.odaiCC__routeRow{display:block}.odaiCC__dispatch{margin-top:7px}}
760
812
  @media(max-width:760px){.odaiCC__launcher span:last-child{display:none}.odaiCC__drawer{inset:6px}.odaiCC__header{grid-template-columns:minmax(0,1fr) auto auto;gap:7px;padding:8px}.odaiCC__brand span{display:none}.odaiCC__tabs button{min-width:56px}.odaiCC__live{padding:8px}.odaiCC__flowGrid{grid-template-columns:1fr;gap:10px;min-height:0}.odaiCC__controllerNode{padding:10px}.odaiCC__flowRole{grid-template-columns:65px minmax(0,1fr)}.odaiCC__evidenceGrid{grid-template-columns:1fr}.odaiCC__inspector{max-height:none}.odaiCC__routing{padding:10px}.odaiCC__controllerLock,.odaiCC__routeSummary{grid-template-columns:92px minmax(0,1fr) auto}.odaiCC__dispatch{grid-template-columns:92px 1fr}.odaiCC__dispatch small{grid-column:2}.odaiCC__routeForm{grid-template-columns:1fr 1fr;margin-left:0}.odaiCC__raw{max-height:240px}}
761
813
  @media(max-width:760px){.odaiCC__body{overflow:hidden}.odaiCC__live{gap:8px}.odaiCC__flow{max-height:30vh}.odaiCC__evidenceGrid{grid-template-rows:minmax(180px,1fr) minmax(120px,35vh);overflow:hidden}.odaiCC__timeline,.odaiCC__inspector{min-height:0;max-height:none}}
814
+
815
+ .odaiCC__routingPage{height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
816
+ .odaiCC__routingPage>.odaiCC__routing{height:auto;overflow:visible}
817
+ .odaiCC__pressure{max-width:964px;margin:0 auto 20px;padding:16px 0;border-top:1px solid var(--odai-cc-border);font-size:12px;line-height:18px;color:var(--odai-cc-text-2)}
818
+ .odaiCC__pressureRow{display:flex;align-items:center;justify-content:space-between;gap:16px}
819
+ .odaiCC__pressure h3{margin:0;font-size:14px;line-height:22px;color:var(--odai-cc-text)}
820
+ .odaiCC__pressure p{margin:6px 0 0;color:var(--odai-cc-text-3)}
821
+ .odaiCC__pressure select{min-width:144px;height:34px;padding:0 10px;border:1px solid var(--odai-cc-border);border-radius:6px;background:var(--odai-cc-panel);color:var(--odai-cc-text);font:inherit;cursor:pointer}
822
+ .odaiCC__pressure select:focus-visible{outline:2px solid var(--odai-cc-accent);outline-offset:2px}
823
+ .odaiCC__pressure select:disabled{opacity:.5;cursor:not-allowed}
824
+ .odaiCC__pressure .odaiCC__alert{margin-top:10px}
825
+ @media(max-width:1000px){.odaiCC__pressure{margin-left:18px;margin-right:18px}}
826
+ @media(max-width:480px){.odaiCC__pressureRow{align-items:flex-start;flex-direction:column}.odaiCC__pressure select{width:100%}}
762
827
  @media(min-width:761px){.odaiCC__routing .odaiCC__routeForm{grid-template-columns:repeat(5,minmax(0,1fr))}}
763
828
  .odaiCC__routeForm>label{min-width:0}
764
829
  .odaiCC__routeChoice{display:flex;flex-direction:column;gap:4px;min-width:0}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "odai-dsh-agent",
3
- "version": "0.3.5",
3
+ "version": "0.3.7",
4
4
  "description": "独立维护的 odai 治理模式预设(DSH bundle),按任务需要提供治理与协作。",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -17,6 +17,7 @@
17
17
  "exports": {
18
18
  ".": "./build/src/installer.mjs",
19
19
  "./governance": "./preset/odai/odai-governance.mjs",
20
+ "./compaction-engine": "./preset/odai/runtime/compaction-engine.mjs",
20
21
  "./control-center": "./build/src/control-center-installer.mjs",
21
22
  "./control-center-host": "./preset/odai/runtime/control-center-host.mjs",
22
23
  "./client": "./client/client.js",
@@ -1 +1,2 @@
1
- export * from "./runtime/index.mjs";
1
+ export * from "./runtime/bootstrap.mjs";
2
+ export { applyPreset as apply } from "./runtime/bootstrap.mjs";
@@ -0,0 +1,16 @@
1
+ import { installCompactionPressureRuntime } from "./compaction-pressure-runtime.mjs";
2
+ export declare const name = "odai-dsh-runtime";
3
+ export { inheritCompactionReasoning, resolveConfig, resolveSkillPath, runRoutedRole } from "./index.mjs";
4
+ type Adapter = ReturnType<typeof installCompactionPressureRuntime>;
5
+ interface Shared {
6
+ path: string;
7
+ owners: Set<symbol>;
8
+ installation: Promise<void>;
9
+ fiber?: any;
10
+ adapter?: Adapter;
11
+ control: Adapter["control"];
12
+ }
13
+ export declare function acquirePressureRuntime(ctx: any): Shared;
14
+ export declare function applyPreset(ctx: any, rawConfig?: unknown): void;
15
+ export declare function apply(ctx: any, rawConfig?: unknown): Promise<void>;
16
+ //# sourceMappingURL=bootstrap.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.d.mts","sourceRoot":"","sources":["../src/bootstrap.mts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gCAAgC,EAAE,MAAM,mCAAmC,CAAC;AAErF,eAAO,MAAM,IAAI,qBAAe,CAAC;AACjC,OAAO,EAAE,0BAA0B,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEzG,KAAK,OAAO,GAAG,UAAU,CAAC,OAAO,gCAAgC,CAAC,CAAC;AACnE,UAAU,MAAM;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;CAC7B;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CA4CvD;AACD,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,GAAE,OAAY,GAAG,IAAI,CAGnE;AACD,wBAAsB,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,GAAE,OAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAK5E"}
@@ -0,0 +1,72 @@
1
+ import * as runtime from "./index.mjs";
2
+ import { resolveConfig } from "./runtime-config.mjs";
3
+ import { loggerFor } from "./runtime-support.mjs";
4
+ import { compactionPressurePath } from "./compaction-pressure-store.mjs";
5
+ import { installCompactionPressureRuntime } from "./compaction-pressure-runtime.mjs";
6
+ export const name = runtime.name;
7
+ export { inheritCompactionReasoning, resolveConfig, resolveSkillPath, runRoutedRole } from "./index.mjs";
8
+ export function acquirePressureRuntime(ctx) {
9
+ const path = compactionPressurePath(resolveConfig({}).compaction.configPath);
10
+ const root = ctx.root;
11
+ if (!root?.plugin)
12
+ throw new Error("Odai pressure bootstrap requires Cordis root");
13
+ const sharedByRoot = globalThis.__odaiPressureBootstrapV1 ??= new WeakMap();
14
+ let shared = sharedByRoot.get(root);
15
+ if (shared && shared.path !== path)
16
+ throw new Error("Agent and Plugin must use the same compaction configuration path");
17
+ if (!shared) {
18
+ const created = {
19
+ path, owners: new Set(), installation: Promise.resolve(),
20
+ async control(payload, signal) {
21
+ await created.installation;
22
+ signal.throwIfAborted();
23
+ if (!created.adapter)
24
+ throw new Error("Pressure runtime unavailable");
25
+ await created.adapter.ready;
26
+ return created.adapter.control(payload, signal);
27
+ },
28
+ };
29
+ sharedByRoot.set(root, created);
30
+ shared = created;
31
+ try {
32
+ const installing = root.plugin(function odaiSharedPressure(owner) {
33
+ created.adapter = installCompactionPressureRuntime(owner, {
34
+ storePath: path,
35
+ agentForSession: id => owner.get("agents")?.get(id),
36
+ engineForAgent: agent => {
37
+ const presets = owner.get("agentPresets");
38
+ return presets ? presets.serviceFor(agent, "compaction") : owner.get("compaction");
39
+ },
40
+ warn: message => loggerFor(owner).warn(message),
41
+ });
42
+ });
43
+ created.installation = Promise.resolve(installing).then(fiber => { created.fiber = fiber; });
44
+ }
45
+ catch (error) {
46
+ sharedByRoot.delete(root);
47
+ throw error;
48
+ }
49
+ }
50
+ const current = shared, token = Symbol("odai-pressure-owner");
51
+ current.owners.add(token);
52
+ ctx.effect(() => async () => {
53
+ current.owners.delete(token);
54
+ await current.installation;
55
+ if (current.owners.size !== 0 || sharedByRoot.get(root) !== current)
56
+ return;
57
+ sharedByRoot.delete(root);
58
+ await current.fiber?.dispose();
59
+ });
60
+ return current;
61
+ }
62
+ export function applyPreset(ctx, rawConfig = {}) {
63
+ const current = acquirePressureRuntime(ctx);
64
+ ctx.inject(runtime.inject, (available) => runtime.apply(available, rawConfig, current.control));
65
+ }
66
+ export async function apply(ctx, rawConfig = {}) {
67
+ const current = acquirePressureRuntime(ctx);
68
+ await current.installation;
69
+ current.adapter?.enableProfile(ctx);
70
+ ctx.inject(runtime.inject, (available) => runtime.apply(available, rawConfig, current.control));
71
+ }
72
+ //# sourceMappingURL=bootstrap.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.mjs","sourceRoot":"","sources":["../src/bootstrap.mts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare const name = "odai-compaction-engine";
2
+ /** Mount the unchanged native engine only after its pressure adapter exists. */
3
+ export declare function apply(ctx: any, config?: unknown): Promise<void>;
4
+ //# sourceMappingURL=compaction-engine.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compaction-engine.d.mts","sourceRoot":"","sources":["../src/compaction-engine.mts"],"names":[],"mappings":"AAEA,eAAO,MAAM,IAAI,2BAA2B,CAAC;AAC7C,gFAAgF;AAChF,wBAAsB,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,GAAE,OAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAKzE"}
@@ -0,0 +1,11 @@
1
+ import { acquirePressureRuntime } from "./bootstrap.mjs";
2
+ export const name = "odai-compaction-engine";
3
+ /** Mount the unchanged native engine only after its pressure adapter exists. */
4
+ export async function apply(ctx, config = {}) {
5
+ const shared = acquirePressureRuntime(ctx);
6
+ await shared.installation;
7
+ if (!shared.adapter)
8
+ throw new Error("Native compaction adapter unavailable");
9
+ await shared.adapter.mountEngine(ctx, config);
10
+ }
11
+ //# sourceMappingURL=compaction-engine.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compaction-engine.mjs","sourceRoot":"","sources":["../src/compaction-engine.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,MAAM,CAAC,MAAM,IAAI,GAAG,wBAAwB,CAAC;AAC7C,gFAAgF;AAChF,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,GAAQ,EAAE,MAAM,GAAY,EAAE;IACxD,MAAM,MAAM,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,MAAM,CAAC,YAAY,CAAC;IAC1B,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC9E,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAChD,CAAC"}
@@ -0,0 +1,37 @@
1
+ /** Odai's opt-in pressure policy; host mode delegates to the host engine unchanged. */
2
+ export type CompactionPressureMode = "host" | "window-ratio";
3
+ export declare function resolveCompactionPressureMode(value: unknown): CompactionPressureMode;
4
+ /** Only model capacity determines this threshold; request output limits are independent. */
5
+ export declare function windowRatioThreshold(contextWindow: number): number;
6
+ /** Execute pressure reduction using host-owned durable transactions supplied by the adapter. */
7
+ export declare function compactAtWindowRatio<Seq>(options: {
8
+ contextWindow: number;
9
+ signal: AbortSignal;
10
+ retries: number;
11
+ requireBelowThreshold: boolean;
12
+ measure: () => {
13
+ totalTokens: number;
14
+ range: {
15
+ start: Seq;
16
+ end: Seq;
17
+ } | null;
18
+ };
19
+ compact: (start: Seq, end: Seq, signal: AbortSignal) => Promise<unknown>;
20
+ }): Promise<boolean>;
21
+ export interface PricedSurfaceNode<Seq> {
22
+ readonly seq: Seq;
23
+ readonly tokens: number;
24
+ }
25
+ /** Select an old prefix while retaining recent context and complete tool exchanges. */
26
+ export declare function windowRatioRange<Seq>(options: {
27
+ surface: readonly Seq[];
28
+ priced: readonly PricedSurfaceNode<Seq>[];
29
+ contextWindow: number;
30
+ retainTokens?: number;
31
+ systemHead: boolean;
32
+ balancedBefore: (seq: Seq) => boolean;
33
+ }): {
34
+ start: Seq;
35
+ end: Seq;
36
+ } | null;
37
+ //# sourceMappingURL=compaction-policy.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compaction-policy.d.mts","sourceRoot":"","sources":["../src/compaction-policy.mts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,MAAM,MAAM,sBAAsB,GAAG,MAAM,GAAG,cAAc,CAAC;AAE7D,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,sBAAsB,CAIpF;AAED,4FAA4F;AAC5F,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAKlE;AAED,gGAAgG;AAChG,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE;IACvD,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,OAAO,EAAE,MAAM;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE;YAAE,KAAK,EAAE,GAAG,CAAC;YAAC,GAAG,EAAE,GAAG,CAAA;SAAE,GAAG,IAAI,CAAA;KAAE,CAAC;IAC/E,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1E,GAAG,OAAO,CAAC,OAAO,CAAC,CAmBnB;AAED,MAAM,WAAW,iBAAiB,CAAC,GAAG;IACpC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,uFAAuF;AACvF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE;IAC7C,OAAO,EAAE,SAAS,GAAG,EAAE,CAAC;IACxB,MAAM,EAAE,SAAS,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAC1C,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,CAAC;CACvC,GAAG;IAAE,KAAK,EAAE,GAAG,CAAC;IAAC,GAAG,EAAE,GAAG,CAAA;CAAE,GAAG,IAAI,CAwBlC"}
@@ -0,0 +1,71 @@
1
+ export function resolveCompactionPressureMode(value) {
2
+ if (value === undefined || value === "host")
3
+ return "host";
4
+ if (value === "window-ratio")
5
+ return value;
6
+ throw new TypeError("compaction pressure mode must be host or window-ratio");
7
+ }
8
+ /** Only model capacity determines this threshold; request output limits are independent. */
9
+ export function windowRatioThreshold(contextWindow) {
10
+ if (!Number.isSafeInteger(contextWindow) || contextWindow <= 0) {
11
+ throw new TypeError("compaction contextWindow must be a positive safe integer");
12
+ }
13
+ return Math.floor(contextWindow * 0.8);
14
+ }
15
+ /** Execute pressure reduction using host-owned durable transactions supplied by the adapter. */
16
+ export async function compactAtWindowRatio(options) {
17
+ const threshold = windowRatioThreshold(options.contextWindow);
18
+ if (!Number.isSafeInteger(options.retries) || options.retries < 0)
19
+ throw new TypeError("invalid compaction retry count");
20
+ let changed = false;
21
+ for (let attempt = 0; attempt <= options.retries; attempt++) {
22
+ options.signal.throwIfAborted();
23
+ const measurement = options.measure();
24
+ if (!Number.isFinite(measurement.totalTokens) || measurement.totalTokens < 0)
25
+ throw new Error("invalid context measurement");
26
+ if (measurement.totalTokens < threshold)
27
+ return changed;
28
+ if (measurement.range === null) {
29
+ if (!changed && !options.requireBelowThreshold)
30
+ return false;
31
+ throw new Error("No balanced history range can reduce context below the window threshold");
32
+ }
33
+ await options.compact(measurement.range.start, measurement.range.end, options.signal);
34
+ changed = true;
35
+ }
36
+ options.signal.throwIfAborted();
37
+ if (options.measure().totalTokens >= threshold)
38
+ throw new Error("Context remains above the window threshold after compaction");
39
+ return changed;
40
+ }
41
+ /** Select an old prefix while retaining recent context and complete tool exchanges. */
42
+ export function windowRatioRange(options) {
43
+ const { surface, priced } = options;
44
+ windowRatioThreshold(options.contextWindow);
45
+ if (surface.length !== priced.length || surface.some((seq, index) => seq !== priced[index]?.seq)) {
46
+ throw new Error("Odai compaction: measured surface is stale");
47
+ }
48
+ const first = options.systemHead ? 1 : 0;
49
+ // Keep at least the latest node even when its token estimate is zero.
50
+ const retain = options.retainTokens ?? Math.floor(options.contextWindow * 0.16);
51
+ if (!Number.isSafeInteger(retain) || retain < 0 || retain >= windowRatioThreshold(options.contextWindow)) {
52
+ throw new Error("Odai compaction: retained tail must be below the window threshold");
53
+ }
54
+ let accumulated = 0;
55
+ let boundary = priced.length;
56
+ for (let i = priced.length - 1; i >= first; i--) {
57
+ const node = priced[i];
58
+ if (!Number.isFinite(node.tokens) || node.tokens < 0)
59
+ throw new Error("Odai compaction: invalid token estimate");
60
+ accumulated += node.tokens;
61
+ boundary = i;
62
+ if (accumulated >= retain)
63
+ break;
64
+ }
65
+ while (boundary > first && !options.balancedBefore(surface[boundary]))
66
+ boundary--;
67
+ if (boundary <= first || first >= surface.length)
68
+ return null;
69
+ return { start: surface[first], end: surface[boundary - 1] };
70
+ }
71
+ //# sourceMappingURL=compaction-policy.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compaction-policy.mjs","sourceRoot":"","sources":["../src/compaction-policy.mts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { CompactionPressureControl } from "./control-center-runtime.mjs";
2
+ export interface PressureRuntimeOptions {
3
+ storePath: string;
4
+ agentForSession(id: string): any;
5
+ engineForAgent(agent: any): any;
6
+ warn(message: string): void;
7
+ }
8
+ export declare function installCompactionPressureRuntime(ctx: any, options: PressureRuntimeOptions): {
9
+ ready: Promise<void>;
10
+ status: (agent: any) => CompactionPressureControl;
11
+ control: (payload: unknown, signal: AbortSignal) => Promise<CompactionPressureControl>;
12
+ mountEngine: (owner: any, config: unknown) => Promise<any>;
13
+ enableProfile: (owner: any) => void;
14
+ };
15
+ //# sourceMappingURL=compaction-pressure-runtime.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compaction-pressure-runtime.d.mts","sourceRoot":"","sources":["../src/compaction-pressure-runtime.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAI9E,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,GAAG,CAAC;IACjC,cAAc,CAAC,KAAK,EAAE,GAAG,GAAG,GAAG,CAAC;IAChC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AACD,wBAAgB,gCAAgC,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,sBAAsB;;oBAiHjE,GAAG,KAAG,yBAAyB;uBAOtB,OAAO,UAAU,WAAW,KAAG,OAAO,CAAC,yBAAyB,CAAC;yBAc/D,GAAG,UAAU,OAAO;2BAhIxB,GAAG;EA2IlC"}
@@ -0,0 +1,194 @@
1
+ import { compactAtWindowRatio, resolveCompactionPressureMode, windowRatioRange, windowRatioThreshold } from "./compaction-policy.mjs";
2
+ import { readCompactionPressure, writeCompactionPressure } from "./compaction-pressure-store.mjs";
3
+ export function installCompactionPressureRuntime(ctx, options) {
4
+ let active = true, registering = false;
5
+ let modules, loadError;
6
+ let globalOwners = 0;
7
+ const managedEngines = new Set();
8
+ const managed = (engine) => globalOwners > 0 || managedEngines.has(serviceIdentity(engine));
9
+ function enableProfile(owner) {
10
+ globalOwners++;
11
+ owner.effect(() => () => { globalOwners--; });
12
+ }
13
+ const captures = new Map();
14
+ ctx.effect(() => () => { active = false; captures.clear(); });
15
+ const exact = (record) => active && !!modules && record.callback === modules.BasicCompactionEngine
16
+ && record.events.get("agent/pre-step") === 1 && record.events.get("agent/request") === 1;
17
+ async function pressure(owner, agent, header, signal, requireBelowThreshold) {
18
+ signal.throwIfAborted();
19
+ const engine = owner.get("compaction"), meter = owner.get("tokenMeter"), llm = owner.get("llm");
20
+ if (!engine || !meter || !llm)
21
+ throw new Error("Odai compaction: scoped services unavailable");
22
+ const info = await llm.resolveModelInfo(header.config.provider, header.config.model, signal);
23
+ signal.throwIfAborted();
24
+ for (let seq = agent.session.seq - 1; seq >= 0; seq--) {
25
+ const event = agent.session.eventAt(modules.SessionSeq(seq));
26
+ if (event.type === "compaction/end")
27
+ break;
28
+ if (event.type === "compaction/start")
29
+ throw new Error("Odai compaction: another compaction is active");
30
+ }
31
+ const contextWindow = info.context?.contextWindow;
32
+ const threshold = windowRatioThreshold(contextWindow);
33
+ const policy = engine.config.modelPolicies.find((item) => item.provider === header.config.provider && item.model === header.config.model);
34
+ if (meter.measure(agent.session, header).totalTokens >= threshold)
35
+ owner.get("toolResultPruner")?.pruneSession(agent.session);
36
+ return compactAtWindowRatio({
37
+ contextWindow, signal, retries: policy?.compactionRetries ?? engine.config.compactionRetries, requireBelowThreshold,
38
+ measure() {
39
+ const measurement = meter.measure(agent.session, header), surface = agent.session.surface.nodes;
40
+ return { totalTokens: measurement.totalTokens, range: measurement.totalTokens < threshold ? null : windowRatioRange({
41
+ surface, priced: measurement.nodes, contextWindow,
42
+ retainTokens: policy?.retainTokens ?? (policy?.retainRatio !== undefined
43
+ ? Math.floor(contextWindow * policy.retainRatio)
44
+ : engine.config.retainTokens ?? Math.floor(contextWindow * engine.config.retainRatio)),
45
+ systemHead: surface.length > 0 && agent.session.eventAt(surface[0]).type === "system/message",
46
+ balancedBefore: seq => modules.toolPairingBalancedBefore(agent.session, seq),
47
+ }) };
48
+ },
49
+ compact: (start, end, abort) => engine.compactRegion(start, end, agent, abort),
50
+ });
51
+ }
52
+ // Capture registrations synchronously. Until module identities are loaded,
53
+ // every provisional wrapper delegates; unrelated plugins always delegate.
54
+ ctx.on("internal/listener", function (name, original, registrationOptions) {
55
+ if (registering || (name !== "agent/pre-step" && name !== "agent/request"))
56
+ return;
57
+ const owner = this;
58
+ const record = captures.get(owner.fiber.uid) ?? { owner, callback: owner.fiber.runtime?.callback, events: new Map() };
59
+ const wrapped = async function (payload, next) {
60
+ if (!exact(record) || !managed(record.owner.get("compaction")) || record.owner.get("compaction")?.config.auto === false)
61
+ return Reflect.apply(original, this, [payload, next]);
62
+ const stored = readCompactionPressure(options.storePath);
63
+ if (!stored.valid || stored.mode === "host")
64
+ return Reflect.apply(original, this, [payload, next]);
65
+ const { agent, signal } = payload;
66
+ if (name === "agent/pre-step") {
67
+ if (!signal.aborted)
68
+ try {
69
+ const header = agent.session.requestHeader();
70
+ if (header?.config.provider && header.config.model)
71
+ await pressure(owner, agent, header, signal, false);
72
+ }
73
+ catch (error) {
74
+ options.warn(`Odai step compaction failed: ${String(error)}; continuing the turn`);
75
+ }
76
+ return next();
77
+ }
78
+ const config = await next(), previous = agent.session.requestHeader();
79
+ if (signal.aborted || !previous || !config.provider || !config.model || (previous.config.provider === config.provider && previous.config.model === config.model))
80
+ return config;
81
+ try {
82
+ await pressure(owner, agent, { ...previous, config }, signal, true);
83
+ }
84
+ catch (error) {
85
+ signal.throwIfAborted();
86
+ throw new modules.LlmError(`Cannot switch to ${config.provider}/${config.model}: context compaction failed: ${String(error)}. The previous request model is preserved; retry or select a model with a larger context window.`, "MODEL_SWITCH_COMPACTION_FAILED", { cause: error });
87
+ }
88
+ return config;
89
+ };
90
+ registering = true;
91
+ try {
92
+ const dispose = owner.on(name, wrapped, registrationOptions);
93
+ record.events.set(name, (record.events.get(name) ?? 0) + 1);
94
+ captures.set(owner.fiber.uid, record);
95
+ let disposed = false;
96
+ const replacementDispose = () => {
97
+ if (disposed)
98
+ return;
99
+ disposed = true;
100
+ record.events.set(name, (record.events.get(name) ?? 1) - 1);
101
+ if ([...record.events.values()].every(count => count === 0))
102
+ captures.delete(owner.fiber.uid);
103
+ return dispose();
104
+ };
105
+ owner.effect(() => replacementDispose);
106
+ return replacementDispose;
107
+ }
108
+ finally {
109
+ registering = false;
110
+ }
111
+ }, { global: true });
112
+ const ready = new Promise(resolve => {
113
+ ctx.inject(["loader"], (available) => {
114
+ void (async () => {
115
+ try {
116
+ const loader = available.get("loader");
117
+ if (!loader)
118
+ throw new Error("Host module loader unavailable");
119
+ const [basic, compaction, llm, session, cordis] = await Promise.all(["@deepseek-ai/dsh-compaction-basic", "@deepseek-ai/dsh-compaction", "@deepseek-ai/dsh-llm", "@deepseek-ai/dsh-session", "@deepseek-ai/cordis"].map(name => loader.import(name)));
120
+ const candidate = { BasicCompactionEngine: basic.BasicCompactionEngine, toolPairingBalancedBefore: compaction.toolPairingBalancedBefore, LlmError: llm.LlmError, SessionSeq: session.SessionSeq };
121
+ if (Object.values(candidate).some(value => typeof value !== "function"))
122
+ throw new Error("Required public DSH compaction APIs unavailable");
123
+ if (typeof cordis.symbols?.original !== "symbol")
124
+ throw new Error("Cordis service identity API unavailable");
125
+ if (active)
126
+ modules = { ...candidate, original: cordis.symbols.original };
127
+ }
128
+ catch (error) {
129
+ loadError = String(error);
130
+ if (active)
131
+ options.warn(`Odai pressure adapter unavailable: ${loadError}`);
132
+ }
133
+ })().finally(resolve);
134
+ });
135
+ });
136
+ function serviceIdentity(value) {
137
+ if (!modules)
138
+ return undefined;
139
+ const seen = new Set();
140
+ while (value !== null && (typeof value === "object" || typeof value === "function")) {
141
+ if (seen.has(value))
142
+ return undefined;
143
+ seen.add(value);
144
+ const underlying = value[modules.original];
145
+ if (underlying === undefined)
146
+ return value;
147
+ value = underlying;
148
+ }
149
+ return undefined;
150
+ }
151
+ function status(agent) {
152
+ const stored = readCompactionPressure(options.storePath), engine = agent ? options.engineForAgent(agent) : undefined;
153
+ const identity = serviceIdentity(engine);
154
+ const supported = managed(engine) && engine?.config.auto !== false && identity !== undefined && [...captures.values()].some(record => exact(record) && serviceIdentity(record.owner.get("compaction")) === identity);
155
+ return { configuredMode: stored.mode, effectiveMode: stored.valid && supported ? stored.mode : "host", supported, valid: stored.valid,
156
+ ...(!stored.valid ? { reason: `配置无效,使用宿主默认:${stored.error}` } : !supported ? { reason: loadError ? `自动压缩适配不可用:${loadError}` : "当前会话的自动压缩尚未接管,使用宿主默认。" } : {}) };
157
+ }
158
+ async function control(payload, signal) {
159
+ signal.throwIfAborted();
160
+ if (!payload || typeof payload !== "object" || Array.isArray(payload))
161
+ throw new TypeError("Invalid pressure request");
162
+ const input = payload;
163
+ if (Object.keys(input).some(key => !["action", "sessionId", "mode"].includes(key)) || (input.action !== "show" && input.action !== "set") || typeof input.sessionId !== "string" || !input.sessionId)
164
+ throw new TypeError("Invalid pressure request");
165
+ const agent = options.agentForSession(input.sessionId);
166
+ if (input.action === "show") {
167
+ if (input.mode !== undefined)
168
+ throw new TypeError("show does not accept mode");
169
+ return status(agent);
170
+ }
171
+ if (input.mode === undefined)
172
+ throw new TypeError("pressure mode is required");
173
+ const mode = resolveCompactionPressureMode(input.mode);
174
+ if (mode === "window-ratio" && !status(agent).supported)
175
+ throw new TypeError("当前会话不支持接管自动压缩,未修改设置");
176
+ signal.throwIfAborted();
177
+ const saved = writeCompactionPressure(options.storePath, mode);
178
+ return { ...status(agent), ...(saved.backupPath ? { reason: `原无效配置已备份:${saved.backupPath}` } : {}) };
179
+ }
180
+ async function mountEngine(owner, config) {
181
+ await ready;
182
+ if (!modules)
183
+ throw new Error(loadError ?? "Native compaction APIs unavailable");
184
+ const fiber = await owner.plugin(modules.BasicCompactionEngine, config);
185
+ const identity = serviceIdentity(owner.get("compaction"));
186
+ if (identity === undefined)
187
+ throw new Error("Native compaction engine did not activate");
188
+ managedEngines.add(identity);
189
+ owner.effect(() => () => { managedEngines.delete(identity); });
190
+ return fiber;
191
+ }
192
+ return { ready, status, control, mountEngine, enableProfile };
193
+ }
194
+ //# sourceMappingURL=compaction-pressure-runtime.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compaction-pressure-runtime.mjs","sourceRoot":"","sources":["../src/compaction-pressure-runtime.mts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { type CompactionPressureMode } from "./compaction-policy.mjs";
2
+ export interface CompactionPressureSnapshot {
3
+ mode: CompactionPressureMode;
4
+ valid: boolean;
5
+ error?: string;
6
+ }
7
+ export declare function compactionPressurePath(compactionConfigPath: string): string;
8
+ export declare function readCompactionPressure(path: string): CompactionPressureSnapshot;
9
+ /** Atomic independent storage leaves summarizer model configuration untouched. */
10
+ export declare function writeCompactionPressure(path: string, input: unknown): CompactionPressureSnapshot & {
11
+ backupPath?: string;
12
+ };
13
+ //# sourceMappingURL=compaction-pressure-store.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compaction-pressure-store.d.mts","sourceRoot":"","sources":["../src/compaction-pressure-store.mts"],"names":[],"mappings":"AAIA,OAAO,EAAiC,KAAK,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAErG,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,sBAAsB,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AACD,wBAAgB,sBAAsB,CAAC,oBAAoB,EAAE,MAAM,GAAG,MAAM,CAA+C;AAC3H,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,0BAA0B,CAgB/E;AAED,kFAAkF;AAClF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,0BAA0B,GAAG;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAC,CAoBxH"}
@@ -0,0 +1,60 @@
1
+ import { randomUUID } from "node:crypto";
2
+ import { constants, copyFileSync, mkdirSync, readFileSync, renameSync, rmSync, writeFileSync } from "node:fs";
3
+ import { dirname } from "node:path";
4
+ import { acquireOwnedStoreLock } from "./store-lock.mjs";
5
+ import { resolveCompactionPressureMode } from "./compaction-policy.mjs";
6
+ export function compactionPressurePath(compactionConfigPath) { return `${compactionConfigPath}.pressure`; }
7
+ export function readCompactionPressure(path) {
8
+ try {
9
+ let text;
10
+ try {
11
+ text = readFileSync(path, "utf8");
12
+ }
13
+ catch (error) {
14
+ if (error !== null && typeof error === "object" && "code" in error && error.code === "ENOENT")
15
+ return { mode: "host", valid: true };
16
+ throw error;
17
+ }
18
+ const value = JSON.parse(text);
19
+ if (value === null || typeof value !== "object" || Array.isArray(value))
20
+ throw new TypeError("pressure configuration must be an object");
21
+ const stored = value;
22
+ if (stored.schemaVersion !== 1 || stored.mode === undefined || Object.keys(stored).some(key => key !== "schemaVersion" && key !== "mode"))
23
+ throw new TypeError("invalid pressure configuration schema");
24
+ return { mode: resolveCompactionPressureMode(stored.mode), valid: true };
25
+ }
26
+ catch (error) {
27
+ return { mode: "host", valid: false, error: error instanceof Error ? error.message : String(error) };
28
+ }
29
+ }
30
+ /** Atomic independent storage leaves summarizer model configuration untouched. */
31
+ export function writeCompactionPressure(path, input) {
32
+ if (input === undefined)
33
+ throw new TypeError("pressure mode is required");
34
+ const mode = resolveCompactionPressureMode(input);
35
+ const release = acquireOwnedStoreLock(path, "Odai compaction pressure");
36
+ const temporary = `${path}.tmp-${process.pid}-${randomUUID()}`;
37
+ let backupPath;
38
+ try {
39
+ mkdirSync(dirname(path), { recursive: true, mode: 0o700 });
40
+ if (!readCompactionPressure(path).valid) {
41
+ backupPath = `${path}.invalid-${randomUUID()}.bak`;
42
+ copyFileSync(path, backupPath, constants.COPYFILE_EXCL);
43
+ }
44
+ writeFileSync(temporary, `${JSON.stringify({ schemaVersion: 1, mode }, null, 2)}\n`, { encoding: "utf8", mode: 0o600, flag: "wx" });
45
+ renameSync(temporary, path);
46
+ const result = readCompactionPressure(path);
47
+ if (!result.valid || result.mode !== mode)
48
+ throw new Error("pressure configuration verification failed");
49
+ return { ...result, ...(backupPath === undefined ? {} : { backupPath }) };
50
+ }
51
+ finally {
52
+ try {
53
+ rmSync(temporary, { force: true });
54
+ }
55
+ finally {
56
+ release();
57
+ }
58
+ }
59
+ }
60
+ //# sourceMappingURL=compaction-pressure-store.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compaction-pressure-store.mjs","sourceRoot":"","sources":["../src/compaction-pressure-store.mts"],"names":[],"mappings":"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"}
@@ -9,7 +9,15 @@ interface RpcFailure {
9
9
  code: "bad-request" | "route-rejected" | "unavailable" | "internal";
10
10
  message: string;
11
11
  }
12
+ export interface CompactionPressureControl {
13
+ configuredMode: "host" | "window-ratio";
14
+ effectiveMode: "host" | "window-ratio";
15
+ supported: boolean;
16
+ valid: boolean;
17
+ reason?: string;
18
+ }
12
19
  export interface ControlCenterResponse {
20
+ pressure?: CompactionPressureControl;
13
21
  ok: boolean;
14
22
  session?: SessionControlsSnapshot;
15
23
  choices?: Array<{
@@ -23,6 +31,7 @@ export interface ControlCenterResponse {
23
31
  error?: RpcFailure;
24
32
  }
25
33
  export interface ControlCenterRuntimeOptions {
34
+ pressure?: (payload: unknown, signal: AbortSignal) => Promise<CompactionPressureControl>;
26
35
  configPath: string;
27
36
  routingMode?: string;
28
37
  evidenceRoot?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"control-center-runtime.d.mts","sourceRoot":"","sources":["../src/control-center-runtime.mts"],"names":[],"mappings":"AACA,OAAO,EAAuB,KAAK,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAiB,MAAM,qBAAqB,CAAC;AAG3F,QAAA,MAAM,sBAAsB,yBAAyB,CAAC;AACtD,QAAA,MAAM,uBAAuB,YAAY,CAAC;AAC1C,QAAA,MAAM,gCAAgC,aAAa,CAAC;AAIpD,UAAU,UAAU;IAClB,IAAI,EAAE,aAAa,GAAG,gBAAgB,GAAG,aAAa,GAAG,UAAU,CAAC;IACpE,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9C,MAAM,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,YAAY,GAAG,aAAa,CAAC,CAAC;IACjE,MAAM,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAwDD,MAAM,WAAW,2BAA2B;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IACvC,kBAAkB,CAAC,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC9C,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AA2DD,wBAAgB,wCAAwC,CACtD,GAAG,EAAE,iBAAiB,EACtB,OAAO,EAAE,2BAA2B,GACnC,MAAM,OAAO,CAAC,IAAI,CAAC,CAmCrB;AAED,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,iBAAiB,EACtB,OAAO,EAAE,2BAA2B,GACnC,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CA2FnC;AAED,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,gCAAgC,EAAE,CAAC"}
1
+ {"version":3,"file":"control-center-runtime.d.mts","sourceRoot":"","sources":["../src/control-center-runtime.mts"],"names":[],"mappings":"AACA,OAAO,EAAuB,KAAK,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAiB,MAAM,qBAAqB,CAAC;AAG3F,QAAA,MAAM,sBAAsB,yBAAyB,CAAC;AACtD,QAAA,MAAM,uBAAuB,YAAY,CAAC;AAC1C,QAAA,MAAM,gCAAgC,aAAa,CAAC;AAKpD,UAAU,UAAU;IAClB,IAAI,EAAE,aAAa,GAAG,gBAAgB,GAAG,aAAa,GAAG,UAAU,CAAC;IACpE,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,yBAAyB;IACxC,cAAc,EAAE,MAAM,GAAG,cAAc,CAAC;IACxC,aAAa,EAAE,MAAM,GAAG,cAAc,CAAC;IACvC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9C,MAAM,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,YAAY,GAAG,aAAa,CAAC,CAAC;IACjE,MAAM,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAwDD,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACzF,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IACvC,kBAAkB,CAAC,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC9C,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AA2DD,wBAAgB,wCAAwC,CACtD,GAAG,EAAE,iBAAiB,EACtB,OAAO,EAAE,2BAA2B,GACnC,MAAM,OAAO,CAAC,IAAI,CAAC,CAmCrB;AAED,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,iBAAiB,EACtB,OAAO,EAAE,2BAA2B,GACnC,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CAiGnC;AAED,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,gCAAgC,EAAE,CAAC"}
@@ -7,11 +7,12 @@ const CONTROL_CENTER_CHANNEL = "/odai-control-center";
7
7
  const CONTROL_CENTER_ENDPOINT = "routing";
8
8
  const CONTROL_CENTER_EVIDENCE_ENDPOINT = "evidence";
9
9
  const CONTROL_CENTER_SESSION_ENDPOINT = "session";
10
+ const CONTROL_CENTER_PRESSURE_ENDPOINT = "compaction-pressure";
10
11
  const MAX_EVIDENCE_EVENTS = 2_000;
11
12
  function registerControlCenter(connection, handler) {
12
13
  if (!connection.fetch)
13
14
  return connection.rpc.handle(CONTROL_CENTER_CHANNEL, handler, { authority: "loopback" });
14
- const disposers = [CONTROL_CENTER_ENDPOINT, CONTROL_CENTER_EVIDENCE_ENDPOINT, CONTROL_CENTER_SESSION_ENDPOINT].map((endpoint) => {
15
+ const disposers = [CONTROL_CENTER_ENDPOINT, CONTROL_CENTER_EVIDENCE_ENDPOINT, CONTROL_CENTER_SESSION_ENDPOINT, CONTROL_CENTER_PRESSURE_ENDPOINT].map((endpoint) => {
15
16
  const method = `${CONTROL_CENTER_CHANNEL.slice(1)}/${endpoint}`;
16
17
  return connection.fetch.register({
17
18
  path: `/api/${method}`, methods: ["POST"], requestBody: "buffered",
@@ -158,11 +159,18 @@ export function installControlCenterRuntime(ctx, options) {
158
159
  }
159
160
  const owners = new Map([[owner, options]]);
160
161
  const dispose = registerControlCenter(connection, async (endpoint, payload, signal) => {
161
- if (endpoint !== CONTROL_CENTER_ENDPOINT && endpoint !== CONTROL_CENTER_EVIDENCE_ENDPOINT && endpoint !== CONTROL_CENTER_SESSION_ENDPOINT) {
162
+ if (endpoint !== CONTROL_CENTER_ENDPOINT && endpoint !== CONTROL_CENTER_EVIDENCE_ENDPOINT && endpoint !== CONTROL_CENTER_SESSION_ENDPOINT && endpoint !== CONTROL_CENTER_PRESSURE_ENDPOINT) {
162
163
  return { ok: true, value: { ok: false, error: { code: "unavailable", message: "unknown Odai Control Center endpoint" } } };
163
164
  }
164
165
  const active = effectiveOptions(owners);
165
166
  try {
167
+ if (endpoint === CONTROL_CENTER_PRESSURE_ENDPOINT) {
168
+ const handlers = [...new Set([...owners.values()].flatMap(owner => owner.pressure ? [owner.pressure] : []))];
169
+ if (handlers.length !== 1)
170
+ return { ok: true, value: { ok: false, error: { code: "unavailable", message: handlers.length === 0 ? "自动压缩设置尚未连接到运行时" : "存在多个自动压缩配置所有者,无法确定设置作用域" } } };
171
+ signal.throwIfAborted();
172
+ return { ok: true, value: { ok: true, pressure: await handlers[0](payload, signal) } };
173
+ }
166
174
  if (endpoint === CONTROL_CENTER_ENDPOINT && isUnknownRecord(payload) && payload.action === "choices") {
167
175
  if (typeof payload.cli === "string")
168
176
  return { ok: true, value: { ok: true, choices: await discoverCliModels(payload.cli, signal) } };
@@ -1 +1 @@
1
- {"version":3,"file":"control-center-runtime.mjs","sourceRoot":"","sources":["../src/control-center-runtime.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"control-center-runtime.mjs","sourceRoot":"","sources":["../src/control-center-runtime.mts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
+ import { type ControlCenterRuntimeOptions } from "./control-center-runtime.mjs";
1
2
  import { inheritCompactionReasoning, resolveConfig, resolveSkillPath } from "./runtime-config.mjs";
2
3
  import { runRoutedRole } from "./runtime-support.mjs";
3
4
  import type { DshRuntimeContext } from "./runtime-types.mjs";
4
5
  export declare const name = "odai-dsh-runtime";
5
6
  export { inheritCompactionReasoning, resolveConfig, resolveSkillPath, runRoutedRole };
6
7
  export declare const inject: string[];
7
- export declare function apply(ctx: DshRuntimeContext, rawConfig: unknown): void;
8
+ export declare function apply(ctx: DshRuntimeContext, rawConfig: unknown, pressure?: ControlCenterRuntimeOptions["pressure"]): void;
8
9
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/index.mts"],"names":[],"mappings":"AAkBA,OAAO,EACL,0BAA0B,EAC1B,aAAa,EACb,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAML,aAAa,EAEd,MAAM,uBAAuB,CAAC;AAO/B,OAAO,KAAK,EAEV,iBAAiB,EAKlB,MAAM,qBAAqB,CAAC;AAE7B,eAAO,MAAM,IAAI,qBAAe,CAAC;AACjC,OAAO,EAAE,0BAA0B,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,CAAC;AAEtF,eAAO,MAAM,MAAM,UAA4D,CAAC;AA0BhF,wBAAgB,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI,CAuRtE"}
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/index.mts"],"names":[],"mappings":"AAUA,OAAO,EAA4C,KAAK,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAQ1H,OAAO,EACL,0BAA0B,EAC1B,aAAa,EACb,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAML,aAAa,EAEd,MAAM,uBAAuB,CAAC;AAO/B,OAAO,KAAK,EAEV,iBAAiB,EAKlB,MAAM,qBAAqB,CAAC;AAE7B,eAAO,MAAM,IAAI,qBAAe,CAAC;AACjC,OAAO,EAAE,0BAA0B,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,CAAC;AAEtF,eAAO,MAAM,MAAM,UAA4D,CAAC;AA0BhF,wBAAgB,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,2BAA2B,CAAC,UAAU,CAAC,GAAG,IAAI,CAwR1H"}
@@ -31,10 +31,11 @@ function isResponsibilityGapProposal(data) {
31
31
  && isBoundRequirementLedger(data.requirements)
32
32
  && typeof data.stateDigest === "string";
33
33
  }
34
- export function apply(ctx, rawConfig) {
34
+ export function apply(ctx, rawConfig, pressure) {
35
35
  const config = resolveConfig(rawConfig);
36
36
  const logger = loggerFor(ctx);
37
37
  const disposeControlCenter = installControlCenterRuntimeWhenAvailable(ctx, {
38
+ ...(pressure === undefined ? {} : { pressure }),
38
39
  configPath: config.routing.configPath,
39
40
  routingMode: config.routing.mode,
40
41
  configuredRoles: config.routing.roles,
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.mts"],"names":[],"mappings":"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"}
@@ -153,7 +153,7 @@
153
153
  toolResultPruner: true
154
154
  config:
155
155
  - id: compaction-basic
156
- name: '@deepseek-ai/dsh-compaction-basic'
156
+ name: odai-dsh-agent/compaction-engine
157
157
 
158
158
  - id: command-compact
159
159
  name: '@deepseek-ai/dsh-command-compact'