@xrkseek/harness 0.4.2 → 0.4.3

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 (67) hide show
  1. package/node_modules/@xrkseek/core-agent-loop/dist/index.d.ts +6 -0
  2. package/node_modules/@xrkseek/core-agent-loop/dist/index.d.ts.map +1 -1
  3. package/node_modules/@xrkseek/core-agent-loop/dist/index.js +3 -0
  4. package/node_modules/@xrkseek/core-agent-loop/dist/index.js.map +1 -1
  5. package/node_modules/@xrkseek/core-agent-loop/dist/tool-result-bound.d.ts +7 -2
  6. package/node_modules/@xrkseek/core-agent-loop/dist/tool-result-bound.d.ts.map +1 -1
  7. package/node_modules/@xrkseek/core-agent-loop/dist/tool-result-bound.js +7 -3
  8. package/node_modules/@xrkseek/core-agent-loop/dist/tool-result-bound.js.map +1 -1
  9. package/node_modules/@xrkseek/core-session/dist/compaction.d.ts +9 -2
  10. package/node_modules/@xrkseek/core-session/dist/compaction.d.ts.map +1 -1
  11. package/node_modules/@xrkseek/core-session/dist/compaction.js +9 -2
  12. package/node_modules/@xrkseek/core-session/dist/compaction.js.map +1 -1
  13. package/node_modules/@xrkseek/core-session/dist/drain-hub.d.ts +2 -2
  14. package/node_modules/@xrkseek/core-session/dist/drain-hub.d.ts.map +1 -1
  15. package/node_modules/@xrkseek/core-session/dist/drain-hub.js +2 -2
  16. package/node_modules/@xrkseek/core-session/dist/drain-hub.js.map +1 -1
  17. package/node_modules/@xrkseek/core-session/dist/index.d.ts +1 -1
  18. package/node_modules/@xrkseek/core-session/dist/index.d.ts.map +1 -1
  19. package/node_modules/@xrkseek/core-session/dist/index.js.map +1 -1
  20. package/node_modules/@xrkseek/core-session/dist/latch.d.ts +25 -3
  21. package/node_modules/@xrkseek/core-session/dist/latch.d.ts.map +1 -1
  22. package/node_modules/@xrkseek/core-session/dist/latch.js +33 -12
  23. package/node_modules/@xrkseek/core-session/dist/latch.js.map +1 -1
  24. package/node_modules/@xrkseek/exec-shell/dist/index.d.ts +8 -1
  25. package/node_modules/@xrkseek/exec-shell/dist/index.d.ts.map +1 -1
  26. package/node_modules/@xrkseek/exec-shell/dist/index.js +3 -1
  27. package/node_modules/@xrkseek/exec-shell/dist/index.js.map +1 -1
  28. package/node_modules/@xrkseek/preset-harness/dist/tsconfig.tsbuildinfo +1 -1
  29. package/node_modules/@xrkseek/preset-minimal/dist/tsconfig.tsbuildinfo +1 -1
  30. package/node_modules/@xrkseek/preset-server/dist/tsconfig.tsbuildinfo +1 -1
  31. package/node_modules/@xrkseek/server-face/dist/context.d.ts +2 -2
  32. package/node_modules/@xrkseek/server-face/dist/context.d.ts.map +1 -1
  33. package/node_modules/@xrkseek/server-face/dist/handlers/session.d.ts.map +1 -1
  34. package/node_modules/@xrkseek/server-face/dist/handlers/session.js +31 -5
  35. package/node_modules/@xrkseek/server-face/dist/handlers/session.js.map +1 -1
  36. package/node_modules/@xrkseek/server-face/dist/subagent-tools.d.ts.map +1 -1
  37. package/node_modules/@xrkseek/server-face/dist/subagent-tools.js +32 -1
  38. package/node_modules/@xrkseek/server-face/dist/subagent-tools.js.map +1 -1
  39. package/node_modules/@xrkseek/server-host/dist/drain-status.d.ts +2 -2
  40. package/node_modules/@xrkseek/server-host/dist/drain-status.d.ts.map +1 -1
  41. package/node_modules/@xrkseek/server-host/dist/drain-status.js +2 -2
  42. package/node_modules/@xrkseek/server-host/dist/drain-status.js.map +1 -1
  43. package/node_modules/@xrkseek/server-host/dist/index.d.ts +16 -0
  44. package/node_modules/@xrkseek/server-host/dist/index.d.ts.map +1 -1
  45. package/node_modules/@xrkseek/server-host/dist/index.js +91 -6
  46. package/node_modules/@xrkseek/server-host/dist/index.js.map +1 -1
  47. package/node_modules/@xrkseek/server-http/dist/dsh-compat/audit-community-client.d.ts +13 -0
  48. package/node_modules/@xrkseek/server-http/dist/dsh-compat/audit-community-client.d.ts.map +1 -1
  49. package/node_modules/@xrkseek/server-http/dist/dsh-compat/audit-community-client.js +24 -0
  50. package/node_modules/@xrkseek/server-http/dist/dsh-compat/audit-community-client.js.map +1 -1
  51. package/node_modules/@xrkseek/server-http/dist/dsh-compat/dsh-client-scan.d.ts +1 -0
  52. package/node_modules/@xrkseek/server-http/dist/dsh-compat/dsh-client-scan.d.ts.map +1 -1
  53. package/node_modules/@xrkseek/server-http/dist/dsh-compat/dsh-client-scan.js +18 -2
  54. package/node_modules/@xrkseek/server-http/dist/dsh-compat/dsh-client-scan.js.map +1 -1
  55. package/node_modules/@xrkseek/server-http/dist/dsh-compat/dsh-compat-matrix.d.ts +6 -0
  56. package/node_modules/@xrkseek/server-http/dist/dsh-compat/dsh-compat-matrix.d.ts.map +1 -1
  57. package/node_modules/@xrkseek/server-http/dist/dsh-compat/dsh-compat-matrix.js +26 -1
  58. package/node_modules/@xrkseek/server-http/dist/dsh-compat/dsh-compat-matrix.js.map +1 -1
  59. package/node_modules/@xrkseek/spill/dist/index.d.ts +1 -1
  60. package/node_modules/@xrkseek/spill/dist/index.d.ts.map +1 -1
  61. package/node_modules/@xrkseek/spill/dist/index.js +1 -1
  62. package/node_modules/@xrkseek/spill/dist/index.js.map +1 -1
  63. package/node_modules/@xrkseek/spill/dist/policy.d.ts +35 -0
  64. package/node_modules/@xrkseek/spill/dist/policy.d.ts.map +1 -1
  65. package/node_modules/@xrkseek/spill/dist/policy.js +45 -4
  66. package/node_modules/@xrkseek/spill/dist/policy.js.map +1 -1
  67. package/package.json +1 -1
