pi-smart-compact 8.0.8 → 9.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/ARCHITECTURE.md +90 -70
  2. package/CHANGELOG.md +45 -2
  3. package/README.md +52 -30
  4. package/SECURITY.md +1 -1
  5. package/dist/app/native-continuity-bridge.d.ts.map +1 -1
  6. package/dist/app/pending-slot.d.ts.map +1 -1
  7. package/dist/app/preflight.d.ts +2 -1
  8. package/dist/app/preflight.d.ts.map +1 -1
  9. package/dist/app/run-context.d.ts +10 -10
  10. package/dist/app/run-context.d.ts.map +1 -1
  11. package/dist/app/run-smart-compact.d.ts +18 -2
  12. package/dist/app/run-smart-compact.d.ts.map +1 -1
  13. package/dist/app/session-run-lock.d.ts.map +1 -1
  14. package/dist/app/smart-compact-input.d.ts +23 -0
  15. package/dist/app/smart-compact-input.d.ts.map +1 -0
  16. package/dist/app/steps/extract.d.ts.map +1 -1
  17. package/dist/app/steps/metrics.d.ts +4 -4
  18. package/dist/app/steps/metrics.d.ts.map +1 -1
  19. package/dist/app/steps/persist.d.ts +2 -3
  20. package/dist/app/steps/persist.d.ts.map +1 -1
  21. package/dist/app/steps/prepare.d.ts +4 -6
  22. package/dist/app/steps/prepare.d.ts.map +1 -1
  23. package/dist/app/steps/recover.d.ts +1 -1
  24. package/dist/app/steps/recover.d.ts.map +1 -1
  25. package/dist/app/steps/state.d.ts.map +1 -1
  26. package/dist/app/steps/synthesize.d.ts.map +1 -1
  27. package/dist/app/steps/verify.d.ts.map +1 -1
  28. package/dist/app/steps/window.d.ts +5 -1
  29. package/dist/app/steps/window.d.ts.map +1 -1
  30. package/dist/constants.d.ts +25 -4
  31. package/dist/constants.d.ts.map +1 -1
  32. package/dist/domain/scrub.d.ts.map +1 -1
  33. package/dist/domain/summary-parse.d.ts +1 -1
  34. package/dist/domain/summary-parse.d.ts.map +1 -1
  35. package/dist/domain/summary-schema.d.ts +1 -1
  36. package/dist/domain/summary-schema.d.ts.map +1 -1
  37. package/dist/domain/tool-semantics.d.ts +15 -9
  38. package/dist/domain/tool-semantics.d.ts.map +1 -1
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/index.js +3105 -1389
  41. package/dist/infra/ai-messages.d.ts +6 -0
  42. package/dist/infra/ai-messages.d.ts.map +1 -1
  43. package/dist/infra/context-graph.d.ts.map +1 -1
  44. package/dist/infra/fs.d.ts +13 -15
  45. package/dist/infra/fs.d.ts.map +1 -1
  46. package/dist/infra/git.d.ts +5 -11
  47. package/dist/infra/git.d.ts.map +1 -1
  48. package/dist/infra/llm-client.d.ts +2 -0
  49. package/dist/infra/llm-client.d.ts.map +1 -1
  50. package/dist/infra/paths.d.ts +4 -2
  51. package/dist/infra/paths.d.ts.map +1 -1
  52. package/dist/infra/session-identity.d.ts +11 -0
  53. package/dist/infra/session-identity.d.ts.map +1 -1
  54. package/dist/infra/synthesis-cache.d.ts.map +1 -1
  55. package/dist/phases/explore.d.ts +2 -1
  56. package/dist/phases/explore.d.ts.map +1 -1
  57. package/dist/phases/synthesize.d.ts +4 -1
  58. package/dist/phases/synthesize.d.ts.map +1 -1
  59. package/dist/phases/verify.d.ts +10 -3
  60. package/dist/phases/verify.d.ts.map +1 -1
  61. package/dist/provider-eval.js +278 -27
  62. package/dist/provider-scenario-eval.js +422 -49
  63. package/dist/telemetry-report.js +278 -27
  64. package/dist/types.d.ts +51 -0
  65. package/dist/types.d.ts.map +1 -1
  66. package/dist/ui/overlays.d.ts +2 -1
  67. package/dist/ui/overlays.d.ts.map +1 -1
  68. package/dist/utils/backups.d.ts +31 -0
  69. package/dist/utils/backups.d.ts.map +1 -0
  70. package/dist/utils/cache.d.ts +3 -2
  71. package/dist/utils/cache.d.ts.map +1 -1
  72. package/dist/utils/damage.d.ts.map +1 -1
  73. package/dist/utils/extraction.d.ts +8 -1
  74. package/dist/utils/extraction.d.ts.map +1 -1
  75. package/dist/utils/fingerprint.d.ts +5 -1
  76. package/dist/utils/fingerprint.d.ts.map +1 -1
  77. package/dist/utils/helpers.d.ts +15 -37
  78. package/dist/utils/helpers.d.ts.map +1 -1
  79. package/dist/utils/pruning.d.ts.map +1 -1
  80. package/dist/utils/session-log.d.ts +10 -18
  81. package/dist/utils/session-log.d.ts.map +1 -1
  82. package/dist/utils/state.d.ts +2 -2
  83. package/dist/utils/state.d.ts.map +1 -1
  84. package/dist/utils/tokens.d.ts +2 -0
  85. package/dist/utils/tokens.d.ts.map +1 -1
  86. package/dist/utils/type-guards.d.ts +2 -0
  87. package/dist/utils/type-guards.d.ts.map +1 -1
  88. package/package.json +2 -2
@@ -34,7 +34,7 @@
34
34
  */
35
35
  import type { ExtensionContext } from "@earendil-works/pi-coding-agent";
36
36
  import type { Model, Api, ProviderHeaders } from "@earendil-works/pi-ai";
37
- import type { CompressionProfile, CompactionMode, EffectiveCompactionMode, LlmMessage, StructuredExtraction, ExplorationReport, ChunkSummary, SessionMessageEntry, PipelinePhaseTiming, CompactConfig, ProfileConfig, ProviderCapabilities, SmartCompactDetails, CompactionState, ContinuityScope, OpenLoop, Cell } from "../types.ts";
37
+ import type { CompressionProfile, CompactionMode, EffectiveCompactionMode, LlmMessage, StructuredExtraction, ExplorationReport, ChunkSummary, SessionMessageEntry, PipelinePhaseTiming, CompactConfig, ProfileConfig, ProviderCapabilities, SmartCompactDetails, CompactionState, ContinuityScope, OpenLoop, Cell, PreparedConversationBackup } from "../types.ts";
38
38
  import type { PendingSlot } from "./pending-slot.ts";
39
39
  import type { PruningResult } from "../utils/pruning.ts";
40
40
  import type { CompactionTier } from "../utils/helpers.ts";
@@ -127,6 +127,8 @@ export interface CompactionWindowPlan {
127
127
  fixedContextTokens: number;
128
128
  retentionTargetTokens: number;
129
129
  summaryBudgetTokens: number;
130
+ /** Locally estimated upper bound for synthesis plus deterministic post-processing. */
131
+ finalSummaryAllowanceTokens?: number;
130
132
  targetAfterTokens: number;
131
133
  hardBoundaryAdjusted: boolean;
132
134
  viable: boolean;
@@ -155,6 +157,8 @@ export type WindowedRc = RcBase & WindowedExt;
155
157
  export interface RecoveredExt extends WindowedExt {
156
158
  readonly _recovered: true;
157
159
  llmMessages: LlmMessage[];
160
+ /** Entry id aligned 1:1 with `llmMessages` after convertToLlm filtering. */
161
+ llmEntryIds: string[];
158
162
  }
159
163
  export type RecoveredRc = RcBase & RecoveredExt;
160
164
  export type ActiveTier = Exclude<CompactionTier, "none">;
@@ -184,6 +188,8 @@ export interface ExtractedExt extends TieredExt {
184
188
  convText: string;
185
189
  convTokens: number;
186
190
  backupPath: string | null;
191
+ /** Scrubbed exact payload staged in memory and written only after apply confirmation. */
192
+ preparedBackup?: PreparedConversationBackup;
187
193
  }
188
194
  export type ExtractedRc = RcBase & ExtractedExt;
189
195
  export interface SynthesizedExt extends ExtractedExt {
@@ -191,6 +197,7 @@ export interface SynthesizedExt extends ExtractedExt {
191
197
  finalSummary: string;
192
198
  method: "eesv" | "single-pass" | "heuristic";
193
199
  methodForMetrics: string;
200
+ generationFallbacks: string[];
194
201
  llmCalls: number;
195
202
  summaries: ChunkSummary[];
196
203
  explorationReport: ExplorationReport | null;
@@ -226,13 +233,6 @@ export type RunContext = StatedRc;
226
233
  export declare function markMeasuredPhase(rc: RcBase, phase: PipelinePhaseTiming["phase"], startMs: number, endMs?: number): void;
227
234
  /** Mark the boundary between two pipeline phases for the metrics log. */
228
235
  export declare function markPhase(rc: RcBase, phase: PipelinePhaseTiming["phase"]): void;
229
- /**
230
- * In-place stage advancement.
231
- *
232
- * Each step mutates its input then casts to the next stage. The cast is the
233
- * only place we widen the type — the runtime object never copies. Centralizing
234
- * it here means tests can spot the transition easily and IDE jumps to the
235
- * factory rather than scattering `as` keywords through every step.
236
- */
237
- export declare function advance<TIn extends RcBase, TOut extends TIn>(rc: TIn, _stage: keyof TOut): TOut;
236
+ /** Runtime-checked, in-place transition between adjacent pipeline stages. */
237
+ export declare function advance<TIn extends RcBase, TOut extends TIn>(rc: TIn, stage: keyof TOut): TOut;
238
238
  //# sourceMappingURL=run-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"run-context.d.ts","sourceRoot":"","sources":["../../src/app/run-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-context.d.ts","sourceRoot":"","sources":["../../src/app/run-context.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,7 @@
17
17
  * dependency is data on the stage type, every conditional is a boolean flag.
18
18
  */
19
19
  import type { ExtensionContext } from "@earendil-works/pi-coding-agent";
20
- import type { Cell } from "../types.ts";
20
+ import type { Cell, PendingCompaction, SmartCompactDetails } from "../types.ts";
21
21
  import type { SessionRunLock } from "./session-run-lock.ts";
22
22
  import type { Model, Api } from "@earendil-works/pi-ai";
23
23
  import type { CompactionMode, CompressionProfile } from "../types.ts";
@@ -86,5 +86,21 @@ export interface SmartCompactOptions {
86
86
  /** Lifecycle callback supplied by the extension's commit store. */
87
87
  onNativeApplyError?: (runId: string, error: Error) => boolean;
88
88
  }
89
- export declare function runSmartCompact(opts: SmartCompactOptions): Promise<void>;
89
+ export type CompactOutcome = {
90
+ kind: "staged";
91
+ pending: PendingCompaction;
92
+ } | {
93
+ kind: "apply-requested";
94
+ pending: PendingCompaction;
95
+ } | {
96
+ kind: "dry-run";
97
+ details: SmartCompactDetails;
98
+ } | {
99
+ kind: "skipped";
100
+ reason: "model-unavailable" | "session-unavailable" | "already-running" | "window-not-viable" | "tier-selection-failed";
101
+ } | {
102
+ kind: "cancelled";
103
+ source: "user" | "timeout" | "host";
104
+ };
105
+ export declare function runSmartCompact(opts: SmartCompactOptions): Promise<CompactOutcome>;
90
106
  //# sourceMappingURL=run-smart-compact.d.ts.map
@@ -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;AAwDD,wBAAsB,eAAe,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2M9E"}
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,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAChF,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;AAMtE,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;AACD,MAAM,MAAM,cAAc,GACtB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,iBAAiB,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,OAAO,EAAE,iBAAiB,CAAA;CAAE,GACvD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,mBAAmB,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,mBAAmB,GAAG,qBAAqB,GAAG,iBAAiB,GAAG,mBAAmB,GAAG,uBAAuB,CAAA;CAAE,GAC5I;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAA;CAAE,CAAC;AA4D/D,wBAAsB,eAAe,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,cAAc,CAAC,CA6NxF"}
@@ -1 +1 @@
1
- {"version":3,"file":"session-run-lock.d.ts","sourceRoot":"","sources":["../../src/app/session-run-lock.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAGxC,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,OAAO,CAAC;IACnD,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IACpC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5C,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IACtC,WAAW,IAAI,MAAM,CAAC;IACtB,IAAI,IAAI,MAAM,CAAC;CAChB;AAsDD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,aAAa,SAAI,EACjB,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAO,GAC3D,cAAc,CAoDhB;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,cAAc,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAK/F;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,cAAc,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAG5F"}
1
+ {"version":3,"file":"session-run-lock.d.ts","sourceRoot":"","sources":["../../src/app/session-run-lock.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAIxC,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,OAAO,CAAC;IACnD,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IACpC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5C,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IACtC,WAAW,IAAI,MAAM,CAAC;IACtB,IAAI,IAAI,MAAM,CAAC;CAChB;AAiFD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,aAAa,SAAI,EACjB,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAO,GAC3D,cAAc,CAoDhB;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,cAAc,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAK/F;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,cAAc,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAG5F"}
@@ -0,0 +1,23 @@
1
+ import type { CompactionMode } from "../types.ts";
2
+ export interface SmartCompactInput {
3
+ modelArg?: string;
4
+ mode?: CompactionMode;
5
+ verbose: boolean;
6
+ dryRun: boolean;
7
+ action?: "metrics" | "dashboard" | "restore" | "loops";
8
+ focus?: string;
9
+ note?: string;
10
+ maxLlmCalls?: number;
11
+ maxLlmInputTokens?: number;
12
+ timeoutMs?: number;
13
+ }
14
+ export type SmartCompactInputResult = {
15
+ ok: true;
16
+ value: SmartCompactInput;
17
+ } | {
18
+ ok: false;
19
+ error: string;
20
+ };
21
+ export declare function parseSmartCompactCommand(args: string, isModelToken: (token: string) => boolean): SmartCompactInputResult;
22
+ export declare function parseSmartCompactTool(params: Record<string, unknown>): SmartCompactInputResult;
23
+ //# sourceMappingURL=smart-compact-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-compact-input.d.ts","sourceRoot":"","sources":["../../src/app/smart-compact-input.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAsB,MAAM,aAAa,CAAC;AAItE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,CAAC;IACvD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,uBAAuB,GAC/B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,iBAAiB,CAAA;CAAE,GACtC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAyEjC,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,GACvC,uBAAuB,CAmEzB;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,uBAAuB,CA4B9F"}
@@ -1 +1 @@
1
- {"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../../../src/app/steps/extract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAmB/D,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,GAAG,WAAW,CAoL1D"}
1
+ {"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../../../src/app/steps/extract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAoB/D,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,GAAG,WAAW,CA4N1D"}
@@ -15,9 +15,9 @@
15
15
  * the JSONL log and never throw past the cache.ts boundary.
16
16
  */
17
17
  import type { RcBase, StatedRc } from "../run-context.ts";
18
- import type { MetricsSnapshot } from "../../types.ts";
18
+ import type { CompactionMode, MetricsSnapshot } from "../../types.ts";
19
19
  export declare function buildSuccessMetrics(rc: StatedRc, status: "success" | "dry-run" | "cancelled"): MetricsSnapshot;
20
- export declare function recordSuccessMetrics(rc: StatedRc, status: "success" | "dry-run" | "cancelled"): void;
20
+ export declare function recordSuccessMetrics(rc: StatedRc, status: "success" | "dry-run" | "cancelled"): Promise<void>;
21
21
  /**
22
22
  * Partial summary that the orchestrator accumulates as steps complete. The
23
23
  * failure path uses whatever is present at the moment of the throw.
@@ -30,7 +30,7 @@ export interface FailureSummaryFields {
30
30
  totalTokens?: number;
31
31
  methodForMetrics?: string;
32
32
  profile: string;
33
- mode?: import("../../types.ts").CompactionMode;
33
+ mode?: CompactionMode;
34
34
  }
35
- export declare function recordFailureMetrics(rc: RcBase | StatedRc, err: unknown, fields: FailureSummaryFields): void;
35
+ export declare function recordFailureMetrics(rc: RcBase | StatedRc, err: unknown, fields: FailureSummaryFields): Promise<void>;
36
36
  //# sourceMappingURL=metrics.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/app/steps/metrics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAmB,MAAM,gBAAgB,CAAC;AA0BvE,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAC1C,eAAe,CAmDjB;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,IAAI,CAkBpG;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,gBAAgB,EAAE,cAAc,CAAC;CAChD;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,MAAM,GAAG,QAAQ,EACrB,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,oBAAoB,GAC3B,IAAI,CAmEN"}
1
+ {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/app/steps/metrics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAmB,MAAM,gBAAgB,CAAC;AA0BvF,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAC1C,eAAe,CAuDjB;AAED,wBAAsB,oBAAoB,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBnH;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,cAAc,CAAC;CACvB;AAED,wBAAsB,oBAAoB,CACxC,EAAE,EAAE,MAAM,GAAG,QAAQ,EACrB,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAmEf"}
@@ -29,9 +29,8 @@ import type { StatedRc } from "../run-context.ts";
29
29
  * `session_compact` event after the compaction entry exists. Best-effort:
30
30
  * persistence failures are logged without corrupting the host session.
31
31
  */
32
- export declare function persistAppliedState(pending: PendingCompaction): void;
33
- /** Commit state and telemetry after Pi confirms this exact compaction entry. */
34
- export declare function commitAppliedCompaction(pending: PendingCompaction): void;
32
+ export declare function persistAppliedState(pending: PendingCompaction): Promise<string[]>;
33
+ export declare function commitAppliedCompaction(pending: PendingCompaction): Promise<string[]>;
35
34
  /** Run post-compaction damage detection. Best-effort — never throws. */
36
35
  export declare function runDamageDetection(rc: RunContext): void;
37
36
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"persist.d.ts","sourceRoot":"","sources":["../../../src/app/steps/persist.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAc,MAAM,gBAAgB,CAAC;AASrF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAQlD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CASpE;AAED,gFAAgF;AAChF,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAWxE;AAED,wEAAwE;AACxE,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,UAAU,GAAG,IAAI,CAkCvD;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,UAAU,EAAE,eAAe,CAAC,EAAE,eAAe,GAAG,iBAAiB,CAkB3G;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAoBlD"}
1
+ {"version":3,"file":"persist.d.ts","sourceRoot":"","sources":["../../../src/app/steps/persist.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAc,MAAM,gBAAgB,CAAC;AAUrF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AASlD;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAevF;AAED,wBAAsB,uBAAuB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAe3F;AAED,wEAAwE;AACxE,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,UAAU,GAAG,IAAI,CAkCvD;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,UAAU,EAAE,eAAe,CAAC,EAAE,eAAe,GAAG,iBAAiB,CAsB3G;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAoBlD"}
@@ -1,12 +1,10 @@
1
1
  /**
2
- * Step 1: prepare a run — load config, resolve auth, wire cancellation.
2
+ * Step 1: prepare a run — load config, provider caps, budgets, and
3
+ * cancellation. Provider credentials are intentionally resolved later by
4
+ * `resolveStageAuth()` immediately before each stage's first network call.
3
5
  *
4
6
  * Stage transition: `RcBase` → `PreparedRc`.
5
- *
6
- * Returns `null` when authentication fails so the orchestrator can bail
7
- * before any side effects. The null return is the explicit guard that lets
8
- * TypeScript prove later steps never see a half-initialised context.
9
7
  */
10
8
  import type { RcBase, PreparedRc } from "../run-context.ts";
11
- export declare function prepareRun(rc: RcBase): Promise<PreparedRc | null>;
9
+ export declare function prepareRun(rc: RcBase): Promise<PreparedRc>;
12
10
  //# sourceMappingURL=prepare.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prepare.d.ts","sourceRoot":"","sources":["../../../src/app/steps/prepare.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAgB,MAAM,mBAAmB,CAAC;AAW1E,wBAAsB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CA2DvE"}
1
+ {"version":3,"file":"prepare.d.ts","sourceRoot":"","sources":["../../../src/app/steps/prepare.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAgB,MAAM,mBAAmB,CAAC;AAW1E,wBAAsB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CA2DhE"}
@@ -9,5 +9,5 @@
9
9
  * messages — the summary still beats no summary at all.
10
10
  */
11
11
  import type { WindowedRc, RecoveredRc } from "../run-context.ts";
12
- export declare function recoverSessionLog(rc: WindowedRc): RecoveredRc;
12
+ export declare function recoverSessionLog(rc: WindowedRc): Promise<RecoveredRc>;
13
13
  //# sourceMappingURL=recover.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"recover.d.ts","sourceRoot":"","sources":["../../../src/app/steps/recover.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOjE,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,UAAU,GAAG,WAAW,CAgB7D"}
1
+ {"version":3,"file":"recover.d.ts","sourceRoot":"","sources":["../../../src/app/steps/recover.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOjE,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAuB5E"}
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/app/steps/state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAkB9D,wBAAgB,UAAU,CAAC,EAAE,EAAE,UAAU,GAAG,QAAQ,CAyJnD"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/app/steps/state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAkB9D,wBAAgB,UAAU,CAAC,EAAE,EAAE,UAAU,GAAG,QAAQ,CA8JnD"}
@@ -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,CA8UnF"}
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,CAiXnF"}
@@ -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,CA0G3E"}
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,CA8G3E"}
@@ -1,6 +1,7 @@
1
1
  /** Step 2: select and validate the active-context prefix to summarize. */
2
2
  import type { CompactionPlanReason, CompactionWindowPlan, PreparedRc, WindowedRc } from "../run-context.ts";
3
- import type { EffectiveCompactionMode, ProfileConfig, SessionMessageEntry } from "../../types.ts";
3
+ import type { EffectiveCompactionMode, ProfileConfig, ProviderCapabilities, SessionMessageEntry } from "../../types.ts";
4
+ import { type TokenEstimator } from "../../utils/tokens.ts";
4
5
  export type { CompactionWindowPlan } from "../run-context.ts";
5
6
  export interface CompactionWindowPlanInput {
6
7
  msgs: SessionMessageEntry[];
@@ -12,10 +13,13 @@ export interface CompactionWindowPlanInput {
12
13
  profileCfg: ProfileConfig;
13
14
  force: boolean;
14
15
  overflowedContext: boolean;
16
+ /** Estimated final summary size in the same local units as messageTokens. */
17
+ finalSummaryAllowanceTokens?: number;
15
18
  }
16
19
  /** Canonical user-facing wording for every planner outcome. */
17
20
  export declare function compactionPlanReasonText(reason: CompactionPlanReason): string;
18
21
  /** Pure, content-free result suitable for both execution and a later UI preview. */
22
+ export declare function estimateFinalSummaryAllowance(profileCfg: ProfileConfig, estimator: TokenEstimator, providerCaps: ProviderCapabilities | undefined): number;
19
23
  export declare function planCompactionWindow(input: CompactionWindowPlanInput): CompactionWindowPlan;
20
24
  export declare function resolveCompactionWindow(rc: PreparedRc): WindowedRc | null;
21
25
  //# sourceMappingURL=window.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"window.d.ts","sourceRoot":"","sources":["../../../src/app/steps/window.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAE1E,OAAO,KAAK,EACV,oBAAoB,EAAE,oBAAoB,EAAE,UAAU,EAAuB,UAAU,EACxF,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,uBAAuB,EAAc,aAAa,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAM9G,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,mBAAmB,EAAE,CAAC;IAC5B,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,IAAI,EAAE,uBAAuB,CAAC;IAC9B,UAAU,EAAE,aAAa,CAAC;IAC1B,KAAK,EAAE,OAAO,CAAC;IACf,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,+DAA+D;AAC/D,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAS7E;AAED,oFAAoF;AACpF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,GAAG,oBAAoB,CAuG3F;AAED,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,UAAU,GAAG,UAAU,GAAG,IAAI,CAkEzE"}
1
+ {"version":3,"file":"window.d.ts","sourceRoot":"","sources":["../../../src/app/steps/window.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAE1E,OAAO,KAAK,EACV,oBAAoB,EAAE,oBAAoB,EAAE,UAAU,EAAuB,UAAU,EACxF,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,uBAAuB,EAAc,aAAa,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAKpI,OAAO,EAAsB,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGhF,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,mBAAmB,EAAE,CAAC;IAC5B,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,IAAI,EAAE,uBAAuB,CAAC;IAC9B,UAAU,EAAE,aAAa,CAAC;IAC1B,KAAK,EAAE,OAAO,CAAC;IACf,iBAAiB,EAAE,OAAO,CAAC;IAC3B,6EAA6E;IAC7E,2BAA2B,CAAC,EAAE,MAAM,CAAC;CACtC;AAED,+DAA+D;AAC/D,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAS7E;AAED,oFAAoF;AACpF,wBAAgB,6BAA6B,CAC3C,UAAU,EAAE,aAAa,EACzB,SAAS,EAAE,cAAc,EACzB,YAAY,EAAE,oBAAoB,GAAG,SAAS,GAC7C,MAAM,CAYR;AACD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,GAAG,oBAAoB,CA2H3F;AAED,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,UAAU,GAAG,UAAU,GAAG,IAAI,CAqEzE"}
@@ -8,12 +8,18 @@ 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.8";
11
+ export declare const VERSION = "9.1.0";
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;
15
15
  /** Space reserved in the window plan for deterministic verification/state sections added after LLM synthesis. */
16
16
  export declare const POST_SUMMARY_RESERVE_RATIO = 0.25;
17
+ /** Maximum number of open-loop records retained in durable continuity state. */
18
+ export declare const MAX_STATE_OPEN_LOOPS = 25;
19
+ /** Auto compaction must yield to native recovery instead of blocking the host indefinitely. */
20
+ export declare const AUTO_TRIGGER_TIMEOUT_CAP_MS = 60000;
21
+ /** Provider-call ceiling for the synchronous session_before_compact hook. */
22
+ export declare const AUTO_TRIGGER_MAX_LLM_CALLS = 4;
17
23
  /** Positive per-run bounds shared by CLI and tool arguments; config separately allows 0 as a mode-derived sentinel. */
18
24
  export declare const BUDGET_LIMITS: {
19
25
  readonly CALLS: {
@@ -68,7 +74,7 @@ export declare const SINGLE_PASS_SUFFIX = "\n{PREV_CONTEXT}\n\n{EXTRACTION_CONTE
68
74
  export declare const BATCH_PROMPT_PREFIX: string;
69
75
  export declare const BATCH_PROMPT_SUFFIX = "\n{EXTRACTION_CONTEXT}\n\n<segments>\n{TEXT}\n</segments>";
70
76
  export declare const ASSEMBLY_PROMPT_PREFIX: string;
71
- export declare const ASSEMBLY_PROMPT_SUFFIX = "\nIMMUTABLE CONTEXT (verified deterministic data):\n- Key Decisions: {DECISIONS}\n- Files Modified (VERIFIED): {MODIFIED}\n- Files Read (VERIFIED): {READ}\n\n{EXPLORATION_CONTEXT}\n{PREV_CONTEXT}\n\n<summaries>{SUMMARIES}</summaries>";
77
+ export declare const ASSEMBLY_PROMPT_SUFFIX = "\nIMMUTABLE CONTEXT (verified deterministic data):\n- Key Decisions: {DECISIONS}\n- Files Modified (VERIFIED): {MODIFIED}\n- Files Read (VERIFIED): {READ}\n- Files Deleted (VERIFIED): {DELETED}\n\n{EXPLORATION_CONTEXT}\n{PREV_CONTEXT}\n\n<summaries>{SUMMARIES}</summaries>";
72
78
  export declare const SESSION_TYPE_INSTRUCTIONS: Record<string, string>;
73
79
  export declare const SECTION_GOAL = "## Goal";
74
80
  export declare const SECTION_CONSTRAINTS = "## Constraints & Preferences";
@@ -76,6 +82,7 @@ export declare const SECTION_PROGRESS = "## Progress";
76
82
  export declare const SECTION_DECISIONS = "## Key Decisions";
77
83
  export declare const SECTION_FILES_MODIFIED = "## Files Modified";
78
84
  export declare const SECTION_FILES_READ = "## Files Read";
85
+ export declare const SECTION_FILES_DELETED = "## Files Deleted";
79
86
  export declare const SECTION_NEXT_STEPS = "## Next Steps";
80
87
  export declare const SECTION_CRITICAL_CONTEXT = "## Critical Context";
81
88
  export declare const SECTION_TOPICS = "## Topics Covered";
@@ -89,6 +96,20 @@ export declare const BACKUP_MAX_AGE_MS: number;
89
96
  export declare const FIVE_MINUTES_MS: number;
90
97
  export declare const ONE_HOUR_MS: number;
91
98
  export declare const SEVEN_DAYS_MS: number;
99
+ export declare const STATE_SNAPSHOT_MAX_FILES = 64;
100
+ /** Bounded summary-domain evidence; newest/highest-value items win. */
101
+ export declare const EXTRACTION_LIMITS: {
102
+ readonly MODIFIED_FILES: 120;
103
+ readonly READ_FILES: 160;
104
+ readonly DELETED_FILES: 120;
105
+ readonly ERRORS: 80;
106
+ readonly DECISIONS: 80;
107
+ readonly CONSTRAINTS: 80;
108
+ readonly TOPICS: 80;
109
+ readonly TIMELINE: 120;
110
+ readonly MEDIA_ATTACHMENTS: 40;
111
+ readonly REFERENCED_FILES: 200;
112
+ };
92
113
  export declare const THIRTY_DAYS_MS: number;
93
114
  export declare const EXTRACTION_CACHE_PREFIX = "compact-extraction-";
94
115
  export declare const ID_PREFIX: {
@@ -140,10 +161,10 @@ export declare const TRUNC: {
140
161
  };
141
162
  export declare const DAMAGE_RECENT_MSG_WINDOW = 15;
142
163
  export declare const MAX_TOOL_OUTPUT_CHARS = 800;
164
+ /** Provider-visible output from one exploration tool invocation. */
165
+ export declare const MAX_EXPLORER_OUTPUT_CHARS = 12000;
143
166
  /** Shell-output patterns signalling a likely error even in a non-`isError` result. */
144
167
  export declare const LIKELY_ERROR_RE: RegExp;
145
- /** catalogErrors only scans outputs shorter than this — pruning must not truncate below it. */
146
- export declare const ERROR_SCAN_MAX_LEN = 2000;
147
168
  /** How far forward to look for a retry of the same tool after an error. */
148
169
  export declare const ERROR_RETRY_WINDOW = 6;
149
170
  /** How far forward to look for that retry's resolving (non-error) result. */
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"scrub.d.ts","sourceRoot":"","sources":["../../src/domain/scrub.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,MAAM;IACrC,KAAK,EAAE,CAAC,CAAC;IACT,QAAQ,EAAE,gBAAgB,EAAE,CAAC;CAC9B;AAiDD,iFAAiF;AACjF,qBAAa,cAAc;IAGb,OAAO,CAAC,QAAQ,CAAC,cAAc;IAAS,OAAO,CAAC,QAAQ,CAAC,UAAU;IAF/E,OAAO,CAAC,KAAK,CAAK;IAElB,YAA6B,cAAc,UAAO,EAAmB,UAAU,UAAQ,EAAI;IAE3F,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAgB3C;IAED,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAyBtC;IAED,KAAK,IAAI,MAAM,CAAuB;CACvC"}
1
+ {"version":3,"file":"scrub.d.ts","sourceRoot":"","sources":["../../src/domain/scrub.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,MAAM;IACrC,KAAK,EAAE,CAAC,CAAC;IACT,QAAQ,EAAE,gBAAgB,EAAE,CAAC;CAC9B;AAgFD,iFAAiF;AACjF,qBAAa,cAAc;IAGb,OAAO,CAAC,QAAQ,CAAC,cAAc;IAAS,OAAO,CAAC,QAAQ,CAAC,UAAU;IAF/E,OAAO,CAAC,KAAK,CAAK;IAElB,YAA6B,cAAc,UAAO,EAAmB,UAAU,UAAQ,EAAI;IAE3F,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAgB3C;IAED,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAqCtC;IAED,KAAK,IAAI,MAAM,CAAuB;CACvC"}
@@ -17,7 +17,7 @@
17
17
  * Duplicate recognized kinds are merged at their first position with exact
18
18
  * duplicate body lines removed. Unknown sections remain independent.
19
19
  */
20
- import { CanonicalSummary, Section, SectionKind } from "./summary-schema.ts";
20
+ import type { CanonicalSummary, Section, SectionKind } from "./summary-schema.ts";
21
21
  /** Collapse untrusted extracted evidence to one Markdown-safe line. */
22
22
  export declare function summaryEvidenceLine(value: string, maxLength: number): string;
23
23
  export declare function parseSummary(markdown: string): CanonicalSummary;
@@ -1 +1 @@
1
- {"version":3,"file":"summary-parse.d.ts","sourceRoot":"","sources":["../../src/domain/summary-parse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,WAAW,EAAqC,MAAM,qBAAqB,CAAC;AAKhH,uEAAuE;AACvE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAQ5E;AAYD,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAmC/D;AAED,0DAA0D;AAC1D,wBAAgB,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,GAAG,SAAS,CAGtG;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAEzF;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,GAAE;IAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,MAAM,CAS3G;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,WAAW,GAAG,gBAAgB,GACzC,gBAAgB,CAoClB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,MAAM,EACZ,YAAY,SAAK,GAChB,gBAAgB,CAclB"}
1
+ {"version":3,"file":"summary-parse.d.ts","sourceRoot":"","sources":["../../src/domain/summary-parse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAKlF,uEAAuE;AACvE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAQ5E;AAYD,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAkD/D;AAED,0DAA0D;AAC1D,wBAAgB,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,GAAG,SAAS,CAGtG;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAEzF;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,GAAE;IAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,MAAM,CAS3G;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,WAAW,GAAG,gBAAgB,GACzC,gBAAgB,CAoClB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,MAAM,EACZ,YAAY,SAAK,GAChB,gBAAgB,CAclB"}
@@ -27,7 +27,7 @@
27
27
  * by helpers in `summary-parse.ts` when the verification logic needs to look
28
28
  * deeper.
29
29
  */
30
- export type SectionKind = "goal" | "constraints" | "progress" | "decisions" | "files-modified" | "files-read" | "next-steps" | "critical-context" | "topics" | "open-loops" | "changes" | "verification-note" | "unknown";
30
+ export type SectionKind = "goal" | "constraints" | "progress" | "decisions" | "files-modified" | "files-read" | "files-deleted" | "next-steps" | "critical-context" | "topics" | "open-loops" | "changes" | "verification-note" | "unknown";
31
31
  export interface Section {
32
32
  kind: SectionKind;
33
33
  /** Parsed heading with normalized H2 depth; the user-facing label is preserved. */
@@ -1 +1 @@
1
- {"version":3,"file":"summary-schema.d.ts","sourceRoot":"","sources":["../../src/domain/summary-schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAQH,MAAM,MAAM,WAAW,GACnB,MAAM,GACN,aAAa,GACb,UAAU,GACV,WAAW,GACX,gBAAgB,GAChB,YAAY,GACZ,YAAY,GACZ,kBAAkB,GAClB,QAAQ,GACR,YAAY,GACZ,SAAS,GACT,mBAAmB,GACnB,SAAS,CAAC;AAEd,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,WAAW,CAAC;IAClB,mFAAmF;IACnF,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAgBxD;AAED,uEAAuE;AACvE,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAiB1D"}
1
+ {"version":3,"file":"summary-schema.d.ts","sourceRoot":"","sources":["../../src/domain/summary-schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAQH,MAAM,MAAM,WAAW,GACnB,MAAM,GACN,aAAa,GACb,UAAU,GACV,WAAW,GACX,gBAAgB,GAChB,YAAY,GACZ,eAAe,GACf,YAAY,GACZ,kBAAkB,GAClB,QAAQ,GACR,YAAY,GACZ,SAAS,GACT,mBAAmB,GACnB,SAAS,CAAC;AAEd,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,WAAW,CAAC;IAClB,mFAAmF;IACnF,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAiBxD;AAED,uEAAuE;AACvE,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAkB1D"}
@@ -1,17 +1,14 @@
1
- /**
2
- * Tool classification by argument shape, with normalized names used only to
3
- * safely break ties that arguments cannot resolve (read/search/list/delete and
4
- * ambiguous `text` payloads). The broad `classifyTool(args)` API remains
5
- * name-agnostic for compatibility.
6
- *
7
- * Bash-style tools that take a free-text `command` remain opaque to file-path
8
- * tracking by construction. Pure: no I/O, no async, no globals.
9
- */
10
1
  /**
11
2
  * Extract a non-empty file-path argument from a tool call, covering common key
12
3
  * names. Returns undefined when no usable path is present.
13
4
  */
14
5
  export declare function extractToolPath(args: unknown): string | undefined;
6
+ export interface ShellFileOperations {
7
+ modified: string[];
8
+ deleted: string[];
9
+ }
10
+ /** Extract only explicit literal file targets from common mutating shell forms. */
11
+ export declare function extractShellFileOperations(args: unknown): ShellFileOperations;
15
12
  export type ToolClass = "mutates" | "accesses" | "executes" | "other";
16
13
  export type ToolOperation = "read" | "search" | "list" | "mutate" | "delete" | "execute" | "unknown";
17
14
  /** Normalize provider wrappers and spelling differences without merging namespaces. */
@@ -21,6 +18,15 @@ export declare function normalizeToolName(name: unknown): string;
21
18
  * normalized names only disambiguate otherwise-safe path/text and access calls.
22
19
  */
23
20
  export declare function classifyToolOperation(args: unknown, toolName?: string): ToolOperation;
21
+ /** Stable identity for deciding whether a later call is a retry of an earlier one. */
22
+ export declare function toolOperationSignature(toolName: string, args: Record<string, unknown>): string;
23
+ export declare function sameToolOperation(left: {
24
+ name: string;
25
+ arguments: Record<string, unknown>;
26
+ }, right: {
27
+ name: string;
28
+ arguments: Record<string, unknown>;
29
+ }): boolean;
24
30
  /**
25
31
  * Broad compatibility classifier retained for existing name-agnostic callers.
26
32
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tool-semantics.d.ts","sourceRoot":"","sources":["../../src/domain/tool-semantics.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAkCH;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAQjE;AAED,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CAAC;AACtE,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAErG,uFAAuF;AACvF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAQvD;AAOD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,aAAa,CAarF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,CAQrD"}
1
+ {"version":3,"file":"tool-semantics.d.ts","sourceRoot":"","sources":["../../src/domain/tool-semantics.ts"],"names":[],"mappings":"AA0CA;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAQjE;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AA8GD,mFAAmF;AACnF,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,OAAO,GAAG,mBAAmB,CAiC7E;AAED,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CAAC;AACtE,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAErG,uFAAuF;AACvF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAQvD;AAOD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,aAAa,CAarF;AAqBD,sFAAsF;AACtF,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAW9F;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,EAC1D,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAC1D,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,CAQrD"}
@@ -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,QAkkB7D"}
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,EAAE,MAAM,oBAAoB,CAAC;AAqEhD,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;AAiBD,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,EAAE,EAAE,YAAY,QAimB7D"}