pi-smart-compact 8.0.5 → 8.0.6
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/CHANGELOG.md +10 -0
- package/README.md +33 -21
- package/dist/app/mode-policy.d.ts.map +1 -1
- package/dist/app/run-smart-compact.d.ts.map +1 -1
- package/dist/app/steps/synthesize.d.ts.map +1 -1
- package/dist/app/steps/verify.d.ts.map +1 -1
- package/dist/constants.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +208 -102
- package/dist/provider-eval.js +1 -1
- package/dist/provider-scenario-eval.js +5 -2
- package/dist/telemetry-report.js +1 -1
- package/dist/types.d.ts +3 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/ui/overlays.d.ts +1 -1
- package/dist/ui/overlays.d.ts.map +1 -1
- package/dist/utils/helpers.d.ts.map +1 -1
- package/docs/MIGRATING_TO_V8.md +5 -4
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,16 @@
|
|
|
4
4
|
|
|
5
5
|
No changes yet.
|
|
6
6
|
|
|
7
|
+
## [8.0.6] - 2026-08-07
|
|
8
|
+
|
|
9
|
+
### Changed
|
|
10
|
+
|
|
11
|
+
- Replaced the dense flat `/smart-compact` preflight with a bordered decision card: context pressure, prominent `[M] Change` summary-model route, and side-by-side after-size/saving estimates for exactly Fast, Balanced, and Thorough. The selected plan keeps only outcome, retention, and hard safety guarantees visible; `D` reveals estimator, target, boundary, and route internals.
|
|
12
|
+
- Consolidated execution into three monotonic policies: Fast is the quickest/most compact 10K-tail policy, Balanced is the 20K-tail default, and Thorough is the 30K-tail high-fidelity policy with Explore and optional LLM repair. Legacy `aggressive` inputs map to Fast with a deprecation warning rather than appearing as a fourth mode.
|
|
13
|
+
- Manual runs now show a two-line semantic live brief: the colored Extract → Explore → Synthesize → Verify → Apply chain plus meaningful actions such as topic mapping, batch compression, continuity assembly, deterministic repair, and correlated Apply. Before Apply it explicitly states that the conversation is unchanged.
|
|
14
|
+
- Replaced routine phase toasts and per-batch provider/watchdog warnings with the live brief and content-free aggregated fallback status. Expected single-pass, Explore, batch, and assembly fallbacks no longer print raw provider messages or request IDs; auto-trigger verification failures emit one concise safe-fallback notice instead of evidence-bearing stderr lines. Full diagnostics remain opt-in through `DEBUG=smart-compact`.
|
|
15
|
+
- Fixed deterministic verification of Markdown-prefixed multiline errors (`> npm…`, list/heading prefixes): verification now canonicalizes the source snippet with the same safe one-line transform used by fallback rendering. The captured 259,782-token session replay now plans ~26,267 tokens after, repairs the remaining fabricated-file finding, and reaches 100/100 with 0 gaps even when every synthesis batch uses deterministic fallback.
|
|
16
|
+
|
|
7
17
|
## [8.0.5] - 2026-08-07
|
|
8
18
|
|
|
9
19
|
### Fixed
|
package/README.md
CHANGED
|
@@ -128,14 +128,14 @@ Set `contextGraphEnabled` to `false` to disable indexing and both tools.
|
|
|
128
128
|
|
|
129
129
|
### Manual preflight
|
|
130
130
|
|
|
131
|
-
The interactive command uses the configured summary route and
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
- `↑` / `↓` changes `
|
|
131
|
+
The interactive command uses the configured summary route and exact execution
|
|
132
|
+
planner before spending LLM tokens. Its compact decision card compares the
|
|
133
|
+
three modes by estimated after-size and saving, highlights the recommendation,
|
|
134
|
+
and keeps only the selected plan plus hard tool-pair/zero-gap guarantees in the
|
|
135
|
+
primary view. Technical estimator, target, route, and boundary data stays under
|
|
136
|
+
`D` instead of crowding the decision.
|
|
137
|
+
|
|
138
|
+
- `↑` / `↓` changes `Fast`, `Balanced`, or `Thorough` and recalculates the plan.
|
|
139
139
|
- `Enter` runs only a viable plan; `Esc` cancels without mutation.
|
|
140
140
|
- `D` toggles calibrated estimator, target, boundary, and route details.
|
|
141
141
|
- `M` opens Advanced model selection and replans with that route's calibration.
|
|
@@ -149,12 +149,18 @@ working tail stays raw. Tool exchanges are summarized or retained as complete
|
|
|
149
149
|
call/result pairs, never split. If Verify, yield, provider, or native apply
|
|
150
150
|
fails, the UI shows one bounded actionable line without evidence text or a
|
|
151
151
|
JavaScript stack. Stack diagnostics are opt-in with `DEBUG=smart-compact`.
|
|
152
|
+
During execution a two-line live brief shows the EESV phase chain and the
|
|
153
|
+
meaningful current action; it states that the conversation remains unchanged
|
|
154
|
+
until verified Apply. Routine phase toasts and raw per-batch watchdog/provider
|
|
155
|
+
errors are suppressed by default: handled fallbacks appear as one content-free
|
|
156
|
+
brief. `verbose` restores routine phase notices; full stack diagnostics require
|
|
157
|
+
`DEBUG=smart-compact`.
|
|
152
158
|
|
|
153
159
|
### Focus and budgets
|
|
154
160
|
|
|
155
161
|
```bash
|
|
156
|
-
/smart-compact
|
|
157
|
-
/smart-compact
|
|
162
|
+
/smart-compact balanced --focus=authentication
|
|
163
|
+
/smart-compact fast --max-input-tokens=120000
|
|
158
164
|
/smart-compact fast --focus=src/auth.ts --max-calls=3
|
|
159
165
|
/smart-compact thorough
|
|
160
166
|
```
|
|
@@ -173,13 +179,17 @@ The tool exposes equivalent `focus`, `max_calls`, `max_input_tokens`, and
|
|
|
173
179
|
|
|
174
180
|
| Mode | Calls | Prompt cap | Output cap | Behavior |
|
|
175
181
|
| --- | ---: | ---: | ---: | --- |
|
|
176
|
-
| `
|
|
177
|
-
| `balanced` | 6 | 200K | 40K |
|
|
178
|
-
| `
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
182
|
+
| `fast` | 3 | 100K | 20K | Quickest recovery; 3K summary, 10K recent tail, 30% context target |
|
|
183
|
+
| `balanced` | 6 | 200K | 40K | Default quality/speed trade-off; 6K summary, 20K recent tail, 40% target |
|
|
184
|
+
| `thorough` | 8 | 300K | 80K | Deepest analysis; 10K summary, 30K recent tail, 50% target, Explore and optional LLM repair |
|
|
185
|
+
|
|
186
|
+
These are the only three execution modes. Automatic runs choose among them
|
|
187
|
+
from context pressure and deterministic session risk; `auto` is a selector,
|
|
188
|
+
not a fourth execution policy. Fast can use a zero-call deterministic summary
|
|
189
|
+
when extraction confidence is high; otherwise it keeps the bounded LLM path.
|
|
190
|
+
The mode token target is binding: recent user turns, pi-toolkit checkpoints,
|
|
191
|
+
and topical grouping remain raw only when they fit the planned tail; otherwise
|
|
192
|
+
the verified summary carries them forward.
|
|
183
193
|
|
|
184
194
|
Output caps stop subsequent calls after observed usage reaches the threshold.
|
|
185
195
|
The ChatGPT Codex subscription endpoint rejects `max_output_tokens`,
|
|
@@ -189,8 +199,10 @@ back deterministically on abort. Custom Codex endpoints receive
|
|
|
189
199
|
`max_output_tokens` through Pi AI's payload hook.
|
|
190
200
|
|
|
191
201
|
Legacy compression profiles remain as advanced/backwards-compatible policy:
|
|
192
|
-
`light` maps to `thorough
|
|
193
|
-
|
|
202
|
+
`light` maps to `thorough`, `balanced` maps to `balanced`, and `aggressive` maps
|
|
203
|
+
to `fast` with a deprecation warning. The selected model never changes
|
|
204
|
+
automatically; `M` changes the summary route inside preflight and recalculates
|
|
205
|
+
all three plans.
|
|
194
206
|
|
|
195
207
|
### Stage-aware provider routing
|
|
196
208
|
|
|
@@ -388,7 +400,7 @@ the run fails closed before staging or apply.
|
|
|
388
400
|
|
|
389
401
|
| Key | Type | Default | Notes |
|
|
390
402
|
| --- | --- | --- | --- |
|
|
391
|
-
| `mode` | `auto \|
|
|
403
|
+
| `mode` | `auto \| fast \| balanced \| thorough` | `auto` | Automatic selector or one of the three execution modes |
|
|
392
404
|
| `profile` | `light \| balanced \| aggressive` | `balanced` | Legacy/advanced compression profile; used when mode is absent |
|
|
393
405
|
| `summaryModel` | `string \| null` | `null` | Uses the active session model when null |
|
|
394
406
|
| `segmentationModel` | `string \| null` | `null` | Optional explicit model for Explore |
|
|
@@ -410,7 +422,7 @@ the run fails closed before staging or apply.
|
|
|
410
422
|
| `codexMaxCallMs` | integer `0` or `5000–300000` | `0` | ChatGPT Codex per-call watchdog; `0` derives 15–90s from requested output tokens |
|
|
411
423
|
| `maxLatencyMs` | `0` or `5000–600000` | `0` | `0` means unlimited |
|
|
412
424
|
| `focusWeighting` | `boolean` | `true` | Weight focused topics/paths higher |
|
|
413
|
-
| `zeroCallEnabled` | `boolean` | `true` | Use deterministic synthesis for high-confidence
|
|
425
|
+
| `zeroCallEnabled` | `boolean` | `true` | Use deterministic synthesis for high-confidence Fast runs |
|
|
414
426
|
| `contextGraphEnabled` | `boolean` | `true` | Index verified state and enable project-scoped recall/save tools |
|
|
415
427
|
| `telemetryChannel` | `stable \| canary` | `stable` | Tag local schema-v2 metrics for external canary comparison |
|
|
416
428
|
| `onlineDamageMonitor` | `boolean` | `true` | Observe post-compaction regression signals |
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mode-policy.d.ts","sourceRoot":"","sources":["../../src/app/mode-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAAE,eAAe,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,oBAAoB,EACnG,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5D,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,uBAAuB,EAAE,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"mode-policy.d.ts","sourceRoot":"","sources":["../../src/app/mode-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAAE,eAAe,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,oBAAoB,EACnG,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5D,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,uBAAuB,EAAE,UAAU,CAAC,CAgB/E,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,GAAG,uBAAuB,CAE1F;AAED,gFAAgF;AAChF,wBAAgB,WAAW,CACzB,SAAS,EAAE,cAAc,EACzB,cAAc,EAAE,MAAM,EACtB,UAAU,CAAC,EAAE,oBAAoB,EACjC,cAAc,SAAI,GACjB,uBAAuB,CAezB;AAED,wBAAgB,iCAAiC,CAC/C,UAAU,EAAE,oBAAoB,EAChC,OAAO,GAAE;IAAE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO,GAClE,MAAM,CAeR;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,GAAG,MAAM,CAOpE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,uBAAuB,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAG3G;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAG/E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-smart-compact.d.ts","sourceRoot":"","sources":["../../src/app/run-smart-compact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAExE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAKtE,OAAO,KAAK,EACQ,UAAU,EAC7B,MAAM,kBAAkB,CAAC;AAc1B;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED,0EAA0E;AAC1E,MAAM,WAAW,mBAAmB;IAClC;;;;;;;OAOG;IACH,GAAG,EAAE,gBAAgB,CAAC;IACtB,4EAA4E;IAC5E,MAAM,CAAC,EAAE,OAAO,aAAa,EAAE,aAAa,CAAC;IAC7C,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACrB,kFAAkF;IAClF,WAAW,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,yEAAyE;IACzE,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC;IAC1C,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,4EAA4E;IAC5E,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wGAAwG;IACxG,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,sGAAsG;IACtG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oFAAoF;IACpF,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAAC;IACpD,mEAAmE;IACnE,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC;CAC/D;
|
|
1
|
+
{"version":3,"file":"run-smart-compact.d.ts","sourceRoot":"","sources":["../../src/app/run-smart-compact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAExE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAKtE,OAAO,KAAK,EACQ,UAAU,EAC7B,MAAM,kBAAkB,CAAC;AAc1B;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED,0EAA0E;AAC1E,MAAM,WAAW,mBAAmB;IAClC;;;;;;;OAOG;IACH,GAAG,EAAE,gBAAgB,CAAC;IACtB,4EAA4E;IAC5E,MAAM,CAAC,EAAE,OAAO,aAAa,EAAE,aAAa,CAAC;IAC7C,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACrB,kFAAkF;IAClF,WAAW,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,yEAAyE;IACzE,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC;IAC1C,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,4EAA4E;IAC5E,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wGAAwG;IACxG,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,sGAAsG;IACtG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oFAAoF;IACpF,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAAC;IACpD,mEAAmE;IACnE,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC;CAC/D;AAwDD,wBAAsB,eAAe,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2M9E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"synthesize.d.ts","sourceRoot":"","sources":["../../../src/app/steps/synthesize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAcH,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAKpE,wBAAsB,qBAAqB,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"synthesize.d.ts","sourceRoot":"","sources":["../../../src/app/steps/synthesize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAcH,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAKpE,wBAAsB,qBAAqB,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAqWnF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../src/app/steps/verify.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAYnE,wBAAsB,cAAc,CAAC,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../src/app/steps/verify.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAYnE,wBAAsB,cAAc,CAAC,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,CA0G3E"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -8,7 +8,7 @@ import type { CompressionProfile, ProfileConfig } from "./types.ts";
|
|
|
8
8
|
* `package.json#version`. Do not hand-edit this line for releases; bump
|
|
9
9
|
* package.json and run `bun run sync-version`.
|
|
10
10
|
*/
|
|
11
|
-
export declare const VERSION = "8.0.
|
|
11
|
+
export declare const VERSION = "8.0.6";
|
|
12
12
|
export declare const CHARS_PER_TOKEN = 3.8;
|
|
13
13
|
export declare const MIN_COMPACTION_SAVING_RATIO = 0.1;
|
|
14
14
|
export declare const ESTIMATOR_ROUNDING_TOLERANCE_TOKENS = 1;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAgB,KAAK,YAAY,EAAE,KAAK,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACzG,OAAO,EAAc,KAAK,KAAK,EAAE,KAAK,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAKzE,OAAO,EAAE,UAAU,EAAwE,MAAM,oBAAoB,CAAC;AAyDtH,iEAAiE;AACjE,wBAAgB,aAAa,CAAC,GAAG,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAG5F;AAED,wBAAgB,aAAa,CAC3B,GAAG,EAAE,gBAAgB,EACrB,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,EAC/B,MAAM,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,EACrC,QAAQ,UAAQ,GACf;IAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAAC,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAA;CAAE,CAwB7G;AAeD,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,EAAE,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAgB,KAAK,YAAY,EAAE,KAAK,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACzG,OAAO,EAAc,KAAK,KAAK,EAAE,KAAK,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAKzE,OAAO,EAAE,UAAU,EAAwE,MAAM,oBAAoB,CAAC;AAyDtH,iEAAiE;AACjE,wBAAgB,aAAa,CAAC,GAAG,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAG5F;AAED,wBAAgB,aAAa,CAC3B,GAAG,EAAE,gBAAgB,EACrB,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,EAC/B,MAAM,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,EACrC,QAAQ,UAAQ,GACf;IAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAAC,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAA;CAAE,CAwB7G;AAeD,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,EAAE,EAAE,YAAY,QA+jB7D"}
|
package/dist/index.js
CHANGED
|
@@ -9,7 +9,7 @@ import { Type as Type2 } from "typebox";
|
|
|
9
9
|
// src/app/mode-policy.ts
|
|
10
10
|
var MODE_POLICIES = {
|
|
11
11
|
fast: {
|
|
12
|
-
profile: "
|
|
12
|
+
profile: "aggressive",
|
|
13
13
|
maxLlmCalls: 3,
|
|
14
14
|
maxInputTokens: 1e5,
|
|
15
15
|
maxOutputTokens: 20000,
|
|
@@ -18,7 +18,7 @@ var MODE_POLICIES = {
|
|
|
18
18
|
singlePassMultiplier: 2,
|
|
19
19
|
batchOutput: { min: 800, perChunk: 160, max: 2400 },
|
|
20
20
|
softLatencyMs: 30000,
|
|
21
|
-
targetContextPercent:
|
|
21
|
+
targetContextPercent: 30
|
|
22
22
|
},
|
|
23
23
|
balanced: {
|
|
24
24
|
profile: "balanced",
|
|
@@ -32,18 +32,6 @@ var MODE_POLICIES = {
|
|
|
32
32
|
softLatencyMs: 60000,
|
|
33
33
|
targetContextPercent: 40
|
|
34
34
|
},
|
|
35
|
-
aggressive: {
|
|
36
|
-
profile: "aggressive",
|
|
37
|
-
maxLlmCalls: 4,
|
|
38
|
-
maxInputTokens: 120000,
|
|
39
|
-
maxOutputTokens: 25000,
|
|
40
|
-
explore: false,
|
|
41
|
-
allowLlmPatch: false,
|
|
42
|
-
singlePassMultiplier: 2,
|
|
43
|
-
batchOutput: { min: 800, perChunk: 180, max: 2400 },
|
|
44
|
-
softLatencyMs: 45000,
|
|
45
|
-
targetContextPercent: 30
|
|
46
|
-
},
|
|
47
35
|
thorough: {
|
|
48
36
|
profile: "light",
|
|
49
37
|
maxLlmCalls: 8,
|
|
@@ -58,13 +46,13 @@ var MODE_POLICIES = {
|
|
|
58
46
|
}
|
|
59
47
|
};
|
|
60
48
|
function modeFromLegacyProfile(profile) {
|
|
61
|
-
return profile === "light" ? "thorough" : profile;
|
|
49
|
+
return profile === "light" ? "thorough" : profile === "aggressive" ? "fast" : "balanced";
|
|
62
50
|
}
|
|
63
51
|
function resolveMode(requested, contextPercent, extraction, additionalRisk = 0) {
|
|
64
52
|
if (requested !== "auto")
|
|
65
|
-
return requested;
|
|
53
|
+
return requested === "aggressive" ? "fast" : requested;
|
|
66
54
|
if (contextPercent >= 85)
|
|
67
|
-
return "
|
|
55
|
+
return "fast";
|
|
68
56
|
if (!extraction)
|
|
69
57
|
return contextPercent < 70 ? "fast" : "balanced";
|
|
70
58
|
const unresolved = extraction.errors.filter((error) => !error.resolved).length;
|
|
@@ -117,7 +105,7 @@ function effectiveBudget(configured, modeDefault) {
|
|
|
117
105
|
}
|
|
118
106
|
|
|
119
107
|
// src/constants.ts
|
|
120
|
-
var VERSION = "8.0.
|
|
108
|
+
var VERSION = "8.0.6";
|
|
121
109
|
var CHARS_PER_TOKEN = 3.8;
|
|
122
110
|
var MIN_COMPACTION_SAVING_RATIO = 0.1;
|
|
123
111
|
var ESTIMATOR_ROUNDING_TOLERANCE_TOKENS = 1;
|
|
@@ -1687,12 +1675,16 @@ function extractStructured(msgs, pc, precomputedTcIdx) {
|
|
|
1687
1675
|
|
|
1688
1676
|
// src/utils/helpers.ts
|
|
1689
1677
|
var VALID_PROFILES = ["light", "balanced", "aggressive"];
|
|
1690
|
-
var VALID_MODES = ["auto", "
|
|
1678
|
+
var VALID_MODES = ["auto", "fast", "balanced", "thorough"];
|
|
1691
1679
|
var VALID_THINKING_LEVELS = ["minimal", "low", "medium", "high", "xhigh", "max"];
|
|
1692
1680
|
var PROFILE_NUMERIC_KEYS = ["summaryBudgetTokens", "keepRecentTokens", "minChunkTokens", "maxChunkTokens", "singlePassMaxTokens", "batchMaxTokens"];
|
|
1693
1681
|
function validateSmartCompactConfig(sc) {
|
|
1682
|
+
if (sc.mode === "aggressive") {
|
|
1683
|
+
warn("smart-compact config: mode 'aggressive' is deprecated; using 'fast'.");
|
|
1684
|
+
sc.mode = "fast";
|
|
1685
|
+
}
|
|
1694
1686
|
if ("mode" in sc && !VALID_MODES.includes(sc.mode)) {
|
|
1695
|
-
warn("smart-compact config: invalid mode '" + sc.mode + "', expected auto|balanced|
|
|
1687
|
+
warn("smart-compact config: invalid mode '" + sc.mode + "', expected auto|fast|balanced|thorough. Using default 'auto'.");
|
|
1696
1688
|
delete sc.mode;
|
|
1697
1689
|
}
|
|
1698
1690
|
if ("telemetryChannel" in sc && sc.telemetryChannel !== "stable" && sc.telemetryChannel !== "canary") {
|
|
@@ -4171,7 +4163,7 @@ function isUnresolvedSessionId(id) {
|
|
|
4171
4163
|
|
|
4172
4164
|
// src/ui/overlays.ts
|
|
4173
4165
|
import { DynamicBorder } from "@earendil-works/pi-coding-agent";
|
|
4174
|
-
import { Container, Key, matchesKey, SelectList, Text, truncateToWidth,
|
|
4166
|
+
import { Container, Key, matchesKey, SelectList, Text, truncateToWidth, visibleWidth } from "@earendil-works/pi-tui";
|
|
4175
4167
|
|
|
4176
4168
|
// src/utils/fingerprint.ts
|
|
4177
4169
|
import path7 from "path";
|
|
@@ -5389,18 +5381,16 @@ async function selectModel(ctx, opts) {
|
|
|
5389
5381
|
return null;
|
|
5390
5382
|
return options[parseInt(result.slice(6), 10)] ?? null;
|
|
5391
5383
|
}
|
|
5392
|
-
var PRIMARY_MODES = ["
|
|
5384
|
+
var PRIMARY_MODES = ["fast", "balanced", "thorough"];
|
|
5393
5385
|
var MODE_LABELS = {
|
|
5394
|
-
thorough: "Thorough",
|
|
5395
|
-
balanced: "Balanced",
|
|
5396
5386
|
fast: "Fast",
|
|
5397
|
-
|
|
5387
|
+
balanced: "Balanced",
|
|
5388
|
+
thorough: "Thorough"
|
|
5398
5389
|
};
|
|
5399
5390
|
var MODE_COPY = {
|
|
5400
|
-
|
|
5401
|
-
balanced: "default
|
|
5402
|
-
|
|
5403
|
-
aggressive: "maximum recovery \xB7 10K base recent tail"
|
|
5391
|
+
fast: "quickest \xB7 compact 10K recent tail \xB7 3K summary",
|
|
5392
|
+
balanced: "default quality/speed \xB7 20K recent tail \xB7 6K summary",
|
|
5393
|
+
thorough: "deepest analysis \xB7 rich 30K recent tail \xB7 10K summary"
|
|
5404
5394
|
};
|
|
5405
5395
|
function explainPreflightReason(reason) {
|
|
5406
5396
|
switch (reason) {
|
|
@@ -5438,7 +5428,7 @@ function recommendPreflight(plans) {
|
|
|
5438
5428
|
if (balanced?.plan?.viable) {
|
|
5439
5429
|
return { mode: "balanced", reason: "normal pressure favors the default balance; " + recommendationEvidence(balanced) };
|
|
5440
5430
|
}
|
|
5441
|
-
const fallback = ["
|
|
5431
|
+
const fallback = ["fast", "thorough"].find((mode) => plans.get(mode)?.plan?.viable);
|
|
5442
5432
|
if (fallback) {
|
|
5443
5433
|
const chosen = plans.get(fallback);
|
|
5444
5434
|
return {
|
|
@@ -5451,12 +5441,15 @@ function recommendPreflight(plans) {
|
|
|
5451
5441
|
function tokenCount(value) {
|
|
5452
5442
|
return Math.round(value).toLocaleString() + "t";
|
|
5453
5443
|
}
|
|
5444
|
+
function compactTokenCount(value) {
|
|
5445
|
+
if (Math.abs(value) < 1000)
|
|
5446
|
+
return Math.round(value) + "t";
|
|
5447
|
+
const scaled = value / 1000;
|
|
5448
|
+
return scaled.toFixed(scaled >= 10 ? 1 : 2).replace(/\.0+$|(\.\d*[1-9])0+$/, "$1") + "K";
|
|
5449
|
+
}
|
|
5454
5450
|
function percent(value) {
|
|
5455
5451
|
return Math.round(value).toLocaleString() + "%";
|
|
5456
5452
|
}
|
|
5457
|
-
function windowPercent(tokens, window) {
|
|
5458
|
-
return window > 0 ? percent(tokens / window * 100) : "unknown %";
|
|
5459
|
-
}
|
|
5460
5453
|
var SOFT_BOUNDARY_COPY = {
|
|
5461
5454
|
"recent-user-turn": "older user turn",
|
|
5462
5455
|
anchor: "latest checkpoint",
|
|
@@ -5468,26 +5461,22 @@ function formatPreflightSummary(preflight, modelLabel, details = false) {
|
|
|
5468
5461
|
const plan = preflight.plan;
|
|
5469
5462
|
if (!plan) {
|
|
5470
5463
|
const lines2 = [
|
|
5471
|
-
"
|
|
5472
|
-
"
|
|
5473
|
-
"Hard safeguards: complete tool-call/result pairs and zero-gap verification before apply."
|
|
5464
|
+
"Plan unavailable \xB7 " + explainPreflightReason(preflight.reason),
|
|
5465
|
+
"\u2713 Complete tool pairs \xB7 \u2713 zero-gap verification before apply"
|
|
5474
5466
|
];
|
|
5475
5467
|
if (details)
|
|
5476
|
-
lines2.push("Estimator
|
|
5468
|
+
lines2.push("Estimator messages ~" + tokenCount(preflight.rawEstimatedMessageTokens) + " \xB7 normalization unavailable", "Route " + modelLabel + " \xB7 viability " + preflight.reason);
|
|
5477
5469
|
return lines2;
|
|
5478
5470
|
}
|
|
5479
|
-
const soft = plan.relaxedSoftBoundaries.length ? "Soft boundaries included in summary: " + plan.relaxedSoftBoundaries.map((kind) => SOFT_BOUNDARY_COPY[kind] ?? kind).join(", ") : "Soft boundaries kept when they fit: older user turn, latest checkpoint, adjacent topic";
|
|
5480
5471
|
const lines = [
|
|
5481
|
-
"
|
|
5482
|
-
"
|
|
5483
|
-
"
|
|
5484
|
-
soft,
|
|
5485
|
-
"Hard safeguards: complete tool-call/result pairs and zero-gap verification before apply; " + (plan.hardBoundaryAdjusted ? "boundary adjusted to keep a pair intact" : "no hard-boundary adjustment needed")
|
|
5472
|
+
"Plan " + compactTokenCount(preflight.totalTokens) + " \u2192 ~" + compactTokenCount(plan.projectedAfterTokens) + " \xB7 ~" + compactTokenCount(plan.projectedSavedTokens) + " saved (" + percent(plan.projectedYield * 100) + ")",
|
|
5473
|
+
"Keep ~" + compactTokenCount(plan.retainedTokens) + " recent \xB7 summary up to " + compactTokenCount(plan.summaryBudgetTokens),
|
|
5474
|
+
"\u2713 Complete tool pairs \xB7 \u2713 zero-gap verification before apply"
|
|
5486
5475
|
];
|
|
5487
5476
|
if (!plan.viable)
|
|
5488
|
-
lines.
|
|
5477
|
+
lines.unshift("Unavailable \xB7 " + explainPreflightReason(plan.reason));
|
|
5489
5478
|
if (details)
|
|
5490
|
-
lines.push("
|
|
5479
|
+
lines.push("Target \u2264" + tokenCount(plan.targetAfterTokens) + " \xB7 tail \u2264" + tokenCount(plan.retentionTargetTokens) + " \xB7 fixed ~" + tokenCount(plan.fixedContextTokens), "Estimator ~" + tokenCount(preflight.rawEstimatedMessageTokens) + " messages \xB7 normalized \xD7" + preflight.estimatorScale.toFixed(2), "Boundary " + (plan.hardBoundaryAdjusted ? "tool pair kept intact" : "no hard adjustment") + " \xB7 soft summarized: " + (plan.relaxedSoftBoundaries.map((kind) => SOFT_BOUNDARY_COPY[kind] ?? kind).join(", ") || "none"), "Route " + modelLabel + (preflight.adapted ? " \xB7 damage feedback " + preflight.damageMedian + "/100" : ""));
|
|
5491
5480
|
return lines;
|
|
5492
5481
|
}
|
|
5493
5482
|
var PROGRESS_KEY = "smart-compact-progress";
|
|
@@ -5496,12 +5485,25 @@ function showProgressOverlay(ctx, state) {
|
|
|
5496
5485
|
if (ctx.hasUI === false)
|
|
5497
5486
|
return;
|
|
5498
5487
|
const name = PROGRESS_PHASES[state.phase - 1] ?? state.phaseName;
|
|
5499
|
-
const story = PROGRESS_PHASES.map((phase, index) => index === 1 && state.phase > 2 && !state.explorationRounds ? "\u2013 Explore" : index < state.phase - 1 ? "\u2713 " + phase : index === state.phase - 1 ? "\u25CF " + phase : "\u25CB " + phase).join(" ");
|
|
5500
|
-
const detail = state.detail ? name + " \xB7 " + state.detail : name;
|
|
5501
5488
|
try {
|
|
5502
|
-
ctx.ui.setStatus?.(PROGRESS_KEY, "Smart Compact \xB7 " +
|
|
5489
|
+
ctx.ui.setStatus?.(PROGRESS_KEY, "Smart Compact " + state.phase + "/5 \xB7 " + name);
|
|
5503
5490
|
ctx.ui.setWidget?.(PROGRESS_KEY, (_tui, theme) => ({
|
|
5504
|
-
render: (width) =>
|
|
5491
|
+
render: (width) => {
|
|
5492
|
+
const story = PROGRESS_PHASES.map((phase, index) => {
|
|
5493
|
+
if (index === 1 && state.phase > 2 && !state.explorationRounds)
|
|
5494
|
+
return theme.fg("dim", "\u2013 Explore");
|
|
5495
|
+
if (index < state.phase - 1)
|
|
5496
|
+
return theme.fg("success", "\u2713 " + phase);
|
|
5497
|
+
if (index === state.phase - 1)
|
|
5498
|
+
return theme.fg("accent", theme.bold("\u25CF " + phase));
|
|
5499
|
+
return theme.fg("dim", "\u25CB " + phase);
|
|
5500
|
+
}).join(theme.fg("dim", " "));
|
|
5501
|
+
const safety = state.phase < 5 ? " \xB7 conversation unchanged" : "";
|
|
5502
|
+
return [
|
|
5503
|
+
truncateToWidth(story, width),
|
|
5504
|
+
truncateToWidth(theme.fg("muted", "\u21B3 " + state.detail + safety), width)
|
|
5505
|
+
];
|
|
5506
|
+
},
|
|
5505
5507
|
invalidate: () => {}
|
|
5506
5508
|
}), { placement: "belowEditor" });
|
|
5507
5509
|
} catch {}
|
|
@@ -5786,26 +5788,54 @@ async function showCompactUI(ctx, opts) {
|
|
|
5786
5788
|
let details = false;
|
|
5787
5789
|
return {
|
|
5788
5790
|
render: (width) => {
|
|
5789
|
-
const
|
|
5790
|
-
const
|
|
5791
|
+
const inner = Math.max(1, width - 2);
|
|
5792
|
+
const border = (text) => theme.fg("borderMuted", text);
|
|
5793
|
+
const fit = (text, max = inner) => truncateToWidth(text, Math.max(0, max), "");
|
|
5794
|
+
const fill = (text) => {
|
|
5795
|
+
const clipped = fit(text);
|
|
5796
|
+
return clipped + " ".repeat(Math.max(0, inner - visibleWidth(clipped)));
|
|
5797
|
+
};
|
|
5798
|
+
const cell = (text = "") => border("\u2502") + fill(text) + border("\u2502");
|
|
5799
|
+
const divider = border("\u251C" + "\u2500".repeat(inner) + "\u2524");
|
|
5800
|
+
const title = fit(" Smart Compact ", Math.max(0, inner - 1));
|
|
5801
|
+
const top = border("\u256D\u2500") + theme.fg("accent", theme.bold(title)) + border("\u2500".repeat(Math.max(0, inner - 1 - visibleWidth(title))) + "\u256E");
|
|
5802
|
+
const bottom = border("\u2570" + "\u2500".repeat(inner) + "\u256F");
|
|
5803
|
+
const selectedMode = PRIMARY_MODES[selected];
|
|
5804
|
+
const current = plans.get(selectedMode);
|
|
5805
|
+
const contextWindow = current.contextWindowTokens;
|
|
5806
|
+
const contextPct = Math.round(current.contextPercent);
|
|
5807
|
+
const barLength = width >= 72 ? 14 : 8;
|
|
5808
|
+
const barFilled = Math.min(barLength, Math.round(Math.min(100, contextPct) / 100 * barLength));
|
|
5809
|
+
const contextBar = theme.fg(contextPct >= 90 ? "error" : contextPct >= 70 ? "warning" : "success", "\u2588".repeat(barFilled)) + theme.fg("dim", "\u2591".repeat(barLength - barFilled));
|
|
5810
|
+
const modelPrefix = " Summary model ";
|
|
5811
|
+
const modelAction = theme.fg("accent", " [M] Change");
|
|
5812
|
+
const modelWidth = Math.max(1, inner - visibleWidth(modelPrefix) - visibleWidth(modelAction));
|
|
5791
5813
|
const lines = [
|
|
5792
|
-
|
|
5793
|
-
|
|
5794
|
-
|
|
5795
|
-
|
|
5796
|
-
out("\u2500".repeat(Math.max(0, width)), "borderMuted")
|
|
5814
|
+
top,
|
|
5815
|
+
cell(" Context " + compactTokenCount(opts.contextTokens) + " / " + compactTokenCount(contextWindow) + " " + contextBar + " " + contextPct + "%"),
|
|
5816
|
+
cell(theme.fg("dim", modelPrefix) + fit(selectedModel.label, modelWidth) + modelAction),
|
|
5817
|
+
divider
|
|
5797
5818
|
];
|
|
5798
5819
|
for (let index = 0;index < PRIMARY_MODES.length; index++) {
|
|
5799
5820
|
const mode = PRIMARY_MODES[index];
|
|
5800
5821
|
const preview = plans.get(mode);
|
|
5801
|
-
const
|
|
5802
|
-
|
|
5803
|
-
|
|
5822
|
+
const plan = preview.plan;
|
|
5823
|
+
const viable = plan?.viable ?? false;
|
|
5824
|
+
const marker = index === selected ? "\u203A " : " ";
|
|
5825
|
+
const recommendedMark = mode === recommended.mode ? " recommended" : " ";
|
|
5826
|
+
const trait = mode === "fast" ? "quickest" : mode === "balanced" ? "default" : "deepest";
|
|
5827
|
+
const stats2 = (viable && plan ? "~" + compactTokenCount(plan.projectedAfterTokens) + " after \xB7 " + percent(plan.projectedYield * 100) + " saved" : "unavailable \xB7 " + explainPreflightReason(preview.reason)) + " \xB7 " + trait;
|
|
5828
|
+
const line = " " + marker + MODE_LABELS[mode].padEnd(9) + recommendedMark + " " + stats2;
|
|
5829
|
+
lines.push(cell(index === selected ? theme.fg("accent", theme.bold(line)) : theme.fg(viable ? mode === recommended.mode ? "success" : "text" : "muted", line)));
|
|
5804
5830
|
}
|
|
5805
|
-
lines.push(
|
|
5806
|
-
const current
|
|
5807
|
-
|
|
5808
|
-
|
|
5831
|
+
lines.push(divider);
|
|
5832
|
+
for (const line of formatPreflightSummary(current, selectedModel.value, details)) {
|
|
5833
|
+
const color = line.startsWith("Unavailable") || line.startsWith("Plan unavailable") ? "warning" : line.startsWith("\u2713") ? "success" : "text";
|
|
5834
|
+
lines.push(cell(" " + theme.fg(color, line)));
|
|
5835
|
+
}
|
|
5836
|
+
if (details)
|
|
5837
|
+
lines.push(cell(" " + theme.fg("dim", MODE_LABELS[selectedMode] + " \xB7 " + MODE_COPY[selectedMode])));
|
|
5838
|
+
lines.push(divider, cell(theme.fg("dim", " \u2191\u2193 choose \xB7 Enter run \xB7 D details \xB7 M model \xB7 Esc cancel")), bottom);
|
|
5809
5839
|
return lines;
|
|
5810
5840
|
},
|
|
5811
5841
|
invalidate: () => {},
|
|
@@ -5815,9 +5845,9 @@ async function showCompactUI(ctx, opts) {
|
|
|
5815
5845
|
return;
|
|
5816
5846
|
}
|
|
5817
5847
|
if (keybindings.matches(data, "tui.select.up"))
|
|
5818
|
-
selected =
|
|
5848
|
+
selected = (selected + PRIMARY_MODES.length - 1) % PRIMARY_MODES.length;
|
|
5819
5849
|
else if (keybindings.matches(data, "tui.select.down"))
|
|
5820
|
-
selected =
|
|
5850
|
+
selected = (selected + 1) % PRIMARY_MODES.length;
|
|
5821
5851
|
else if (keybindings.matches(data, "tui.select.confirm")) {
|
|
5822
5852
|
const mode = PRIMARY_MODES[selected];
|
|
5823
5853
|
if (plans.get(mode)?.plan?.viable) {
|
|
@@ -5833,7 +5863,7 @@ async function showCompactUI(ctx, opts) {
|
|
|
5833
5863
|
tui.requestRender();
|
|
5834
5864
|
}
|
|
5835
5865
|
};
|
|
5836
|
-
}, { overlay: true, overlayOptions: { width: "
|
|
5866
|
+
}, { overlay: true, overlayOptions: { width: "68%", minWidth: 52, anchor: "center", maxHeight: "85%" } });
|
|
5837
5867
|
if (!action)
|
|
5838
5868
|
return null;
|
|
5839
5869
|
if (action === "model") {
|
|
@@ -6855,7 +6885,7 @@ async function exploreConversation(llmMessages, extraction, model, auth, prevSum
|
|
|
6855
6885
|
tools: EXPLORATION_TOOLS
|
|
6856
6886
|
}, { apiKey: auth.apiKey, headers: auth.headers, signal, maxTokens: Math.min(4096, model.maxTokens || 4096) }, svc);
|
|
6857
6887
|
} catch (err) {
|
|
6858
|
-
|
|
6888
|
+
debugError("Explore loop stopped", err);
|
|
6859
6889
|
break;
|
|
6860
6890
|
}
|
|
6861
6891
|
const nextToolCalls = response.content.filter((c) => c.type === "toolCall");
|
|
@@ -7441,6 +7471,12 @@ async function summarizeConversation(rc) {
|
|
|
7441
7471
|
const cached = getCachedSynthesis(cacheKey);
|
|
7442
7472
|
if (cached) {
|
|
7443
7473
|
rc.notify("Synthesis cache hit \u2014 no LLM calls", "info");
|
|
7474
|
+
if (!rc.flags.autoTriggered)
|
|
7475
|
+
showProgressOverlay(rc.ctx, {
|
|
7476
|
+
phase: 3,
|
|
7477
|
+
phaseName: "Synthesize",
|
|
7478
|
+
detail: "Reusing the cached continuation summary \xB7 no LLM call"
|
|
7479
|
+
});
|
|
7444
7480
|
const hit = rc;
|
|
7445
7481
|
hit.finalSummary = cached.finalSummary;
|
|
7446
7482
|
hit.method = cached.method;
|
|
@@ -7453,11 +7489,17 @@ async function summarizeConversation(rc) {
|
|
|
7453
7489
|
markMeasuredPhase(hit, "synthesize", synthPhaseStart);
|
|
7454
7490
|
return advance(hit, "_synthesized");
|
|
7455
7491
|
}
|
|
7456
|
-
const zeroCall = rc.config.zeroCallEnabled !== false &&
|
|
7492
|
+
const zeroCall = rc.config.zeroCallEnabled !== false && rc.mode === "fast" && !rc.focus && !rc.userNote && deterministicExtractionConfidence(extraction, {
|
|
7457
7493
|
conversationTokens: rc.convTokens,
|
|
7458
7494
|
toolPercent: rc.toolPercent
|
|
7459
7495
|
}) >= 0.85;
|
|
7460
7496
|
if (zeroCall) {
|
|
7497
|
+
if (!rc.flags.autoTriggered)
|
|
7498
|
+
showProgressOverlay(rc.ctx, {
|
|
7499
|
+
phase: 3,
|
|
7500
|
+
phaseName: "Synthesize",
|
|
7501
|
+
detail: "Building a deterministic continuation summary \xB7 no LLM call"
|
|
7502
|
+
});
|
|
7461
7503
|
const finalSummary2 = assembleFallback([], extraction);
|
|
7462
7504
|
setCachedSynthesis(cacheKey, {
|
|
7463
7505
|
finalSummary: finalSummary2,
|
|
@@ -7494,9 +7536,16 @@ async function summarizeConversation(rc) {
|
|
|
7494
7536
|
try {
|
|
7495
7537
|
summaryAuth = await resolveStageAuth(rc, "summary");
|
|
7496
7538
|
} catch (error2) {
|
|
7497
|
-
|
|
7539
|
+
debugError("Summary route unavailable", error2);
|
|
7540
|
+
rc.notify("Summary route unavailable \xB7 using deterministic fallback", "info");
|
|
7498
7541
|
}
|
|
7499
7542
|
if (!summaryAuth) {
|
|
7543
|
+
if (!rc.flags.autoTriggered)
|
|
7544
|
+
showProgressOverlay(rc.ctx, {
|
|
7545
|
+
phase: 3,
|
|
7546
|
+
phaseName: "Synthesize",
|
|
7547
|
+
detail: "Summary route unavailable \xB7 building a deterministic summary"
|
|
7548
|
+
});
|
|
7500
7549
|
finalSummary = assembleFallback([], extraction);
|
|
7501
7550
|
method = "heuristic";
|
|
7502
7551
|
} else if (rc.convTokens < singlePassMaxTokens) {
|
|
@@ -7504,7 +7553,7 @@ async function summarizeConversation(rc) {
|
|
|
7504
7553
|
showProgressOverlay(rc.ctx, {
|
|
7505
7554
|
phase: 3,
|
|
7506
7555
|
phaseName: "Synthesize",
|
|
7507
|
-
detail: "
|
|
7556
|
+
detail: "Writing one continuation summary from " + rc.convTokens.toLocaleString() + " tokens",
|
|
7508
7557
|
model: rc.modelLabel,
|
|
7509
7558
|
profile: rc.profile,
|
|
7510
7559
|
extraction
|
|
@@ -7515,7 +7564,8 @@ async function summarizeConversation(rc) {
|
|
|
7515
7564
|
finalSummary = r.summary;
|
|
7516
7565
|
method = "single-pass";
|
|
7517
7566
|
} catch (err) {
|
|
7518
|
-
|
|
7567
|
+
debugError("Single-pass synthesis used deterministic fallback", err);
|
|
7568
|
+
rc.notify("Single-pass generation stopped \xB7 using deterministic fallback", "info");
|
|
7519
7569
|
finalSummary = assembleFallback([], extraction);
|
|
7520
7570
|
method = "heuristic";
|
|
7521
7571
|
}
|
|
@@ -7527,7 +7577,7 @@ async function summarizeConversation(rc) {
|
|
|
7527
7577
|
showProgressOverlay(rc.ctx, {
|
|
7528
7578
|
phase: 2,
|
|
7529
7579
|
phaseName: "Explore",
|
|
7530
|
-
detail: "
|
|
7580
|
+
detail: "Mapping topic shifts and continuity risks",
|
|
7531
7581
|
model: rc.modelLabel,
|
|
7532
7582
|
profile: rc.profile,
|
|
7533
7583
|
extraction
|
|
@@ -7542,7 +7592,8 @@ async function summarizeConversation(rc) {
|
|
|
7542
7592
|
rc.notify("Phase 2 Explore: " + expResult.rounds + " rounds, " + explorationReport.boundaries.length + " boundaries" + (expResult.toolSupported ? "" : " (no tool support)"), "info");
|
|
7543
7593
|
rc.vlog("Explore boundaries: " + explorationReport.boundaries.map((b) => b.afterIndex + "(" + b.confidence.toFixed(2) + ")").join(", "));
|
|
7544
7594
|
} catch (err) {
|
|
7545
|
-
|
|
7595
|
+
debugError("Explore used deterministic topic boundaries", err);
|
|
7596
|
+
rc.notify("Explore unavailable \xB7 using deterministic topic boundaries", "info");
|
|
7546
7597
|
} finally {
|
|
7547
7598
|
const exploreEnd = Date.now();
|
|
7548
7599
|
markMeasuredPhase(rc, "explore", exploreStart, exploreEnd);
|
|
@@ -7589,7 +7640,7 @@ async function summarizeConversation(rc) {
|
|
|
7589
7640
|
showProgressOverlay(rc.ctx, {
|
|
7590
7641
|
phase: 3,
|
|
7591
7642
|
phaseName: "Synthesize",
|
|
7592
|
-
detail: "0/" + totalBatches
|
|
7643
|
+
detail: "Compressing older history \xB7 batch 0/" + totalBatches,
|
|
7593
7644
|
model: rc.modelLabel,
|
|
7594
7645
|
profile: rc.profile,
|
|
7595
7646
|
extraction,
|
|
@@ -7629,7 +7680,7 @@ async function summarizeConversation(rc) {
|
|
|
7629
7680
|
for (let index = wave;index < totalBatches; index++) {
|
|
7630
7681
|
results[index] = batches[index].map((chunk) => failedChunkSummary(chunk));
|
|
7631
7682
|
}
|
|
7632
|
-
rc.notify("Synthesis budget
|
|
7683
|
+
rc.notify("Synthesis budget reached \xB7 remaining batches use deterministic fallback", "info");
|
|
7633
7684
|
break;
|
|
7634
7685
|
}
|
|
7635
7686
|
const waveBatches = batches.slice(wave, Math.min(wave + concurrency, batchCallLimit));
|
|
@@ -7646,7 +7697,7 @@ async function summarizeConversation(rc) {
|
|
|
7646
7697
|
showProgressOverlay(rc.ctx, {
|
|
7647
7698
|
phase: 3,
|
|
7648
7699
|
phaseName: "Synthesize",
|
|
7649
|
-
detail: completed + "/" + totalBatches
|
|
7700
|
+
detail: "Compressing older history \xB7 batch " + completed + "/" + totalBatches,
|
|
7650
7701
|
model: rc.modelLabel,
|
|
7651
7702
|
profile: rc.profile,
|
|
7652
7703
|
extraction,
|
|
@@ -7661,15 +7712,25 @@ async function summarizeConversation(rc) {
|
|
|
7661
7712
|
for (const r of results)
|
|
7662
7713
|
if (r)
|
|
7663
7714
|
summaries.push(...r);
|
|
7664
|
-
|
|
7665
|
-
|
|
7666
|
-
|
|
7715
|
+
const failedBatches = errors.filter(Boolean);
|
|
7716
|
+
for (const error2 of failedBatches)
|
|
7717
|
+
debugError("Synthesis batch used deterministic fallback", error2);
|
|
7718
|
+
if (failedBatches.length) {
|
|
7719
|
+
rc.notify(failedBatches.length + " synthesis batch(es) stopped \xB7 deterministic evidence fallback preserved coverage", "info");
|
|
7720
|
+
if (!rc.flags.autoTriggered)
|
|
7721
|
+
showProgressOverlay(rc.ctx, {
|
|
7722
|
+
phase: 3,
|
|
7723
|
+
phaseName: "Synthesize",
|
|
7724
|
+
detail: failedBatches.length + " batch fallback(s) \xB7 preserving coverage from deterministic evidence",
|
|
7725
|
+
explorationRounds
|
|
7726
|
+
});
|
|
7727
|
+
}
|
|
7667
7728
|
}
|
|
7668
7729
|
if (!rc.flags.autoTriggered) {
|
|
7669
7730
|
showProgressOverlay(rc.ctx, {
|
|
7670
7731
|
phase: 3,
|
|
7671
7732
|
phaseName: "Synthesize",
|
|
7672
|
-
detail: "
|
|
7733
|
+
detail: "Merging summaries with project continuity",
|
|
7673
7734
|
model: rc.modelLabel,
|
|
7674
7735
|
profile: rc.profile,
|
|
7675
7736
|
extraction,
|
|
@@ -7684,7 +7745,7 @@ async function summarizeConversation(rc) {
|
|
|
7684
7745
|
else
|
|
7685
7746
|
throw new Error("bad");
|
|
7686
7747
|
} catch (err) {
|
|
7687
|
-
|
|
7748
|
+
debugError("Assembly used deterministic fallback", err);
|
|
7688
7749
|
finalSummary = assembleFallback(summaries, extraction);
|
|
7689
7750
|
}
|
|
7690
7751
|
method = "eesv";
|
|
@@ -7955,7 +8016,7 @@ function verifySummary(summary, extraction, continuity = null) {
|
|
|
7955
8016
|
}
|
|
7956
8017
|
}
|
|
7957
8018
|
for (const error2 of unresolvedEvidence) {
|
|
7958
|
-
const snippet = error2.message
|
|
8019
|
+
const snippet = summaryEvidenceLine(error2.message, TRUNC.ERROR_SNIPPET).toLowerCase();
|
|
7959
8020
|
if (snippet.length > 5 && !normalizedSummary.includes(snippet)) {
|
|
7960
8021
|
gaps.push({ kind: "missing-error", message: error2.message });
|
|
7961
8022
|
score -= 5;
|
|
@@ -8182,7 +8243,7 @@ async function verifyAndPatch(rc) {
|
|
|
8182
8243
|
showProgressOverlay(rc.ctx, {
|
|
8183
8244
|
phase: 4,
|
|
8184
8245
|
phaseName: "Verify",
|
|
8185
|
-
detail: "Checking
|
|
8246
|
+
detail: "Checking facts, files, constraints, errors, and open loops",
|
|
8186
8247
|
model: rc.modelLabel,
|
|
8187
8248
|
profile: rc.profile,
|
|
8188
8249
|
extraction,
|
|
@@ -8197,7 +8258,14 @@ async function verifyAndPatch(rc) {
|
|
|
8197
8258
|
rc.vlog("Verification score=" + verification.score + " ok=" + verification.ok + " gaps=" + verification.gaps.length);
|
|
8198
8259
|
const initialPatchable = verification.gaps.filter(isDeterministicallyPatchable);
|
|
8199
8260
|
if (initialPatchable.length > 0) {
|
|
8200
|
-
rc.notify("Phase 4 Verify: " + initialPatchable.length + " deterministic gap(s), score=" + verification.score + ", applying repair", "
|
|
8261
|
+
rc.notify("Phase 4 Verify: " + initialPatchable.length + " deterministic gap(s), score=" + verification.score + ", applying repair", "info");
|
|
8262
|
+
if (!rc.flags.autoTriggered)
|
|
8263
|
+
showProgressOverlay(rc.ctx, {
|
|
8264
|
+
phase: 4,
|
|
8265
|
+
phaseName: "Verify",
|
|
8266
|
+
detail: "Repairing " + initialPatchable.length + " deterministic finding(s)",
|
|
8267
|
+
explorationRounds: rc.explorationRounds
|
|
8268
|
+
});
|
|
8201
8269
|
const repaired = repairSummaryDeterministically(summary, verification, extraction, rc.previousState);
|
|
8202
8270
|
summary = repaired.summary;
|
|
8203
8271
|
verification = repaired.result;
|
|
@@ -8205,13 +8273,20 @@ async function verifyAndPatch(rc) {
|
|
|
8205
8273
|
}
|
|
8206
8274
|
const mode = rc.mode ?? (rc.profile ? modeFromLegacyProfile(rc.profile) : "balanced");
|
|
8207
8275
|
if (MODE_POLICIES[mode].allowLlmPatch && !verification.ok) {
|
|
8208
|
-
rc.notify("Phase 4 Verify: deterministic repair insufficient (score=" + verification.score + "), requesting LLM patch", "
|
|
8276
|
+
rc.notify("Phase 4 Verify: deterministic repair insufficient (score=" + verification.score + "), requesting LLM patch", "info");
|
|
8277
|
+
if (!rc.flags.autoTriggered)
|
|
8278
|
+
showProgressOverlay(rc.ctx, {
|
|
8279
|
+
phase: 4,
|
|
8280
|
+
phaseName: "Verify",
|
|
8281
|
+
detail: "Requesting a semantic repair for unresolved findings",
|
|
8282
|
+
explorationRounds: rc.explorationRounds
|
|
8283
|
+
});
|
|
8209
8284
|
const beforePatch = summary;
|
|
8210
8285
|
try {
|
|
8211
8286
|
const verifyAuth = await resolveStageAuth(rc, "verify");
|
|
8212
8287
|
summary = await patchSummary(summary, verification.gaps, rc.verifyModel ?? rc.summaryModel, verifyAuth, rc.cancellation.signal, rc.services);
|
|
8213
8288
|
} catch (error2) {
|
|
8214
|
-
|
|
8289
|
+
debugError("LLM verification patch used deterministic fallback", error2);
|
|
8215
8290
|
}
|
|
8216
8291
|
if (summary !== beforePatch) {
|
|
8217
8292
|
llmPatched = true;
|
|
@@ -8223,6 +8298,13 @@ async function verifyAndPatch(rc) {
|
|
|
8223
8298
|
}
|
|
8224
8299
|
}
|
|
8225
8300
|
if (!verification.ok) {
|
|
8301
|
+
if (!rc.flags.autoTriggered)
|
|
8302
|
+
showProgressOverlay(rc.ctx, {
|
|
8303
|
+
phase: 4,
|
|
8304
|
+
phaseName: "Verify",
|
|
8305
|
+
detail: "Trying the deterministic safety summary",
|
|
8306
|
+
explorationRounds: rc.explorationRounds
|
|
8307
|
+
});
|
|
8226
8308
|
let deterministic = assembleFallback(rc.summaries, extraction);
|
|
8227
8309
|
let deterministicVerification = verifySummary(deterministic, extraction, rc.previousState);
|
|
8228
8310
|
const repaired = repairSummaryDeterministically(deterministic, deterministicVerification, extraction, rc.previousState);
|
|
@@ -8233,12 +8315,19 @@ async function verifyAndPatch(rc) {
|
|
|
8233
8315
|
verification = deterministicVerification;
|
|
8234
8316
|
deterministicPatched.push(...repaired.patched);
|
|
8235
8317
|
qualityFloorUsed = true;
|
|
8236
|
-
rc.notify("Quality floor replaced unsafe or unverifiable model output", "
|
|
8318
|
+
rc.notify("Quality floor replaced unsafe or unverifiable model output", "info");
|
|
8237
8319
|
}
|
|
8238
8320
|
}
|
|
8239
8321
|
const failure = verificationFailureMessage(verification);
|
|
8240
8322
|
if (failure)
|
|
8241
8323
|
throw new VerificationGateError(verification, initialScore);
|
|
8324
|
+
if (!rc.flags.autoTriggered)
|
|
8325
|
+
showProgressOverlay(rc.ctx, {
|
|
8326
|
+
phase: 4,
|
|
8327
|
+
phaseName: "Verify",
|
|
8328
|
+
detail: "Passed " + verification.score + "/100 \xB7 0 unresolved gaps",
|
|
8329
|
+
explorationRounds: rc.explorationRounds
|
|
8330
|
+
});
|
|
8242
8331
|
const out = rc;
|
|
8243
8332
|
out.finalSummary = summary;
|
|
8244
8333
|
out.verified = verification.ok;
|
|
@@ -9266,7 +9355,7 @@ function runDamageDetection(rc) {
|
|
|
9266
9355
|
writeRemediationHints(rc.projectId, damage.reReadFiles);
|
|
9267
9356
|
}
|
|
9268
9357
|
} catch (err) {
|
|
9269
|
-
|
|
9358
|
+
debugError("Damage detection skipped", err);
|
|
9270
9359
|
}
|
|
9271
9360
|
}
|
|
9272
9361
|
function stagePendingCompaction(rc, metricsSnapshot) {
|
|
@@ -9319,6 +9408,8 @@ function makeBase(opts) {
|
|
|
9319
9408
|
const notify = (msg, type = "info") => {
|
|
9320
9409
|
if (opts.autoTriggered && (type === "info" || type === "success"))
|
|
9321
9410
|
return;
|
|
9411
|
+
if (type === "info" && !opts.verbose)
|
|
9412
|
+
return;
|
|
9322
9413
|
opts.ctx.ui.notify(msg, type === "success" ? "info" : type);
|
|
9323
9414
|
};
|
|
9324
9415
|
const vlog = (msg) => {
|
|
@@ -9391,6 +9482,7 @@ async function runSmartCompact(opts) {
|
|
|
9391
9482
|
}
|
|
9392
9483
|
let finalRc = null;
|
|
9393
9484
|
let keepApplyProgress = false;
|
|
9485
|
+
let runFailed = false;
|
|
9394
9486
|
let failureSummaryFields = { profile: base.profile, mode: base.mode };
|
|
9395
9487
|
if (opts.cancellationOut) {
|
|
9396
9488
|
opts.cancellationOut.value = {
|
|
@@ -9412,7 +9504,7 @@ async function runSmartCompact(opts) {
|
|
|
9412
9504
|
const prepared = await prepareRun(base);
|
|
9413
9505
|
if (!prepared)
|
|
9414
9506
|
return;
|
|
9415
|
-
base.notify("EESV Compact (" + base.modelLabel + ", " + base.
|
|
9507
|
+
base.notify("EESV Compact (" + base.modelLabel + ", " + base.mode + ") \u2014 " + (base.ctx.getContextUsage()?.tokens ?? 0).toLocaleString() + "t", "info");
|
|
9416
9508
|
const windowed = resolveCompactionWindow(prepared);
|
|
9417
9509
|
if (!windowed)
|
|
9418
9510
|
return;
|
|
@@ -9424,7 +9516,13 @@ async function runSmartCompact(opts) {
|
|
|
9424
9516
|
};
|
|
9425
9517
|
markPhase(windowed, "prepare");
|
|
9426
9518
|
if (!windowed.flags.autoTriggered) {
|
|
9427
|
-
showProgressOverlay(windowed.ctx, {
|
|
9519
|
+
showProgressOverlay(windowed.ctx, {
|
|
9520
|
+
phase: 1,
|
|
9521
|
+
phaseName: "Extract",
|
|
9522
|
+
detail: "Indexing goals, files, decisions, errors, and open loops",
|
|
9523
|
+
model: windowed.modelLabel,
|
|
9524
|
+
profile: windowed.profile
|
|
9525
|
+
});
|
|
9428
9526
|
}
|
|
9429
9527
|
const recovered = recoverSessionLog(windowed);
|
|
9430
9528
|
markPhase(recovered, "recover");
|
|
@@ -9448,7 +9546,7 @@ async function runSmartCompact(opts) {
|
|
|
9448
9546
|
markPhase(stated, "state");
|
|
9449
9547
|
if (stated.flags.dryRun) {
|
|
9450
9548
|
recordSuccessMetrics(stated, "dry-run");
|
|
9451
|
-
stated.notify("DRY RUN (" + stated.method + ", " + stated.
|
|
9549
|
+
stated.ctx.ui.notify("DRY RUN (" + stated.method + ", " + stated.mode + ") \u2014 " + stated.toCompact.length + " msgs, " + stated.llmCalls + " calls", "info");
|
|
9452
9550
|
return;
|
|
9453
9551
|
}
|
|
9454
9552
|
if (stated.cancellation.timedOut)
|
|
@@ -9461,20 +9559,24 @@ async function runSmartCompact(opts) {
|
|
|
9461
9559
|
try {
|
|
9462
9560
|
decision = stated.ctx.hasUI ? await showResultScreen(stated.ctx, stated.details, stated.extraction, stated.services, { approval: true }) : "cancel";
|
|
9463
9561
|
} catch (err) {
|
|
9464
|
-
|
|
9562
|
+
debugError("Approval UI stopped", err);
|
|
9465
9563
|
stated.notify("Approval UI failed \u2014 compaction cancelled", "warning");
|
|
9466
9564
|
}
|
|
9467
9565
|
if (decision !== "apply") {
|
|
9468
9566
|
stated.pendingRef.clear(stated.sessionId);
|
|
9469
9567
|
recordSuccessMetrics(stated, "cancelled");
|
|
9470
|
-
stated.notify("Compaction cancelled \u2014 current conversation unchanged", "info");
|
|
9568
|
+
stated.ctx.ui.notify("Compaction cancelled \u2014 current conversation unchanged", "info");
|
|
9471
9569
|
return;
|
|
9472
9570
|
}
|
|
9473
9571
|
}
|
|
9474
9572
|
if (stated.cancellation.timedOut)
|
|
9475
9573
|
return;
|
|
9476
9574
|
if (willApply) {
|
|
9477
|
-
showProgressOverlay(stated.ctx, {
|
|
9575
|
+
showProgressOverlay(stated.ctx, {
|
|
9576
|
+
phase: 5,
|
|
9577
|
+
phaseName: "Apply",
|
|
9578
|
+
detail: "Verified " + stated.verificationScore + "/100 \xB7 staging this run \xB7 awaiting Pi confirmation"
|
|
9579
|
+
});
|
|
9478
9580
|
}
|
|
9479
9581
|
stagePendingCompaction(stated, buildSuccessMetrics(stated, "success"));
|
|
9480
9582
|
if (stated.cancellation.timedOut) {
|
|
@@ -9486,6 +9588,7 @@ async function runSmartCompact(opts) {
|
|
|
9486
9588
|
keepApplyProgress = true;
|
|
9487
9589
|
}
|
|
9488
9590
|
} catch (err) {
|
|
9591
|
+
runFailed = true;
|
|
9489
9592
|
recordFailureMetrics(finalRc ?? base, err, failureSummaryFields);
|
|
9490
9593
|
throw err;
|
|
9491
9594
|
} finally {
|
|
@@ -9502,7 +9605,8 @@ async function runSmartCompact(opts) {
|
|
|
9502
9605
|
if (base.flags.autoTriggered && !base.cancellation.timedOut) {
|
|
9503
9606
|
const dur = pipelineMs < 1000 ? pipelineMs + "ms" : (pipelineMs / 1000).toFixed(1) + "s";
|
|
9504
9607
|
const hasPending = base.pendingRef.isPresent(runSessionId);
|
|
9505
|
-
|
|
9608
|
+
if (hasPending || runFailed || finalRc)
|
|
9609
|
+
base.ctx.ui.notify(hasPending ? "Smart compact prepared in " + dur + " \u2014 awaiting native /compact" : runFailed ? "Smart compact stopped safely in " + dur + " \xB7 no summary applied \xB7 Pi fallback continues" : "Smart compact run finished in " + dur, runFailed ? "warning" : "info");
|
|
9506
9610
|
}
|
|
9507
9611
|
}
|
|
9508
9612
|
}
|
|
@@ -9987,7 +10091,7 @@ Paths: ` + relatedPaths.join(", ") : ""));
|
|
|
9987
10091
|
pi.registerCommand("smart-compact", {
|
|
9988
10092
|
description: "EESV smart compaction v" + VERSION + ". Usage: /smart-compact [model] [mode] [flags] [--focus=topic] [--max-calls=N] [--max-input-tokens=N] [note]",
|
|
9989
10093
|
getArgumentCompletions: (prefix) => {
|
|
9990
|
-
const m = ["verbose", "debug", "dry-run", "metrics", "dashboard", "restore", "loops", "
|
|
10094
|
+
const m = ["verbose", "debug", "dry-run", "metrics", "dashboard", "restore", "loops", "fast", "balanced", "thorough", "--focus=", "--max-calls=", "--max-input-tokens=", "--max-latency="].filter((o) => o.startsWith(prefix)).map((o) => ({ value: o, label: o }));
|
|
9991
10095
|
return m.length ? m : null;
|
|
9992
10096
|
},
|
|
9993
10097
|
handler: async (args, ctx) => {
|
|
@@ -10104,8 +10208,10 @@ Paths: ` + relatedPaths.join(", ") : ""));
|
|
|
10104
10208
|
const knownProviders = new Set(ctx.modelRegistry.getAvailable().map((m) => m.provider));
|
|
10105
10209
|
const modelArg = tokens.find((t) => /^[a-z0-9_.-]+\/[a-z0-9_.:-]+$/i.test(t) && (findModelById(ctx, t) || knownProviders.has(t.split("/")[0])));
|
|
10106
10210
|
const config = loadConfig();
|
|
10107
|
-
const rawMode = tokens.find((t) => ["auto", "
|
|
10108
|
-
const modeArg = rawMode === "slow" ? "thorough" : rawMode;
|
|
10211
|
+
const rawMode = tokens.find((t) => ["auto", "fast", "balanced", "thorough", "aggressive", "slow"].includes(t));
|
|
10212
|
+
const modeArg = rawMode === "slow" ? "thorough" : rawMode === "aggressive" ? "fast" : rawMode;
|
|
10213
|
+
if (rawMode === "aggressive")
|
|
10214
|
+
ctx.ui.notify("Aggressive mode is now Fast; using Fast.", "warning");
|
|
10109
10215
|
const profileArg = tokens.includes("light") ? "light" : undefined;
|
|
10110
10216
|
const mode = modeArg ?? (profileArg ? modeFromLegacyProfile(profileArg) : config.mode);
|
|
10111
10217
|
if (!tokens.length) {
|
|
@@ -10222,7 +10328,7 @@ Paths: ` + relatedPaths.join(", ") : ""));
|
|
|
10222
10328
|
cancellationOut
|
|
10223
10329
|
});
|
|
10224
10330
|
} catch (err) {
|
|
10225
|
-
|
|
10331
|
+
debugError("Smart compact auto-trigger stopped", err);
|
|
10226
10332
|
} finally {
|
|
10227
10333
|
clearTimeout(timeoutId);
|
|
10228
10334
|
}
|
|
@@ -10232,7 +10338,7 @@ Paths: ` + relatedPaths.join(", ") : ""));
|
|
|
10232
10338
|
}
|
|
10233
10339
|
}
|
|
10234
10340
|
} catch (e) {
|
|
10235
|
-
|
|
10341
|
+
debugError("session_before_compact stopped", e);
|
|
10236
10342
|
}
|
|
10237
10343
|
});
|
|
10238
10344
|
pi.on("session_compact", async (event, ctx) => {
|
|
@@ -10331,7 +10437,7 @@ Paths: ` + relatedPaths.join(", ") : ""));
|
|
|
10331
10437
|
parameters: {
|
|
10332
10438
|
type: "object",
|
|
10333
10439
|
properties: {
|
|
10334
|
-
mode: { type: "string", description: "
|
|
10440
|
+
mode: { type: "string", description: "fast, balanced, thorough, or auto. Default: auto." },
|
|
10335
10441
|
profile: { type: "string", description: "Deprecated alias: light, balanced, or aggressive." },
|
|
10336
10442
|
verbose: { type: "boolean", description: "Show detailed pipeline output." },
|
|
10337
10443
|
dry_run: { type: "boolean", description: "Run the pipeline but skip applying the compaction." },
|
|
@@ -10345,7 +10451,7 @@ Paths: ` + relatedPaths.join(", ") : ""));
|
|
|
10345
10451
|
},
|
|
10346
10452
|
async execute(_id, params, signal, _onUp, ctx) {
|
|
10347
10453
|
const profile = params.profile === "light" || params.profile === "balanced" || params.profile === "aggressive" ? params.profile : undefined;
|
|
10348
|
-
const mode = params.mode === "slow" ? "thorough" :
|
|
10454
|
+
const mode = params.mode === "slow" ? "thorough" : params.mode === "aggressive" ? "fast" : ["auto", "fast", "balanced", "thorough"].find((value) => value === params.mode);
|
|
10349
10455
|
const verbose = !!params.verbose;
|
|
10350
10456
|
const dryRun = !!params.dry_run;
|
|
10351
10457
|
const focus = typeof params.focus === "string" ? params.focus.trim() || undefined : undefined;
|
package/dist/provider-eval.js
CHANGED
|
@@ -156,7 +156,7 @@ function formatProviderEvaluation(report) {
|
|
|
156
156
|
import fs2 from "fs";
|
|
157
157
|
|
|
158
158
|
// src/constants.ts
|
|
159
|
-
var VERSION = "8.0.
|
|
159
|
+
var VERSION = "8.0.6";
|
|
160
160
|
var COMPACT_SYSTEM_PREFIX = "You are an expert conversation summarizer for a coding agent. " + "Produce structured markdown summaries. " + "Follow output format exactly. " + "Use EXACT names \u2014 never paraphrase code identifiers. " + "Trust deterministic extraction data over intuition.";
|
|
161
161
|
var PROFILES = {
|
|
162
162
|
light: {
|
|
@@ -138,7 +138,7 @@ function getLlmClient() {
|
|
|
138
138
|
}
|
|
139
139
|
|
|
140
140
|
// src/constants.ts
|
|
141
|
-
var VERSION = "8.0.
|
|
141
|
+
var VERSION = "8.0.6";
|
|
142
142
|
var COMPACT_SYSTEM_PREFIX = "You are an expert conversation summarizer for a coding agent. " + "Produce structured markdown summaries. " + "Follow output format exactly. " + "Use EXACT names \u2014 never paraphrase code identifiers. " + "Trust deterministic extraction data over intuition.";
|
|
143
143
|
var PROFILES = {
|
|
144
144
|
light: {
|
|
@@ -970,6 +970,9 @@ function classifyHeading(raw) {
|
|
|
970
970
|
|
|
971
971
|
// src/domain/summary-parse.ts
|
|
972
972
|
var HEADING_RE = /^(#{1,3})\s+(.+?)\s*$/;
|
|
973
|
+
function summaryEvidenceLine(value, maxLength) {
|
|
974
|
+
return value.replace(/[\u0000-\u0008\u000B\u000C\u000E-\u001F\u007F]/g, " ").replace(/\s+/g, " ").trim().replace(/^(?:(?:#{1,6}|[-*+]|>)\s+)+/, "").slice(0, maxLength).trim();
|
|
975
|
+
}
|
|
973
976
|
function mergeBodies(first, second) {
|
|
974
977
|
const seen = new Set;
|
|
975
978
|
return [first, second].filter(Boolean).flatMap((body) => body.split(`
|
|
@@ -1192,7 +1195,7 @@ function verifySummary(summary, extraction, continuity = null) {
|
|
|
1192
1195
|
}
|
|
1193
1196
|
}
|
|
1194
1197
|
for (const error of unresolvedEvidence) {
|
|
1195
|
-
const snippet = error.message
|
|
1198
|
+
const snippet = summaryEvidenceLine(error.message, TRUNC.ERROR_SNIPPET).toLowerCase();
|
|
1196
1199
|
if (snippet.length > 5 && !normalizedSummary.includes(snippet)) {
|
|
1197
1200
|
gaps.push({ kind: "missing-error", message: error.message });
|
|
1198
1201
|
score -= 5;
|
package/dist/telemetry-report.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
var __require = import.meta.require;
|
|
3
3
|
|
|
4
4
|
// src/constants.ts
|
|
5
|
-
var VERSION = "8.0.
|
|
5
|
+
var VERSION = "8.0.6";
|
|
6
6
|
var COMPACT_SYSTEM_PREFIX = "You are an expert conversation summarizer for a coding agent. " + "Produce structured markdown summaries. " + "Follow output format exactly. " + "Use EXACT names \u2014 never paraphrase code identifiers. " + "Trust deterministic extraction data over intuition.";
|
|
7
7
|
var PROFILES = {
|
|
8
8
|
light: {
|
package/dist/types.d.ts
CHANGED
|
@@ -6,8 +6,9 @@ import type { SectionKind } from "./domain/summary-schema.ts";
|
|
|
6
6
|
/** Session type classification */
|
|
7
7
|
export type SessionType = "implementation" | "review" | "debugging" | "discussion";
|
|
8
8
|
export type CompressionProfile = "light" | "balanced" | "aggressive";
|
|
9
|
-
export type
|
|
10
|
-
|
|
9
|
+
export type EffectiveCompactionMode = "fast" | "balanced" | "thorough";
|
|
10
|
+
/** `aggressive` is accepted only as a legacy input and resolves to Fast. */
|
|
11
|
+
export type CompactionMode = "auto" | EffectiveCompactionMode | "aggressive";
|
|
11
12
|
export interface ProfileConfig {
|
|
12
13
|
summaryBudgetTokens: number;
|
|
13
14
|
keepRecentTokens: number;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/ui/overlays.d.ts
CHANGED
|
@@ -22,7 +22,7 @@ export declare function recommendPreflight(plans: ReadonlyMap<EffectiveCompactio
|
|
|
22
22
|
mode: EffectiveCompactionMode;
|
|
23
23
|
reason: string;
|
|
24
24
|
};
|
|
25
|
-
/**
|
|
25
|
+
/** Compact decision copy; technical planner data stays behind D. */
|
|
26
26
|
export declare function formatPreflightSummary(preflight: ManualPreflight, modelLabel: string, details?: boolean): string[];
|
|
27
27
|
export declare function showProgressOverlay(ctx: ExtensionContext, state: ProgressState): void;
|
|
28
28
|
export declare function clearCompactProgress(ctx: ExtensionContext): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlays.d.ts","sourceRoot":"","sources":["../../src/ui/overlays.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACjG,OAAO,EAAiB,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAIvE,OAAO,KAAK,EACV,aAAa,EAAE,mBAAmB,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAC9E,mBAAmB,EAAE,oBAAoB,EAAE,QAAQ,EAAE,YAAY,EAClE,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAA4B,KAAK,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAG3F,OAAO,EAA8C,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACvG,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAa3D,OAAO,EAEmB,KAAK,iBAAiB,EAC/C,MAAM,yBAAyB,CAAC;AAEjC,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,SAAK,GAAG,MAAM,CAS/F;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,SAAK,GAAG,MAAM,CAO9G;AAED,wBAAsB,WAAW,CAC/B,GAAG,EAAE,uBAAuB,EAC5B,IAAI,EAAE;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,GAC3G,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAqD7B;
|
|
1
|
+
{"version":3,"file":"overlays.d.ts","sourceRoot":"","sources":["../../src/ui/overlays.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/utils/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,aAAa,EAAsB,YAAY,EAAE,QAAQ,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAaxK;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/utils/helpers.ts"],"names":[],"mappings":"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"}
|
package/docs/MIGRATING_TO_V8.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Migrating from v7 to v8
|
|
2
2
|
|
|
3
|
-
This guide applies to the stable `8.0.
|
|
3
|
+
This guide applies to the stable `8.0.6` release.
|
|
4
4
|
|
|
5
5
|
## Compatibility
|
|
6
6
|
|
|
@@ -33,7 +33,8 @@ source-search output persisted as unresolved work; the next confirmed save persi
|
|
|
33
33
|
the sanitized state. v8.0.3 keeps the same graph file and transparently opens it
|
|
34
34
|
with `node:sqlite` under Pi or `bun:sqlite` in Bun tooling. v8.0.4 changes only
|
|
35
35
|
compaction planning, UX, and privacy-safe operational metrics; v8.0.5 bounds
|
|
36
|
-
user-facing failure diagnostics.
|
|
36
|
+
user-facing failure diagnostics; v8.0.6 streamlines the three-mode decision card
|
|
37
|
+
and live progress brief. None requires a state or database migration.
|
|
37
38
|
|
|
38
39
|
Facts remain conservative: absence from a new window is not deletion. A fact is
|
|
39
40
|
removed only by an explicit resolved/superseded override.
|
|
@@ -75,7 +76,7 @@ All defaults preserve the selected model and require no migration edits.
|
|
|
75
76
|
| Key | Default | Purpose |
|
|
76
77
|
|---|---|---|
|
|
77
78
|
| `mode` | `auto` | Pressure/risk-aware execution policy |
|
|
78
|
-
| `zeroCallEnabled` | `true` | Deterministic Fast
|
|
79
|
+
| `zeroCallEnabled` | `true` | Deterministic Fast synthesis when confidence is high |
|
|
79
80
|
| `contextGraphEnabled` | `true` | Local scoped graph and memory tools |
|
|
80
81
|
| `telemetryChannel` | `stable` | Stable/canary metric tag |
|
|
81
82
|
| `segmentationModel` | `null` | Explicit Explore route; selected model when null |
|
|
@@ -87,7 +88,7 @@ See the README configuration table for budgets and monitoring options.
|
|
|
87
88
|
## Recommended rollout
|
|
88
89
|
|
|
89
90
|
1. Back up `~/.pi/agent/settings.json` and the Smart Compact cache directory.
|
|
90
|
-
2. Install the exact stable version: `pi install npm:pi-smart-compact@8.0.
|
|
91
|
+
2. Install the exact stable version: `pi install npm:pi-smart-compact@8.0.6`.
|
|
91
92
|
3. Leave all model routes null initially.
|
|
92
93
|
4. Keep `telemetryChannel: "stable"` unless intentionally running a separate
|
|
93
94
|
canary cohort.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pi-smart-compact",
|
|
3
|
-
"version": "8.0.
|
|
3
|
+
"version": "8.0.6",
|
|
4
4
|
"description": "Verification-oriented smart compaction extension for Pi Coding Agent — deterministic extraction, exploration, synthesis, verification, metrics, and safety checks.",
|
|
5
5
|
"packageManager": "bun@1.3.14",
|
|
6
6
|
"engines": {
|