pi-smart-compact 10.0.1 → 10.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 (51) hide show
  1. package/ARCHITECTURE.md +67 -19
  2. package/CHANGELOG.md +75 -0
  3. package/README.md +12 -7
  4. package/assets/skills/context-management/SKILL.md +5 -5
  5. package/dist/app/background-preparation.d.ts +13 -0
  6. package/dist/app/background-preparation.d.ts.map +1 -1
  7. package/dist/app/compaction-commit-store.d.ts +1 -1
  8. package/dist/app/compaction-commit-store.d.ts.map +1 -1
  9. package/dist/app/context-operations.d.ts +8 -2
  10. package/dist/app/context-operations.d.ts.map +1 -1
  11. package/dist/app/effective-state.d.ts.map +1 -1
  12. package/dist/app/hindsight-memory.d.ts.map +1 -1
  13. package/dist/app/lazy-tools.d.ts.map +1 -1
  14. package/dist/app/pending-slot.d.ts +2 -2
  15. package/dist/app/pending-slot.d.ts.map +1 -1
  16. package/dist/app/register-context-tools.d.ts.map +1 -1
  17. package/dist/app/register-navigation.d.ts +3 -1
  18. package/dist/app/register-navigation.d.ts.map +1 -1
  19. package/dist/app/register-smart-compact-command.d.ts.map +1 -1
  20. package/dist/app/register-smart-compact-tool.d.ts.map +1 -1
  21. package/dist/app/register-smart-context-tool.d.ts +1 -0
  22. package/dist/app/register-smart-context-tool.d.ts.map +1 -1
  23. package/dist/app/settled-auto-trigger.d.ts.map +1 -1
  24. package/dist/app/stage-auth.d.ts.map +1 -1
  25. package/dist/app/steps/synthesize.d.ts.map +1 -1
  26. package/dist/constants.d.ts +4 -3
  27. package/dist/constants.d.ts.map +1 -1
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js +1340 -339
  30. package/dist/phases/explore.d.ts.map +1 -1
  31. package/dist/phases/synthesize.d.ts +1 -1
  32. package/dist/phases/synthesize.d.ts.map +1 -1
  33. package/dist/phases/verify.d.ts +12 -4
  34. package/dist/phases/verify.d.ts.map +1 -1
  35. package/dist/rtk.js +6 -5
  36. package/dist/types.d.ts +5 -2
  37. package/dist/types.d.ts.map +1 -1
  38. package/dist/ui/profiles.d.ts +1 -1
  39. package/dist/ui/profiles.d.ts.map +1 -1
  40. package/dist/ui/settings-overlay.d.ts.map +1 -1
  41. package/dist/ui/tool-rows.d.ts +76 -0
  42. package/dist/ui/tool-rows.d.ts.map +1 -0
  43. package/dist/utils/cache.d.ts.map +1 -1
  44. package/dist/utils/config.d.ts.map +1 -1
  45. package/dist/utils/extraction.d.ts +21 -0
  46. package/dist/utils/extraction.d.ts.map +1 -1
  47. package/dist/utils/state.d.ts.map +1 -1
  48. package/docs/configuration.md +95 -32
  49. package/docs/evaluation.md +15 -2
  50. package/docs/guide.md +57 -31
  51. package/package.json +1 -1
package/ARCHITECTURE.md CHANGED
@@ -112,10 +112,10 @@ tool exposure, policy and navigation state;
112
112
  (see [recoverable trimming](#recoverable-trimming)); the RTK companion uses
113
113
  `tool_call`.
114
114
 
115
- Tool exposure is owned by `app/lazy-tools.ts`. With `toolLoading: "lazy"`
116
- (default) only the `smart_tools` loader is active; a group becomes active when
117
- the agent loads it, and loaded groups are forgotten at `session_start`,
118
- `session_tree` and `session_compact`. `eager` activates every permitted group;
115
+ Tool exposure is owned by `app/lazy-tools.ts`. The default `eager` mode keeps
116
+ permitted declarations stable from session start. Optional `lazy` exposes
117
+ `smart_tools` first; loaded groups reset at `session_start` and `session_tree`,
118
+ not `session_compact` (native kept thinking may still bind system/tools).
119
119
  `off` removes all owned tools while the human UI keeps working. Group
120
120
  permissions (`agentToolAccess`, memory backend, `contextNavigationEnabled`)
121
121
  apply in every mode. The exposure removes only its own tools, restores only
@@ -144,7 +144,7 @@ settings.
144
144
  `ui/profiles.ts` derives presets from exact persisted flags. Behavior presets
145
145
  are **Manual only**, **Manual + agent**, **Cleanup only** and **Fully
146
146
  automatic**; the built-in defaults, which match none of them, are labeled
147
- **With Pi (default)**. Summary formats are **Verified text**, **Text +
147
+ **Pressure-first (default)**. Summary formats are **Verified text**, **Text +
148
148
  images** and **Provider (experimental)**; provider output needs a second
149
149
  confirming Enter, and capacity-ineligible models cannot be selected. Fully
150
150
  automatic selects the `settled` strategy. Presets atomically patch existing
@@ -342,6 +342,15 @@ anchor footer and the Anthropic anchor cache marker (`app/anchor-cache.ts`).
342
342
  type `smart-context-anchor`, plus `smart_navigation` tool results) and legacy
343
343
  `context` tool anchors; recall scans other sessions' JSONL read-only.
344
344
 
345
+ Agent anchors require the shared early pressure gate by default. An anchor
346
+ requests one safe consolidation through `smart_context`'s existing queue;
347
+ only its new region can be trimmed before first replay. Previous anchor and
348
+ checkpoint prefixes stay protected. Append-only anchors do not invalidate a
349
+ prepared summary; ready/running compaction takes priority over agent cleanup.
350
+ Human commands bypass pressure gates, not safety checks. Selective trim/rewind
351
+ fail closed if they would change history before retained signed Anthropic
352
+ thinking. Byte-identical thinking alone does not preserve its prefix binding.
353
+
345
354
  A human anchor is a `sendMessage` custom message followed by a native label on
346
355
  that entry; a human pivot navigates to the label so Pi's `custom_message`
347
356
  handling cannot drop the anchor text. An agent pivot is queued by the tool,
@@ -372,6 +381,12 @@ breadcrumbs, and a "Changes Since Last Compaction" delta. Snapshots are scoped
372
381
  to project, session and branch head; see
373
382
  [state, caching and persistence](#state-caching-and-persistence).
374
383
 
384
+ Same-question decisions keep the latest non-empty answered record, including
385
+ its provenance; an unanswered re-ask does not erase the prior answer. Fallback,
386
+ verification and state merging share this selection rule. Automatic constraint
387
+ retirement uses bounded recognition of explicit releases, not general
388
+ natural-language entailment: question, report and denial forms are not grants.
389
+
375
390
  ## 3. Verified compaction
376
391
 
377
392
  ### Automatic strategies
@@ -380,33 +395,45 @@ to project, session and branch head; see
380
395
  `background` runs and the native hook does not replace Pi's summaries. Pi's own
381
396
  compactor is not affected. Hygiene can still run.
382
397
 
383
- - **`native-hook`** (default) is passive. It participates only when Pi starts
398
+ - **`native-hook`** is passive. It participates only when Pi starts
384
399
  a compaction; its percentage setting is a minimum replacement gate, not a
385
400
  scheduler, and Pi auto-compaction must itself be enabled for host-driven
386
401
  runs.
387
- - **`settled`** applies finite token/percentage, queue, in-flight and
402
+ - **`settled`** (default, 80% apply gate) applies finite token/percentage, queue, in-flight and
388
403
  per-session cooldown guards at idle `agent_settled`, then asks Pi for a
389
- normal host compaction. Pi re-enters `session_before_compact`, which reuses an
404
+ normal host compaction. Every finished attempt, including callback errors,
405
+ synchronous throws and watchdog expiry, starts the cooldown; late callbacks
406
+ cannot reset it or change a newer request's state. Pi re-enters `session_before_compact`, which reuses an
390
407
  already tool-staged summary or runs EESV exactly once under the host's signal
391
408
  and timeout. `session_compact` stays the only durable commit authority;
392
409
  `session_compact_failed` discards the candidate. This keeps proactive
393
410
  triggering out of the pending/commit state machine and preserves
394
- branch-provenance checks.
395
- - **`background`** (`app/background-preparation.ts`) snapshots branch, model,
396
- session and usage before asynchronous work. `prepareContextPercent` sets an
411
+ branch-provenance checks. Watchdog expiry is not a host cancellation: a busy
412
+ host is reported as pending without manual-retry advice, and late completion
413
+ remains valid.
414
+ - **`background`** (opt-in, `app/background-preparation.ts`) snapshots branch,
415
+ model, session, system prompt and usage before asynchronous work. Effective
416
+ tool definitions are fingerprinted and checked again before use. `prepareContextPercent` sets an
397
417
  independent early gate with the existing minimum token floor; null preserves
398
418
  `applyTokens - clamp(floor(applyTokens * 0.125), 8192, 32000)`. An explicit
399
419
  prepare percentage must be below the effective `minContextPercent` apply gate.
400
420
  Only pipeline admission is lowered; targets, yield and apply-time safety are
401
421
  unchanged. A private pending slot isolates cancellation from foreground
402
- staging. One task, a ten-minute attempt cooldown and a five-minute ready TTL
403
- bound speculation. Model/config changes, branch navigation, new compaction or
422
+ staging. One task, a ten-minute attempt cooldown and configured `pendingTtlMs`
423
+ (default five minutes) bound speculation. Model/system/tool/config changes, branch navigation, new compaction or
404
424
  context edits, switch/shutdown and native compaction invalidate unfinished
405
425
  work, and late completion cannot publish after cancellation. Before reuse, a
406
426
  content fingerprint proves the captured prefix is unchanged; appended tail
407
427
  growth must still satisfy the verified target, minimum yield and response
408
428
  reserve.
409
429
 
430
+ `contextPressure` supplies execution, status and TUI with the same policy window
431
+ and early/apply gates (288k/320k for a 400k window at default 80%). Roomy history
432
+ stays unchanged by default; `contextPressureOnly: false` opts into legacy
433
+ break-even/cold-cache hygiene. Metadata checkpoints and first-delivery offload
434
+ are independent of old-prefix pruning. Cleanup commits before preparation can
435
+ snapshot it, and later compaction observes Pi's updated projected usage.
436
+
410
437
  Preparation never waits inside `turn_end`. Proactive application waits for
411
438
  idle `agent_settled`; an ongoing tool loop relies on Pi's native maintenance
412
439
  boundary. No boundary draft bypasses the `session_compact` commit protocol. The
@@ -554,7 +581,12 @@ Deterministically pulls modified/read/deleted files, tool and bash-like errors,
554
581
  retry/resolution signals, explicit and implicit decisions, constraints and
555
582
  preferences, heuristic topic segments, timeline events, the main goal and open
556
583
  loops across the whole compacted prefix. This is the ground truth that
557
- synthesis and verification trust.
584
+ synthesis and verification trust. Dialog answers follow tool-call IDs rather
585
+ than a fixed next-message window. Fresh extraction and cached reconciliation
586
+ share retry-result classification and inspect later/sibling retries; a false
587
+ `isError` flag cannot turn an error-bearing command result into success.
588
+ Self-notice filtering distinguishes a standalone user rule from that phrase
589
+ inside an attributed Smart Compact warning.
558
590
 
559
591
  ### Explore
560
592
 
@@ -566,7 +598,8 @@ error chains. Tool support is probed once and cached per run; without function
566
598
  calling the system falls back to a direct structured analysis. The tool
567
599
  conversation is capped at three rounds, each response is capped where the
568
600
  provider supports output limits, and the shared prefix uses short-lived prompt
569
- caching.
601
+ caching. Every exploration path leaves two calls for batch synthesis and final
602
+ assembly; with two or fewer calls remaining it uses deterministic boundaries.
570
603
 
571
604
  ### Synthesize
572
605
 
@@ -583,7 +616,12 @@ caching.
583
616
  Session-aware prompting, decision propagation across later batches,
584
617
  mode-specific thresholds and output limits, provider-aware wave concurrency,
585
618
  aggregate prompt-token reservation and deterministic fallback assembly when any
586
- budget or LLM call fails.
619
+ budget or LLM call fails. Batch retries and queued workers recheck remaining
620
+ calls before dispatch so they cannot spend the final assembly call.
621
+ Single-pass and final assembly reject known nonterminal stop reasons and
622
+ unclosed Markdown fences before the synthesis cache can retain the result.
623
+ Their existing error paths use deterministic fallback, without extra retries
624
+ or enlarged budgets.
587
625
 
588
626
  ### Verify
589
627
 
@@ -595,6 +633,13 @@ fabricated paths, done/unresolved inconsistencies, explicit decisions, open
595
633
  loops and unsupported high-risk outcome claims. Claims such as "tests passed"
596
634
  need matching source prose or a successful related tool result.
597
635
 
636
+ Explicit decisions are question–answer units, not independent bags of words:
637
+ short/symbolic/numeric answers retain their identity, and one question cannot
638
+ borrow another question's answer. Answer polarity is separate from the
639
+ question's wording. A conflicting answer is an inconsistency that cannot be
640
+ repaired by simply appending the expected answer. These deterministic checks
641
+ remain bounded heuristics, not a proof of arbitrary prose equivalence.
642
+
598
643
  Repair order is intentional: (1) deterministic patch first (free, idempotent);
599
644
  (2) one LLM patch only in `thorough` mode if still insufficient; (3) replace
600
645
  lower-scoring output with a deterministic quality floor built only from
@@ -879,7 +924,7 @@ derived-only reset from confirmed all-project graph deletion; neither changes
879
924
  Mnemopi/Hindsight, compaction state or backups. Closing a local ref only marks
880
925
  its node resolved.
881
926
 
882
- **Retention limits:** pending in-memory compaction 5 min · exploration
927
+ **Retention limits:** pending in-memory compaction `pendingTtlMs` (default 5 min) · exploration
883
928
  tool-support cache 1 h / 128 routes · token calibration 128 routes · extraction
884
929
  cache 1 h · compaction state 7 d / 64 snapshots · context graph 2,000
885
930
  active derived fact nodes, 2,000 tombstones (resolved facts and closed manual
@@ -903,7 +948,7 @@ loop). `consume()` returns a discriminated result:
903
948
  | --- | --- |
904
949
  | `ok` | fresh payload for this session |
905
950
  | `empty` | nothing staged |
906
- | `expired` | older than the 5-minute TTL |
951
+ | `expired` | older than the configured `pendingTtlMs` |
907
952
  | `mismatch` | staged by a different session, project, or non-ancestor branch head |
908
953
 
909
954
  Session identity comes from
@@ -922,7 +967,10 @@ deadline through a shared [`ExternalCancellation`](https://github.com/alpertarha
922
967
  handle. Either source calls `abort()`, and every side-effect gate checks the
923
968
  shared state before writing or applying. The caller waits for a safe pipeline
924
969
  unwind; no `Promise.race` hard return can leave work running past the hook
925
- lifecycle.
970
+ lifecycle. Lazy auth preflight also observes this signal, so a non-cooperative
971
+ registry cannot pin the cancelled run's lock. The underlying registry operation
972
+ may finish later; its outcome is consumed without caching credentials into the
973
+ cancelled stage or allowing staging/apply to resume.
926
974
 
927
975
  ### Filesystem and locks
928
976
 
package/CHANGELOG.md CHANGED
@@ -2,6 +2,81 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [10.1.0] - 2026-09-29
6
+
7
+ ### Release approval
8
+
9
+ - The release owner explicitly approved shipping `10.1.0` to stable without
10
+ a new version-specific applied-canary cohort or a `PROMOTE` result for this
11
+ version. Deterministic release gates and protected PR CI still apply. This
12
+ is an approval and evidence limit, not a claim that live quality or savings
13
+ were measured for `10.1.0`, and not a claim that final release checks have
14
+ already passed.
15
+
16
+ ### Added
17
+
18
+ - Native tool rows for all six agent tools (`smart_tools`, `smart_context`,
19
+ `smart_navigation`, `smart_recall`, `smart_save_memory`, `smart_compact`):
20
+ compact status lines with honest states (queued, staged, dry-run, skipped,
21
+ pending, failed, cancelled are never shown as done/applied/saved), bounded
22
+ previews when collapsed, and the full original result text when expanded
23
+ via the configured native expansion key. Rows are call-time snapshots with
24
+ no polling.
25
+ - Memory saves surface stable refs and titles: completed saves are marked
26
+ searchable, accepted saves are clearly not yet searchable, and uncertain
27
+ outcomes keep their operation identity. Recall shows prior-save receipt
28
+ states (completed/pending/failed/unknown) from the refresh it already runs,
29
+ and long recalled facts are marked as excerpts rather than complete memory.
30
+ - Shared usage/pressure gates in `smart_context status`, navigation footer and TUI.
31
+ - `task-eval --tool-loading=eager|lazy`, with tool schemas included in normalized
32
+ prefix comparisons. Offline results remain lifecycle evidence, not billing proof.
33
+ - A documented cache-first configuration using idle compaction and initial
34
+ output offload, pressure-only cleanup and no speculative preparation.
35
+
36
+ ### Changed
37
+
38
+ - Intermediate synthesis fallbacks stay in progress/metrics instead of warning
39
+ toasts; applied results still disclose fallback use. Prompt-cache attribution
40
+ stays in Readiness/metrics without duplicating Pi's cache-miss notice.
41
+ - Pressure-first defaults: stable eager tool exposure, early batched cleanup,
42
+ and idle compaction at 80%. `contextPressureOnly: false` explicitly opts into
43
+ earlier economic/cold-cache cleanup. Human commands keep early-operation access.
44
+ - Agent anchors now request one safe cleanup of their new region through the
45
+ existing trim controller. Prior anchor prefixes and recent work stay protected;
46
+ append-only anchors no longer discard paid background preparation.
47
+
48
+ ### Fixed
49
+
50
+ - EESV preserves verbatim constraints and negative contractions, verifies explicit
51
+ question–answer pairs (including short and numeric choices), and keeps the
52
+ latest answered decision across fallback, verification and continuity state.
53
+ Repair cannot certify a wrong answer by merely appending the correct one.
54
+ - Constraint retirement requires directed release evidence instead of treating
55
+ questions, criticism, reported behavior or denied permission as authorization.
56
+ Genuine user rules are no longer discarded merely for saying “do not bypass
57
+ verification.” Dialog results are paired by tool-call ID, and fresh/cached
58
+ extraction use consistent retry-result classification, including sibling retries.
59
+ - Single-pass and final assembly reject known nonterminal or fence-truncated
60
+ responses before synthesis caching and use the existing deterministic fallback.
61
+ - Credential availability checks honor run cancellation without holding the run
62
+ lock until auth finishes. Late auth results cannot resume the cancelled run.
63
+ The settled watchdog distinguishes a busy host from an idle missing result
64
+ instead of suggesting a conflicting manual retry while Pi is busy.
65
+ - Exploration now leaves two calls for batch synthesis and final assembly,
66
+ including probe/direct/retry paths. Batch retries and queued workers also
67
+ preserve the final assembly call instead of exhausting the shared budget.
68
+ - Continuity display labels (`Constraint:`, `Goal:`, `Decision:`) no longer make
69
+ an unchanged carried fact fail semantic verification. Actual contradictions
70
+ still block apply.
71
+ - Automatic idle compaction now cools down after failed and timed-out attempts,
72
+ not only successful compactions, preventing repeated idle events from spending
73
+ another model budget. Manual compaction and Pi's own recovery stay available.
74
+
75
+ - Client trim/rewind refuse edits that would invalidate retained signed Anthropic
76
+ thinking. Background candidates validate system/tool changes; configured
77
+ `pendingTtlMs` now governs both staged and background summaries. Loaded tools
78
+ remain stable across compaction.
79
+
5
80
  ## [10.0.1] - 2026-09-28
6
81
 
7
82
  ### Removed
package/README.md CHANGED
@@ -19,10 +19,12 @@ this extension adds context hygiene and continuity policies around it.
19
19
  > The TUI still says **Smart Compact**. No data or configuration migration is
20
20
  > needed. [Identity and naming](./docs/identity.md).
21
21
  >
22
- > **Pi Continuity 10.0.1:** upgrading from 9.x? Update Pi to 0.87.1 or newer
22
+ > **Pi Continuity 10.1.0:** upgrading from 9.x? Update Pi to 0.87.1 or newer
23
23
  > and read the [upgrade notes](./docs/guide.md#upgrade-from-9x). Optional memory
24
24
  > engines and image rendering are installed separately. The
25
25
  > [changelog](./CHANGELOG.md) records the full release and its evidence limits.
26
+ > These defaults (pressure-first cleanup, eager tool exposure, native tool
27
+ > rows) ship with 10.1.0.
26
28
 
27
29
  ## What it does
28
30
 
@@ -66,9 +68,10 @@ Open **Settings → How it runs** to choose your level of control:
66
68
  | **Cleanup only** | Local, recoverable cleanup; no automatic summary generation. |
67
69
  | **Fully automatic** | Cleanup plus compaction requests when idle at the configured context threshold. |
68
70
 
69
- Pi's own compaction setting is separate. **With Pi (default)** participates when
70
- Pi starts compaction; it does not independently schedule it. A threshold alone
71
- is not an automatic trigger. [Trigger settings](./docs/configuration.md).
71
+ Pi's own compaction setting is separate. **Pressure-first (default)** keeps
72
+ roomy history unchanged, allows cleanup at an early pressure gate, then requests
73
+ compaction when idle at 80% if still needed. The optional `native-hook` strategy
74
+ participates only when Pi starts compaction. [Trigger settings](./docs/configuration.md).
72
75
 
73
76
  For your first run, choose **Compact now**, inspect the plan, then review the
74
77
  result. **A** applies it; **C** or **Esc** cancels. **Enter does not apply** on
@@ -118,9 +121,11 @@ actions explain why.
118
121
  | `/smart-compact handoff dry-run` | Previews a new-session seed without opening one. Use `handoff [-- note]` to proceed. |
119
122
  | `/smart-compact metrics` | Shows effective state, run outcomes, recent issues and the host prompt-cache ledger. |
120
123
 
121
- By default the agent sees only the `smart_tools` loader, then loads the groups
122
- it needs. The context guide is read on request, not injected. Tool availability
123
- and compaction permission are separate controls.
124
+ By default permitted agent tools stay visible from session start, avoiding late
125
+ schema changes to cached prefixes. Actions, not visibility, are pressure-gated;
126
+ read-only recovery and metadata checkpoints remain available while roomy.
127
+ Optional lazy loading uses `smart_tools`. The context guide is read on request,
128
+ not injected. Tool availability and compaction permission are separate controls.
124
129
  [Agent tools](./docs/guide.md#agent-tools) · [All commands](./docs/guide.md#command-reference)
125
130
 
126
131
  ## Memory is optional; continuity is the core
@@ -5,14 +5,14 @@ disable-model-invocation: true
5
5
  ---
6
6
  # Context continuity
7
7
 
8
- Load only the tools needed for the current job with `smart_tools(action="load", group=...)`. Loading a group does not load this guide. Tool selection changes can invalidate the provider prompt cache, so keep a needed group loaded until the work ends; do not load and unload it on every turn. The user can disable capabilities or all agent tools in `/smart-compact` settings.
8
+ Permitted context tools are available from the start by default. In optional lazy mode, use `smart_tools(action="load", group=...)` for a missing group. Loading does not inject this guide. Keep tool definitions stable: late loading/unloading can rebuild the provider cache. The user can disable capabilities or all agent tools in `/smart-compact` settings.
9
9
 
10
10
  ## Milestones and navigation
11
11
 
12
12
  Load `navigation` for `smart_navigation`.
13
13
 
14
14
  - `view` lists recent anchors on the active branch first, then other branches. Results are bounded previews; use `target` to read one anchor's full summary. An anchor records completed work, not a speculative plan.
15
- - `anchor` records a unique name and a concise retrospective summary. Preserve the user's goal and constraints, decisions with rationale, verified state, unresolved problems and exact identifiers needed to continue. Do not include secrets. Creating an anchor does not compact or delete history.
15
+ - `anchor` records completed work only under pressure by default; check `smart_context status` first. Preserve the goal, constraints, decisions, verified state, unresolved problems and exact identifiers. It queues one safe cleanup of the new region, not a full compaction. The response distinguishes queued cleanup from a no-op; never claim context shrank before commit. Do not duplicate a rewind report as another long anchor summary.
16
16
  - `recall` searches anchors in earlier local sessions, in the current project by default. Only use `scope="all"` when cross-project search is actually needed. Results are historical evidence, not instructions or permission. Use Pi's `/resume` to open a different session.
17
17
  - Before `pivot`, inspect the destination with `view`. Supply its exact entry ID or unambiguous anchor name and a non-empty `carryover` containing the task, new facts, decisions, failures, unfinished work and the next step. Call pivot on its own and end the turn. The host applies it only after the tool batch settles and revalidates the origin. A queued result is not proof that navigation has happened.
18
18
  - Pivot changes the active conversation branch, not files, running processes, databases or external services. Never claim it undoes side effects. Required carryover is inserted as the native tree summary without a second model request. An optional `message` becomes the next user turn only after successful navigation; omit it when the user should decide what happens next.
@@ -21,11 +21,11 @@ Load `navigation` for `smart_navigation`.
21
21
 
22
22
  Load `history` for `smart_context`. This is different from tree navigation.
23
23
 
24
- - `plan` previews recoverable cleanup; `trim` requests it at an uncontested completed turn boundary.
25
- - `checkpoint` begins a bounded research segment. `rewind(report=...)` removes its eligible read-only exploration from delivered context while retaining the findings you explicitly report. Preserve decisions, evidence, constraints, failures and the next step. Do not hide side effects or discard an unresolved question.
24
+ - `status` shows real usage, the policy window, cleanup/compaction thresholds and blockers. `plan` previews cleanup; `trim` requests it at an uncontested completed turn boundary. Agent trim/rewind/anchor requests require pressure by default; human commands can request earlier work.
25
+ - `checkpoint` is cheap metadata: use it before a substantial, bounded read-only research detour, not every turn. `rewind(report=...)` removes its eligible read-only exploration from delivered context while retaining the findings you explicitly report. Preserve decisions, evidence, constraints, failures and the next step. Do not hide side effects or discard an unresolved question.
26
26
  - `status`, `search` and `read` recover archived tool evidence on the active branch; add `scope="lineage"` to reach the sessions this one was handed off or forked from (read-only, up to three levels). A marker is a digest (subject, first line, risk lines), not the output; a `(superseded: …)` note means the file was edited or read again in full later. Old successful `bash` output and old `read` pages are archived the same way. A preview is not the whole output; retrieve the needed source rather than inventing details.
27
27
  - A `read` or `search` that reports archived text no longer matching its record means the session file changed after archiving; treat that source as unavailable and say so, never reconstruct it.
28
- - Anchor prefixes are protected. There is only one cleanup owner; do not add another extension that independently truncates the same history.
28
+ - Published anchor prefixes stay protected. A new anchor may consolidate only its new region once, before first replay. Signed Anthropic thinking that depends on removed history blocks unsafe trim/rewind; do not bypass this safeguard. Prepared compaction takes priority. There is one cleanup owner; do not stack independent truncators.
29
29
 
30
30
  ## Compaction and durable memory
31
31
 
@@ -18,10 +18,23 @@ export declare function preparationWindow(config: Pick<CompactConfig, "minContex
18
18
  startTokens: number;
19
19
  applyTokens: number;
20
20
  };
21
+ /** Shared execution/status gates; unknown usage fails closed, never means zero pressure. */
22
+ export declare function contextPressure(ctx: Pick<ExtensionContext, "model" | "getContextUsage">, config: Pick<CompactConfig, "minContextPercent" | "prepareContextPercent" | "maxContextTokens">): {
23
+ tokens: number | null;
24
+ modelWindow: number | null;
25
+ policyWindow: number | null;
26
+ percent: number | null;
27
+ cleanupTokens: number | null;
28
+ compactionTokens: number | null;
29
+ cleanup: boolean;
30
+ compaction: boolean;
31
+ };
21
32
  export declare function createBackgroundPreparation(options: {
22
33
  prepare(ctx: ExtensionContext, config: CompactConfig, signal: AbortSignal): Promise<PendingCompaction | null>;
23
34
  now?: () => number;
24
35
  ttlMs?: number;
36
+ /** Effective active-tool definitions, not just names. Never inject this into the model context. */
37
+ toolSignature?: () => string;
25
38
  cooldownMs?: number;
26
39
  /** Test seam for the bounded local discard metrics entry. */
27
40
  discardRecorder?: (sessionId: string, snapshot: MetricsSnapshot, reason: PreparationDiscardReason) => void | Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"background-preparation.d.ts","sourceRoot":"","sources":["../../src/app/background-preparation.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAGxE,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAM/G;;;;GAIG;AACH,wBAAgB,wBAAwB,CACvC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,eAAe,EACzB,MAAM,EAAE,wBAAwB,GAC9B,OAAO,CAAC,OAAO,CAAC,CAQlB;AACD,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAGlE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAChC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,mBAAmB,GAAG,uBAAuB,CAAC,EAC1E,MAAM,EAAE,MAAM,GACZ;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAS9C;AAgDD,wBAAgB,2BAA2B,CAAC,OAAO,EAAE;IACpD,OAAO,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IAC9G,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,wBAAwB,KAAK,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC9H;mBAiEsB,gBAAgB,UAAU,aAAa,KAAG,IAAI;gBAgDjD,gBAAgB,UAAU,aAAa,KAAG,iBAAiB,GAAG,IAAI;sBA5E7D,wBAAwB,KAAiB,IAAI;+BAoGnC,MAAM,UAAU,YAAY,GAAG,OAAO,KAAG,IAAI;gBAS5D,OAAO,CAAC,IAAI,CAAC;;IAM/B,2EAA2E;sBACzD,MAAM,GAAG,MAAM,GAAG,WAAW,GAAG,OAAO;8BAK/B,MAAM;EAKjC"}
1
+ {"version":3,"file":"background-preparation.d.ts","sourceRoot":"","sources":["../../src/app/background-preparation.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAGxE,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAM/G;;;;GAIG;AACH,wBAAgB,wBAAwB,CACvC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,eAAe,EACzB,MAAM,EAAE,wBAAwB,GAC9B,OAAO,CAAC,OAAO,CAAC,CAQlB;AACD,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAGlE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAChC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,mBAAmB,GAAG,uBAAuB,CAAC,EAC1E,MAAM,EAAE,MAAM,GACZ;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAS9C;AAED,4FAA4F;AAC5F,wBAAgB,eAAe,CAC9B,GAAG,EAAE,IAAI,CAAC,gBAAgB,EAAE,OAAO,GAAG,iBAAiB,CAAC,EACxD,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,mBAAmB,GAAG,uBAAuB,GAAG,kBAAkB,CAAC;;;;;;;;;EAgB/F;AAkDD,wBAAgB,2BAA2B,CAAC,OAAO,EAAE;IACpD,OAAO,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IAC9G,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mGAAmG;IACnG,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,wBAAwB,KAAK,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC9H;mBAiEsB,gBAAgB,UAAU,aAAa,KAAG,IAAI;gBAoDjD,gBAAgB,UAAU,aAAa,KAAG,iBAAiB,GAAG,IAAI;sBAhF7D,wBAAwB,KAAiB,IAAI;+BAwGnC,MAAM,UAAU,YAAY,GAAG,OAAO,KAAG,IAAI;gBAS5D,OAAO,CAAC,IAAI,CAAC;;IAM/B,2EAA2E;sBACzD,MAAM,GAAG,MAAM,GAAG,WAAW,GAAG,OAAO;8BAK/B,MAAM;EAKjC"}
@@ -16,7 +16,7 @@ export interface CompactionCommitStore {
16
16
  * Nothing durable is written until `take()` confirms both run and session.
17
17
  */
18
18
  export declare function createCompactionCommitStore(options?: {
19
- ttlMs?: number;
19
+ ttlMs?: number | (() => number);
20
20
  maxEntries?: number;
21
21
  onDiscard?: (pending: PendingCompaction, reason: CommitDiscardReason) => void;
22
22
  }): CompactionCommitStore;
@@ -1 +1 @@
1
- {"version":3,"file":"compaction-commit-store.d.ts","sourceRoot":"","sources":["../../src/app/compaction-commit-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAOrD;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,aAAa,GAAG,SAAS,GAAG,kBAAkB,CAAC;AAElI,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACxC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAAC;IACjE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,IAAI,CAAC;IAC9E,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,EAAE,CAAC;IACnF,IAAI,IAAI,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,GAAE;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;CAC1E,GAAG,qBAAqB,CAoE7B"}
1
+ {"version":3,"file":"compaction-commit-store.d.ts","sourceRoot":"","sources":["../../src/app/compaction-commit-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAOrD;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,aAAa,GAAG,SAAS,GAAG,kBAAkB,CAAC;AAElI,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACxC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAAC;IACjE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,IAAI,CAAC;IAC9E,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,EAAE,CAAC;IACnF,IAAI,IAAI,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,GAAE;IACnD,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;CAC1E,GAAG,qBAAqB,CAoE7B"}
@@ -66,7 +66,12 @@ export declare function buildTrimMarker(input: {
66
66
  };
67
67
  note?: string;
68
68
  }): string;
69
- export declare function planContextTrim(branch: SessionEntry[], afterId?: string): {
69
+ /** Signed Anthropic thinking may bind the entire preceding history, not only its own bytes. */
70
+ export declare function thinkingEditReason(branch: SessionEntry[], entries: SessionBoundaryDraft[], readerApi?: string): string | undefined;
71
+ export declare function planContextTrim(branch: SessionEntry[], afterId?: string, options?: {
72
+ anchorBoundary?: string | null;
73
+ readerApi?: string;
74
+ }): {
70
75
  entries: SessionBoundaryDraft[];
71
76
  references: string[];
72
77
  archives: ArchiveRecord[];
@@ -74,6 +79,7 @@ export declare function planContextTrim(branch: SessionEntry[], afterId?: string
74
79
  automatic: string;
75
80
  cooldownTurns: number;
76
81
  superseded: number;
82
+ blockedReason: string | undefined;
77
83
  };
78
84
  /** The plan's context edits followed by a trim control entry recording `cause`. */
79
85
  export declare function trimEntries(plan: {
@@ -96,7 +102,7 @@ export declare function trimTokens(branch: SessionEntry[], entries: SessionBound
96
102
  * the price is unknown.
97
103
  */
98
104
  export declare function trimBreakEvenRequests(cost: Partial<ModelCostRates> | undefined, savedTokens: number, tailTokens: number): number | null;
99
- export declare function planContextRewind(branch: SessionEntry[], sessionId: string, checkpointId: string, report: string): {
105
+ export declare function planContextRewind(branch: SessionEntry[], sessionId: string, checkpointId: string, report: string, readerApi?: string): {
100
106
  entries: SessionBoundaryDraft[];
101
107
  removed: number;
102
108
  };
@@ -1 +1 @@
1
- {"version":3,"file":"context-operations.d.ts","sourceRoot":"","sources":["../../src/app/context-operations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context-operations.d.ts","sourceRoot":"","sources":["../../src/app/context-operations.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"effective-state.d.ts","sourceRoot":"","sources":["../../src/app/effective-state.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAOxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAQjD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAkC,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC;IAC5C,MAAM,EAAE,OAAO,CAAC;IAChB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AACD,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,sBAAsB,CAAC;CAChC;AAED,8EAA8E;AAC9E,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,gBAAgB,EACrB,MAAM,EAAE,aAAa,EACrB,OAAO,CAAC,EAAE,qBAAqB,EAC/B,WAAW,CAAC,EAAE,gBAAgB,GAC7B,OAAO,CAAC,kBAAkB,CAAC,CAsC7B;AAaD,wGAAwG;AACxG,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,gBAAgB,EACrB,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,0BAA0B,EAClC,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,MAAM,CAAC,CA4FjB"}
1
+ {"version":3,"file":"effective-state.d.ts","sourceRoot":"","sources":["../../src/app/effective-state.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAOxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAQjD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAkC,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC;IAC5C,MAAM,EAAE,OAAO,CAAC;IAChB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AACD,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,sBAAsB,CAAC;CAChC;AAED,8EAA8E;AAC9E,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,gBAAgB,EACrB,MAAM,EAAE,aAAa,EACrB,OAAO,CAAC,EAAE,qBAAqB,EAC/B,WAAW,CAAC,EAAE,gBAAgB,GAC7B,OAAO,CAAC,kBAAkB,CAAC,CAsC7B;AAaD,wGAAwG;AACxG,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,gBAAgB,EACrB,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,0BAA0B,EAClC,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,MAAM,CAAC,CAgGjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"hindsight-memory.d.ts","sourceRoot":"","sources":["../../src/app/hindsight-memory.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAIN,KAAK,mBAAmB,EACxB,KAAK,eAAe,EAKpB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACN,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAY1B,MAAM,gCAAgC,CAAC;AAExC,eAAO,MAAM,oBAAoB,6BAA6B,CAAC;AAM/D,MAAM,MAAM,mCAAmC,GAC5C;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,eAAe,CAAA;CAAE,GACpD;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhD,MAAM,MAAM,yBAAyB,GAClC;IAAE,OAAO,EAAE,KAAK,CAAA;CAAE,GAClB,mCAAmC,CAAC;AAEvC,sFAAsF;AACtF,wBAAgB,sBAAsB,CACrC,MAAM,EAAE,IAAI,CACX,aAAa,EACX,eAAe,GACf,kBAAkB,GAClB,iBAAiB,GACjB,oBAAoB,GACpB,oBAAoB,CACtB,EACD,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAe,GACnD,yBAAyB,CAG3B;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACxC,MAAM,EAAE,IAAI,CACX,aAAa,EACX,eAAe,GACf,kBAAkB,GAClB,iBAAiB,GACjB,oBAAoB,GACpB,oBAAoB,CACtB,EACD,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAe,GACnD,mCAAmC,CAErC;AAqDD,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wEAAwE;AACxE,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,GAAG,qBAAqB,CAE9F;AAED,MAAM,WAAW,oBAAoB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,yEAAyE;AACzE,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAQ3E;AAED,MAAM,MAAM,iBAAiB,GAC1B;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,GACjD;IAAE,KAAK,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,GACzE;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC/D;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AA2DnE,mFAAmF;AACnF,wBAAsB,mBAAmB,CACxC,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,oBAAoB,EAC5B,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,iBAAiB,CAAC,CAgI5B;AAWD,MAAM,MAAM,oBAAoB,GAC7B;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5F;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,GAClE;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAE,GAChE;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3D;;;GAGG;AACH,wBAAsB,sBAAsB,CAC3C,MAAM,EAAE,eAAe,EACvB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,oBAAoB,CAAC,CAyD/B;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAC3C,MAAM,EAAE,eAAe,EACvB,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAsB7B;AAED,MAAM,MAAM,mBAAmB,GAC5B;IAAE,KAAK,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,mBAAmB,EAAE,CAAA;CAAE,GAC7C;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvC,wBAAsB,qBAAqB,CAC1C,MAAM,EAAE,eAAe,EACvB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,mBAAmB,CAAC,CAc9B;AAcD,4DAA4D;AAC5D,wBAAgB,oBAAoB,CACnC,MAAM,EAAE,eAAe,EACvB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,mBAAmB,EAAE,EAC5B,QAAQ,SAAoB,GAC1B,MAAM,CAuCR;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAyBrE;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM,CAwB3E"}
1
+ {"version":3,"file":"hindsight-memory.d.ts","sourceRoot":"","sources":["../../src/app/hindsight-memory.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"lazy-tools.d.ts","sourceRoot":"","sources":["../../src/app/lazy-tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD,QAAA,MAAM,MAAM;aACX,UAAU,YAAG,kBAAkB;aAC/B,OAAO,YAAG,eAAe;aACzB,MAAM,YAAG,cAAc,EAAE,mBAAmB;aAC5C,UAAU,YAAG,eAAe;CACnB,CAAC;AACX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,MAAM,CAAC;AAKnD,MAAM,WAAW,mBAAmB;IACnC,4EAA4E;IAC5E,KAAK,IAAI,IAAI,CAAC;IACd,mEAAmE;IACnE,UAAU,IAAI,IAAI,CAAC;IACnB,IAAI,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,EAAE,CAAC;IACxC,sFAAsF;IACtF,SAAS,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC;IAC5C,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACtC,OAAO,IAAI,MAAM,CAAC;IAClB,MAAM,IAAI;QAAE,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;QAAC,MAAM,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,gBAAgB,CAAC;YAAC,SAAS,EAAE,OAAO,CAAC;YAAC,MAAM,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;CACnI;AAED,kFAAkF;AAClF,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,gBAAgB,GAAG,gBAAgB,CAAC,EAAE,OAAO,EAAE;IAC/G,MAAM,CAAC,EAAE,MAAM,aAAa,CAAC;IAC7B,gBAAgB,EAAE,MAAM,aAAa,CAAC,iBAAiB,CAAC,CAAC;CACzD,GAAG,mBAAmB,CAmGtB;AAED,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CA4B/F"}
1
+ {"version":3,"file":"lazy-tools.d.ts","sourceRoot":"","sources":["../../src/app/lazy-tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAYpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD,QAAA,MAAM,MAAM;aACX,UAAU,YAAG,kBAAkB;aAC/B,OAAO,YAAG,eAAe;aACzB,MAAM,YAAG,cAAc,EAAE,mBAAmB;aAC5C,UAAU,YAAG,eAAe;CACnB,CAAC;AACX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,MAAM,CAAC;AAKnD,MAAM,WAAW,mBAAmB;IACnC,4EAA4E;IAC5E,KAAK,IAAI,IAAI,CAAC;IACd,mEAAmE;IACnE,UAAU,IAAI,IAAI,CAAC;IACnB,IAAI,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,EAAE,CAAC;IACxC,sFAAsF;IACtF,SAAS,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC;IAC5C,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACtC,OAAO,IAAI,MAAM,CAAC;IAClB,MAAM,IAAI;QAAE,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;QAAC,MAAM,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,gBAAgB,CAAC;YAAC,SAAS,EAAE,OAAO,CAAC;YAAC,MAAM,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;CACnI;AAED,kFAAkF;AAClF,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,gBAAgB,GAAG,gBAAgB,CAAC,EAAE,OAAO,EAAE;IAC/G,MAAM,CAAC,EAAE,MAAM,aAAa,CAAC;IAC7B,gBAAgB,EAAE,MAAM,aAAa,CAAC,iBAAiB,CAAC,CAAC;CACzD,GAAG,mBAAmB,CAmGtB;AAED,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CA6C/F"}
@@ -8,7 +8,7 @@ export declare function pendingMatchesBranch(pending: PendingCompaction, branch:
8
8
  id?: unknown;
9
9
  }[]): boolean;
10
10
  /** Capture before preparation starts, not after a possibly long-running provider call. */
11
- export declare function readerSignature(ctx: Pick<ExtensionContext, "model">): string | undefined;
11
+ export declare function readerSignature(ctx: Pick<ExtensionContext, "model"> & Partial<Pick<ExtensionContext, "getSystemPrompt">>): string | undefined;
12
12
  /** Shared final gate for foreground and background candidates. Missing proof fails closed. */
13
13
  export declare function revalidatePending(pending: PendingCompaction, ctx: ExtensionContext, reserveTokens?: number): PendingCompaction | null;
14
14
  export type ConsumeResult = {
@@ -33,7 +33,7 @@ export interface PendingSlot {
33
33
  size(): number;
34
34
  }
35
35
  export interface PendingSlotOptions {
36
- ttlMs: number;
36
+ ttlMs: number | (() => number);
37
37
  now?: () => number;
38
38
  maxEntries?: number;
39
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pending-slot.d.ts","sourceRoot":"","sources":["../../src/app/pending-slot.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAG3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAExE,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAE1E,OAAO,EAAoC,KAAK,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAE7G,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,SAAS,mBAAmB,EAAE,GAAG,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC,CAI9H;AAED,wFAAwF;AACxF,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS;IAAE,EAAE,CAAC,EAAE,OAAO,CAAA;CAAE,EAAE,GAAG,OAAO,CAO7G;AAED,0FAA0F;AAC1F,wBAAgB,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,SAAS,CAGxF;AAED,8FAA8F;AAC9F,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,EAAE,gBAAgB,EAAE,aAAa,SAAI,GAAG,iBAAiB,GAAG,IAAI,CA8BhI;AAED,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,iBAAiB,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3D,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACtC,OAAO,CAAC,GAAG,EAAE,sBAAsB,GAAG,aAAa,CAAC;IACpD,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACvC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC;IAC7D,IAAI,IAAI,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAOD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,kBAAkB,GAAG,WAAW,CAsFvE"}
1
+ {"version":3,"file":"pending-slot.d.ts","sourceRoot":"","sources":["../../src/app/pending-slot.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAG3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAExE,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAE1E,OAAO,EAAoC,KAAK,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAE7G,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,SAAS,mBAAmB,EAAE,GAAG,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC,CAI9H;AAED,wFAAwF;AACxF,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS;IAAE,EAAE,CAAC,EAAE,OAAO,CAAA;CAAE,EAAE,GAAG,OAAO,CAO7G;AAED,0FAA0F;AAC1F,wBAAgB,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC,GAAG,MAAM,GAAG,SAAS,CAK7I;AAED,8FAA8F;AAC9F,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,EAAE,gBAAgB,EAAE,aAAa,SAAI,GAAG,iBAAiB,GAAG,IAAI,CA8BhI;AAED,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,iBAAiB,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3D,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACtC,OAAO,CAAC,GAAG,EAAE,sBAAsB,GAAG,aAAa,CAAC;IACpD,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACvC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC;IAC7D,IAAI,IAAI,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,CAAC;IAC/B,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAOD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,kBAAkB,GAAG,WAAW,CAsFvE"}
@@ -1 +1 @@
1
- {"version":3,"file":"register-context-tools.d.ts","sourceRoot":"","sources":["../../src/app/register-context-tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,YAAY,EACZ,gBAAgB,EAChB,MAAM,iCAAiC,CAAC;AAIzC,OAAO,EAON,KAAK,iBAAiB,EAEtB,MAAM,2BAA2B,CAAC;AAiDnC,wBAAgB,iBAAiB,CAChC,GAAG,EAAE,gBAAgB,GACnB,iBAAiB,GAAG,IAAI,CAiB1B;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI,CAoF3D;AAED,KAAK,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAC/C,KAAK,UAAU,GAAG;IAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AAM5D,UAAU,YAAY;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,aAAa,CAClC,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,GAAG,EAAE,gBAAgB,GACnB,OAAO,CAAC,UAAU,CAAC,CA8GrB"}
1
+ {"version":3,"file":"register-context-tools.d.ts","sourceRoot":"","sources":["../../src/app/register-context-tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,YAAY,EACZ,gBAAgB,EAEhB,MAAM,iCAAiC,CAAC;AAKzC,OAAO,EAON,KAAK,iBAAiB,EAEtB,MAAM,2BAA2B,CAAC;AA6DnC,wBAAgB,iBAAiB,CAChC,GAAG,EAAE,gBAAgB,GACnB,iBAAiB,GAAG,IAAI,CAiB1B;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI,CA0G3D;AAED,KAAK,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAC/C,KAAK,UAAU,GAAG;IAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AAuQ5D,UAAU,YAAY;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,aAAa,CAClC,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,GAAG,EAAE,gBAAgB,GACnB,OAAO,CAAC,UAAU,CAAC,CAuHrB"}
@@ -12,7 +12,9 @@ export interface NavigationController {
12
12
  export declare function registerNavigation(pi: ExtensionAPI, options?: {
13
13
  config?: () => CompactConfig;
14
14
  mutationBlocked?: (ctx: ExtensionContext) => string | undefined;
15
- /** Staging-time signal: anchors, queued and about-to-apply pivots. */
15
+ /** Anchor creation may request one safe consolidation, without invalidating prepared compaction. */
16
+ onAnchor?: (ctx: ExtensionContext, originId: string, callId?: string, signal?: AbortSignal) => string;
17
+ /** Staging-time signal: queued and about-to-apply pivots, never append-only anchors. */
16
18
  onContextChange?: (ctx: ExtensionContext) => void;
17
19
  /** Commit-time signal: fires only after Pi applied a pivot's tree navigation. */
18
20
  onContextEdit?: (ctx: ExtensionContext, kind: ContextEditKind) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"register-navigation.d.ts","sourceRoot":"","sources":["../../src/app/register-navigation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAe,KAAK,YAAY,EAAE,KAAK,uBAAuB,EAAE,KAAK,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAItI,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAA6C,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAgB/G,MAAM,WAAW,oBAAoB;IACpC,SAAS,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC;IAC1C,OAAO,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,KAAK,CAAC,GAAG,EAAE,uBAAuB,GAAG,sBAAsB,CAAC;IAC5D,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC5E;AAED,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,GAAE;IAC7D,MAAM,CAAC,EAAE,MAAM,aAAa,CAAC;IAC7B,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,MAAM,GAAG,SAAS,CAAC;IAChE,sEAAsE;IACtE,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAClD,iFAAiF;IACjF,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;CAClE,GAAG,oBAAoB,CAkO5B"}
1
+ {"version":3,"file":"register-navigation.d.ts","sourceRoot":"","sources":["../../src/app/register-navigation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAe,KAAK,YAAY,EAAE,KAAK,uBAAuB,EAAE,KAAK,gBAAgB,EAAc,MAAM,iCAAiC,CAAC;AAKlJ,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAKjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AA0E9D,OAAO,KAAK,EAA6C,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAgB/G,MAAM,WAAW,oBAAoB;IACpC,SAAS,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC;IAC1C,OAAO,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,KAAK,CAAC,GAAG,EAAE,uBAAuB,GAAG,sBAAsB,CAAC;IAC5D,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC5E;AAED,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,GAAE;IAC7D,MAAM,CAAC,EAAE,MAAM,aAAa,CAAC;IAC7B,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,MAAM,GAAG,SAAS,CAAC;IAChE,oGAAoG;IACpG,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,MAAM,CAAC;IACtG,wFAAwF;IACxF,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAClD,iFAAiF;IACjF,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;CAClE,GAAG,oBAAoB,CAkQ5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"register-smart-compact-command.d.ts","sourceRoot":"","sources":["../../src/app/register-smart-compact-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,EAChB,MAAM,iCAAiC,CAAC;AAWzC,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AA4CxF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAA6C,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAG3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,UAAU,+BAA+B;IACxC,UAAU,EAAE,WAAW,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;IACxB,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAC/C,MAAM,EAAE,kBAAkB,CAAC;IAC3B,yFAAyF;IACzF,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,qBAAqB,CAAC;IACnE,mGAAmG;IACnG,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,iBAAiB,CAAC;IACjE,2EAA2E;IAC3E,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,YAAY,GAAG,IAAI,CAAC;IAC9D,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,MAAM,CAAC;IAC3B;;;OAGG;IACH,uBAAuB,CAAC,EAAE,CACzB,KAAK,EAAE,gBAAgB,EAAE,EACzB,GAAG,EAAE,uBAAuB,KACxB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAscD,wBAAgB,2BAA2B,CAC1C,EAAE,EAAE,YAAY,EAChB,YAAY,EAAE,+BAA+B,GAC3C,IAAI,CAoLN"}
1
+ {"version":3,"file":"register-smart-compact-command.d.ts","sourceRoot":"","sources":["../../src/app/register-smart-compact-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,EAChB,MAAM,iCAAiC,CAAC;AAWzC,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AA4CxF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAA6C,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAG3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,UAAU,+BAA+B;IACxC,UAAU,EAAE,WAAW,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;IACxB,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAC/C,MAAM,EAAE,kBAAkB,CAAC;IAC3B,yFAAyF;IACzF,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,qBAAqB,CAAC;IACnE,mGAAmG;IACnG,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,iBAAiB,CAAC;IACjE,2EAA2E;IAC3E,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,YAAY,GAAG,IAAI,CAAC;IAC9D,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,MAAM,CAAC;IAC3B;;;OAGG;IACH,uBAAuB,CAAC,EAAE,CACzB,KAAK,EAAE,gBAAgB,EAAE,EACzB,GAAG,EAAE,uBAAuB,KACxB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAwcD,wBAAgB,2BAA2B,CAC1C,EAAE,EAAE,YAAY,EAChB,YAAY,EAAE,+BAA+B,GAC3C,IAAI,CAoLN"}
@@ -1 +1 @@
1
- {"version":3,"file":"register-smart-compact-tool.d.ts","sourceRoot":"","sources":["../../src/app/register-smart-compact-tool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAgBpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,UAAU,4BAA4B;IACpC,UAAU,EAAE,WAAW,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;IACxB,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAC/C,MAAM,EAAE,kBAAkB,CAAC;CAC5B;AAED,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,YAAY,EAChB,YAAY,EAAE,4BAA4B,GACzC,IAAI,CAuNN"}
1
+ {"version":3,"file":"register-smart-compact-tool.d.ts","sourceRoot":"","sources":["../../src/app/register-smart-compact-tool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAS,MAAM,iCAAiC,CAAC;AAgB3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAYrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,UAAU,4BAA4B;IACpC,UAAU,EAAE,WAAW,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;IACxB,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAC/C,MAAM,EAAE,kBAAkB,CAAC;CAC5B;AAED,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,YAAY,EAChB,YAAY,EAAE,4BAA4B,GACzC,IAAI,CAqPN"}
@@ -34,6 +34,7 @@ export declare function unchangedSince(branch: SessionEntry[], leafId: string):
34
34
  export type SmartContextController = {
35
35
  /** Queue a user-requested trim; it applies at the next natural turn boundary. */
36
36
  requestManualTrim(ctx: ExtensionContext): ManualTrimRequest;
37
+ requestAnchorTrim(ctx: ExtensionContext, originId: string, callId?: string, signal?: AbortSignal): ManualTrimRequest;
37
38
  /** Automatic trim waiting for a cold prompt cache in this session, if any. */
38
39
  deferredTrim(sessionId: string): DeferredTrim | null;
39
40
  };
@@ -1 +1 @@
1
- {"version":3,"file":"register-smart-context-tool.d.ts","sourceRoot":"","sources":["../../src/app/register-smart-context-tool.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAqD,YAAY,EAAE,gBAAgB,EAAwB,YAAY,EAAgB,MAAM,iCAAiC,CAAC;AAM3L,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAOjD,OAAO,EAAmB,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAoB/E,iFAAiF;AACjF,MAAM,MAAM,iBAAiB,GACzB;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,KAAK,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,KAAK,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7C,8EAA8E;AAC9E,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,iEAAiE;IACjE,cAAc,CAAC,EAAE,IAAI,CAAC;CACvB;AAED,6FAA6F;AAC7F,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAOjE;AA2BD,wFAAwF;AACxF,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAI9E;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,iFAAiF;IACjF,iBAAiB,CAAC,GAAG,EAAE,gBAAgB,GAAG,iBAAiB,CAAC;IAC5D,8EAA8E;IAC9E,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC;CACtD,CAAC;AAEF,8FAA8F;AAC9F,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,GAAE;IAClE,MAAM,CAAC,EAAE,MAAM,aAAa,CAAC;IAC7B,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC;IACjD,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC;IACpD,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC;IAC9C,0GAA0G;IAC1G,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAClD,kGAAkG;IAClG,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IACvE,gFAAgF;IAChF,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,8CAA8C;IAC9C,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACf,GAAG,sBAAsB,CAkV9B"}
1
+ {"version":3,"file":"register-smart-context-tool.d.ts","sourceRoot":"","sources":["../../src/app/register-smart-context-tool.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAqD,YAAY,EAAE,gBAAgB,EAAwB,YAAY,EAAuB,MAAM,iCAAiC,CAAC;AAOlM,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAMjD,OAAO,EAAmB,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAgC/E,iFAAiF;AACjF,MAAM,MAAM,iBAAiB,GACzB;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,KAAK,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,KAAK,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7C,8EAA8E;AAC9E,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,iEAAiE;IACjE,cAAc,CAAC,EAAE,IAAI,CAAC;CACvB;AAED,6FAA6F;AAC7F,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAOjE;AA2BD,wFAAwF;AACxF,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAI9E;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,iFAAiF;IACjF,iBAAiB,CAAC,GAAG,EAAE,gBAAgB,GAAG,iBAAiB,CAAC;IAC5D,iBAAiB,CAAC,GAAG,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,iBAAiB,CAAC;IACrH,8EAA8E;IAC9E,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC;CACtD,CAAC;AAEF,8FAA8F;AAC9F,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,GAAE;IAClE,MAAM,CAAC,EAAE,MAAM,aAAa,CAAC;IAC7B,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC;IACjD,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC;IACpD,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC;IAC9C,0GAA0G;IAC1G,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAClD,kGAAkG;IAClG,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IACvE,gFAAgF;IAChF,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,8CAA8C;IAC9C,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACf,GAAG,sBAAsB,CAsa9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"settled-auto-trigger.d.ts","sourceRoot":"","sources":["../../src/app/settled-auto-trigger.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAE7F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAMjD,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,yBAAyB;IACxC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gFAAgF;IAChF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,GAAE,yBAA8B,GACtC,kBAAkB,CAmFpB"}
1
+ {"version":3,"file":"settled-auto-trigger.d.ts","sourceRoot":"","sources":["../../src/app/settled-auto-trigger.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAE7F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAMjD,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,yBAAyB;IACxC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gFAAgF;IAChF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,GAAE,yBAA8B,GACtC,kBAAkB,CA0FpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"stage-auth.d.ts","sourceRoot":"","sources":["../../src/app/stage-auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEjE,wBAAsB,gBAAgB,CACpC,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,GACtC,OAAO,CAAC,YAAY,CAAC,CA4BvB"}
1
+ {"version":3,"file":"stage-auth.d.ts","sourceRoot":"","sources":["../../src/app/stage-auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAmCjE,wBAAsB,gBAAgB,CACpC,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,GACtC,OAAO,CAAC,YAAY,CAAC,CAsCvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"synthesize.d.ts","sourceRoot":"","sources":["../../../src/app/steps/synthesize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AA4BH,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAYpE,wBAAsB,qBAAqB,CAC1C,EAAE,EAAE,WAAW,GACb,OAAO,CAAC,aAAa,CAAC,CA8lBxB"}
1
+ {"version":3,"file":"synthesize.d.ts","sourceRoot":"","sources":["../../../src/app/steps/synthesize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AA4BH,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAYpE,wBAAsB,qBAAqB,CAC1C,EAAE,EAAE,WAAW,GACb,OAAO,CAAC,aAAa,CAAC,CA+lBxB"}