@vibgrate/cli 2026.801.1 → 2026.803.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-HNV2VUCO.js +24 -0
- package/dist/{agent-4DAECASW.js.map → agent-HNV2VUCO.js.map} +1 -1
- package/dist/baseline-6WTULHM5.js +9 -0
- package/dist/{baseline-4BDH4F2W.js.map → baseline-6WTULHM5.js.map} +1 -1
- package/dist/{chunk-BNEHDLVZ.js → chunk-2TLQDF6C.js} +129 -20
- package/dist/chunk-2TLQDF6C.js.map +1 -0
- package/dist/{chunk-JLWI2JGA.js → chunk-4HFSUIIN.js} +117 -6
- package/dist/chunk-4HFSUIIN.js.map +1 -0
- package/dist/{chunk-IRCYOTRG.js → chunk-536J6HUR.js} +235 -13
- package/dist/chunk-536J6HUR.js.map +1 -0
- package/dist/{chunk-SDG242R4.js → chunk-5VH3Y4QC.js} +63 -361
- package/dist/chunk-5VH3Y4QC.js.map +1 -0
- package/dist/{chunk-E6H2F2XF.js → chunk-6I4TXAI6.js} +3 -3
- package/dist/{chunk-E6H2F2XF.js.map → chunk-6I4TXAI6.js.map} +1 -1
- package/dist/{chunk-FF5ZQ6KI.js → chunk-6JP7HGIF.js} +4 -4
- package/dist/{chunk-FF5ZQ6KI.js.map → chunk-6JP7HGIF.js.map} +1 -1
- package/dist/chunk-AJ2KE3NT.js +446 -0
- package/dist/chunk-AJ2KE3NT.js.map +1 -0
- package/dist/{chunk-V2QK3IUY.js → chunk-B2KLJPFY.js} +4 -4
- package/dist/{chunk-V2QK3IUY.js.map → chunk-B2KLJPFY.js.map} +1 -1
- package/dist/{chunk-B3OMGYZZ.js → chunk-BBFQZ7CA.js} +4 -4
- package/dist/{chunk-B3OMGYZZ.js.map → chunk-BBFQZ7CA.js.map} +1 -1
- package/dist/{chunk-I6RBAIS3.js → chunk-BWMMR5XA.js} +4 -4
- package/dist/{chunk-I6RBAIS3.js.map → chunk-BWMMR5XA.js.map} +1 -1
- package/dist/{chunk-WIDZ5IE7.js → chunk-CC6F75GI.js} +14 -7
- package/dist/chunk-CC6F75GI.js.map +1 -0
- package/dist/{chunk-G7W4MFPZ.js → chunk-CE45STY5.js} +4 -4
- package/dist/{chunk-G7W4MFPZ.js.map → chunk-CE45STY5.js.map} +1 -1
- package/dist/{chunk-T6DRYOMT.js → chunk-DIU3MXB3.js} +4 -4
- package/dist/{chunk-T6DRYOMT.js.map → chunk-DIU3MXB3.js.map} +1 -1
- package/dist/{chunk-KL65SSR7.js → chunk-FKFRASAB.js} +323 -152
- package/dist/chunk-FKFRASAB.js.map +1 -0
- package/dist/{chunk-A43I2AJ4.js → chunk-JUSXLCSE.js} +3 -3
- package/dist/{chunk-A43I2AJ4.js.map → chunk-JUSXLCSE.js.map} +1 -1
- package/dist/{chunk-7G5S5KZN.js → chunk-KUZLILN3.js} +16 -3
- package/dist/chunk-KUZLILN3.js.map +1 -0
- package/dist/{chunk-76TDXGGF.js → chunk-N4IDP2M2.js} +218 -51
- package/dist/chunk-N4IDP2M2.js.map +1 -0
- package/dist/{chunk-XRN7DQGR.js → chunk-NJFQCDGA.js} +3 -3
- package/dist/{chunk-XRN7DQGR.js.map → chunk-NJFQCDGA.js.map} +1 -1
- package/dist/{chunk-XEJJGDGX.js → chunk-O7MTBC52.js} +134 -9
- package/dist/chunk-O7MTBC52.js.map +1 -0
- package/dist/chunk-QT2PMGN3.js +6 -0
- package/dist/{chunk-TGDHOAXX.js.map → chunk-QT2PMGN3.js.map} +1 -1
- package/dist/{chunk-V3X3DBZL.js → chunk-S4NSF5AZ.js} +6 -6
- package/dist/{chunk-V3X3DBZL.js.map → chunk-S4NSF5AZ.js.map} +1 -1
- package/dist/{chunk-G25STLE7.js → chunk-SJFBXCII.js} +30 -3
- package/dist/chunk-SJFBXCII.js.map +1 -0
- package/dist/{chunk-7PVCHLR2.js → chunk-SNKTD23L.js} +109 -10
- package/dist/chunk-SNKTD23L.js.map +1 -0
- package/dist/{chunk-IPICO2RV.js → chunk-VIWZ4QT7.js} +14 -3
- package/dist/chunk-VIWZ4QT7.js.map +1 -0
- package/dist/{chunk-MPP4S4OE.js → chunk-Y7YKUZ3T.js} +8 -7
- package/dist/chunk-Y7YKUZ3T.js.map +1 -0
- package/dist/cli.js +730 -345
- package/dist/cli.js.map +1 -1
- package/dist/ensure-map-5YEI7R7V.js +29 -0
- package/dist/{ensure-map-SMWHKOUY.js.map → ensure-map-5YEI7R7V.js.map} +1 -1
- package/dist/{graph-backend-I4I72J4W.js → graph-backend-CPHLUKUC.js} +5 -5
- package/dist/{graph-backend-I4I72J4W.js.map → graph-backend-CPHLUKUC.js.map} +1 -1
- package/dist/index.d.ts +118 -7
- package/dist/index.js +17 -16
- package/dist/index.js.map +1 -1
- package/dist/{interactive-TMQR6TXM.js → interactive-TNRE4OEK.js} +45 -32
- package/dist/interactive-TNRE4OEK.js.map +1 -0
- package/dist/load-MWG6WZTK.js +10 -0
- package/dist/{load-E3OTM7BS.js.map → load-MWG6WZTK.js.map} +1 -1
- package/dist/model-manager-GJ2YSTSK.js +1 -1
- package/dist/{run-outcome-QWLNBASF.js → run-outcome-375HMSQG.js} +6 -6
- package/dist/{run-outcome-QWLNBASF.js.map → run-outcome-375HMSQG.js.map} +1 -1
- package/dist/runtime-session-3MPWXNRL.js +20 -0
- package/dist/{runtime-session-UQ7UVAPL.js.map → runtime-session-3MPWXNRL.js.map} +1 -1
- package/dist/session-2NGJLI5Y.js +15 -0
- package/dist/{session-MG6BJVAG.js.map → session-2NGJLI5Y.js.map} +1 -1
- package/dist/session-store-F7NX7SZN.js +4 -0
- package/dist/{session-store-SQECEXUU.js.map → session-store-F7NX7SZN.js.map} +1 -1
- package/dist/{stream-json-GM44SP7L.js → stream-json-AUMU3NLV.js} +48 -16
- package/dist/stream-json-AUMU3NLV.js.map +1 -0
- package/dist/{vg-mcp-bridge-3WFC7LGE.js → vg-mcp-bridge-D463EHQI.js} +13 -11
- package/dist/vg-mcp-bridge-D463EHQI.js.map +1 -0
- package/dist/{vgd-ZUSBEVUL.js → vgd-Z23PXSP4.js} +9 -9
- package/dist/{vgd-ZUSBEVUL.js.map → vgd-Z23PXSP4.js.map} +1 -1
- package/package.json +1 -1
- package/dist/agent-4DAECASW.js +0 -22
- package/dist/baseline-4BDH4F2W.js +0 -9
- package/dist/chunk-76TDXGGF.js.map +0 -1
- package/dist/chunk-7G5S5KZN.js.map +0 -1
- package/dist/chunk-7PVCHLR2.js.map +0 -1
- package/dist/chunk-BNEHDLVZ.js.map +0 -1
- package/dist/chunk-G25STLE7.js.map +0 -1
- package/dist/chunk-IPICO2RV.js.map +0 -1
- package/dist/chunk-IRCYOTRG.js.map +0 -1
- package/dist/chunk-JLWI2JGA.js.map +0 -1
- package/dist/chunk-KL65SSR7.js.map +0 -1
- package/dist/chunk-MPP4S4OE.js.map +0 -1
- package/dist/chunk-SDG242R4.js.map +0 -1
- package/dist/chunk-TGDHOAXX.js +0 -6
- package/dist/chunk-WIDZ5IE7.js.map +0 -1
- package/dist/chunk-XEJJGDGX.js.map +0 -1
- package/dist/chunk-ZKNB4YH4.js +0 -102
- package/dist/chunk-ZKNB4YH4.js.map +0 -1
- package/dist/ensure-map-SMWHKOUY.js +0 -28
- package/dist/interactive-TMQR6TXM.js.map +0 -1
- package/dist/load-E3OTM7BS.js +0 -10
- package/dist/runtime-session-UQ7UVAPL.js +0 -20
- package/dist/session-MG6BJVAG.js +0 -13
- package/dist/session-store-SQECEXUU.js +0 -4
- package/dist/stream-json-GM44SP7L.js.map +0 -1
- package/dist/vg-mcp-bridge-3WFC7LGE.js.map +0 -1
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export { ensureCodeMap } from './chunk-CE45STY5.js';
|
|
2
|
+
import './chunk-O7MTBC52.js';
|
|
3
|
+
import './chunk-CT5BS56U.js';
|
|
4
|
+
import './chunk-FKFRASAB.js';
|
|
5
|
+
import './chunk-SNKTD23L.js';
|
|
6
|
+
import './chunk-NJFQCDGA.js';
|
|
7
|
+
import './chunk-HTLDXEHW.js';
|
|
8
|
+
import './chunk-CQDUBAQY.js';
|
|
9
|
+
import './chunk-OV4KGXPD.js';
|
|
10
|
+
import './chunk-DT4KIVRI.js';
|
|
11
|
+
import './chunk-CRAMOEBE.js';
|
|
12
|
+
import './chunk-VIWZ4QT7.js';
|
|
13
|
+
import './chunk-BWMMR5XA.js';
|
|
14
|
+
import './chunk-3LSG7Z4I.js';
|
|
15
|
+
import './chunk-J7LKEB2R.js';
|
|
16
|
+
import './chunk-5VH3Y4QC.js';
|
|
17
|
+
import './chunk-UTNNGKKX.js';
|
|
18
|
+
import './chunk-RXP66R2E.js';
|
|
19
|
+
import './chunk-DIU3MXB3.js';
|
|
20
|
+
import './chunk-N4IDP2M2.js';
|
|
21
|
+
import './chunk-QT2PMGN3.js';
|
|
22
|
+
import './chunk-AJ2KE3NT.js';
|
|
23
|
+
import './chunk-5I4VSBWQ.js';
|
|
24
|
+
import './chunk-BWPBB45M.js';
|
|
25
|
+
import './chunk-JFGYT6BI.js';
|
|
26
|
+
import './chunk-BPF3YX2U.js';
|
|
27
|
+
import './chunk-Z6ZWNWWR.js';
|
|
28
|
+
//# sourceMappingURL=ensure-map-5YEI7R7V.js.map
|
|
29
|
+
//# sourceMappingURL=ensure-map-5YEI7R7V.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"ensure-map-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"ensure-map-5YEI7R7V.js"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
export { localGraphBackend, resolveGraphBackend, vgdGraphBackend } from './chunk-
|
|
1
|
+
export { localGraphBackend, resolveGraphBackend, vgdGraphBackend } from './chunk-JUSXLCSE.js';
|
|
2
2
|
import './chunk-RBIRXQR6.js';
|
|
3
3
|
import './chunk-J7LKEB2R.js';
|
|
4
|
-
import './chunk-
|
|
5
|
-
import './chunk-
|
|
4
|
+
import './chunk-5VH3Y4QC.js';
|
|
5
|
+
import './chunk-AJ2KE3NT.js';
|
|
6
6
|
import './chunk-BWPBB45M.js';
|
|
7
7
|
import './chunk-JFGYT6BI.js';
|
|
8
8
|
import './chunk-BPF3YX2U.js';
|
|
9
9
|
import './chunk-Z6ZWNWWR.js';
|
|
10
|
-
//# sourceMappingURL=graph-backend-
|
|
11
|
-
//# sourceMappingURL=graph-backend-
|
|
10
|
+
//# sourceMappingURL=graph-backend-CPHLUKUC.js.map
|
|
11
|
+
//# sourceMappingURL=graph-backend-CPHLUKUC.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"graph-backend-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"graph-backend-CPHLUKUC.js"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { G as GraphNode, a as GraphEdge, A as Area, R as ResolverKind, V as VgGr
|
|
|
2
2
|
export { e as AnalysisTier, C as Centrality, D as DerivedBy, f as EpistemicTier, g as FactConfidence, h as FactKind, i as GraphMeta, j as GraphSummaries, H as HubBlastSummary, N as NodeKind, P as Provenance, S as SCHEMA_VERSION, k as Span, T as Toolchain, U as Unknown } from './types-DLH-Ritr.js';
|
|
3
3
|
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
4
4
|
|
|
5
|
-
declare const VERSION = "2026.
|
|
5
|
+
declare const VERSION = "2026.803.1";
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* Analysis stage: importance, centrality, hubs, communities, and surprise.
|
|
@@ -142,6 +142,9 @@ interface ResolveResult {
|
|
|
142
142
|
edges: GraphEdge[];
|
|
143
143
|
/** References the heuristic rung could not resolve (deduped, sorted). */
|
|
144
144
|
unresolved: UnresolvedRef[];
|
|
145
|
+
/** File-level resolved import targets (rel → rels), for downstream
|
|
146
|
+
* change-scoping (the tsc cache's dependency-closure keys). Not serialized. */
|
|
147
|
+
importsByFile: Map<string, Set<string>>;
|
|
145
148
|
/** Diagnostic counts, surfaced by `vg status`. */
|
|
146
149
|
stats: {
|
|
147
150
|
callsResolved: number;
|
|
@@ -231,6 +234,9 @@ interface BuildResult {
|
|
|
231
234
|
heritage: number;
|
|
232
235
|
resolved: number;
|
|
233
236
|
shards?: number;
|
|
237
|
+
/** Files whose checker output was reused from the tsc cache (change-scoped
|
|
238
|
+
* downstream, gap-closure 2c). Subset of `files`. */
|
|
239
|
+
reusedFiles?: number;
|
|
234
240
|
};
|
|
235
241
|
/** Present when a SCIP index was ingested. */
|
|
236
242
|
scip?: {
|
|
@@ -520,6 +526,25 @@ type EmbedProgress = (done: number, total: number) => void;
|
|
|
520
526
|
*/
|
|
521
527
|
declare function getNodeEmbeddings(graph: VgGraph, embedder: Embedder, root: string, onProgress?: EmbedProgress): Promise<Map<string, number[]>>;
|
|
522
528
|
|
|
529
|
+
interface RelevanceExpansion {
|
|
530
|
+
/** Single lowercase word, ready for identifier-part matching. */
|
|
531
|
+
term: string;
|
|
532
|
+
/** The question token/phrase (or topic id) that produced it. */
|
|
533
|
+
from: string;
|
|
534
|
+
/** 0..1 relative confidence; scales the expansion's scoring contribution. */
|
|
535
|
+
weight: number;
|
|
536
|
+
}
|
|
537
|
+
interface RelevanceTopic {
|
|
538
|
+
id: string;
|
|
539
|
+
/** 0..1, normalized within one analysis. */
|
|
540
|
+
score: number;
|
|
541
|
+
}
|
|
542
|
+
interface RelevanceAnalysis {
|
|
543
|
+
version: string;
|
|
544
|
+
topics: RelevanceTopic[];
|
|
545
|
+
expansions: RelevanceExpansion[];
|
|
546
|
+
}
|
|
547
|
+
|
|
523
548
|
/**
|
|
524
549
|
* Deterministic retrieval for `vg ask` (VG-CLI-SPEC §3.2).
|
|
525
550
|
*
|
|
@@ -537,6 +562,15 @@ declare function getNodeEmbeddings(graph: VgGraph, embedder: Embedder, root: str
|
|
|
537
562
|
interface QueryOptions {
|
|
538
563
|
budget?: number;
|
|
539
564
|
limit?: number;
|
|
565
|
+
/** Optional pre-computed relevance analysis (engine/relevance-provider.ts).
|
|
566
|
+
* Injected by async callers so this module stays pure and sync; when
|
|
567
|
+
* absent, ranking is exactly the built-in lexicon path. */
|
|
568
|
+
relevance?: RelevanceAnalysis | null;
|
|
569
|
+
/** Optional per-node topic tags (engine/relevance-enrich.ts). Combined with
|
|
570
|
+
* `relevance.topics` into a bounded affinity bonus: a node structurally
|
|
571
|
+
* tagged with a topic the question is about ranks above an equal textual
|
|
572
|
+
* match outside it. Never seeds alone — it multiplies existing evidence. */
|
|
573
|
+
topicTags?: Map<string, readonly string[]> | null;
|
|
540
574
|
}
|
|
541
575
|
interface QueryMatch {
|
|
542
576
|
node: GraphNode;
|
|
@@ -556,11 +590,12 @@ interface SemanticQueryOptions extends QueryOptions {
|
|
|
556
590
|
nodeVectors: Map<string, number[]>;
|
|
557
591
|
}
|
|
558
592
|
/**
|
|
559
|
-
* Hybrid lexical + local-embedding retrieval
|
|
560
|
-
*
|
|
561
|
-
* "where do we handle auth failures?" can surface `verify_token` even
|
|
562
|
-
* shared identifier.
|
|
563
|
-
*
|
|
593
|
+
* Hybrid lexical + local-embedding retrieval, combined with Reciprocal Rank
|
|
594
|
+
* Fusion (Phase 3.2 — replaces the former 50/50 score blend), so a question
|
|
595
|
+
* like "where do we handle auth failures?" can surface `verify_token` even
|
|
596
|
+
* with no shared identifier. Topic affinity and importance stay multiplicative
|
|
597
|
+
* tiebreakers on the fused score. Deterministic given the same model + cached
|
|
598
|
+
* vectors; embeddings live only in the cache, never in `graph.json`.
|
|
564
599
|
*/
|
|
565
600
|
declare function queryGraphSemantic(graph: VgGraph, question: string, options: SemanticQueryOptions): Promise<QueryResult>;
|
|
566
601
|
/**
|
|
@@ -673,6 +708,8 @@ interface ToolContext {
|
|
|
673
708
|
dedup?: boolean;
|
|
674
709
|
/** Per-session set of node ids already returned in full (drives `--dedup`). */
|
|
675
710
|
seen?: Set<string>;
|
|
711
|
+
/** Path the served graph was loaded from (locates its tags sidecar). */
|
|
712
|
+
graphPath?: string;
|
|
676
713
|
}
|
|
677
714
|
interface VgTool {
|
|
678
715
|
name: string;
|
|
@@ -681,6 +718,23 @@ interface VgTool {
|
|
|
681
718
|
handler: (graph: VgGraph, args: Record<string, unknown>, ctx: ToolContext) => unknown | Promise<unknown>;
|
|
682
719
|
}
|
|
683
720
|
declare const TOOLS: VgTool[];
|
|
721
|
+
/**
|
|
722
|
+
* Server-side listing surface (the complement of the client-side deferral
|
|
723
|
+
* below, for hosts that cannot defer): `--surface hot` / `VG_MCP_SURFACE=hot`
|
|
724
|
+
* lists only the hot core, and `--tools a,b` / `VG_MCP_TOOLS=a,b` lists an
|
|
725
|
+
* explicit subset. LISTING ONLY — every tool in `TOOLS` stays callable
|
|
726
|
+
* whatever is listed (dispatch always resolves against the full array), so
|
|
727
|
+
* behaviour, ranking, and responses are byte-identical across surfaces; the
|
|
728
|
+
* only thing that changes is which schemas the host bills per step. Unknown
|
|
729
|
+
* names are dropped; an empty resolved set falls back to the full surface
|
|
730
|
+
* (fail-open — a typo must never produce a toolless server).
|
|
731
|
+
*/
|
|
732
|
+
interface ToolSurface {
|
|
733
|
+
/** 'hot' lists only HOT_TOOLS; 'full' (default) lists everything. */
|
|
734
|
+
surface?: 'hot' | 'full';
|
|
735
|
+
/** Explicit tool names to list (wins over `surface`). */
|
|
736
|
+
tools?: string[];
|
|
737
|
+
}
|
|
684
738
|
|
|
685
739
|
/** The graph-affecting discovery/build scope, replayed verbatim on refresh. */
|
|
686
740
|
interface BuildScope {
|
|
@@ -953,6 +1007,13 @@ interface ServeOptions {
|
|
|
953
1007
|
dedup?: boolean;
|
|
954
1008
|
/** Auto-refresh the map when the working tree drifts (default true). */
|
|
955
1009
|
refresh?: boolean;
|
|
1010
|
+
/**
|
|
1011
|
+
* Event-driven refresh: recursive fs.watch on the workspace so a save
|
|
1012
|
+
* rebuilds in ~400 ms instead of waiting out the freshness poll (default
|
|
1013
|
+
* true when refresh is on; `--no-watch` opts out). Where recursive watch is
|
|
1014
|
+
* unavailable the poll silently remains the only mechanism.
|
|
1015
|
+
*/
|
|
1016
|
+
watch?: boolean;
|
|
956
1017
|
/**
|
|
957
1018
|
* Workspace root (project directory). When set, freshness probes and tools
|
|
958
1019
|
* use this instead of inferring root from the graph path.
|
|
@@ -964,6 +1025,12 @@ interface ServeOptions {
|
|
|
964
1025
|
* the process (the opt-in ledger above is a separate concern).
|
|
965
1026
|
*/
|
|
966
1027
|
stats?: SessionStats;
|
|
1028
|
+
/**
|
|
1029
|
+
* Listing surface (`--surface hot` / `--tools a,b`). Filters ONLY what
|
|
1030
|
+
* `tools/list` advertises; every tool stays callable so behaviour is
|
|
1031
|
+
* byte-identical across surfaces. See `listedToolNames` in ./tools.ts.
|
|
1032
|
+
*/
|
|
1033
|
+
toolSurface?: ToolSurface;
|
|
967
1034
|
}
|
|
968
1035
|
declare class GraphSource {
|
|
969
1036
|
readonly graphPath: string;
|
|
@@ -980,6 +1047,16 @@ declare class GraphSource {
|
|
|
980
1047
|
/** Self-tuned: grows with measured probe/rebuild cost so huge repos aren't penalized. */
|
|
981
1048
|
private probeIntervalMs;
|
|
982
1049
|
private readonly refreshImpl;
|
|
1050
|
+
/**
|
|
1051
|
+
* Files seen changing since the last COMMITTED refresh (watcher events,
|
|
1052
|
+
* filename → last-seen ms). Entries are cleared only after a refresh that
|
|
1053
|
+
* started at-or-after their last event completes with 'fresh'/'refreshed' —
|
|
1054
|
+
* a change landing mid-refresh stays pending, so the staleness signal can
|
|
1055
|
+
* be a false positive but never a false negative.
|
|
1056
|
+
*/
|
|
1057
|
+
private readonly pendingChanges;
|
|
1058
|
+
private watcher;
|
|
1059
|
+
private watchTimer;
|
|
983
1060
|
constructor(graphPath: string, refresh?: boolean,
|
|
984
1061
|
/** Timing / root overrides (production passes `root`; tests may pass more). */
|
|
985
1062
|
tuning?: GraphSourceTuning);
|
|
@@ -990,6 +1067,28 @@ declare class GraphSource {
|
|
|
990
1067
|
* degrade to "answer from the current map", not break the tool call.
|
|
991
1068
|
*/
|
|
992
1069
|
private maybeRefresh;
|
|
1070
|
+
/**
|
|
1071
|
+
* Record a source change (watcher event, or a test). Arms the next probe to
|
|
1072
|
+
* run immediately (bypassing the self-tuned interval — a real event is not a
|
|
1073
|
+
* poll) and schedules a debounced background refresh so the rebuild happens
|
|
1074
|
+
* BETWEEN tool calls instead of on the next call's 100 ms budget.
|
|
1075
|
+
*/
|
|
1076
|
+
notePendingChange(filename: string): void;
|
|
1077
|
+
/**
|
|
1078
|
+
* Event-driven freshness (the serve-loop watcher): a recursive `fs.watch`
|
|
1079
|
+
* on the workspace feeds `notePendingChange`, so a save triggers a rebuild
|
|
1080
|
+
* in ~WATCH_DEBOUNCE_MS instead of waiting out the 2–30 s poll. The poll
|
|
1081
|
+
* stays armed as the fallback — on filesystems where recursive watch fails
|
|
1082
|
+
* (some containers/NFS) this returns false and behaviour is unchanged.
|
|
1083
|
+
*/
|
|
1084
|
+
startWatching(): boolean;
|
|
1085
|
+
stopWatching(): void;
|
|
1086
|
+
/**
|
|
1087
|
+
* In-band staleness signal for tool responses: what has changed since the
|
|
1088
|
+
* last committed refresh. Null when the map is current (the common case —
|
|
1089
|
+
* responses carry zero overhead then).
|
|
1090
|
+
*/
|
|
1091
|
+
stalenessNote(): string | null;
|
|
993
1092
|
}
|
|
994
1093
|
declare function createServer(source: GraphSource, opts?: ServeOptions): Server;
|
|
995
1094
|
declare function serveStdio(graphPath: string, opts?: ServeOptions): Promise<void>;
|
|
@@ -1364,6 +1463,11 @@ interface BuildContextOptions {
|
|
|
1364
1463
|
impactDepth?: number;
|
|
1365
1464
|
/** Restrict the edit surface to these files (from `--file`), if given. */
|
|
1366
1465
|
files?: string[];
|
|
1466
|
+
/** Optional pre-computed relevance analysis (engine/relevance-provider.ts),
|
|
1467
|
+
* loaded by the async caller; widens seed vocabulary deterministically. */
|
|
1468
|
+
relevance?: RelevanceAnalysis | null;
|
|
1469
|
+
/** Optional per-node topic tags (engine/relevance-enrich.ts). */
|
|
1470
|
+
topicTags?: Map<string, readonly string[]> | null;
|
|
1367
1471
|
}
|
|
1368
1472
|
/**
|
|
1369
1473
|
* Build the context block for a coding instruction. The ordering is
|
|
@@ -1394,7 +1498,11 @@ declare const TASK_CAPSULE_SCHEMA_VERSION: "task-capsule/0";
|
|
|
1394
1498
|
/** Bumped 2026.08.1: term roles (weak process verbs never seed alone), concept/bigram
|
|
1395
1499
|
* expansion (payments→stripe, "direct debit"→sepa/bacs/mandate), multi-term coverage
|
|
1396
1500
|
* bonus, directory-segment evidence — gated by the ask-quality corpus (bench/ask-corpus.mjs). */
|
|
1397
|
-
|
|
1501
|
+
/** Bumped 2026.08.2: optional relevance-provider seam — sanitized provider expansions
|
|
1502
|
+
* join term preparation (own 0..1 weight capped at EXPANSION_WEIGHT; weak-provenance
|
|
1503
|
+
* dropped); provider version recorded as `relevanceVersion` provenance. Absent
|
|
1504
|
+
* provider = 2026.08.1 behaviour exactly — gated by the same corpus, dual-mode. */
|
|
1505
|
+
declare const CAPSULE_RANKING_VERSION: "capsule-rank@2026.08.2";
|
|
1398
1506
|
declare const CAPSULE_COMPILER_ID: "vg-task-capsule/0";
|
|
1399
1507
|
interface BuildCapsuleOptions extends BuildContextOptions {
|
|
1400
1508
|
/**
|
|
@@ -1470,6 +1578,9 @@ interface TaskCapsule {
|
|
|
1470
1578
|
securityTier?: string | null;
|
|
1471
1579
|
/** Frozen policy / ranking patch id if any. */
|
|
1472
1580
|
policyVersion?: string | null;
|
|
1581
|
+
/** Version of the optional relevance provider that widened seed
|
|
1582
|
+
* vocabulary for this capsule, or null when none was active. */
|
|
1583
|
+
relevanceVersion?: string | null;
|
|
1473
1584
|
};
|
|
1474
1585
|
}
|
|
1475
1586
|
interface CapsuleProvenanceExtras {
|
package/dist/index.js
CHANGED
|
@@ -1,28 +1,29 @@
|
|
|
1
|
-
export { GraphSource, createServer, exportGraph, formatForExt, serveStdio } from './chunk-
|
|
2
|
-
export { refreshIfStale } from './chunk-
|
|
3
|
-
export { ASSISTANTS, ResourceLimitError, SKIP_DIRS, SKIP_FILES, UsageError, analyze, applyCoverage, assistantById, buildFacts, buildGraph, decodeScipIndex, discover, driftCount, groundGraph, hasDrift, installAssistant, loadCoverage, loadSnapshot, probeFreshness, resolveLimits, scipEdges, uninstallAssistant, verifyDeterminism, writeSnapshot } from './chunk-
|
|
4
|
-
export { FREE_PACK, TOOLS, coveringTests, detectRunner, shortestPath, testsToRun } from './chunk-
|
|
5
|
-
import './chunk-
|
|
1
|
+
export { GraphSource, createServer, exportGraph, formatForExt, serveStdio } from './chunk-2TLQDF6C.js';
|
|
2
|
+
export { refreshIfStale } from './chunk-S4NSF5AZ.js';
|
|
3
|
+
export { ASSISTANTS, ResourceLimitError, SKIP_DIRS, SKIP_FILES, UsageError, analyze, applyCoverage, assistantById, buildFacts, buildGraph, decodeScipIndex, discover, driftCount, groundGraph, hasDrift, installAssistant, loadCoverage, loadSnapshot, probeFreshness, resolveLimits, scipEdges, uninstallAssistant, verifyDeterminism, writeSnapshot } from './chunk-FKFRASAB.js';
|
|
4
|
+
export { FREE_PACK, TOOLS, coveringTests, detectRunner, shortestPath, testsToRun } from './chunk-SNKTD23L.js';
|
|
5
|
+
import './chunk-NJFQCDGA.js';
|
|
6
6
|
import './chunk-HTLDXEHW.js';
|
|
7
|
+
export { discoverModels } from './chunk-CQDUBAQY.js';
|
|
8
|
+
import './chunk-OV4KGXPD.js';
|
|
9
|
+
import './chunk-DT4KIVRI.js';
|
|
7
10
|
import './chunk-CRAMOEBE.js';
|
|
8
|
-
export { CAPSULE_COMPILER_ID, CAPSULE_RANKING_VERSION, TASK_CAPSULE_SCHEMA_VERSION, buildCodeContext, buildTaskCapsule, capsuleToCodeContext, readSavings, recordSaving, savingsRecorded, summarizeCapsule } from './chunk-
|
|
9
|
-
export { applyStaticTestLinkage, buildModuleResolver, isTestFile, parseJsonc, relativeResolver } from './chunk-
|
|
10
|
-
export { addLibrary, inventory as dependencyInventory, driftFor, enrichOnline, libId, loadCatalog, readDoc, resolveLib, saveCatalog, searchSymbols } from './chunk-
|
|
11
|
+
export { CAPSULE_COMPILER_ID, CAPSULE_RANKING_VERSION, TASK_CAPSULE_SCHEMA_VERSION, buildCodeContext, buildTaskCapsule, capsuleToCodeContext, readSavings, recordSaving, savingsRecorded, summarizeCapsule } from './chunk-Y7YKUZ3T.js';
|
|
12
|
+
export { applyStaticTestLinkage, buildModuleResolver, isTestFile, parseJsonc, relativeResolver } from './chunk-VIWZ4QT7.js';
|
|
13
|
+
export { addLibrary, inventory as dependencyInventory, driftFor, enrichOnline, libId, loadCatalog, readDoc, resolveLib, saveCatalog, searchSymbols } from './chunk-BWMMR5XA.js';
|
|
11
14
|
import './chunk-3LSG7Z4I.js';
|
|
12
15
|
export { findNodes, nodeById, resolveOne } from './chunk-J7LKEB2R.js';
|
|
13
|
-
export { GraphIndex, cosine, getNodeEmbeddings, identifierParts, impactOf, loadEmbedder, nodeEmbedText, queryGraph, queryGraphSemantic } from './chunk-
|
|
14
|
-
export { discoverModels } from './chunk-CQDUBAQY.js';
|
|
15
|
-
import './chunk-OV4KGXPD.js';
|
|
16
|
+
export { GraphIndex, cosine, getNodeEmbeddings, identifierParts, impactOf, loadEmbedder, nodeEmbedText, queryGraph, queryGraphSemantic } from './chunk-5VH3Y4QC.js';
|
|
16
17
|
export { LANGUAGES, allLanguageIds, grammarsSourceDir, langById, langForExtension, parseSource } from './chunk-UTNNGKKX.js';
|
|
17
18
|
import { redactUrlCredentials, redactSecrets } from './chunk-RXP66R2E.js';
|
|
18
|
-
export { SCHEMA_VERSION, loadGraph } from './chunk-
|
|
19
|
-
export { defaultGraphPath, legacyGraphPath, preferInRepoGraph, renderHtml, renderReport, resolveGraphPath, vibgrateDir, writeArtifacts } from './chunk-
|
|
20
|
-
export { VERSION } from './chunk-
|
|
21
|
-
export { parseGraph, serializeGraph, stableStringify } from './chunk-
|
|
19
|
+
export { SCHEMA_VERSION, loadGraph } from './chunk-DIU3MXB3.js';
|
|
20
|
+
export { defaultGraphPath, legacyGraphPath, preferInRepoGraph, renderHtml, renderReport, resolveGraphPath, vibgrateDir, writeArtifacts } from './chunk-N4IDP2M2.js';
|
|
21
|
+
export { VERSION } from './chunk-QT2PMGN3.js';
|
|
22
|
+
export { parseGraph, serializeGraph, stableStringify } from './chunk-AJ2KE3NT.js';
|
|
23
|
+
import './chunk-5I4VSBWQ.js';
|
|
22
24
|
import './chunk-BWPBB45M.js';
|
|
23
25
|
import './chunk-JFGYT6BI.js';
|
|
24
26
|
import './chunk-BPF3YX2U.js';
|
|
25
|
-
import './chunk-DT4KIVRI.js';
|
|
26
27
|
import './chunk-Z6ZWNWWR.js';
|
|
27
28
|
import { execFileSync } from 'child_process';
|
|
28
29
|
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/engine/push.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/engine/push.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBO,SAAS,aAAA,CAAc,IAAA,EAAc,KAAA,EAAgB,YAAA,EAA4C;AACtG,EAAA,MAAM,MAAM,GAAA,CAAI,IAAA,EAAM,CAAC,WAAA,EAAa,MAAM,CAAC,CAAA,IAAK,0CAAA;AAChD,EAAA,MAAM,MAAA,GAAS,IAAI,IAAA,EAAM,CAAC,aAAa,cAAA,EAAgB,MAAM,CAAC,CAAA,IAAK,MAAA;AACnE,EAAA,MAAM,SAAA,GAAY,IAAI,IAAA,EAAM,CAAC,UAAU,OAAA,EAAS,mBAAmB,CAAC,CAAA,IAAK,MAAA;AACzE,EAAA,OAAO;AAAA,IACL,aAAA,EAAe,cAAA;AAAA,IACf,YAAA,EAAc,OAAA;AAAA,IACd,YAAA;AAAA,IACA,GAAA,EAAK,EAAE,GAAA,EAAK,QAAA,EAAU,IAAI,KAAA,CAAM,CAAA,EAAG,EAAE,CAAA,EAAG,MAAA,EAAO;AAAA,IAC/C,YAAY,SAAA,GAAY,EAAE,WAAW,oBAAA,CAAqB,SAAS,GAAE,GAAI,MAAA;AAAA,IACzE,aAAa,KAAA,CAAM,WAAA;AAAA,IACnB,KAAA,EAAO,YAAY,KAAK;AAAA,GAC1B;AACF;AAOO,SAAS,YAAY,KAAA,EAAyB;AACnD,EAAA,OAAO;AAAA,IACL,GAAG,KAAA;AAAA,IACH,KAAA,EAAO,KAAA,CAAM,KAAA,CAAM,GAAA,CAAI,CAAC,CAAA,KAAM;AAC5B,MAAA,MAAM,YAAY,CAAA,CAAE,SAAA,GAAY,cAAc,CAAA,CAAE,SAAS,IAAI,CAAA,CAAE,SAAA;AAC/D,MAAA,MAAM,MAAM,CAAA,CAAE,GAAA,GAAM,cAAc,CAAA,CAAE,GAAG,IAAI,CAAA,CAAE,GAAA;AAC7C,MAAA,OAAO,SAAA,KAAc,CAAA,CAAE,SAAA,IAAa,GAAA,KAAQ,CAAA,CAAE,GAAA,GAAM,EAAE,GAAG,CAAA,EAAG,SAAA,EAAW,GAAA,EAAI,GAAI,CAAA;AAAA,IACjF,CAAC;AAAA,GACH;AACF;AAEA,SAAS,GAAA,CAAI,MAAc,IAAA,EAA+B;AACxD,EAAA,IAAI;AACF,IAAA,OAAO,YAAA,CAAa,KAAA,EAAO,IAAA,EAAM,EAAE,GAAA,EAAK,IAAA,EAAM,QAAA,EAAU,MAAA,EAAQ,CAAA,CAAE,IAAA,EAAK,IAAK,IAAA;AAAA,EAC9E,CAAA,CAAA,MAAQ;AACN,IAAA,OAAO,IAAA;AAAA,EACT;AACF","file":"index.js","sourcesContent":["import { execFileSync } from 'node:child_process';\nimport { redactSecrets, redactUrlCredentials } from '../core-open/utils/redact.js';\nimport type { VgGraph } from '../schema.js';\n\n/**\n * The deferred, decoupled push envelope (VG-PACKAGE-AND-SCHEMA §7). In the open\n * CLI `vg push` is **specified but not built**: it assembles and redacts the\n * envelope and prints a notice, but performs **no network upload**. Nothing in\n * the free path depends on it. Drift-over-time/governance is the separate\n * commercial product.\n */\n\nexport interface GraphUploadEnvelope {\n schemaVersion: 'vg-graph/1.0';\n artifactType: 'graph';\n scanIngestId?: string;\n vcs: { sha: string; shortSha: string; branch: string };\n repository?: { name?: string; remoteUrl?: string };\n generatedAt: string;\n graph: VgGraph;\n}\n\nexport function buildEnvelope(root: string, graph: VgGraph, scanIngestId?: string): GraphUploadEnvelope {\n const sha = git(root, ['rev-parse', 'HEAD']) ?? '0000000000000000000000000000000000000000';\n const branch = git(root, ['rev-parse', '--abbrev-ref', 'HEAD']) ?? 'HEAD';\n const remoteUrl = git(root, ['config', '--get', 'remote.origin.url']) ?? undefined;\n return {\n schemaVersion: 'vg-graph/1.0',\n artifactType: 'graph',\n scanIngestId,\n vcs: { sha, shortSha: sha.slice(0, 12), branch },\n repository: remoteUrl ? { remoteUrl: redactUrlCredentials(remoteUrl) } : undefined,\n generatedAt: graph.generatedAt,\n graph: redactGraph(graph),\n };\n}\n\n/**\n * Redaction pass (GUARDRAILS §1: redact before storage). The graph is structure,\n * not content, but we defensively scrub any signature/name that matches a\n * credential-shaped pattern, and strip credentials from the remote URL.\n */\nexport function redactGraph(graph: VgGraph): VgGraph {\n return {\n ...graph,\n nodes: graph.nodes.map((n) => {\n const signature = n.signature ? redactSecrets(n.signature) : n.signature;\n const doc = n.doc ? redactSecrets(n.doc) : n.doc;\n return signature !== n.signature || doc !== n.doc ? { ...n, signature, doc } : n;\n }),\n };\n}\n\nfunction git(root: string, args: string[]): string | null {\n try {\n return execFileSync('git', args, { cwd: root, encoding: 'utf8' }).trim() || null;\n } catch {\n return null;\n }\n}\n"]}
|
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
import { startCodeRuntimeSession } from './chunk-
|
|
2
|
-
import { ensureCodeMap } from './chunk-
|
|
1
|
+
import { startCodeRuntimeSession } from './chunk-6I4TXAI6.js';
|
|
2
|
+
import { ensureCodeMap } from './chunk-CE45STY5.js';
|
|
3
3
|
import { TtyPrompter, PromptCancelled } from './chunk-JYS4OBN2.js';
|
|
4
4
|
import { McpToolset, defaultMcpConnect } from './chunk-LEPTUB4H.js';
|
|
5
|
-
import { newSession, loadLatestSession, summarizeSession, saveSession, recordTask } from './chunk-
|
|
6
|
-
import { fetchCatalog, resolveProviders, topProviders } from './chunk-
|
|
7
|
-
import { BranchGraphSession } from './chunk-
|
|
5
|
+
import { newSession, loadLatestSession, summarizeSession, saveSession, condenseSession, recordTask } from './chunk-KUZLILN3.js';
|
|
6
|
+
import { fetchCatalog, resolveProviders, topProviders } from './chunk-4HFSUIIN.js';
|
|
7
|
+
import { BranchGraphSession } from './chunk-B2KLJPFY.js';
|
|
8
|
+
import './chunk-7AVYKZEM.js';
|
|
8
9
|
import './chunk-WHJMS7XC.js';
|
|
9
|
-
import { nodeCodeFs, undoChanges } from './chunk-
|
|
10
|
-
import { printCodeLogo } from './chunk-
|
|
10
|
+
import { nodeCodeFs, undoChanges } from './chunk-CC6F75GI.js';
|
|
11
|
+
import { printCodeLogo } from './chunk-O7MTBC52.js';
|
|
11
12
|
import { info, c, out } from './chunk-CT5BS56U.js';
|
|
12
|
-
import { loadOrDiscoverFederation } from './chunk-5I4VSBWQ.js';
|
|
13
13
|
import { resolveExecutionEnv } from './chunk-IS7VTH2Q.js';
|
|
14
14
|
import { hasOllama, gatherSystemMemory, stopModel, pullModelClean } from './chunk-OWSFZQOP.js';
|
|
15
15
|
import { estimateModelBytes, assessCapability, fmt } from './chunk-7N4Y3E47.js';
|
|
16
16
|
import { mergeModelExecutionProfile, resolveModelExecutionProfile } from './chunk-IZDH67DX.js';
|
|
17
17
|
import './chunk-3LOWJSAF.js';
|
|
18
|
-
import { runAgent } from './chunk-
|
|
18
|
+
import { runAgent } from './chunk-536J6HUR.js';
|
|
19
19
|
import './chunk-543E6WDJ.js';
|
|
20
|
-
import { summarizeDiffs } from './chunk-
|
|
20
|
+
import { summarizeDiffs } from './chunk-SJFBXCII.js';
|
|
21
21
|
import './chunk-REIGWTTH.js';
|
|
22
|
-
import { resolveGraphBackend } from './chunk-
|
|
22
|
+
import { resolveGraphBackend } from './chunk-JUSXLCSE.js';
|
|
23
23
|
import { vgdIsRunning, vgdRequest } from './chunk-RBIRXQR6.js';
|
|
24
24
|
import './chunk-5HYCB55P.js';
|
|
25
|
-
import './chunk-
|
|
26
|
-
import
|
|
27
|
-
import './chunk-
|
|
28
|
-
import './chunk-
|
|
29
|
-
import './chunk-XRN7DQGR.js';
|
|
25
|
+
import { refreshIfStale } from './chunk-S4NSF5AZ.js';
|
|
26
|
+
import './chunk-FKFRASAB.js';
|
|
27
|
+
import './chunk-SNKTD23L.js';
|
|
28
|
+
import './chunk-NJFQCDGA.js';
|
|
30
29
|
import './chunk-HTLDXEHW.js';
|
|
30
|
+
import { discoverModels } from './chunk-CQDUBAQY.js';
|
|
31
|
+
import './chunk-OV4KGXPD.js';
|
|
32
|
+
import './chunk-DT4KIVRI.js';
|
|
31
33
|
import './chunk-CRAMOEBE.js';
|
|
32
|
-
import { readModelSavings } from './chunk-
|
|
33
|
-
import './chunk-
|
|
34
|
-
import './chunk-
|
|
34
|
+
import { readModelSavings } from './chunk-Y7YKUZ3T.js';
|
|
35
|
+
import './chunk-VIWZ4QT7.js';
|
|
36
|
+
import './chunk-BWMMR5XA.js';
|
|
35
37
|
import './chunk-3LSG7Z4I.js';
|
|
36
38
|
import './chunk-J7LKEB2R.js';
|
|
37
|
-
import './chunk-
|
|
38
|
-
import { discoverModels } from './chunk-CQDUBAQY.js';
|
|
39
|
-
import './chunk-OV4KGXPD.js';
|
|
39
|
+
import './chunk-5VH3Y4QC.js';
|
|
40
40
|
import './chunk-UTNNGKKX.js';
|
|
41
41
|
import './chunk-RXP66R2E.js';
|
|
42
|
-
import { loadGraph } from './chunk-
|
|
43
|
-
import { resolveGraphPath } from './chunk-
|
|
44
|
-
import './chunk-
|
|
45
|
-
import './chunk-
|
|
42
|
+
import { loadGraph } from './chunk-DIU3MXB3.js';
|
|
43
|
+
import { resolveGraphPath } from './chunk-N4IDP2M2.js';
|
|
44
|
+
import './chunk-QT2PMGN3.js';
|
|
45
|
+
import './chunk-AJ2KE3NT.js';
|
|
46
|
+
import { loadOrDiscoverFederation } from './chunk-5I4VSBWQ.js';
|
|
46
47
|
import './chunk-BWPBB45M.js';
|
|
47
48
|
import './chunk-JFGYT6BI.js';
|
|
48
49
|
import './chunk-BPF3YX2U.js';
|
|
49
|
-
import './chunk-DT4KIVRI.js';
|
|
50
50
|
import './chunk-Z6ZWNWWR.js';
|
|
51
51
|
import { spawnSync } from 'child_process';
|
|
52
52
|
|
|
@@ -316,7 +316,7 @@ async function codingRepl(root, global, opts, selection, prompter) {
|
|
|
316
316
|
} else prompter.note(c.dim("no previous session to continue"));
|
|
317
317
|
}
|
|
318
318
|
const graphHolder = { current: null };
|
|
319
|
-
const { createVgBuiltinMcpTools, mergeExternalToolsets } = await import('./vg-mcp-bridge-
|
|
319
|
+
const { createVgBuiltinMcpTools, mergeExternalToolsets } = await import('./vg-mcp-bridge-D463EHQI.js');
|
|
320
320
|
const vgBuiltin = createVgBuiltinMcpTools({
|
|
321
321
|
getGraph: () => {
|
|
322
322
|
if (!graphHolder.current) throw new Error("graph not loaded yet");
|
|
@@ -401,7 +401,7 @@ async function codingRepl(root, global, opts, selection, prompter) {
|
|
|
401
401
|
if (line.startsWith("/")) {
|
|
402
402
|
const [cmd] = line.slice(1).split(/\s+/);
|
|
403
403
|
if (cmd === "help") {
|
|
404
|
-
prompter.note("commands: /undo /diff /model /cost /clear /exit");
|
|
404
|
+
prompter.note("commands: /undo /diff /model /cost /compact /clear /exit");
|
|
405
405
|
} else if (cmd === "undo") {
|
|
406
406
|
if (lastChanges.length === 0) prompter.note(c.dim("nothing to undo"));
|
|
407
407
|
else {
|
|
@@ -429,6 +429,15 @@ async function codingRepl(root, global, opts, selection, prompter) {
|
|
|
429
429
|
} else if (cmd === "cost") {
|
|
430
430
|
prompter.note(`this session: ${meter.summary()}`);
|
|
431
431
|
printCost(root);
|
|
432
|
+
} else if (cmd === "compact") {
|
|
433
|
+
if (store.tasks.length <= 1) prompter.note(c.dim("nothing to compact yet"));
|
|
434
|
+
else {
|
|
435
|
+
const before = store.tasks.length;
|
|
436
|
+
store = condenseSession(store, Date.now());
|
|
437
|
+
saveSession(root, store);
|
|
438
|
+
priorSummary = summarizeSession(store) || void 0;
|
|
439
|
+
prompter.note(c.green(`compacted ${before} task(s) into one checkpoint \u2014 future turns carry the short recap`));
|
|
440
|
+
}
|
|
432
441
|
} else if (cmd === "clear") {
|
|
433
442
|
prompter.note(c.dim("each task already starts fresh \u2014 nothing to clear"));
|
|
434
443
|
} else {
|
|
@@ -501,7 +510,8 @@ async function codingRepl(root, global, opts, selection, prompter) {
|
|
|
501
510
|
executionEnv,
|
|
502
511
|
graphBackend,
|
|
503
512
|
modelProfile,
|
|
504
|
-
extraPinnedFacts
|
|
513
|
+
extraPinnedFacts,
|
|
514
|
+
llmCompaction: true
|
|
505
515
|
});
|
|
506
516
|
priorSummary = void 0;
|
|
507
517
|
if (result.changes.length) {
|
|
@@ -624,6 +634,8 @@ async function agentTask(params) {
|
|
|
624
634
|
if (!e.ok && e.summary.trim()) {
|
|
625
635
|
for (const line of e.summary.split("\n").slice(0, 6)) info(c.dim(` ${line}`));
|
|
626
636
|
}
|
|
637
|
+
} else if (e.type === "notice") {
|
|
638
|
+
info(c.dim(` \xB7 ${e.text}`));
|
|
627
639
|
} else if (e.type === "session-graph") {
|
|
628
640
|
info(c.dim(` \xB7 session graph updated (${e.reparsed} reparsed, ${e.dirty} dirty)`));
|
|
629
641
|
} else if (e.type === "capsule") {
|
|
@@ -664,6 +676,7 @@ async function agentTask(params) {
|
|
|
664
676
|
externalTools: params.externalTools,
|
|
665
677
|
capsule: params.capsule,
|
|
666
678
|
files: params.files,
|
|
679
|
+
llmCompaction: params.llmCompaction,
|
|
667
680
|
now: () => Date.now()
|
|
668
681
|
});
|
|
669
682
|
closeStream();
|
|
@@ -696,5 +709,5 @@ ${res.stderr}` : "");
|
|
|
696
709
|
}
|
|
697
710
|
|
|
698
711
|
export { agentTask, runInteractive };
|
|
699
|
-
//# sourceMappingURL=interactive-
|
|
700
|
-
//# sourceMappingURL=interactive-
|
|
712
|
+
//# sourceMappingURL=interactive-TNRE4OEK.js.map
|
|
713
|
+
//# sourceMappingURL=interactive-TNRE4OEK.js.map
|