@@ -14,6 +14,12 @@ export declare const DSH_COMPAT_GENERIC_CAPABILITIES: readonly DshCompatCapabili
14
14
  /**
15
15
  * Product gaps / honest stubs that must not be treated as Working.
16
16
  * Synced with docs/status.md · docs/community-plugins.md「待补」.
17
+ *
18
+ * coverage semantics:
19
+ * - "missing": DSH ecosystem shape with no landing seat in this repo (real gap).
20
+ * - "honest-stub": deliberately NOT implemented (out of product scope by the
21
+ * "no third-party Host kernel embedding" boundary); the Host answers with an
22
+ * honest envelope instead of faking the shape.
17
23
  */
18
24
  export declare const DSH_COMPAT_KNOWN_GAPS: readonly DshCompatCapabilityRow[];
19
25
  export declare function listDshCompatGenericIds(): readonly string[];
@@ -1 +1 @@
1
- {"version":3,"file":"dsh-compat-matrix.d.ts","sourceRoot":"","sources":["../../src/dsh-compat/dsh-compat-matrix.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,QAAQ,GAAG,aAAa,GAAG,SAAS,CAAC;AAE9E,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,gFAAgF;AAChF,eAAO,MAAM,+BAA+B,EAAE,SAAS,sBAAsB,EA2PnE,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,SAAS,sBAAsB,EAAgB,CAAC;AAEpF,wBAAgB,uBAAuB,IAAI,SAAS,MAAM,EAAE,CAE3D;AAED,wBAAgB,mBAAmB,IAAI,SAAS,MAAM,EAAE,CAEvD"}
1
+ {"version":3,"file":"dsh-compat-matrix.d.ts","sourceRoot":"","sources":["../../src/dsh-compat/dsh-compat-matrix.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,QAAQ,GAAG,aAAa,GAAG,SAAS,CAAC;AAE9E,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,gFAAgF;AAChF,eAAO,MAAM,+BAA+B,EAAE,SAAS,sBAAsB,EA2PnE,CAAC;AAEX;;;;;;;;;GASG;AACH,eAAO,MAAM,qBAAqB,EAAE,SAAS,sBAAsB,EAmBzD,CAAC;AAEX,wBAAgB,uBAAuB,IAAI,SAAS,MAAM,EAAE,CAE3D;AAED,wBAAgB,mBAAmB,IAAI,SAAS,MAAM,EAAE,CAEvD"}
@@ -244,8 +244,33 @@ export const DSH_COMPAT_GENERIC_CAPABILITIES = [
244
244
  /**
245
245
  * Product gaps / honest stubs that must not be treated as Working.
246
246
  * Synced with docs/status.md · docs/community-plugins.md「待补」.
247
+ *
248
+ * coverage semantics:
249
+ * - "missing": DSH ecosystem shape with no landing seat in this repo (real gap).
250
+ * - "honest-stub": deliberately NOT implemented (out of product scope by the
251
+ * "no third-party Host kernel embedding" boundary); the Host answers with an
252
+ * honest envelope instead of faking the shape.
247
253
  */
248
- export const DSH_COMPAT_KNOWN_GAPS = [];
254
+ export const DSH_COMPAT_KNOWN_GAPS = [
255
+ {
256
+ id: "web-panel-global-registry",
257
+ coverage: "missing",
258
+ genericModule: "client ui-layout seat map (src/client/index.ts SlotMap)",
259
+ note: "DSH 0.1.5-alpha.2+ clients register global panels via `sidebar.panellist` and `main` (`main.conversation`); XRK shell only declares sidebar/conversation/details/shell.overlay seats — panellist registrations have no seat to land in.",
260
+ },
261
+ {
262
+ id: "cordis-dual-half-inspect",
263
+ coverage: "honest-stub",
264
+ genericModule: "cordis-registry · cordis-fiber-runner",
265
+ note: "Official @deepseek-ai/dsh-cordis-host-runner 0.1.6-alpha.2 model-mounted dual-half registry (cordis_inspect_list / cordis_inspect_query + mount/dispose lifecycle) is out of scope: XRK does not embed a third-party Host kernel; fiber fallback stays apply-driven.",
266
+ },
267
+ {
268
+ id: "third-party-di",
269
+ coverage: "honest-stub",
270
+ genericModule: "cordis-registry",
271
+ note: "Full third-party DI for arbitrary cordis services is not a product goal (Host-native /first-party injections only); unknown service references get an honest envelope, never a fake provider.",
272
+ },
273
+ ];
249
274
  export function listDshCompatGenericIds() {
250
275
  return DSH_COMPAT_GENERIC_CAPABILITIES.map((r) => r.id);
251
276
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dsh-compat-matrix.js","sourceRoot":"","sources":["../../src/dsh-compat/dsh-compat-matrix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dsh-compat-matrix.js","sourceRoot":"","sources":["../../src/dsh-compat/dsh-compat-matrix.ts"],"names":[],"mappings":"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"}
@@ -7,5 +7,5 @@
7
7
  */
8
8
  export { SpillLocator, type SpillOwner, type SpillSource, type SaveTextSpill, type SpillRef, type SpillStore, } from "./types.js";
9
9
  export { LocalSpillStore, defaultLocalSpillStore, defaultSpillRoot, encodeSpillSegment, resetDefaultLocalSpillStore, type LocalSpillStoreOptions, } from "./local-store.js";
10
- export { NO_SPILL_TOOLS, DEFAULT_SPILL_INLINE_BYTES, utf8Bytes, utf8Prefix, utf8Suffix, headTail, formatSpillNotice, parseSpillLocator, alreadySavedPath, fitInlineNotice, applySpillPolicy, type ApplySpillPolicyInput, type ApplySpillPolicyResult, } from "./policy.js";
10
+ export { NO_SPILL_TOOLS, DEFAULT_SPILL_INLINE_BYTES, DEFAULT_SPILL_INLINE_TOKENS, estimateSpillTokens, resolveInlineBudget, utf8Bytes, utf8Prefix, utf8Suffix, headTail, formatSpillNotice, parseSpillLocator, alreadySavedPath, fitInlineNotice, applySpillPolicy, type ApplySpillPolicyInput, type ApplySpillPolicyResult, } from "./policy.js";
11
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,YAAY,EACZ,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,UAAU,GAChB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,EAClB,2BAA2B,EAC3B,KAAK,sBAAsB,GAC5B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,cAAc,EACd,0BAA0B,EAC1B,SAAS,EACT,UAAU,EACV,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,GAC5B,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,YAAY,EACZ,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,UAAU,GAChB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,EAClB,2BAA2B,EAC3B,KAAK,sBAAsB,GAC5B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,cAAc,EACd,0BAA0B,EAC1B,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,EACnB,SAAS,EACT,UAAU,EACV,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,GAC5B,MAAM,aAAa,CAAC"}
@@ -7,5 +7,5 @@
7
7
  */
8
8
  export { SpillLocator, } from "./types.js";
9
9
  export { LocalSpillStore, defaultLocalSpillStore, defaultSpillRoot, encodeSpillSegment, resetDefaultLocalSpillStore, } from "./local-store.js";
10
- export { NO_SPILL_TOOLS, DEFAULT_SPILL_INLINE_BYTES, utf8Bytes, utf8Prefix, utf8Suffix, headTail, formatSpillNotice, parseSpillLocator, alreadySavedPath, fitInlineNotice, applySpillPolicy, } from "./policy.js";
10
+ export { NO_SPILL_TOOLS, DEFAULT_SPILL_INLINE_BYTES, DEFAULT_SPILL_INLINE_TOKENS, estimateSpillTokens, resolveInlineBudget, utf8Bytes, utf8Prefix, utf8Suffix, headTail, formatSpillNotice, parseSpillLocator, alreadySavedPath, fitInlineNotice, applySpillPolicy, } from "./policy.js";
11
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,YAAY,GAMb,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,EAClB,2BAA2B,GAE5B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,cAAc,EACd,0BAA0B,EAC1B,SAAS,EACT,UAAU,EACV,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GAGjB,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,YAAY,GAMb,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,EAClB,2BAA2B,GAE5B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,cAAc,EACd,0BAA0B,EAC1B,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,EACnB,SAAS,EACT,UAAU,EACV,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GAGjB,MAAM,aAAa,CAAC"}
@@ -7,6 +7,20 @@ import type { SpillLocator, SpillRef, SpillStore } from "./types.js";
7
7
  export declare const NO_SPILL_TOOLS: Set<string>;
8
8
  /** Default inline ceiling (UTF-8 bytes); Face may override. */
9
9
  export declare const DEFAULT_SPILL_INLINE_BYTES = 64000;
10
+ /**
11
+ * Default inline ceiling in tokens (DSH `maxInlineTokens` semantics).
12
+ * 16_000 tokens ≈ 64_000 UTF-8 bytes of ASCII (~4 bytes/token); multi-byte
13
+ * languages (CJK ~3+ bytes/token) would otherwise be truncated earlier than
14
+ * English at the same byte budget — the token meter makes the ceiling
15
+ * language-neutral. `0` disables spill, same as bytes.
16
+ */
17
+ export declare const DEFAULT_SPILL_INLINE_TOKENS = 16000;
18
+ /**
19
+ * Fixed-density heuristic token meter (chars/4) — same rule as
20
+ * `@xrkseek/core-session` `surface-estimate.ts`, duplicated locally so
21
+ * `@xrkseek/spill` stays leaf (no core-session dependency).
22
+ */
23
+ export declare function estimateSpillTokens(text: string): number;
10
24
  export declare function utf8Bytes(text: string): number;
11
25
  /** Prefix of `text` with at most `maxBytes` UTF-8 bytes (no mid-sequence cut). */
12
26
  export declare function utf8Prefix(text: string, maxBytes: number): string;
@@ -26,6 +40,8 @@ export declare function formatSpillNotice(args: {
26
40
  * “(omitted ~N bytes…)” prefix so markers stay short.
27
41
  */
28
42
  readonly alreadyPersisted?: boolean;
43
+ /** Include a token-denominated omitted hint when the budget was token-based. */
44
+ readonly omittedTokens?: number;
29
45
  }): string;
30
46
  /**
31
47
  * Parse a spill locator from pipeline / loop notices.
@@ -42,6 +58,14 @@ export interface ApplySpillPolicyInput {
42
58
  readonly plainText: string;
43
59
  /** UTF-8 inline ceiling; omit → {@link DEFAULT_SPILL_INLINE_BYTES}; `0` → no spill. */
44
60
  readonly maxInlineBytes?: number;
61
+ /**
62
+ * Token inline ceiling (DSH `maxInlineTokens` semantics). When set, the
63
+ * ceiling is measured on {@link estimateSpillTokens} and the byte budget is
64
+ * derived (`tokens × 4`, plus headroom) before the existing byte-based
65
+ * prefix/suffix cutting — tokens are the budget language, bytes stay the
66
+ * cutting implementation so UTF-8 sequences are never split. Omit → bytes.
67
+ */
68
+ readonly maxInlineTokens?: number;
45
69
  /** Authoritative full-body path from pipeline `outputPaths`. */
46
70
  readonly savedPath?: string;
47
71
  readonly store: SpillStore;
@@ -51,6 +75,17 @@ export interface ApplySpillPolicyResult {
51
75
  readonly spilled: boolean;
52
76
  readonly ref?: SpillRef;
53
77
  }
78
+ /**
79
+ * Resolve the effective byte budget for {@link applySpillPolicy}.
80
+ * `maxInlineTokens` wins when set (DSH semantics: token meter decides whether
81
+ * to spill, byte cutting stays exact); otherwise `maxInlineBytes`; otherwise
82
+ * the byte default. A token budget is widened ×4 (the meter's chars/token)
83
+ * so the byte cutter never has to make the spill decision itself.
84
+ */
85
+ export declare function resolveInlineBudget(input: {
86
+ readonly maxInlineBytes?: number;
87
+ readonly maxInlineTokens?: number;
88
+ }): number;
54
89
  /**
55
90
  * Apply spill policy against a {@link SpillStore}.
56
91
  * Sync when `store.saveTextSync` exists; otherwise throws (agent-loop needs sync).
@@ -1 +1 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAGrE,qEAAqE;AACrE,eAAO,MAAM,cAAc,aAA+C,CAAC;AAE3E,+DAA+D;AAC/D,eAAO,MAAM,0BAA0B,QAAS,CAAC;AAEjD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED,kFAAkF;AAClF,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAUjE;AAED,4DAA4D;AAC5D,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAUjE;AAED,gEAAgE;AAChE,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAQ7D;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC,GAAG,MAAM,CAUT;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAOxE;AAED,oDAAoD;AACpD,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,SACV,CAAC;AAEhD,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,MAAM,CAMR;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,uFAAuF;IACvF,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,gEAAgE;IAChE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,qBAAqB,GAC3B,sBAAsB,CAyDxB"}
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAGrE,qEAAqE;AACrE,eAAO,MAAM,cAAc,aAA+C,CAAC;AAE3E,+DAA+D;AAC/D,eAAO,MAAM,0BAA0B,QAAS,CAAC;AAEjD;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,QAAS,CAAC;AAElD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGxD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED,kFAAkF;AAClF,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAUjE;AAED,4DAA4D;AAC5D,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAUjE;AAED,gEAAgE;AAChE,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAQ7D;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,gFAAgF;IAChF,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC,GAAG,MAAM,CAcT;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAOxE;AAED,oDAAoD;AACpD,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,SACV,CAAC;AAEhD,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,MAAM,CAMR;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,uFAAuF;IACvF,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC;;;;;;OAMG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,gEAAgE;IAChE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC;CACzB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IACzC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC,GAAG,MAAM,CAST;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,qBAAqB,GAC3B,sBAAsB,CA8DxB"}
@@ -7,6 +7,24 @@ import { SpillLocator as asSpillLocator } from "./types.js";
7
7
  export const NO_SPILL_TOOLS = new Set(["read_file", "read", "read_image"]);
8
8
  /** Default inline ceiling (UTF-8 bytes); Face may override. */
9
9
  export const DEFAULT_SPILL_INLINE_BYTES = 64_000;
10
+ /**
11
+ * Default inline ceiling in tokens (DSH `maxInlineTokens` semantics).
12
+ * 16_000 tokens ≈ 64_000 UTF-8 bytes of ASCII (~4 bytes/token); multi-byte
13
+ * languages (CJK ~3+ bytes/token) would otherwise be truncated earlier than
14
+ * English at the same byte budget — the token meter makes the ceiling
15
+ * language-neutral. `0` disables spill, same as bytes.
16
+ */
17
+ export const DEFAULT_SPILL_INLINE_TOKENS = 16_000;
18
+ /**
19
+ * Fixed-density heuristic token meter (chars/4) — same rule as
20
+ * `@xrkseek/core-session` `surface-estimate.ts`, duplicated locally so
21
+ * `@xrkseek/spill` stays leaf (no core-session dependency).
22
+ */
23
+ export function estimateSpillTokens(text) {
24
+ if (!text)
25
+ return 0;
26
+ return Math.ceil(text.length / 4);
27
+ }
10
28
  export function utf8Bytes(text) {
11
29
  return Buffer.byteLength(text, "utf8");
12
30
  }
@@ -59,7 +77,10 @@ export function formatSpillNotice(args) {
59
77
  if (args.alreadyPersisted) {
60
78
  return `Full formatted result stored at: ${loc}. ${hint}\n\n`;
61
79
  }
62
- return (`(omitted ~${args.omittedBytes} bytes. Full formatted result stored at: ${loc}. ` +
80
+ const omitted = args.omittedTokens !== undefined
81
+ ? `~${args.omittedTokens} tokens`
82
+ : `~${args.omittedBytes} bytes`;
83
+ return (`(omitted ${omitted}. Full formatted result stored at: ${loc}. ` +
63
84
  `${hint})\n\n`);
64
85
  }
65
86
  /**
@@ -83,6 +104,23 @@ export function fitInlineNotice(notice, plain, maxInline) {
83
104
  body = utf8Prefix(body, maxInline);
84
105
  return body;
85
106
  }
107
+ /**
108
+ * Resolve the effective byte budget for {@link applySpillPolicy}.
109
+ * `maxInlineTokens` wins when set (DSH semantics: token meter decides whether
110
+ * to spill, byte cutting stays exact); otherwise `maxInlineBytes`; otherwise
111
+ * the byte default. A token budget is widened ×4 (the meter's chars/token)
112
+ * so the byte cutter never has to make the spill decision itself.
113
+ */
114
+ export function resolveInlineBudget(input) {
115
+ const tokens = input.maxInlineTokens;
116
+ if (tokens !== undefined) {
117
+ const t = Math.max(0, Math.floor(tokens));
118
+ return t === 0 ? 0 : t * 4;
119
+ }
120
+ return input.maxInlineBytes === undefined
121
+ ? DEFAULT_SPILL_INLINE_BYTES
122
+ : Math.max(0, Math.floor(input.maxInlineBytes));
123
+ }
86
124
  /**
87
125
  * Apply spill policy against a {@link SpillStore}.
88
126
  * Sync when `store.saveTextSync` exists; otherwise throws (agent-loop needs sync).
@@ -91,9 +129,7 @@ export function applySpillPolicy(input) {
91
129
  if (NO_SPILL_TOOLS.has(input.toolName)) {
92
130
  return { content: input.plainText, spilled: false };
93
131
  }
94
- const maxInline = input.maxInlineBytes === undefined
95
- ? DEFAULT_SPILL_INLINE_BYTES
96
- : Math.max(0, Math.floor(input.maxInlineBytes));
132
+ const maxInline = resolveInlineBudget(input);
97
133
  if (maxInline === 0) {
98
134
  return { content: input.plainText, spilled: false };
99
135
  }
@@ -131,6 +167,11 @@ export function applySpillPolicy(input) {
131
167
  }
132
168
  const notice = formatSpillNotice({
133
169
  omittedBytes: total - maxInline,
170
+ ...(input.maxInlineTokens !== undefined
171
+ ? {
172
+ omittedTokens: Math.max(0, estimateSpillTokens(input.plainText) - input.maxInlineTokens),
173
+ }
174
+ : {}),
134
175
  ref,
135
176
  alreadyPersisted,
136
177
  });
@@ -1 +1 @@
1
- {"version":3,"file":"policy.js","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xrkseek/harness",
3
- "version": "0.4.2",
3
+ "version": "0.4.3",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {