acp-kernel 0.0.82-pr.356.222 → 0.0.82-pr.357.224
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/DESIGN.md +0 -2
- package/README.md +0 -1
- package/dist/{chunk-5TQA7ZQM.js → chunk-DEUCMZ7S.js} +11 -2
- package/dist/chunk-DEUCMZ7S.js.map +1 -0
- package/dist/compress-tools.d.ts +51 -0
- package/dist/compress-tools.d.ts.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/image-compress.d.ts +156 -0
- package/dist/image-compress.d.ts.map +1 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +367 -140
- package/dist/index.js.map +1 -1
- package/dist/persist/index.js +4 -2
- package/dist/persist/index.js.map +1 -1
- package/dist/persist/state-merge.d.ts.map +1 -1
- package/dist/state.d.ts.map +1 -1
- package/dist/types.d.ts +43 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-5TQA7ZQM.js.map +0 -1
- package/dist/output-steering.d.ts +0 -176
- package/dist/output-steering.d.ts.map +0 -1
package/DESIGN.md
CHANGED
|
@@ -211,8 +211,6 @@ A default `countTokens` ships with the core (word-level + unicode CJK tokenizer,
|
|
|
211
211
|
| compress/decompress/search/status **tool registration** | **adapter** (calls core pure fns) |
|
|
212
212
|
| `/acp` commands | **adapter** |
|
|
213
213
|
| opencode hooks | **OpenCode adapter** |
|
|
214
|
-
| output-steering **decisions** (turn classification / verbosity level / effort clamp, #355) | **core** `decideOutputSteering` (pure; operates on a structural summary — role + block kinds, no content) |
|
|
215
|
-
| output-steering **landing** (wire field write-back, system-prompt carrier selection, numeric budget floors) | **adapter** |
|
|
216
214
|
| config three-layer merge | **adapter** (core only consumes its own `Config`) |
|
|
217
215
|
| logger / auth / persistence / update | **adapter** (core does zero I/O) |
|
|
218
216
|
|
package/README.md
CHANGED
|
@@ -104,7 +104,6 @@ live-recomputed tags, use `renderVisibleRefs` directly.
|
|
|
104
104
|
| `rebuildCompressionState` | Fork-recovery: replay historical compress calls |
|
|
105
105
|
| `applyMessageFilters` | Pluggable message-filter framework |
|
|
106
106
|
| `resolveTransformChannel` | Channel-selection policy: an explicit preference wins; the default is the wire channel only when the caller reports it viable |
|
|
107
|
-
| `decideOutputSteering` / `classifyTurn` / `clampEffortToFloor` / `applySteeringToPrompt` | Output-side steering *decisions* (#355): structural turn classification (`new_user_ask` / `mechanical_continuation` / `error_continuation` / `unknown`), byte-stable verbosity directives L0–L4 (default L2), and clamp-only effort routing. The kernel decides; adapters land decisions onto wire fields. Default OFF |
|
|
108
107
|
| `applySectionOverrides` / `cloneWithDescriptions` / `applyAcpToolOverrides` | Prompt/tool *surface* customization (see below) |
|
|
109
108
|
| `sanitizePackSurface` / `createPackResolver` / `defaultPackSources` | Prompt packs: named, swappable surface presets resolved over pluggable sources (see below) |
|
|
110
109
|
|
|
@@ -11,10 +11,19 @@ function createInitialState() {
|
|
|
11
11
|
anchors: {},
|
|
12
12
|
lastShownByTier: {}
|
|
13
13
|
},
|
|
14
|
-
stats: {
|
|
14
|
+
stats: {
|
|
15
|
+
tokensCompressed: 0,
|
|
16
|
+
compressionCount: 0,
|
|
17
|
+
absorbedTokens: 0,
|
|
18
|
+
imagesShrunk: 0,
|
|
19
|
+
imageBytesSaved: 0,
|
|
20
|
+
imageTokensSaved: 0
|
|
21
|
+
},
|
|
15
22
|
absorbed: [],
|
|
16
23
|
rules: [],
|
|
17
24
|
nextRuleId: 1,
|
|
25
|
+
imageFullRestored: [],
|
|
26
|
+
imageShrinks: [],
|
|
18
27
|
nextBlockId: 1,
|
|
19
28
|
nextRunId: 1
|
|
20
29
|
};
|
|
@@ -70,4 +79,4 @@ export {
|
|
|
70
79
|
highestActiveTier,
|
|
71
80
|
advanceSurvival
|
|
72
81
|
};
|
|
73
|
-
//# sourceMappingURL=chunk-
|
|
82
|
+
//# sourceMappingURL=chunk-DEUCMZ7S.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/state.ts"],"sourcesContent":["import type { CompressionBlock, CompressionState } from \"./types.js\";\n\nexport function createInitialState(): CompressionState {\n return {\n blocks: [],\n messageRefs: { byRaw: {}, byRef: {} },\n tokenSnapshot: {},\n nudge: {\n lastPerMessageNudgeTokens: 0,\n lastNudgeShownTokens: 0,\n baselineTokens: 0,\n anchors: {},\n lastShownByTier: {},\n },\n stats: {\n tokensCompressed: 0,\n compressionCount: 0,\n absorbedTokens: 0,\n imagesShrunk: 0,\n imageBytesSaved: 0,\n imageTokensSaved: 0,\n },\n absorbed: [],\n rules: [],\n nextRuleId: 1,\n imageFullRestored: [],\n imageShrinks: [],\n nextBlockId: 1,\n nextRunId: 1,\n };\n}\n\nexport function allocateBlockId(state: CompressionState): string {\n const id = state.nextBlockId;\n state.nextBlockId = Math.max(1, id) + 1;\n return `b${id}`;\n}\n\nexport function allocateRunId(state: CompressionState): string {\n const id = state.nextRunId;\n state.nextRunId = Math.max(1, id) + 1;\n return `r${id}`;\n}\n\nexport function blockById(\n state: CompressionState,\n blockId: string,\n): CompressionBlock | undefined {\n return state.blocks.find((block) => block.blockId === blockId);\n}\n\nexport function activeBlocks(state: CompressionState): CompressionBlock[] {\n return state.blocks.filter((block) => block.active);\n}\n\nexport function coveredMessageIds(state: CompressionState): Set<string> {\n const covered = new Set<string>();\n for (const block of state.blocks) {\n if (!block.active) continue;\n for (const id of block.effectiveMessageIds) covered.add(id);\n }\n return covered;\n}\n\nexport function highestActiveTier(state: CompressionState): 0 | 1 | 2 | 3 {\n let highest: 0 | 1 | 2 | 3 = 0;\n for (const block of state.blocks) {\n if (block.active && block.tier > highest) highest = block.tier;\n }\n return highest;\n}\n\nexport function advanceSurvival(\n state: CompressionState,\n promotionThreshold: number,\n): void {\n for (const block of state.blocks) {\n if (!block.active) continue;\n block.survivedCount += 1;\n if (block.survivedCount >= promotionThreshold) {\n block.generation = \"old\";\n }\n }\n}\n"],"mappings":";AAEO,SAAS,qBAAuC;AACrD,SAAO;AAAA,IACL,QAAQ,CAAC;AAAA,IACT,aAAa,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,EAAE;AAAA,IACpC,eAAe,CAAC;AAAA,IAChB,OAAO;AAAA,MACL,2BAA2B;AAAA,MAC3B,sBAAsB;AAAA,MACtB,gBAAgB;AAAA,MAChB,SAAS,CAAC;AAAA,MACV,iBAAiB,CAAC;AAAA,IACpB;AAAA,IACA,OAAO;AAAA,MACL,kBAAkB;AAAA,MAClB,kBAAkB;AAAA,MAClB,gBAAgB;AAAA,MAChB,cAAc;AAAA,MACd,iBAAiB;AAAA,MACjB,kBAAkB;AAAA,IACpB;AAAA,IACA,UAAU,CAAC;AAAA,IACX,OAAO,CAAC;AAAA,IACR,YAAY;AAAA,IACZ,mBAAmB,CAAC;AAAA,IACpB,cAAc,CAAC;AAAA,IACf,aAAa;AAAA,IACb,WAAW;AAAA,EACb;AACF;AAEO,SAAS,gBAAgB,OAAiC;AAC/D,QAAM,KAAK,MAAM;AACjB,QAAM,cAAc,KAAK,IAAI,GAAG,EAAE,IAAI;AACtC,SAAO,IAAI,EAAE;AACf;AAEO,SAAS,cAAc,OAAiC;AAC7D,QAAM,KAAK,MAAM;AACjB,QAAM,YAAY,KAAK,IAAI,GAAG,EAAE,IAAI;AACpC,SAAO,IAAI,EAAE;AACf;AAEO,SAAS,UACd,OACA,SAC8B;AAC9B,SAAO,MAAM,OAAO,KAAK,CAAC,UAAU,MAAM,YAAY,OAAO;AAC/D;AAEO,SAAS,aAAa,OAA6C;AACxE,SAAO,MAAM,OAAO,OAAO,CAAC,UAAU,MAAM,MAAM;AACpD;AAEO,SAAS,kBAAkB,OAAsC;AACtE,QAAM,UAAU,oBAAI,IAAY;AAChC,aAAW,SAAS,MAAM,QAAQ;AAChC,QAAI,CAAC,MAAM,OAAQ;AACnB,eAAW,MAAM,MAAM,oBAAqB,SAAQ,IAAI,EAAE;AAAA,EAC5D;AACA,SAAO;AACT;AAEO,SAAS,kBAAkB,OAAwC;AACxE,MAAI,UAAyB;AAC7B,aAAW,SAAS,MAAM,QAAQ;AAChC,QAAI,MAAM,UAAU,MAAM,OAAO,QAAS,WAAU,MAAM;AAAA,EAC5D;AACA,SAAO;AACT;AAEO,SAAS,gBACd,OACA,oBACM;AACN,aAAW,SAAS,MAAM,QAAQ;AAChC,QAAI,CAAC,MAAM,OAAQ;AACnB,UAAM,iBAAiB;AACvB,QAAI,MAAM,iBAAiB,oBAAoB;AAC7C,YAAM,aAAa;AAAA,IACrB;AAAA,EACF;AACF;","names":[]}
|
package/dist/compress-tools.d.ts
CHANGED
|
@@ -16,6 +16,7 @@ export declare const SEARCH_CONTEXT_TOOL_NAME = "search_context";
|
|
|
16
16
|
export declare const ACP_STATUS_TOOL_NAME = "acp_status";
|
|
17
17
|
export declare const ACP_CACHE_TOOL_NAME = "acp_cache";
|
|
18
18
|
export declare const ABSORB_TOOL_NAME = "absorb";
|
|
19
|
+
export declare const IMAGE_FULL_TOOL_NAME = "image_full";
|
|
19
20
|
/** Text-protocol trigger tags. The model emits these in its text output to
|
|
20
21
|
* request compression (used when host client tools cannot coexist with a
|
|
21
22
|
* declared `tools` field — e.g. OpenAI Codex code_mode). Distinct from the
|
|
@@ -1046,4 +1047,54 @@ export declare const ABSORB_TOOL_GOOGLE: {
|
|
|
1046
1047
|
required: string[];
|
|
1047
1048
|
};
|
|
1048
1049
|
};
|
|
1050
|
+
/** Opt-in image_full tool (restore original-resolution images for a previously
|
|
1051
|
+
* downscaled message). Inject/register only when
|
|
1052
|
+
* config.imageCompression.enabled — NOT part of ACP_TOOLS_* arrays. */
|
|
1053
|
+
export declare const IMAGE_FULL_TOOL_DESCRIPTION = "Restore original-resolution images for a previously downscaled message. Call when you cannot read details (text, colors, alignment) in a reduced image: pass the message ref (\"mNNNNN\") from the [Downscaled screenshots] note. Full resolution applies for the rest of this session.";
|
|
1054
|
+
export declare const IMAGE_FULL_TOOL: {
|
|
1055
|
+
name: string;
|
|
1056
|
+
description: string;
|
|
1057
|
+
input_schema: {
|
|
1058
|
+
type: "object";
|
|
1059
|
+
properties: {
|
|
1060
|
+
ref: {
|
|
1061
|
+
type: string;
|
|
1062
|
+
description: string;
|
|
1063
|
+
};
|
|
1064
|
+
};
|
|
1065
|
+
required: string[];
|
|
1066
|
+
};
|
|
1067
|
+
};
|
|
1068
|
+
export declare const IMAGE_FULL_TOOL_OPENAI: {
|
|
1069
|
+
type: "function";
|
|
1070
|
+
function: {
|
|
1071
|
+
name: string;
|
|
1072
|
+
description: string;
|
|
1073
|
+
parameters: {
|
|
1074
|
+
type: "object";
|
|
1075
|
+
properties: {
|
|
1076
|
+
ref: {
|
|
1077
|
+
type: string;
|
|
1078
|
+
description: string;
|
|
1079
|
+
};
|
|
1080
|
+
};
|
|
1081
|
+
required: string[];
|
|
1082
|
+
};
|
|
1083
|
+
};
|
|
1084
|
+
};
|
|
1085
|
+
export declare const IMAGE_FULL_TOOL_RESPONSES: {
|
|
1086
|
+
type: "function";
|
|
1087
|
+
name: string;
|
|
1088
|
+
description: string;
|
|
1089
|
+
parameters: {
|
|
1090
|
+
type: "object";
|
|
1091
|
+
properties: {
|
|
1092
|
+
ref: {
|
|
1093
|
+
type: string;
|
|
1094
|
+
description: string;
|
|
1095
|
+
};
|
|
1096
|
+
};
|
|
1097
|
+
required: string[];
|
|
1098
|
+
};
|
|
1099
|
+
};
|
|
1049
1100
|
//# sourceMappingURL=compress-tools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compress-tools.d.ts","sourceRoot":"","sources":["../src/compress-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5D,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,qBAAqB,CAAC;AAE7B,eAAO,MAAM,kBAAkB,aAAa,CAAC;AAC7C,eAAO,MAAM,oBAAoB,eAAe,CAAC;AACjD,eAAO,MAAM,wBAAwB,mBAAmB,CAAC;AACzD,eAAO,MAAM,oBAAoB,eAAe,CAAC;AACjD,eAAO,MAAM,mBAAmB,cAAc,CAAC;AAC/C,eAAO,MAAM,gBAAgB,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"compress-tools.d.ts","sourceRoot":"","sources":["../src/compress-tools.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,wBAAgB,aAAa,CAC3B,iBAAiB,EAAE,MAAM,EACzB,SAAS,GAAE,OAAO,CAAC,MAAM,CAAM,GAC9B,MAAM,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,wBAAgB,aAAa,CAC3B,iBAAiB,EAAE,MAAM,EACzB,SAAS,GAAE,OAAO,CAAC,MAAM,CAAM,GAC9B,MAAM,CA0DR;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAiGvD"}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import type { Config, CompressionState, ImageBillingMode, ImageCompressionConfig, ImageFormat, ImageShrinkRecord } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Image pre-compression (#353, filed from billion-context#1095 analysis):
|
|
4
|
+
* screenshot-like tool-result images are downscaled ONCE at arrival before
|
|
5
|
+
* entering the wire; non-screenshot originals pass through untouched; the
|
|
6
|
+
* lossy step is backstopped by the image_full restore channel.
|
|
7
|
+
*
|
|
8
|
+
* Kernel scope (pure, zero native deps): routing decision + recipe, billing-
|
|
9
|
+
* aware token estimation (canonical copy — moved from billion-context
|
|
10
|
+
* src/image-tokens.ts), image_full contract (arg parsing, sticky-restore
|
|
11
|
+
* state machine, result strings, system-note fragment), shrink records and
|
|
12
|
+
* stats counters on session state.
|
|
13
|
+
*
|
|
14
|
+
* Host scope (NOT here): executing the recipe with a real encoder
|
|
15
|
+
* (deterministic resize fit-inside withoutEnlargement → flatten →
|
|
16
|
+
* webp{quality} / jpeg{quality, mozjpeg} / png{compressionLevel:9}, keeping
|
|
17
|
+
* the smaller of original vs encoded), sidecar file I/O under the #1097
|
|
18
|
+
* store, wire-body substitution across protocols, plugin-manifest
|
|
19
|
+
* registration, logging.
|
|
20
|
+
*
|
|
21
|
+
* Determinism is load-bearing: the downsampled bytes become the standing
|
|
22
|
+
* wire content after arrival-time substitution; a non-deterministic recipe
|
|
23
|
+
* would invalidate the provider prefix cache mid-session (same invariant as
|
|
24
|
+
* #1097's placeholder determinism).
|
|
25
|
+
*/
|
|
26
|
+
export declare const DEFAULT_IMAGE_COMPRESSION_CONFIG: Required<ImageCompressionConfig>;
|
|
27
|
+
/** Sub-field merge over defaults; hosts layer global → provider → model
|
|
28
|
+
* exactly like absorb (three levels). */
|
|
29
|
+
export declare function resolveImageCompressionConfig(config: Config): Required<ImageCompressionConfig>;
|
|
30
|
+
/** Pixels-mode fallback when dimensions cannot be parsed header-only: the
|
|
31
|
+
* worst-case high-detail bill. */
|
|
32
|
+
export declare const PIXEL_IMAGE_FALLBACK_TOKENS = 16384;
|
|
33
|
+
export interface ImageDimensions {
|
|
34
|
+
width: number;
|
|
35
|
+
height: number;
|
|
36
|
+
}
|
|
37
|
+
/** Header-only dimension parse: reads just enough leading bytes for container
|
|
38
|
+
* headers. Supports PNG / GIF / BMP / WebP (VP8X, VP8L, VP8 lossy) / JPEG
|
|
39
|
+
* (SOF segment scan). Unknown formats or truncated headers → undefined. */
|
|
40
|
+
export declare function parseImageDimensions(bytes: Uint8Array): ImageDimensions | undefined;
|
|
41
|
+
/** Base64 convenience entry: decodes only the leading slice — enough for
|
|
42
|
+
* container headers (PNG/GIF/BMP/WebP within 64 chars; JPEG SOF within ~350K
|
|
43
|
+
* chars of EXIF bloat). Node-targeted (Buffer). */
|
|
44
|
+
export declare function parseImageDimensionsFromBase64(b64: string): ImageDimensions | undefined;
|
|
45
|
+
/** OpenAI high-detail tile model: scale so the short side is at least 768
|
|
46
|
+
* (providers bill small images enlarged), cap the long side at 2048, then
|
|
47
|
+
* 85 + 170 per 512×512 tile. Bounds ≈ [765, 2805]. */
|
|
48
|
+
export declare function pixelTileEstimate(width: number, height: number): number;
|
|
49
|
+
/** One image attachment's metadata as seen by the routing decision. */
|
|
50
|
+
export interface ImageMeta {
|
|
51
|
+
mediaType: string;
|
|
52
|
+
/** Length of the base64 payload (characters). */
|
|
53
|
+
base64Length: number;
|
|
54
|
+
width?: number;
|
|
55
|
+
height?: number;
|
|
56
|
+
/** Upstream billing mode for this image. Default "bytes" (conservative). */
|
|
57
|
+
billing?: ImageBillingMode;
|
|
58
|
+
/** Optional base64 payload; only its leading decode budget is read, and
|
|
59
|
+
* only when width/height are missing in pixels mode. */
|
|
60
|
+
base64?: string;
|
|
61
|
+
}
|
|
62
|
+
/** Billing-aware estimate of an image's token cost. Pixels mode uses the tile
|
|
63
|
+
* model on real dimensions (header-parsed from the payload head when absent);
|
|
64
|
+
* bytes mode counts ceil(base64len/4). Unknown dims in pixels mode fall back
|
|
65
|
+
* to PIXEL_IMAGE_FALLBACK_TOKENS. */
|
|
66
|
+
export declare function estimateImageTokens(meta: ImageMeta): number;
|
|
67
|
+
/** Pluggable screenshot classifier. v1 ships the heuristic below; a trained
|
|
68
|
+
* router slots in here later without pipeline changes. */
|
|
69
|
+
export interface ScreenshotClassifier {
|
|
70
|
+
readonly name: string;
|
|
71
|
+
isScreenshotLike(meta: ImageMeta): boolean;
|
|
72
|
+
}
|
|
73
|
+
export interface HeuristicClassifierOptions {
|
|
74
|
+
/** Low end of the long/short aspect band. Default 1.4. */
|
|
75
|
+
aspectRatioMin?: number;
|
|
76
|
+
/** High end of the long/short aspect band. Default 2.6. */
|
|
77
|
+
aspectRatioMax?: number;
|
|
78
|
+
/** Short-side floor (px): below it even band-shaped images pass — small
|
|
79
|
+
* crops would be upscaled by the tile model and billed larger. Default 720. */
|
|
80
|
+
minShortSide?: number;
|
|
81
|
+
}
|
|
82
|
+
/** v1 heuristic: long/short aspect ratio within [1.4, 2.6] AND short side ≥
|
|
83
|
+
* 720 px. Missing dimensions → false (conservative: never route what cannot
|
|
84
|
+
* be classified). Known limitation: 3:2 photos (ratio 1.5) false-positive as
|
|
85
|
+
* screenshots until a trained router slots into the classifier interface. */
|
|
86
|
+
export declare function createHeuristicClassifier(options?: HeuristicClassifierOptions): ScreenshotClassifier;
|
|
87
|
+
export declare const DEFAULT_SCREENSHOT_CLASSIFIER: ScreenshotClassifier;
|
|
88
|
+
export type ImageRouteReason = "disabled" | "not-an-image" | "below-min-tokens" | "not-screenshot-like" | "downsample";
|
|
89
|
+
/** Downsample parameters the host executes with its own encoder (sharp etc.). */
|
|
90
|
+
export interface DownsampleRecipe {
|
|
91
|
+
/** Longest side (px) after resize. */
|
|
92
|
+
maxDimension: number;
|
|
93
|
+
quality: number;
|
|
94
|
+
format: ImageFormat;
|
|
95
|
+
}
|
|
96
|
+
export interface ImageRoutingDecision {
|
|
97
|
+
action: "pass" | "downsample";
|
|
98
|
+
reason: ImageRouteReason;
|
|
99
|
+
/** Token estimate of the ORIGINAL payload (host log lines). */
|
|
100
|
+
estimatedTokens: number;
|
|
101
|
+
recipe?: DownsampleRecipe;
|
|
102
|
+
}
|
|
103
|
+
/** Pure + deterministic: same input + config → identical decision, always.
|
|
104
|
+
* The host executes the returned recipe exactly once, at arrival time. */
|
|
105
|
+
export declare function decideImageRoute(meta: ImageMeta, config: Config, classifier?: ScreenshotClassifier): ImageRoutingDecision;
|
|
106
|
+
/** Failure-prefix convention (mirrors absorb's marker style): any resultText
|
|
107
|
+
* starting with this marks a rejected call. */
|
|
108
|
+
export declare const IMAGE_FULL_FAILURE_MARKER = "[image_full FAILED:";
|
|
109
|
+
/** Byte-stable system-prompt fragment; count = images downscaled so far in
|
|
110
|
+
* this session. Hosts inject it while the feature is enabled and shrinks
|
|
111
|
+
* exist. */
|
|
112
|
+
export declare function buildImageFullSystemNote(count: number): string;
|
|
113
|
+
/** Content-store entry-kind contract for image originals (#1097 store layout:
|
|
114
|
+
* binary sidecar entries under the same mNNNNN key scheme, append-once,
|
|
115
|
+
* drop-on-fold). The kernel owns this shape; file I/O stays host-side. */
|
|
116
|
+
export interface ImageStoreEntry {
|
|
117
|
+
kind: "image";
|
|
118
|
+
ref: string;
|
|
119
|
+
rawMessageId: string;
|
|
120
|
+
mediaType: string;
|
|
121
|
+
originalBytes: number;
|
|
122
|
+
createdAt: number;
|
|
123
|
+
}
|
|
124
|
+
export interface ParsedImageFull {
|
|
125
|
+
ref: string;
|
|
126
|
+
callId?: string;
|
|
127
|
+
}
|
|
128
|
+
/** Lenient arg parser mirroring parseAbsorbInput: accepts object or JSON-
|
|
129
|
+
* string payloads, key aliases (ref/messageId/of), trims whitespace. */
|
|
130
|
+
export declare function parseImageFullInput(input: unknown, callId?: string, onWarn?: (message: string) => void): ParsedImageFull | null;
|
|
131
|
+
/** Append one shrink record and bump cumulative stats. Pure: returns new state. */
|
|
132
|
+
export declare function recordImageShrink(state: CompressionState, record: ImageShrinkRecord): CompressionState;
|
|
133
|
+
export declare function isImageFullRestored(state: CompressionState, ref: string): boolean;
|
|
134
|
+
export declare function imageShrinksForRef(state: CompressionState, ref: string): ImageShrinkRecord[];
|
|
135
|
+
export interface ImageFullInput {
|
|
136
|
+
ref: string;
|
|
137
|
+
state: CompressionState;
|
|
138
|
+
config: Config;
|
|
139
|
+
}
|
|
140
|
+
export interface ImageFullOutcome {
|
|
141
|
+
state: CompressionState;
|
|
142
|
+
ok: boolean;
|
|
143
|
+
resultText: string;
|
|
144
|
+
}
|
|
145
|
+
/** Sticky-restore state machine. Success marks the ref restored for the rest
|
|
146
|
+
* of the session (idempotent re-calls report "already restored"). Failure
|
|
147
|
+
* modes return ok:false with an [image_full FAILED: ...] resultText. Pure:
|
|
148
|
+
* returns new state. */
|
|
149
|
+
export declare function applyImageFull(input: ImageFullInput): ImageFullOutcome;
|
|
150
|
+
/** Drop ref-keyed image_full state after a compaction reset (native-compaction
|
|
151
|
+
* archive, fork recovery, session restart). Refs are re-issued from m00001
|
|
152
|
+
* after a state reset, so stale entries would misattribute. Cumulative stats
|
|
153
|
+
* survive — they remain valid aggregates. Hosts MUST call this on every
|
|
154
|
+
* state reset. */
|
|
155
|
+
export declare function resetImageFullState(state: CompressionState): CompressionState;
|
|
156
|
+
//# sourceMappingURL=image-compress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image-compress.d.ts","sourceRoot":"","sources":["../src/image-compress.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -32,11 +32,13 @@ export { renderHandoff, renderMessage, matchSession } from "./handoff.js";
|
|
|
32
32
|
export type { HandoffInput, HandoffMeta, HandoffBlockFull } from "./handoff.js";
|
|
33
33
|
export { hideConsumedCompressCalls } from "./hide-consumed.js";
|
|
34
34
|
export type { HideConsumedResult } from "./hide-consumed.js";
|
|
35
|
-
export { ABSORB_TOOL_NAME, ABSORB_TOOL, ABSORB_TOOL_OPENAI, } from "./compress-tools.js";
|
|
35
|
+
export { ABSORB_TOOL_NAME, ABSORB_TOOL, ABSORB_TOOL_OPENAI, IMAGE_FULL_TOOL_NAME, IMAGE_FULL_TOOL, IMAGE_FULL_TOOL_OPENAI, IMAGE_FULL_TOOL_RESPONSES, } from "./compress-tools.js";
|
|
36
36
|
export { ABSORB_PROMPT_MARKER, DEFAULT_ABSORB_CONFIG, resolveAbsorbConfig, buildAbsorbPrompt, buildAbsorbSystemPrompt, isAbsorbCandidate, hideAbsorbedMessages, appendAbsorbPrompts, parseAbsorbInput, applyAbsorb, } from "./absorb.js";
|
|
37
37
|
export type { AbsorbInput, AbsorbOutcome, ParsedAbsorb, AppendAbsorbPromptsResult, } from "./absorb.js";
|
|
38
38
|
export { RULE_TOOL_NAME, DEFAULT_RULE_LIMITS, RULES_USAGE_PROMPT, listRules, allocateRuleId, resolveRuleLimits, addRule, removeRule, clearRules, formatRulesForPrompt, formatRulesList, } from "./rules.js";
|
|
39
39
|
export type { RuleLimits, AddRuleResult, RemoveRuleResult, ClearRulesResult, } from "./rules.js";
|
|
40
|
+
export { DEFAULT_IMAGE_COMPRESSION_CONFIG, resolveImageCompressionConfig, PIXEL_IMAGE_FALLBACK_TOKENS, parseImageDimensions, parseImageDimensionsFromBase64, pixelTileEstimate, estimateImageTokens, createHeuristicClassifier, DEFAULT_SCREENSHOT_CLASSIFIER, decideImageRoute, buildImageFullSystemNote, parseImageFullInput, recordImageShrink, isImageFullRestored, imageShrinksForRef, applyImageFull, resetImageFullState, IMAGE_FULL_FAILURE_MARKER, } from "./image-compress.js";
|
|
41
|
+
export type { ImageDimensions, ImageMeta, ScreenshotClassifier, HeuristicClassifierOptions, ImageRouteReason, DownsampleRecipe, ImageRoutingDecision, ParsedImageFull, ImageStoreEntry, ImageFullInput, ImageFullOutcome, } from "./image-compress.js";
|
|
40
42
|
export { rebuildCompressionState } from "./rebuild.js";
|
|
41
43
|
export type { RebuildResult, RebuildPorts } from "./rebuild.js";
|
|
42
44
|
export { parseCompressArgs } from "./parse-compress-input.js";
|
|
@@ -53,6 +55,4 @@ export { collectLatestProtected, isMessageLatestProtected, isMessageProtected, m
|
|
|
53
55
|
export { runPipeline, makeIO, type PipelineNode, type PipelineContext, type NodeIO, type NodeEffects, } from "./pipeline.js";
|
|
54
56
|
export * from "./filter/index.js";
|
|
55
57
|
export { VIABLE_RANGE_MIN_TOKENS, viableRanges } from "./viable.js";
|
|
56
|
-
export { classifyTurn, verbosityDirective, renderSteeringBlock, applySteeringToPrompt, clampEffortToFloor, resolveVerbosityLevel, resolveOutputSteeringConfig, decideOutputSteering, VERBOSITY_LEVELS, EFFORT_LADDER, DEFAULT_OUTPUT_STEERING_CONFIG, DEFAULT_STEERING_SENTINEL, DEFAULT_VERBOSITY_LEVEL, MIN_VERBOSITY_LEVEL, MAX_VERBOSITY_LEVEL, } from "./output-steering.js";
|
|
57
|
-
export type { TurnKind, StructuralMessage, StructuralBlock, OutputSteeringConfig, OutputSteeringDecision, SteeringPlacement, EffortValue, } from "./output-steering.js";
|
|
58
58
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|