@triedotdev/mcp 1.0.148 → 1.0.151
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/LICENSE +21 -0
- package/README.md +225 -78
- package/dist/{autonomy-config-ZCOSTMPD.js → autonomy-config-3APNC6QF.js} +3 -3
- package/dist/{chat-store-OJLJCJFI.js → chat-store-HMTDL7I2.js} +3 -3
- package/dist/{chunk-LD7ZEFNY.js → chunk-3KZBC3RJ.js} +2 -2
- package/dist/{chunk-SH7H3WRU.js → chunk-4TQQP7JD.js} +3 -3
- package/dist/{chunk-SH7H3WRU.js.map → chunk-4TQQP7JD.js.map} +1 -1
- package/dist/{chunk-N2EDZTKG.js → chunk-4UDBGYI3.js} +13 -13
- package/dist/{chunk-XTTZAQWJ.js → chunk-74R4XSFB.js} +5 -5
- package/dist/{chunk-T6PS3MXJ.js → chunk-7HYOJ4Q7.js} +8 -8
- package/dist/{chunk-T6PS3MXJ.js.map → chunk-7HYOJ4Q7.js.map} +1 -1
- package/dist/{chunk-3MUCUZ46.js → chunk-ABY2R7OK.js} +3 -3
- package/dist/chunk-ED7PLRQA.js +782 -0
- package/dist/chunk-ED7PLRQA.js.map +1 -0
- package/dist/{chunk-4MJ52WBH.js → chunk-EFWVF6TI.js} +4 -2
- package/dist/chunk-EFWVF6TI.js.map +1 -0
- package/dist/{chunk-23RJT5WT.js → chunk-F7BMFOZ6.js} +2 -2
- package/dist/{chunk-4PAAGLKO.js → chunk-G7Q23IGF.js} +36 -9
- package/dist/{chunk-4PAAGLKO.js.map → chunk-G7Q23IGF.js.map} +1 -1
- package/dist/{chunk-LT6VUZG2.js → chunk-GLY76TSI.js} +3 -3
- package/dist/{chunk-WMDFK7LI.js → chunk-IFBEAOHH.js} +5 -5
- package/dist/{chunk-YEIJW6X6.js → chunk-JIS2OCZR.js} +4 -4
- package/dist/{chunk-FG467PDD.js → chunk-LNUMECBJ.js} +2 -2
- package/dist/{chunk-FPEMP54L.js → chunk-OJXFQRUE.js} +2 -2
- package/dist/{chunk-5KJ4UJOY.js → chunk-QQG42HCI.js} +2 -2
- package/dist/{chunk-7OJ6JIPL.js → chunk-REHKDCI6.js} +7 -150
- package/dist/chunk-REHKDCI6.js.map +1 -0
- package/dist/{chunk-J7CEBSEB.js → chunk-SU3WCAC4.js} +102 -163
- package/dist/chunk-SU3WCAC4.js.map +1 -0
- package/dist/{chunk-4C67GV3O.js → chunk-TCNCNWGV.js} +2 -2
- package/dist/{chunk-NKHO34UZ.js → chunk-TU7D5DEW.js} +2 -2
- package/dist/{chunk-62POBLFC.js → chunk-TWPX6PHF.js} +453 -986
- package/dist/chunk-TWPX6PHF.js.map +1 -0
- package/dist/{chunk-FH335WL5.js → chunk-TWQPOVRA.js} +2 -2
- package/dist/{chunk-YOJGSRZK.js → chunk-V3O7C2LY.js} +2 -2
- package/dist/{chunk-V7AY2EJO.js → chunk-WOTLY5NA.js} +2 -2
- package/dist/cli/create-agent.js +8 -40
- package/dist/cli/create-agent.js.map +1 -1
- package/dist/cli/main.js +121 -164
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/yolo-daemon.js +31 -155
- package/dist/cli/yolo-daemon.js.map +1 -1
- package/dist/{client-INNE2GGZ.js → client-5L64D5SQ.js} +3 -3
- package/dist/{codebase-index-FMIULFZQ.js → codebase-index-OOE7OAHP.js} +3 -3
- package/dist/{fast-analyzer-MWKCDRGD.js → fast-analyzer-FMU3X4AZ.js} +5 -5
- package/dist/github-ingester-C66ZRUYC.js +11 -0
- package/dist/{goal-manager-ZBWKWEML.js → goal-manager-VTBFFYN4.js} +8 -7
- package/dist/{goal-validator-DA3JQ6JN.js → goal-validator-EM5XVWVC.js} +7 -6
- package/dist/{graph-J4OGTYCO.js → graph-26JPZ3DF.js} +3 -3
- package/dist/{hypothesis-JCUMZKTG.js → hypothesis-4UPE7KXU.js} +8 -7
- package/dist/{incident-index-BWW2UEY7.js → incident-index-H6APJ4S3.js} +3 -3
- package/dist/index.js +116 -397
- package/dist/index.js.map +1 -1
- package/dist/{insight-store-A5XXMFD6.js → insight-store-QEEUQR5L.js} +4 -4
- package/dist/{issue-store-LZWZIGM7.js → issue-store-C6XYENE5.js} +7 -4
- package/dist/ledger-VNA4DX3Z.js +51 -0
- package/dist/linear-ingester-WIUBWF55.js +11 -0
- package/dist/{tiered-storage-VZL7KK64.js → tiered-storage-P6Z3NV2Q.js} +3 -3
- package/dist/trie-agent-GJJJCL6P.js +27 -0
- package/dist/trie-agent-GJJJCL6P.js.map +1 -0
- package/package.json +8 -6
- package/dist/chunk-4MJ52WBH.js.map +0 -1
- package/dist/chunk-62POBLFC.js.map +0 -1
- package/dist/chunk-7OJ6JIPL.js.map +0 -1
- package/dist/chunk-G76DYVGX.js +0 -136
- package/dist/chunk-G76DYVGX.js.map +0 -1
- package/dist/chunk-J7CEBSEB.js.map +0 -1
- package/dist/comprehension-46F7ZNKL.js +0 -821
- package/dist/comprehension-46F7ZNKL.js.map +0 -1
- package/dist/github-ingester-J2ZFYXVE.js +0 -11
- package/dist/linear-ingester-JRDQAIAA.js +0 -11
- package/dist/trie-agent-6A7YBNTQ.js +0 -26
- package/dist/workers/agent-worker.d.ts +0 -2
- package/dist/workers/agent-worker.js +0 -28
- package/dist/workers/agent-worker.js.map +0 -1
- /package/dist/{autonomy-config-ZCOSTMPD.js.map → autonomy-config-3APNC6QF.js.map} +0 -0
- /package/dist/{chat-store-OJLJCJFI.js.map → chat-store-HMTDL7I2.js.map} +0 -0
- /package/dist/{chunk-LD7ZEFNY.js.map → chunk-3KZBC3RJ.js.map} +0 -0
- /package/dist/{chunk-N2EDZTKG.js.map → chunk-4UDBGYI3.js.map} +0 -0
- /package/dist/{chunk-XTTZAQWJ.js.map → chunk-74R4XSFB.js.map} +0 -0
- /package/dist/{chunk-3MUCUZ46.js.map → chunk-ABY2R7OK.js.map} +0 -0
- /package/dist/{chunk-23RJT5WT.js.map → chunk-F7BMFOZ6.js.map} +0 -0
- /package/dist/{chunk-LT6VUZG2.js.map → chunk-GLY76TSI.js.map} +0 -0
- /package/dist/{chunk-WMDFK7LI.js.map → chunk-IFBEAOHH.js.map} +0 -0
- /package/dist/{chunk-YEIJW6X6.js.map → chunk-JIS2OCZR.js.map} +0 -0
- /package/dist/{chunk-FG467PDD.js.map → chunk-LNUMECBJ.js.map} +0 -0
- /package/dist/{chunk-FPEMP54L.js.map → chunk-OJXFQRUE.js.map} +0 -0
- /package/dist/{chunk-5KJ4UJOY.js.map → chunk-QQG42HCI.js.map} +0 -0
- /package/dist/{chunk-4C67GV3O.js.map → chunk-TCNCNWGV.js.map} +0 -0
- /package/dist/{chunk-NKHO34UZ.js.map → chunk-TU7D5DEW.js.map} +0 -0
- /package/dist/{chunk-FH335WL5.js.map → chunk-TWQPOVRA.js.map} +0 -0
- /package/dist/{chunk-YOJGSRZK.js.map → chunk-V3O7C2LY.js.map} +0 -0
- /package/dist/{chunk-V7AY2EJO.js.map → chunk-WOTLY5NA.js.map} +0 -0
- /package/dist/{client-INNE2GGZ.js.map → client-5L64D5SQ.js.map} +0 -0
- /package/dist/{codebase-index-FMIULFZQ.js.map → codebase-index-OOE7OAHP.js.map} +0 -0
- /package/dist/{fast-analyzer-MWKCDRGD.js.map → fast-analyzer-FMU3X4AZ.js.map} +0 -0
- /package/dist/{github-ingester-J2ZFYXVE.js.map → github-ingester-C66ZRUYC.js.map} +0 -0
- /package/dist/{goal-manager-ZBWKWEML.js.map → goal-manager-VTBFFYN4.js.map} +0 -0
- /package/dist/{goal-validator-DA3JQ6JN.js.map → goal-validator-EM5XVWVC.js.map} +0 -0
- /package/dist/{graph-J4OGTYCO.js.map → graph-26JPZ3DF.js.map} +0 -0
- /package/dist/{hypothesis-JCUMZKTG.js.map → hypothesis-4UPE7KXU.js.map} +0 -0
- /package/dist/{incident-index-BWW2UEY7.js.map → incident-index-H6APJ4S3.js.map} +0 -0
- /package/dist/{insight-store-A5XXMFD6.js.map → insight-store-QEEUQR5L.js.map} +0 -0
- /package/dist/{issue-store-LZWZIGM7.js.map → issue-store-C6XYENE5.js.map} +0 -0
- /package/dist/{linear-ingester-JRDQAIAA.js.map → ledger-VNA4DX3Z.js.map} +0 -0
- /package/dist/{tiered-storage-VZL7KK64.js.map → linear-ingester-WIUBWF55.js.map} +0 -0
- /package/dist/{trie-agent-6A7YBNTQ.js.map → tiered-storage-P6Z3NV2Q.js.map} +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getChatStore
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-F7BMFOZ6.js";
|
|
4
4
|
import {
|
|
5
5
|
getTrieAgent
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-4UDBGYI3.js";
|
|
7
7
|
import {
|
|
8
8
|
getOutputManager
|
|
9
9
|
} from "./chunk-TIMIKBY2.js";
|
|
@@ -16,72 +16,51 @@ import {
|
|
|
16
16
|
perceiveCurrentChanges,
|
|
17
17
|
reasonAboutChangesHumanReadable,
|
|
18
18
|
saveCheckpoint
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-G7Q23IGF.js";
|
|
20
20
|
import {
|
|
21
21
|
loadConfig,
|
|
22
22
|
saveConfig
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-TU7D5DEW.js";
|
|
24
24
|
import {
|
|
25
25
|
IncidentIndex
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-TCNCNWGV.js";
|
|
27
27
|
import {
|
|
28
28
|
findCrossProjectPatterns
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-IFBEAOHH.js";
|
|
30
30
|
import {
|
|
31
31
|
ContextGraph
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-TWQPOVRA.js";
|
|
33
33
|
import {
|
|
34
34
|
measureInitialGoalValue
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-7HYOJ4Q7.js";
|
|
36
36
|
import {
|
|
37
37
|
getKeyFromKeychain,
|
|
38
38
|
isAIAvailable,
|
|
39
39
|
runAIWithTools,
|
|
40
40
|
setAPIKey
|
|
41
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-OJXFQRUE.js";
|
|
42
42
|
import {
|
|
43
43
|
getProjectState
|
|
44
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-GLY76TSI.js";
|
|
45
45
|
import {
|
|
46
46
|
TieredStorage,
|
|
47
47
|
getStorage
|
|
48
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-LNUMECBJ.js";
|
|
49
49
|
import {
|
|
50
50
|
loadAutonomyConfig,
|
|
51
51
|
saveAutonomyConfig
|
|
52
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-QQG42HCI.js";
|
|
53
53
|
import {
|
|
54
|
-
deleteBlocks,
|
|
55
54
|
getLedgerBlocks
|
|
56
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-TWPX6PHF.js";
|
|
57
56
|
import {
|
|
58
57
|
getTrieDirectory,
|
|
59
58
|
getWorkingDirectory
|
|
60
|
-
} from "./chunk-
|
|
59
|
+
} from "./chunk-4TQQP7JD.js";
|
|
61
60
|
import {
|
|
62
61
|
isInteractiveMode
|
|
63
62
|
} from "./chunk-APMV77PU.js";
|
|
64
63
|
|
|
65
|
-
// src/tools/scan.ts
|
|
66
|
-
var hasLoggedRefocus = false;
|
|
67
|
-
var TrieScanTool = class {
|
|
68
|
-
async execute(_input) {
|
|
69
|
-
if (!isInteractiveMode() && !hasLoggedRefocus) {
|
|
70
|
-
hasLoggedRefocus = true;
|
|
71
|
-
console.error("Trie scan has been refocused on decision ledger");
|
|
72
|
-
console.error(" trie tell - report incidents");
|
|
73
|
-
console.error(" trie gotcha - predict risks");
|
|
74
|
-
console.error(" trie learn - learn from history");
|
|
75
|
-
}
|
|
76
|
-
return {
|
|
77
|
-
content: [{
|
|
78
|
-
type: "text",
|
|
79
|
-
text: "Scan functionality has been refocused on decision ledger.\n\nUse:\n- trie tell - to report incidents\n- trie gotcha - to predict risks\n- trie learn - to learn from history"
|
|
80
|
-
}]
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
};
|
|
84
|
-
|
|
85
64
|
// src/utils/streaming.ts
|
|
86
65
|
var shouldSuppressConsole = () => isInteractiveMode();
|
|
87
66
|
var StreamingManager = class {
|
|
@@ -516,9 +495,6 @@ function dashboardReducer(state, action) {
|
|
|
516
495
|
return handleStreamUpdate(state, action.update);
|
|
517
496
|
case "SET_VIEW": {
|
|
518
497
|
const next = { ...state, previousView: state.view, view: action.view };
|
|
519
|
-
if (action.view !== "memory" && state.memoryTree.pendingLedgerDelete) {
|
|
520
|
-
next.memoryTree = { ...state.memoryTree, pendingLedgerDelete: null };
|
|
521
|
-
}
|
|
522
498
|
return next;
|
|
523
499
|
}
|
|
524
500
|
case "GO_BACK":
|
|
@@ -701,8 +677,6 @@ function dashboardReducer(state, action) {
|
|
|
701
677
|
return { ...state, memoryTree: { ...state.memoryTree, selectedNode: action.nodeId } };
|
|
702
678
|
case "SET_MEMORY_EXPANDED_ITEM":
|
|
703
679
|
return { ...state, memoryTree: { ...state.memoryTree, expandedItemId: action.itemId } };
|
|
704
|
-
case "SET_PENDING_LEDGER_DELETE":
|
|
705
|
-
return { ...state, memoryTree: { ...state.memoryTree, pendingLedgerDelete: action.date } };
|
|
706
680
|
case "TOGGLE_MEMORY_NODE": {
|
|
707
681
|
const expandable = ["decisions", "incidents", "patterns", "cross-project", "hotspots", "ledger-chain"];
|
|
708
682
|
if (expandable.includes(action.nodeId)) {
|
|
@@ -956,7 +930,7 @@ function createInitialState() {
|
|
|
956
930
|
},
|
|
957
931
|
goalsPanel: { goals: [], selectedIndex: 0, selectedAchievedIndex: 0, inputMode: "browse", inputBuffer: "", lastRefresh: 0, scanningGoalId: null, scanningProgress: "" },
|
|
958
932
|
hypothesesPanel: { hypotheses: [], selectedIndex: 0, selectedCompletedIndex: 0, inputMode: "browse", inputBuffer: "", lastRefresh: 0, scanningHypothesisId: null, scanningProgress: "" },
|
|
959
|
-
memoryTree: { loaded: false, snapshot: null, globalPatterns: [], storageGovernance: [], storageGotchas: [], ledgerBlocks: [], expandedNodes: /* @__PURE__ */ new Set(["decisions"]), expandedItemId: null, selectedNode: "decisions", scrollPosition: 0, lastRefresh: 0
|
|
933
|
+
memoryTree: { loaded: false, snapshot: null, globalPatterns: [], storageGovernance: [], storageGotchas: [], ledgerBlocks: [], expandedNodes: /* @__PURE__ */ new Set(["decisions"]), expandedItemId: null, selectedNode: "decisions", scrollPosition: 0, lastRefresh: 0 },
|
|
960
934
|
agentBrain: { loaded: false, governance: [], patterns: [], ledgerHash: null, selectedIndex: 0, expandedIndex: null },
|
|
961
935
|
chatState: { messages: [], inputBuffer: "", loading: false, progress: null, messageQueue: [], currentSessionId: null, currentSessionTitle: null },
|
|
962
936
|
chatArchivePanel: { sessions: [], selectedIndex: 0, showArchived: false, loading: false, inputMode: "browse", inputBuffer: "" },
|
|
@@ -1220,7 +1194,7 @@ function ConfigDialog({ onClose }) {
|
|
|
1220
1194
|
const loadStats = async () => {
|
|
1221
1195
|
try {
|
|
1222
1196
|
const workDir = getWorkingDirectory(void 0, true);
|
|
1223
|
-
const { CodebaseIndex } = await import("./codebase-index-
|
|
1197
|
+
const { CodebaseIndex } = await import("./codebase-index-OOE7OAHP.js");
|
|
1224
1198
|
const index = new CodebaseIndex(workDir);
|
|
1225
1199
|
const stats = index.getStats();
|
|
1226
1200
|
let lastUpdatedDisplay = "Never";
|
|
@@ -1413,7 +1387,7 @@ function ConfigDialog({ onClose }) {
|
|
|
1413
1387
|
const loadStats = async () => {
|
|
1414
1388
|
try {
|
|
1415
1389
|
const workDir = getWorkingDirectory(void 0, true);
|
|
1416
|
-
const { CodebaseIndex } = await import("./codebase-index-
|
|
1390
|
+
const { CodebaseIndex } = await import("./codebase-index-OOE7OAHP.js");
|
|
1417
1391
|
const index = new CodebaseIndex(workDir);
|
|
1418
1392
|
const stats = index.getStats();
|
|
1419
1393
|
setIndexStats({
|
|
@@ -1488,7 +1462,7 @@ function ConfigDialog({ onClose }) {
|
|
|
1488
1462
|
}
|
|
1489
1463
|
async function reindexCodebase() {
|
|
1490
1464
|
const workDir = getWorkingDirectory(void 0, true);
|
|
1491
|
-
const { CodebaseIndex } = await import("./codebase-index-
|
|
1465
|
+
const { CodebaseIndex } = await import("./codebase-index-OOE7OAHP.js");
|
|
1492
1466
|
const { glob } = await import("glob");
|
|
1493
1467
|
const index = new CodebaseIndex(workDir);
|
|
1494
1468
|
const indexPattern = `${workDir}/**/*.{ts,tsx,js,jsx,mjs,vue,svelte,astro,py,go,rs,java,c,cpp,h,hpp,cs,rb,php,css,scss,html}`;
|
|
@@ -1951,10 +1925,10 @@ function AgentView() {
|
|
|
1951
1925
|
if (!insight) return;
|
|
1952
1926
|
try {
|
|
1953
1927
|
const workDir = getWorkingDirectory(void 0, true);
|
|
1954
|
-
const { getInsightStore } = await import("./insight-store-
|
|
1928
|
+
const { getInsightStore } = await import("./insight-store-QEEUQR5L.js");
|
|
1955
1929
|
const store = getInsightStore(workDir);
|
|
1956
1930
|
await store.dismissInsight(insight.id);
|
|
1957
|
-
const { getStorage: getStorage2 } = await import("./tiered-storage-
|
|
1931
|
+
const { getStorage: getStorage2 } = await import("./tiered-storage-P6Z3NV2Q.js");
|
|
1958
1932
|
const storage = getStorage2(workDir);
|
|
1959
1933
|
await storage.dismissNudge(insight.id).catch(() => {
|
|
1960
1934
|
});
|
|
@@ -2170,10 +2144,20 @@ function GoalsView() {
|
|
|
2170
2144
|
const goals = agentState.getAllGoals();
|
|
2171
2145
|
dispatch({
|
|
2172
2146
|
type: "SET_GOALS",
|
|
2173
|
-
goals: goals.map((g) => {
|
|
2174
|
-
|
|
2175
|
-
|
|
2176
|
-
|
|
2147
|
+
goals: goals.map((g) => ({
|
|
2148
|
+
id: g.id,
|
|
2149
|
+
description: g.description,
|
|
2150
|
+
type: g.type,
|
|
2151
|
+
target: g.target,
|
|
2152
|
+
currentValue: g.currentValue,
|
|
2153
|
+
status: g.status,
|
|
2154
|
+
autoGenerated: g.autoGenerated,
|
|
2155
|
+
updatedAt: g.updatedAt,
|
|
2156
|
+
...g.startValue !== void 0 && { startValue: g.startValue },
|
|
2157
|
+
...g.achievedAt != null && { achievedAt: g.achievedAt },
|
|
2158
|
+
...g.achievedBy != null && { achievedBy: g.achievedBy },
|
|
2159
|
+
...g.category != null && { category: g.category }
|
|
2160
|
+
}))
|
|
2177
2161
|
});
|
|
2178
2162
|
} catch (err) {
|
|
2179
2163
|
}
|
|
@@ -2303,7 +2287,7 @@ function GoalsView() {
|
|
|
2303
2287
|
dispatch({ type: "SET_GOAL_SCANNING", goalId, progress: "Starting scan..." });
|
|
2304
2288
|
dispatch({ type: "ADD_ACTIVITY", message: `Scanning goal: ${goalSummary.description}...` });
|
|
2305
2289
|
dispatch({ type: "SET_GOAL_SCANNING", goalId, progress: "Loading goal configuration..." });
|
|
2306
|
-
const { checkFilesForGoalViolations } = await import("./goal-validator-
|
|
2290
|
+
const { checkFilesForGoalViolations } = await import("./goal-validator-EM5XVWVC.js");
|
|
2307
2291
|
const agentState = getProjectState(workDir);
|
|
2308
2292
|
await agentState.load();
|
|
2309
2293
|
const fullGoal = agentState.getAllGoals().find((g) => g.id === goalId);
|
|
@@ -2414,7 +2398,7 @@ function GoalsView() {
|
|
|
2414
2398
|
const sourceLabel = goal.autoGenerated ? "AI" : "you";
|
|
2415
2399
|
if (isScanning) {
|
|
2416
2400
|
return /* @__PURE__ */ jsx9(Box8, { borderStyle: "round", borderColor: "cyan", paddingX: 1, children: /* @__PURE__ */ jsxs8(Box8, { flexDirection: "column", children: [
|
|
2417
|
-
/* @__PURE__ */ jsxs8(Text8, { wrap: "wrap",
|
|
2401
|
+
/* @__PURE__ */ jsxs8(Text8, { wrap: "wrap", children: [
|
|
2418
2402
|
/* @__PURE__ */ jsx9(Text8, { bold: true, color: "cyan", children: "\u27F3 " }),
|
|
2419
2403
|
/* @__PURE__ */ jsx9(Text8, { color: "cyan", bold: true, children: goal.description })
|
|
2420
2404
|
] }),
|
|
@@ -2423,7 +2407,7 @@ function GoalsView() {
|
|
|
2423
2407
|
] }) }, goal.id);
|
|
2424
2408
|
}
|
|
2425
2409
|
return /* @__PURE__ */ jsxs8(Box8, { flexDirection: "column", children: [
|
|
2426
|
-
/* @__PURE__ */ jsxs8(Text8, { wrap: "wrap",
|
|
2410
|
+
/* @__PURE__ */ jsxs8(Text8, { wrap: "wrap", children: [
|
|
2427
2411
|
isSelected ? /* @__PURE__ */ jsx9(Text8, { bold: true, color: "green", children: "> " }) : " ",
|
|
2428
2412
|
goal.autoGenerated ? /* @__PURE__ */ jsx9(Text8, { color: "cyan", children: "\u25C7" }) : /* @__PURE__ */ jsx9(Text8, { color: "green", children: "\u25CB" }),
|
|
2429
2413
|
" ",
|
|
@@ -2455,7 +2439,7 @@ function GoalsView() {
|
|
|
2455
2439
|
/* @__PURE__ */ jsx9(Text8, { dimColor: true, children: " Achieved" }),
|
|
2456
2440
|
achievedGoals.slice(0, 5).map((g) => {
|
|
2457
2441
|
const byLabel = g.achievedBy === "agent" ? "AI" : "you";
|
|
2458
|
-
return /* @__PURE__ */ jsxs8(Text8, { wrap: "wrap",
|
|
2442
|
+
return /* @__PURE__ */ jsxs8(Text8, { wrap: "wrap", children: [
|
|
2459
2443
|
" ",
|
|
2460
2444
|
g.achievedBy === "agent" ? /* @__PURE__ */ jsx9(Text8, { color: "cyan", children: "\u25CF" }) : /* @__PURE__ */ jsx9(Text8, { color: "green", children: "\u25CF" }),
|
|
2461
2445
|
" ",
|
|
@@ -2476,7 +2460,7 @@ function GoalsView() {
|
|
|
2476
2460
|
otherGoals.length > 0 && /* @__PURE__ */ jsxs8(Box8, { flexDirection: "column", marginTop: 1, children: [
|
|
2477
2461
|
/* @__PURE__ */ jsx9(Text8, { dimColor: true, children: " Other" }),
|
|
2478
2462
|
otherGoals.slice(0, 2).map((g) => {
|
|
2479
|
-
return /* @__PURE__ */ jsxs8(Text8, { wrap: "wrap",
|
|
2463
|
+
return /* @__PURE__ */ jsxs8(Text8, { wrap: "wrap", children: [
|
|
2480
2464
|
" ",
|
|
2481
2465
|
/* @__PURE__ */ jsx9(Text8, { dimColor: true, children: "\u25CB" }),
|
|
2482
2466
|
" ",
|
|
@@ -2501,7 +2485,6 @@ function HypothesesView() {
|
|
|
2501
2485
|
const { stdout } = useStdout7();
|
|
2502
2486
|
const cols = stdout?.columns || 80;
|
|
2503
2487
|
const narrow = cols < 60;
|
|
2504
|
-
const contentWidth = Math.max(20, cols - 4);
|
|
2505
2488
|
const testing = hypothesesPanel.hypotheses.filter((h) => h.status === "testing");
|
|
2506
2489
|
const validated = hypothesesPanel.hypotheses.filter((h) => h.status === "validated");
|
|
2507
2490
|
const invalidated = hypothesesPanel.hypotheses.filter((h) => h.status === "invalidated");
|
|
@@ -2579,7 +2562,7 @@ function HypothesesView() {
|
|
|
2579
2562
|
dispatch({ type: "SET_HYPOTHESIS_SCANNING", hypothesisId: hypoId, progress: "Gathering evidence..." });
|
|
2580
2563
|
dispatch({ type: "ADD_ACTIVITY", message: `Testing hypothesis: ${hypo.statement}` });
|
|
2581
2564
|
dispatch({ type: "SHOW_NOTIFICATION", message: `Gathering evidence for hypothesis...`, severity: "info", autoHideMs: 3e3 });
|
|
2582
|
-
const { gatherEvidenceForHypothesis } = await import("./hypothesis-
|
|
2565
|
+
const { gatherEvidenceForHypothesis } = await import("./hypothesis-4UPE7KXU.js");
|
|
2583
2566
|
const evidence = await gatherEvidenceForHypothesis(hypoId, workDir, signal);
|
|
2584
2567
|
scanAbortRef.current = null;
|
|
2585
2568
|
dispatch({ type: "SET_HYPOTHESIS_SCANNING", hypothesisId: null, progress: "" });
|
|
@@ -2751,7 +2734,7 @@ function timeAgo2(iso) {
|
|
|
2751
2734
|
function MemoryTreeView() {
|
|
2752
2735
|
const { state, dispatch } = useDashboard();
|
|
2753
2736
|
const { memoryTree } = state;
|
|
2754
|
-
const { snapshot, globalPatterns, storageGovernance, storageGotchas, ledgerBlocks, expandedNodes, expandedItemId, selectedNode, loaded
|
|
2737
|
+
const { snapshot, globalPatterns, storageGovernance, storageGotchas, ledgerBlocks, expandedNodes, expandedItemId, selectedNode, loaded } = memoryTree;
|
|
2755
2738
|
const { stdout } = useStdout8();
|
|
2756
2739
|
const cols = stdout?.columns || 80;
|
|
2757
2740
|
const narrow = cols < 60;
|
|
@@ -2797,57 +2780,13 @@ function MemoryTreeView() {
|
|
|
2797
2780
|
dispatch({ type: "ADD_ACTIVITY", message: "Failed to update incident" });
|
|
2798
2781
|
}
|
|
2799
2782
|
}, [selectedNode, expandedItemId, loadData, dispatch]);
|
|
2800
|
-
const handleLedgerBlockDelete = useCallback4(async () => {
|
|
2801
|
-
const dateToDelete = pendingLedgerDelete;
|
|
2802
|
-
if (!dateToDelete) return;
|
|
2803
|
-
try {
|
|
2804
|
-
dispatch({ type: "ADD_ACTIVITY", message: `Attempting to delete ledger block ${dateToDelete}...` });
|
|
2805
|
-
const workDir = getWorkingDirectory(void 0, true);
|
|
2806
|
-
const result = await deleteBlocks([dateToDelete], workDir, true);
|
|
2807
|
-
if (result.success) {
|
|
2808
|
-
dispatch({ type: "ADD_ACTIVITY", message: `Ledger block ${dateToDelete} deleted permanently` });
|
|
2809
|
-
dispatch({ type: "SET_MEMORY_EXPANDED_ITEM", itemId: null });
|
|
2810
|
-
dispatch({ type: "SET_PENDING_LEDGER_DELETE", date: null });
|
|
2811
|
-
void loadData();
|
|
2812
|
-
} else {
|
|
2813
|
-
dispatch({ type: "ADD_ACTIVITY", message: `Failed to delete block: ${result.error}` });
|
|
2814
|
-
dispatch({ type: "SHOW_NOTIFICATION", message: result.error ?? "Delete failed", severity: "warning" });
|
|
2815
|
-
dispatch({ type: "SET_PENDING_LEDGER_DELETE", date: null });
|
|
2816
|
-
}
|
|
2817
|
-
} catch (err) {
|
|
2818
|
-
const msg = err instanceof Error ? err.message : "unknown error";
|
|
2819
|
-
dispatch({ type: "ADD_ACTIVITY", message: `Failed to delete ledger block: ${msg}` });
|
|
2820
|
-
dispatch({ type: "SHOW_NOTIFICATION", message: `Delete failed: ${msg}`, severity: "warning" });
|
|
2821
|
-
dispatch({ type: "SET_PENDING_LEDGER_DELETE", date: null });
|
|
2822
|
-
}
|
|
2823
|
-
}, [pendingLedgerDelete, loadData, dispatch]);
|
|
2824
2783
|
useInput6((_input, key) => {
|
|
2825
2784
|
const incidentSelected = selectedNode?.startsWith("incident-") || expandedItemId?.startsWith("incident-");
|
|
2826
2785
|
const ledgerBlockSelected = selectedNode?.startsWith("ledger-block-") || expandedItemId?.startsWith("ledger-block-");
|
|
2827
|
-
if (pendingLedgerDelete) {
|
|
2828
|
-
if (_input === "y" || _input === "Y" || key.return) {
|
|
2829
|
-
void handleLedgerBlockDelete();
|
|
2830
|
-
return;
|
|
2831
|
-
}
|
|
2832
|
-
if (_input === "n" || _input === "N" || key.escape) {
|
|
2833
|
-
dispatch({ type: "SET_PENDING_LEDGER_DELETE", date: null });
|
|
2834
|
-
return;
|
|
2835
|
-
}
|
|
2836
|
-
return;
|
|
2837
|
-
}
|
|
2838
2786
|
if (incidentSelected && (_input === "d" || _input === "D")) {
|
|
2839
2787
|
void handleIncidentAction("delete");
|
|
2840
2788
|
return;
|
|
2841
2789
|
}
|
|
2842
|
-
if (ledgerBlockSelected && (_input === "d" || _input === "D")) {
|
|
2843
|
-
const blockNodeId = selectedNode?.startsWith("ledger-block-") ? selectedNode : expandedItemId?.startsWith("ledger-block-") ? expandedItemId : null;
|
|
2844
|
-
const blockIndex = blockNodeId ? parseInt(blockNodeId.replace("ledger-block-", ""), 10) : -1;
|
|
2845
|
-
const block = blockIndex >= 0 ? ledgerBlocks[blockIndex] : null;
|
|
2846
|
-
if (block) {
|
|
2847
|
-
dispatch({ type: "SET_PENDING_LEDGER_DELETE", date: block.date });
|
|
2848
|
-
}
|
|
2849
|
-
return;
|
|
2850
|
-
}
|
|
2851
2790
|
if (incidentSelected && (_input === "r" || _input === "c")) {
|
|
2852
2791
|
void handleIncidentAction("resolve");
|
|
2853
2792
|
return;
|
|
@@ -3080,23 +3019,6 @@ function MemoryTreeView() {
|
|
|
3080
3019
|
expandedLedgerBlock.createdAt
|
|
3081
3020
|
] }) })
|
|
3082
3021
|
] }),
|
|
3083
|
-
pendingLedgerDelete && /* @__PURE__ */ jsxs10(Box10, { flexDirection: "column", marginTop: 1, borderStyle: "single", borderColor: "red", paddingX: 1, paddingY: 1, children: [
|
|
3084
|
-
/* @__PURE__ */ jsx11(Text10, { bold: true, color: "red", children: "\u26A0\uFE0F DANGER: PERMANENT DELETION" }),
|
|
3085
|
-
/* @__PURE__ */ jsx11(Box10, { marginTop: 1, children: /* @__PURE__ */ jsx11(Text10, { children: "You are about to permanently delete ledger block:" }) }),
|
|
3086
|
-
/* @__PURE__ */ jsx11(Box10, { marginTop: 1, children: /* @__PURE__ */ jsx11(Text10, { bold: true, color: "cyan", children: pendingLedgerDelete }) }),
|
|
3087
|
-
/* @__PURE__ */ jsx11(Box10, { marginTop: 1, children: /* @__PURE__ */ jsx11(Text10, { color: "red", children: "This operation cannot be undone and will permanently" }) }),
|
|
3088
|
-
/* @__PURE__ */ jsx11(Box10, { marginTop: 0, children: /* @__PURE__ */ jsx11(Text10, { color: "red", children: "remove all issues and data from this block." }) }),
|
|
3089
|
-
/* @__PURE__ */ jsx11(Box10, { marginTop: 1, children: /* @__PURE__ */ jsxs10(Text10, { children: [
|
|
3090
|
-
/* @__PURE__ */ jsx11(Text10, { bold: true, color: "green", children: "y" }),
|
|
3091
|
-
" or ",
|
|
3092
|
-
/* @__PURE__ */ jsx11(Text10, { bold: true, color: "green", children: "Enter" }),
|
|
3093
|
-
" to confirm \xB7 ",
|
|
3094
|
-
/* @__PURE__ */ jsx11(Text10, { bold: true, children: "n" }),
|
|
3095
|
-
" or ",
|
|
3096
|
-
/* @__PURE__ */ jsx11(Text10, { bold: true, children: "Esc" }),
|
|
3097
|
-
" to cancel"
|
|
3098
|
-
] }) })
|
|
3099
|
-
] }),
|
|
3100
3022
|
/* @__PURE__ */ jsxs10(Box10, { flexDirection: "column", marginTop: 1, children: [
|
|
3101
3023
|
renderHeader("decisions", "Product Governance", governance.length, "-- use trie tell or chat"),
|
|
3102
3024
|
expandedNodes.has("decisions") && governance.slice(0, 10).map((g) => {
|
|
@@ -5948,23 +5870,23 @@ var TrieFixTool = class {
|
|
|
5948
5870
|
const pending = getPendingFixes();
|
|
5949
5871
|
if (pending.length === 0) {
|
|
5950
5872
|
return {
|
|
5951
|
-
content: [{ type: "text", text: "No pending issues. Run
|
|
5873
|
+
content: [{ type: "text", text: "No pending issues. Run trie watch to detect new issues, or check memory with trie_memory action:recent." }]
|
|
5952
5874
|
};
|
|
5953
5875
|
}
|
|
5954
5876
|
const issues = pending.map((p) => ({
|
|
5955
5877
|
id: p.id,
|
|
5956
5878
|
severity: p.severity ?? "moderate",
|
|
5957
|
-
effort: p.effort,
|
|
5958
5879
|
issue: p.issue,
|
|
5959
5880
|
fix: p.suggestedFix,
|
|
5960
5881
|
file: p.file,
|
|
5961
5882
|
line: p.line,
|
|
5962
5883
|
confidence: p.confidence,
|
|
5963
5884
|
autoFixable: p.autoFixable ?? false,
|
|
5964
|
-
agent: "
|
|
5965
|
-
|
|
5966
|
-
|
|
5967
|
-
|
|
5885
|
+
agent: "trie_fix",
|
|
5886
|
+
...p.effort && { effort: p.effort },
|
|
5887
|
+
...p.cwe && { cwe: p.cwe },
|
|
5888
|
+
...p.owasp && { owasp: p.owasp },
|
|
5889
|
+
...p.category && { category: p.category }
|
|
5968
5890
|
}));
|
|
5969
5891
|
const filtered = issueIds && issueIds.length > 0 ? issues.filter((i) => issueIds.includes(i.id)) : issues;
|
|
5970
5892
|
const workDir = getWorkingDirectory(void 0, true);
|
|
@@ -6263,7 +6185,7 @@ trie_fix
|
|
|
6263
6185
|
|
|
6264
6186
|
## Workflow
|
|
6265
6187
|
|
|
6266
|
-
1. Run \`
|
|
6188
|
+
1. Run \`trie watch\` to detect issues
|
|
6267
6189
|
2. Review the issues found
|
|
6268
6190
|
3. Run \`trie_fix\` to apply fixes
|
|
6269
6191
|
|
|
@@ -6284,7 +6206,7 @@ The AI will analyze each issue, generate the fix, and you can review before appl
|
|
|
6284
6206
|
line: p.line,
|
|
6285
6207
|
confidence: p.confidence,
|
|
6286
6208
|
autoFixable: false,
|
|
6287
|
-
agent: "
|
|
6209
|
+
agent: "trie_fix"
|
|
6288
6210
|
}));
|
|
6289
6211
|
const workDir = getWorkingDirectory(void 0, true);
|
|
6290
6212
|
const config = await loadAutonomyConfig(workDir);
|
|
@@ -6316,14 +6238,14 @@ function getPendingFixes() {
|
|
|
6316
6238
|
}
|
|
6317
6239
|
async function loadPendingFixesFromMemory() {
|
|
6318
6240
|
try {
|
|
6319
|
-
const { getRecentIssues } = await import("./issue-store-
|
|
6241
|
+
const { getRecentIssues } = await import("./issue-store-C6XYENE5.js");
|
|
6320
6242
|
pendingFixes.clear();
|
|
6321
6243
|
const recentIssues = await getRecentIssues({ limit: 50, includeResolved: false });
|
|
6322
6244
|
for (const storedIssue of recentIssues) {
|
|
6323
6245
|
const fix = {
|
|
6324
6246
|
id: storedIssue.id,
|
|
6325
6247
|
file: storedIssue.file,
|
|
6326
|
-
line: storedIssue.line
|
|
6248
|
+
line: storedIssue.line ?? 0,
|
|
6327
6249
|
issue: storedIssue.issue,
|
|
6328
6250
|
suggestedFix: storedIssue.fix,
|
|
6329
6251
|
confidence: 0.8,
|
|
@@ -6331,8 +6253,7 @@ async function loadPendingFixesFromMemory() {
|
|
|
6331
6253
|
status: "pending",
|
|
6332
6254
|
severity: storedIssue.severity,
|
|
6333
6255
|
autoFixable: true,
|
|
6334
|
-
|
|
6335
|
-
category: storedIssue.category
|
|
6256
|
+
...storedIssue.category && { category: storedIssue.category }
|
|
6336
6257
|
};
|
|
6337
6258
|
pendingFixes.set(fix.id, fix);
|
|
6338
6259
|
}
|
|
@@ -6406,11 +6327,12 @@ var TrieCloudFixTool = class {
|
|
|
6406
6327
|
allIssues = await this.resolveIssues(args?.issueIds);
|
|
6407
6328
|
}
|
|
6408
6329
|
if (allIssues.length === 0) {
|
|
6409
|
-
return this.text("No issues to dispatch. Run
|
|
6330
|
+
return this.text("No issues to dispatch. Run trie watch to detect new issues, or check memory with trie_memory action:recent. For ad-hoc fixes, pass file, issue, and fix.");
|
|
6410
6331
|
}
|
|
6411
6332
|
const isAdHocMode = args?.file && args?.issue && args?.fix;
|
|
6412
6333
|
if (isAdHocMode) {
|
|
6413
|
-
|
|
6334
|
+
const first = allIssues[0];
|
|
6335
|
+
console.log(`Ad-hoc mode: dispatching single issue (${first?.file ?? "unknown"})`);
|
|
6414
6336
|
} else {
|
|
6415
6337
|
console.log(`Memory mode: loaded ${allIssues.length} issue(s) from memory/scan`);
|
|
6416
6338
|
}
|
|
@@ -6420,7 +6342,8 @@ var TrieCloudFixTool = class {
|
|
|
6420
6342
|
if (isAdHocMode) {
|
|
6421
6343
|
lines.push("FIX ROUTING PLAN (ad-hoc single incident mode)");
|
|
6422
6344
|
lines.push("\u2500".repeat(68));
|
|
6423
|
-
|
|
6345
|
+
const firstIssue = allIssues[0];
|
|
6346
|
+
lines.push(` ${shortPath2(firstIssue?.file ?? "")}:${firstIssue?.line ?? "?"} \u2192 cloud-agent (single incident)`);
|
|
6424
6347
|
lines.push("");
|
|
6425
6348
|
} else if (forceCloud) {
|
|
6426
6349
|
lines.push("FIX ROUTING PLAN (forceCloud: bypassing triage)");
|
|
@@ -6618,7 +6541,7 @@ var TrieCloudFixTool = class {
|
|
|
6618
6541
|
if (pending.length === 0) {
|
|
6619
6542
|
try {
|
|
6620
6543
|
console.log("Loading issues from memory...");
|
|
6621
|
-
const { getRecentIssues } = await import("./issue-store-
|
|
6544
|
+
const { getRecentIssues } = await import("./issue-store-C6XYENE5.js");
|
|
6622
6545
|
const recentIssues = await getRecentIssues({ limit: 50, includeResolved: false });
|
|
6623
6546
|
console.log(`Found ${recentIssues.length} recent issues in memory`);
|
|
6624
6547
|
const memoryIssues = recentIssues.map((storedIssue) => ({
|
|
@@ -6627,13 +6550,13 @@ var TrieCloudFixTool = class {
|
|
|
6627
6550
|
issue: storedIssue.issue,
|
|
6628
6551
|
fix: storedIssue.fix,
|
|
6629
6552
|
file: storedIssue.file,
|
|
6630
|
-
line: storedIssue.line,
|
|
6553
|
+
...storedIssue.line !== void 0 && { line: storedIssue.line },
|
|
6631
6554
|
confidence: 0.8,
|
|
6632
6555
|
// Default confidence for memory issues
|
|
6633
6556
|
autoFixable: true,
|
|
6634
6557
|
// Memory issues are generally auto-fixable
|
|
6635
6558
|
agent: storedIssue.agent,
|
|
6636
|
-
category: storedIssue.category
|
|
6559
|
+
...storedIssue.category && { category: storedIssue.category }
|
|
6637
6560
|
}));
|
|
6638
6561
|
console.log(`Converted ${memoryIssues.length} memory issues for cloud dispatch`);
|
|
6639
6562
|
if (issueIds && issueIds.length > 0) {
|
|
@@ -6648,17 +6571,17 @@ var TrieCloudFixTool = class {
|
|
|
6648
6571
|
const issues = pending.map((p) => ({
|
|
6649
6572
|
id: p.id,
|
|
6650
6573
|
severity: p.severity ?? "moderate",
|
|
6651
|
-
effort: p.effort,
|
|
6652
6574
|
issue: p.issue,
|
|
6653
6575
|
fix: p.suggestedFix,
|
|
6654
6576
|
file: p.file,
|
|
6655
6577
|
line: p.line,
|
|
6656
6578
|
confidence: p.confidence,
|
|
6657
6579
|
autoFixable: p.autoFixable ?? false,
|
|
6658
|
-
agent: "
|
|
6659
|
-
|
|
6660
|
-
|
|
6661
|
-
|
|
6580
|
+
agent: "trie_fix",
|
|
6581
|
+
...p.effort && { effort: p.effort },
|
|
6582
|
+
...p.cwe && { cwe: p.cwe },
|
|
6583
|
+
...p.owasp && { owasp: p.owasp },
|
|
6584
|
+
...p.category && { category: p.category }
|
|
6662
6585
|
}));
|
|
6663
6586
|
if (issueIds && issueIds.length > 0) {
|
|
6664
6587
|
return issues.filter((i) => issueIds.includes(i.id));
|
|
@@ -7058,7 +6981,7 @@ var TrieQueryContextTool = class {
|
|
|
7058
6981
|
}
|
|
7059
6982
|
if (includeIncidents) {
|
|
7060
6983
|
try {
|
|
7061
|
-
const { ContextGraph: ContextGraph2 } = await import("./graph-
|
|
6984
|
+
const { ContextGraph: ContextGraph2 } = await import("./graph-26JPZ3DF.js");
|
|
7062
6985
|
const graph = new ContextGraph2(workDir);
|
|
7063
6986
|
const allNodes = await graph.listNodes();
|
|
7064
6987
|
const incidentNodes = allNodes.filter((n) => n.type === "incident");
|
|
@@ -8323,7 +8246,7 @@ ${truncated}`;
|
|
|
8323
8246
|
const goalId = input.goalId ? String(input.goalId).trim() : void 0;
|
|
8324
8247
|
try {
|
|
8325
8248
|
onProgress?.("Loading goals...");
|
|
8326
|
-
const { getActiveGoals } = await import("./goal-validator-
|
|
8249
|
+
const { getActiveGoals } = await import("./goal-validator-EM5XVWVC.js");
|
|
8327
8250
|
const agentState = getProjectState(directory);
|
|
8328
8251
|
await agentState.load();
|
|
8329
8252
|
const allGoals = await getActiveGoals(directory);
|
|
@@ -8332,7 +8255,7 @@ ${truncated}`;
|
|
|
8332
8255
|
return goalId ? `No active goal found with ID: ${goalId}` : "No active goals to check. Add goals in the Goals view first.";
|
|
8333
8256
|
}
|
|
8334
8257
|
onProgress?.("Scanning codebase for violations...");
|
|
8335
|
-
const { analyzeFilesRapidly } = await import("./fast-analyzer-
|
|
8258
|
+
const { analyzeFilesRapidly } = await import("./fast-analyzer-FMU3X4AZ.js");
|
|
8336
8259
|
const analysisOptions = {
|
|
8337
8260
|
maxFiles: 50,
|
|
8338
8261
|
enableSmartBatching: true
|
|
@@ -8346,7 +8269,7 @@ ${truncated}`;
|
|
|
8346
8269
|
const cacheInfo2 = analysisResult.cacheHitRatio > 0 ? ` (${Math.round(analysisResult.cacheHitRatio * 100)}% cache hit, ${analysisResult.timeMs}ms)` : ` (${analysisResult.timeMs}ms)`;
|
|
8347
8270
|
return `\u2713 Scan complete! No violations found for ${goalsToCheck.length} goal(s).${cacheInfo2}`;
|
|
8348
8271
|
}
|
|
8349
|
-
const { storeIssues } = await import("./issue-store-
|
|
8272
|
+
const { storeIssues } = await import("./issue-store-C6XYENE5.js");
|
|
8350
8273
|
const { basename } = await import("path");
|
|
8351
8274
|
const issuesToStore = violations.map((v, i) => ({
|
|
8352
8275
|
id: `goal-violation-${Date.now()}-${i}`,
|
|
@@ -8425,7 +8348,7 @@ ${truncated}`;
|
|
|
8425
8348
|
}
|
|
8426
8349
|
try {
|
|
8427
8350
|
onProgress?.("Gathering evidence for hypothesis...");
|
|
8428
|
-
const { gatherEvidenceForHypothesis } = await import("./hypothesis-
|
|
8351
|
+
const { gatherEvidenceForHypothesis } = await import("./hypothesis-4UPE7KXU.js");
|
|
8429
8352
|
const evidence = await gatherEvidenceForHypothesis(hypothesisId, directory);
|
|
8430
8353
|
if (evidence.length === 0) {
|
|
8431
8354
|
return `No evidence found for this hypothesis yet. The codebase may not have enough data to validate it \u2014 try running trie_scan_for_goal_violations first to populate issues, or add more context.`;
|
|
@@ -8689,7 +8612,7 @@ function ChatView() {
|
|
|
8689
8612
|
const saveChat = async () => {
|
|
8690
8613
|
try {
|
|
8691
8614
|
const workDir = getWorkingDirectory(void 0, true);
|
|
8692
|
-
const { getChatStore: getChatStore2 } = await import("./chat-store-
|
|
8615
|
+
const { getChatStore: getChatStore2 } = await import("./chat-store-HMTDL7I2.js");
|
|
8693
8616
|
const store = getChatStore2(workDir);
|
|
8694
8617
|
const sessionId = await store.saveSession(
|
|
8695
8618
|
messages,
|
|
@@ -8889,10 +8812,18 @@ ${contextBlock}`;
|
|
|
8889
8812
|
const goals = agentState.getAllGoals();
|
|
8890
8813
|
dispatch({
|
|
8891
8814
|
type: "SET_GOALS",
|
|
8892
|
-
goals: goals.map((g) => {
|
|
8893
|
-
|
|
8894
|
-
|
|
8895
|
-
|
|
8815
|
+
goals: goals.map((g) => ({
|
|
8816
|
+
id: g.id,
|
|
8817
|
+
description: g.description,
|
|
8818
|
+
type: g.type,
|
|
8819
|
+
target: g.target,
|
|
8820
|
+
currentValue: g.currentValue,
|
|
8821
|
+
status: g.status,
|
|
8822
|
+
autoGenerated: g.autoGenerated,
|
|
8823
|
+
updatedAt: g.updatedAt,
|
|
8824
|
+
...g.startValue !== void 0 && { startValue: g.startValue },
|
|
8825
|
+
...g.category != null && { category: g.category }
|
|
8826
|
+
}))
|
|
8896
8827
|
});
|
|
8897
8828
|
}
|
|
8898
8829
|
if (toolNames.has("trie_add_hypothesis") || toolNames.has("trie_test_hypothesis")) {
|
|
@@ -9316,7 +9247,7 @@ import { jsx as jsx15, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
|
9316
9247
|
var MAIN_VIEWS = ["overview", "memory", "goals", "hypotheses", "agent", "chat"];
|
|
9317
9248
|
async function applyGoalFix(fix, dispatch) {
|
|
9318
9249
|
try {
|
|
9319
|
-
const { runAIAnalysis, isAIAvailable: isAIAvailable2 } = await import("./client-
|
|
9250
|
+
const { runAIAnalysis, isAIAvailable: isAIAvailable2 } = await import("./client-5L64D5SQ.js");
|
|
9320
9251
|
if (!isAIAvailable2()) {
|
|
9321
9252
|
dispatch({ type: "DISMISS_FIX", id: fix.id });
|
|
9322
9253
|
getOutputManager().nudge("AI not available for fix", "warning");
|
|
@@ -9351,7 +9282,7 @@ ${content}
|
|
|
9351
9282
|
fixedContent = fixedContent.replace(/^```\w*\n?/, "").replace(/\n?```$/, "");
|
|
9352
9283
|
}
|
|
9353
9284
|
await writeFile2(fullPath, fixedContent, "utf-8");
|
|
9354
|
-
const { recordGoalViolationFixed, getActiveGoals } = await import("./goal-validator-
|
|
9285
|
+
const { recordGoalViolationFixed, getActiveGoals } = await import("./goal-validator-EM5XVWVC.js");
|
|
9355
9286
|
const goals = await getActiveGoals(projectPath);
|
|
9356
9287
|
const matchedGoal = goals.find((g) => g.description === fix.goalDescription);
|
|
9357
9288
|
if (matchedGoal) {
|
|
@@ -9389,7 +9320,7 @@ function DashboardApp({ onReady }) {
|
|
|
9389
9320
|
const workDir = getWorkingDirectory(void 0, true);
|
|
9390
9321
|
await mkdir2(getTrieDirectory(workDir), { recursive: true });
|
|
9391
9322
|
await writeFile2(configPath, JSON.stringify(stateRef.current.agentConfig, null, 2), "utf-8");
|
|
9392
|
-
const { saveAutonomyConfig: saveAutonomyConfig2, loadAutonomyConfig: loadAutonomyConfig2 } = await import("./autonomy-config-
|
|
9323
|
+
const { saveAutonomyConfig: saveAutonomyConfig2, loadAutonomyConfig: loadAutonomyConfig2 } = await import("./autonomy-config-3APNC6QF.js");
|
|
9393
9324
|
const autonomy = await loadAutonomyConfig2(workDir);
|
|
9394
9325
|
autonomy.aiWatcher = stateRef.current.agentConfig.aiWatcher;
|
|
9395
9326
|
await saveAutonomyConfig2(workDir, autonomy);
|
|
@@ -9430,10 +9361,20 @@ function DashboardApp({ onReady }) {
|
|
|
9430
9361
|
const goals = agentState.getAllGoals();
|
|
9431
9362
|
dispatchRef.current({
|
|
9432
9363
|
type: "SET_GOALS",
|
|
9433
|
-
goals: goals.map((g) => {
|
|
9434
|
-
|
|
9435
|
-
|
|
9436
|
-
|
|
9364
|
+
goals: goals.map((g) => ({
|
|
9365
|
+
id: g.id,
|
|
9366
|
+
description: g.description,
|
|
9367
|
+
type: g.type,
|
|
9368
|
+
target: g.target,
|
|
9369
|
+
currentValue: g.currentValue,
|
|
9370
|
+
status: g.status,
|
|
9371
|
+
autoGenerated: g.autoGenerated,
|
|
9372
|
+
updatedAt: g.updatedAt,
|
|
9373
|
+
...g.startValue !== void 0 && { startValue: g.startValue },
|
|
9374
|
+
...g.achievedAt != null && { achievedAt: g.achievedAt },
|
|
9375
|
+
...g.achievedBy != null && { achievedBy: g.achievedBy },
|
|
9376
|
+
...g.category != null && { category: g.category }
|
|
9377
|
+
}))
|
|
9437
9378
|
});
|
|
9438
9379
|
} catch {
|
|
9439
9380
|
}
|
|
@@ -9457,7 +9398,7 @@ function DashboardApp({ onReady }) {
|
|
|
9457
9398
|
const loadPersistedNudges = useCallback7(async () => {
|
|
9458
9399
|
try {
|
|
9459
9400
|
const workDir = getWorkingDirectory(void 0, true);
|
|
9460
|
-
const { getStorage: getStorage2 } = await import("./tiered-storage-
|
|
9401
|
+
const { getStorage: getStorage2 } = await import("./tiered-storage-P6Z3NV2Q.js");
|
|
9461
9402
|
const storage = getStorage2(workDir);
|
|
9462
9403
|
await storage.initialize();
|
|
9463
9404
|
const nudges = await storage.queryNudges({ resolved: false, limit: 50 });
|
|
@@ -9562,7 +9503,6 @@ function DashboardApp({ onReady }) {
|
|
|
9562
9503
|
}, [state.pendingFixes]);
|
|
9563
9504
|
useInput10((input, key) => {
|
|
9564
9505
|
if (showConfig) return;
|
|
9565
|
-
if (state.memoryTree.pendingLedgerDelete) return;
|
|
9566
9506
|
const inAddMode = state.view === "goals" && state.goalsPanel.inputMode === "add" || state.view === "hypotheses" && state.hypothesesPanel.inputMode === "add";
|
|
9567
9507
|
const inChat = state.view === "chat";
|
|
9568
9508
|
const scanningGoal = !!state.goalsPanel.scanningGoalId;
|
|
@@ -9716,7 +9656,6 @@ var InteractiveDashboard = class {
|
|
|
9716
9656
|
};
|
|
9717
9657
|
|
|
9718
9658
|
export {
|
|
9719
|
-
TrieScanTool,
|
|
9720
9659
|
getPrompt,
|
|
9721
9660
|
getSystemPrompt,
|
|
9722
9661
|
TrieFixTool,
|
|
@@ -9738,4 +9677,4 @@ export {
|
|
|
9738
9677
|
GitHubBranchesTool,
|
|
9739
9678
|
InteractiveDashboard
|
|
9740
9679
|
};
|
|
9741
|
-
//# sourceMappingURL=chunk-
|
|
9680
|
+
//# sourceMappingURL=chunk-SU3WCAC4.js.map
|