@triedotdev/mcp 1.0.151 → 1.0.154
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/README.md +34 -6
- package/dist/{autonomy-config-3APNC6QF.js → autonomy-config-RKLZW4XL.js} +4 -4
- package/dist/{chat-store-HMTDL7I2.js → chat-store-O3IJ5PMN.js} +4 -4
- package/dist/{chunk-IXO4G4D3.js → chunk-2LAJKFWU.js} +2 -2
- package/dist/{chunk-F7BMFOZ6.js → chunk-3CYMLM35.js} +2 -2
- package/dist/{chunk-ED7PLRQA.js → chunk-4ZAFQEP6.js} +4 -4
- package/dist/{chunk-4TQQP7JD.js → chunk-7F2R2ITA.js} +2 -2
- package/dist/{chunk-LNUMECBJ.js → chunk-ALSCZ7WR.js} +2 -2
- package/dist/{chunk-V3O7C2LY.js → chunk-CBAMZERA.js} +2 -2
- package/dist/{chunk-G7Q23IGF.js → chunk-EMJ7RVWB.js} +9 -9
- package/dist/{chunk-TU7D5DEW.js → chunk-FTOF3FHT.js} +3 -3
- package/dist/{chunk-3KZBC3RJ.js → chunk-FXZAABXO.js} +2 -2
- package/dist/{chunk-TWPX6PHF.js → chunk-HD5H7YSW.js} +2 -2
- package/dist/{chunk-APMV77PU.js → chunk-JKEEQAG2.js} +1 -1
- package/dist/chunk-JKEEQAG2.js.map +1 -0
- package/dist/{chunk-TWQPOVRA.js → chunk-JYWGYUKX.js} +2 -2
- package/dist/{chunk-TIMIKBY2.js → chunk-KLMJKM63.js} +2 -2
- package/dist/{chunk-TCNCNWGV.js → chunk-KYKADM7P.js} +2 -2
- package/dist/{chunk-GLY76TSI.js → chunk-L4FODDDB.js} +2 -2
- package/dist/{chunk-JIS2OCZR.js → chunk-LFNH3CSN.js} +4 -4
- package/dist/{chunk-4UDBGYI3.js → chunk-LJISDV3A.js} +13 -13
- package/dist/{chunk-74R4XSFB.js → chunk-NVZZUUEU.js} +5 -5
- package/dist/{chunk-REHKDCI6.js → chunk-OVSYTWUU.js} +2 -2
- package/dist/{chunk-IFBEAOHH.js → chunk-OWSGJUUR.js} +6 -6
- package/dist/{chunk-SU3WCAC4.js → chunk-QAM5X5HM.js} +1466 -49
- package/dist/chunk-QAM5X5HM.js.map +1 -0
- package/dist/{chunk-ABY2R7OK.js → chunk-T7UAH7GE.js} +2 -2
- package/dist/{chunk-OJXFQRUE.js → chunk-UL337UDQ.js} +2 -2
- package/dist/{chunk-F4NJ4CBP.js → chunk-WO7CC5FH.js} +2 -2
- package/dist/{chunk-QQG42HCI.js → chunk-XD2HKZVB.js} +2 -2
- package/dist/{chunk-WOTLY5NA.js → chunk-YEQXKKZQ.js} +2 -2
- package/dist/{chunk-7HYOJ4Q7.js → chunk-Z2E7X4WI.js} +7 -7
- package/dist/cli/create-agent.js +2 -2
- package/dist/cli/main.js +19 -19
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/yolo-daemon.js +64 -27
- package/dist/cli/yolo-daemon.js.map +1 -1
- package/dist/{client-5L64D5SQ.js → client-ZHOLZTRW.js} +4 -4
- package/dist/{codebase-index-OOE7OAHP.js → codebase-index-N37NDF2A.js} +4 -4
- package/dist/{fast-analyzer-FMU3X4AZ.js → fast-analyzer-U6URGNQT.js} +6 -6
- package/dist/github-ingester-AR5A4RAC.js +11 -0
- package/dist/{goal-manager-VTBFFYN4.js → goal-manager-5QDITJKE.js} +8 -8
- package/dist/{goal-validator-EM5XVWVC.js → goal-validator-FU5QWDQT.js} +7 -7
- package/dist/graph-JO7GG65P.js +10 -0
- package/dist/{hypothesis-4UPE7KXU.js → hypothesis-JURDWVDC.js} +8 -8
- package/dist/incident-index-7CAXUNTL.js +11 -0
- package/dist/index.js +57 -1466
- package/dist/index.js.map +1 -1
- package/dist/{insight-store-QEEUQR5L.js → insight-store-AMEP5PPF.js} +4 -4
- package/dist/{issue-store-C6XYENE5.js → issue-store-RM3XLLKG.js} +5 -5
- package/dist/{ledger-VNA4DX3Z.js → ledger-PLE3C3X4.js} +4 -4
- package/dist/linear-ingester-NHFMKJBZ.js +11 -0
- package/dist/{output-manager-DZO5LGSG.js → output-manager-FX4V7ERT.js} +3 -3
- package/dist/{progress-PQVEM7BR.js → progress-PAYTY7BF.js} +2 -2
- package/dist/tiered-storage-3TUUR3L2.js +12 -0
- package/dist/trie-agent-QHPS4C5Z.js +27 -0
- package/dist/{vibe-code-signatures-ELEWJFGZ.js → vibe-code-signatures-J4GD4JOV.js} +3 -3
- package/dist/{vulnerability-signatures-EIJQX2TS.js → vulnerability-signatures-EIKOHFPK.js} +3 -3
- package/package.json +1 -1
- package/dist/chunk-APMV77PU.js.map +0 -1
- package/dist/chunk-SU3WCAC4.js.map +0 -1
- package/dist/github-ingester-C66ZRUYC.js +0 -11
- package/dist/graph-26JPZ3DF.js +0 -10
- package/dist/incident-index-H6APJ4S3.js +0 -11
- package/dist/linear-ingester-WIUBWF55.js +0 -11
- package/dist/tiered-storage-P6Z3NV2Q.js +0 -12
- package/dist/trie-agent-GJJJCL6P.js +0 -27
- /package/dist/{autonomy-config-3APNC6QF.js.map → autonomy-config-RKLZW4XL.js.map} +0 -0
- /package/dist/{chat-store-HMTDL7I2.js.map → chat-store-O3IJ5PMN.js.map} +0 -0
- /package/dist/{chunk-IXO4G4D3.js.map → chunk-2LAJKFWU.js.map} +0 -0
- /package/dist/{chunk-F7BMFOZ6.js.map → chunk-3CYMLM35.js.map} +0 -0
- /package/dist/{chunk-ED7PLRQA.js.map → chunk-4ZAFQEP6.js.map} +0 -0
- /package/dist/{chunk-4TQQP7JD.js.map → chunk-7F2R2ITA.js.map} +0 -0
- /package/dist/{chunk-LNUMECBJ.js.map → chunk-ALSCZ7WR.js.map} +0 -0
- /package/dist/{chunk-V3O7C2LY.js.map → chunk-CBAMZERA.js.map} +0 -0
- /package/dist/{chunk-G7Q23IGF.js.map → chunk-EMJ7RVWB.js.map} +0 -0
- /package/dist/{chunk-TU7D5DEW.js.map → chunk-FTOF3FHT.js.map} +0 -0
- /package/dist/{chunk-3KZBC3RJ.js.map → chunk-FXZAABXO.js.map} +0 -0
- /package/dist/{chunk-TWPX6PHF.js.map → chunk-HD5H7YSW.js.map} +0 -0
- /package/dist/{chunk-TWQPOVRA.js.map → chunk-JYWGYUKX.js.map} +0 -0
- /package/dist/{chunk-TIMIKBY2.js.map → chunk-KLMJKM63.js.map} +0 -0
- /package/dist/{chunk-TCNCNWGV.js.map → chunk-KYKADM7P.js.map} +0 -0
- /package/dist/{chunk-GLY76TSI.js.map → chunk-L4FODDDB.js.map} +0 -0
- /package/dist/{chunk-JIS2OCZR.js.map → chunk-LFNH3CSN.js.map} +0 -0
- /package/dist/{chunk-4UDBGYI3.js.map → chunk-LJISDV3A.js.map} +0 -0
- /package/dist/{chunk-74R4XSFB.js.map → chunk-NVZZUUEU.js.map} +0 -0
- /package/dist/{chunk-REHKDCI6.js.map → chunk-OVSYTWUU.js.map} +0 -0
- /package/dist/{chunk-IFBEAOHH.js.map → chunk-OWSGJUUR.js.map} +0 -0
- /package/dist/{chunk-ABY2R7OK.js.map → chunk-T7UAH7GE.js.map} +0 -0
- /package/dist/{chunk-OJXFQRUE.js.map → chunk-UL337UDQ.js.map} +0 -0
- /package/dist/{chunk-F4NJ4CBP.js.map → chunk-WO7CC5FH.js.map} +0 -0
- /package/dist/{chunk-QQG42HCI.js.map → chunk-XD2HKZVB.js.map} +0 -0
- /package/dist/{chunk-WOTLY5NA.js.map → chunk-YEQXKKZQ.js.map} +0 -0
- /package/dist/{chunk-7HYOJ4Q7.js.map → chunk-Z2E7X4WI.js.map} +0 -0
- /package/dist/{client-5L64D5SQ.js.map → client-ZHOLZTRW.js.map} +0 -0
- /package/dist/{codebase-index-OOE7OAHP.js.map → codebase-index-N37NDF2A.js.map} +0 -0
- /package/dist/{fast-analyzer-FMU3X4AZ.js.map → fast-analyzer-U6URGNQT.js.map} +0 -0
- /package/dist/{github-ingester-C66ZRUYC.js.map → github-ingester-AR5A4RAC.js.map} +0 -0
- /package/dist/{goal-manager-VTBFFYN4.js.map → goal-manager-5QDITJKE.js.map} +0 -0
- /package/dist/{goal-validator-EM5XVWVC.js.map → goal-validator-FU5QWDQT.js.map} +0 -0
- /package/dist/{graph-26JPZ3DF.js.map → graph-JO7GG65P.js.map} +0 -0
- /package/dist/{hypothesis-4UPE7KXU.js.map → hypothesis-JURDWVDC.js.map} +0 -0
- /package/dist/{incident-index-H6APJ4S3.js.map → incident-index-7CAXUNTL.js.map} +0 -0
- /package/dist/{insight-store-QEEUQR5L.js.map → insight-store-AMEP5PPF.js.map} +0 -0
- /package/dist/{issue-store-C6XYENE5.js.map → issue-store-RM3XLLKG.js.map} +0 -0
- /package/dist/{ledger-VNA4DX3Z.js.map → ledger-PLE3C3X4.js.map} +0 -0
- /package/dist/{linear-ingester-WIUBWF55.js.map → linear-ingester-NHFMKJBZ.js.map} +0 -0
- /package/dist/{output-manager-DZO5LGSG.js.map → output-manager-FX4V7ERT.js.map} +0 -0
- /package/dist/{progress-PQVEM7BR.js.map → progress-PAYTY7BF.js.map} +0 -0
- /package/dist/{tiered-storage-P6Z3NV2Q.js.map → tiered-storage-3TUUR3L2.js.map} +0 -0
- /package/dist/{trie-agent-GJJJCL6P.js.map → trie-agent-QHPS4C5Z.js.map} +0 -0
- /package/dist/{vibe-code-signatures-ELEWJFGZ.js.map → vibe-code-signatures-J4GD4JOV.js.map} +0 -0
- /package/dist/{vulnerability-signatures-EIJQX2TS.js.map → vulnerability-signatures-EIKOHFPK.js.map} +0 -0
package/README.md
CHANGED
|
@@ -315,27 +315,55 @@ Edge cases, tradeoffs, and system coherence—Trie handles governance by remembe
|
|
|
315
315
|
|
|
316
316
|
### Goals & Hypotheses
|
|
317
317
|
|
|
318
|
-
Set improvement goals and test theories:
|
|
318
|
+
Set improvement goals and test theories. **Goals are actively enforced in real-time** as you code:
|
|
319
319
|
|
|
320
320
|
```bash
|
|
321
|
-
# Set a goal
|
|
322
|
-
trie goal add "
|
|
321
|
+
# Set a goal - any custom rule you want enforced
|
|
322
|
+
trie goal add "No console.log statements in production"
|
|
323
|
+
trie goal add "All API endpoints must have rate limiting"
|
|
324
|
+
trie goal add "We never truncate text in UI components"
|
|
323
325
|
|
|
324
326
|
# Add a hypothesis
|
|
325
327
|
trie hypothesis add "Code reviews reduce bug rate"
|
|
326
328
|
|
|
327
|
-
#
|
|
329
|
+
# View progress
|
|
330
|
+
trie goal list
|
|
328
331
|
```
|
|
329
332
|
|
|
333
|
+
**How Goal Checking Works:**
|
|
334
|
+
|
|
335
|
+
When you run `trie watch`, the system actively monitors your code for goal violations using AI-powered analysis:
|
|
336
|
+
|
|
337
|
+
1. **Custom & Flexible** - Goals can be any quality rule you define (no emojis, no TODOs, security patterns, UI standards, etc.)
|
|
338
|
+
2. **RAG-Based** - Uses semantic understanding, not just keyword matching
|
|
339
|
+
3. **Real-Time** - Checks every file change against ALL active goals
|
|
340
|
+
4. **Smart Caching** - Avoids re-scanning unchanged files
|
|
341
|
+
5. **Cost-Aware** - Token budgets and cooldowns prevent runaway AI costs
|
|
342
|
+
6. **High Confidence** - Only reports violations with strong confidence scores
|
|
343
|
+
|
|
344
|
+
**Example Goal Violations Detected:**
|
|
345
|
+
- "No emojis in code" → Finds any Unicode emoji anywhere in files
|
|
346
|
+
- "All functions must have JSDoc" → Checks for missing documentation
|
|
347
|
+
- "No inline styles in React" → Detects style attributes in JSX
|
|
348
|
+
- "Every TODO must have a ticket reference" → Validates TODO format
|
|
349
|
+
|
|
350
|
+
Goals are tracked over time with metrics (violations caught, fixed, progress percentage).
|
|
351
|
+
|
|
330
352
|
### Watch Mode
|
|
331
353
|
|
|
332
|
-
Real-time monitoring with
|
|
354
|
+
Real-time monitoring with **proactive goal violation detection**:
|
|
333
355
|
|
|
334
356
|
```bash
|
|
335
357
|
trie watch
|
|
336
358
|
```
|
|
337
359
|
|
|
338
|
-
|
|
360
|
+
**Features:**
|
|
361
|
+
- **Interactive dashboard** with goals, memory, analysis activity panels
|
|
362
|
+
- **AI-powered goal checking** - automatically detects violations of your custom rules
|
|
363
|
+
- **Token-aware** - manages AI costs with budgets and cooldowns
|
|
364
|
+
- **Smart prioritization** - focuses on high-risk files first
|
|
365
|
+
- **Caching** - avoids duplicate scans of unchanged files
|
|
366
|
+
- **Real-time nudges** - immediate feedback when violations are detected
|
|
339
367
|
|
|
340
368
|
Running in Background: To keep trie watch running in the background, use screen or tmux:
|
|
341
369
|
|
|
@@ -10,9 +10,9 @@ import {
|
|
|
10
10
|
shouldAutoFix,
|
|
11
11
|
shouldBlockPush,
|
|
12
12
|
trackIssueOccurrence
|
|
13
|
-
} from "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
13
|
+
} from "./chunk-XD2HKZVB.js";
|
|
14
|
+
import "./chunk-7F2R2ITA.js";
|
|
15
|
+
import "./chunk-JKEEQAG2.js";
|
|
16
16
|
import "./chunk-DGUM43GV.js";
|
|
17
17
|
export {
|
|
18
18
|
clearConfigCache,
|
|
@@ -27,4 +27,4 @@ export {
|
|
|
27
27
|
shouldBlockPush,
|
|
28
28
|
trackIssueOccurrence
|
|
29
29
|
};
|
|
30
|
-
//# sourceMappingURL=autonomy-config-
|
|
30
|
+
//# sourceMappingURL=autonomy-config-RKLZW4XL.js.map
|
|
@@ -2,14 +2,14 @@ import {
|
|
|
2
2
|
ChatStore,
|
|
3
3
|
clearChatStores,
|
|
4
4
|
getChatStore
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-3CYMLM35.js";
|
|
6
6
|
import "./chunk-43X6JBEM.js";
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-7F2R2ITA.js";
|
|
8
|
+
import "./chunk-JKEEQAG2.js";
|
|
9
9
|
import "./chunk-DGUM43GV.js";
|
|
10
10
|
export {
|
|
11
11
|
ChatStore,
|
|
12
12
|
clearChatStores,
|
|
13
13
|
getChatStore
|
|
14
14
|
};
|
|
15
|
-
//# sourceMappingURL=chat-store-
|
|
15
|
+
//# sourceMappingURL=chat-store-O3IJ5PMN.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-6NLHFIYA.js";
|
|
4
4
|
import {
|
|
5
5
|
isInteractiveMode
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-JKEEQAG2.js";
|
|
7
7
|
|
|
8
8
|
// src/trie/vibe-code-signatures.ts
|
|
9
9
|
var VIBE_CODE_PATTERNS = [
|
|
@@ -984,4 +984,4 @@ export {
|
|
|
984
984
|
scanForVibeCodeIssues,
|
|
985
985
|
getVibeCodeStats
|
|
986
986
|
};
|
|
987
|
-
//# sourceMappingURL=chunk-
|
|
987
|
+
//# sourceMappingURL=chunk-2LAJKFWU.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-43X6JBEM.js";
|
|
4
4
|
import {
|
|
5
5
|
getTrieDirectory
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-7F2R2ITA.js";
|
|
7
7
|
|
|
8
8
|
// src/cli/dashboard/chat-store.ts
|
|
9
9
|
import { mkdir, readFile, unlink } from "fs/promises";
|
|
@@ -345,4 +345,4 @@ export {
|
|
|
345
345
|
getChatStore,
|
|
346
346
|
clearChatStores
|
|
347
347
|
};
|
|
348
|
-
//# sourceMappingURL=chunk-
|
|
348
|
+
//# sourceMappingURL=chunk-3CYMLM35.js.map
|
|
@@ -6,14 +6,14 @@ import {
|
|
|
6
6
|
} from "./chunk-EFWVF6TI.js";
|
|
7
7
|
import {
|
|
8
8
|
appendIssuesToLedger
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-HD5H7YSW.js";
|
|
10
10
|
import {
|
|
11
11
|
atomicWriteJSON
|
|
12
12
|
} from "./chunk-43X6JBEM.js";
|
|
13
13
|
import {
|
|
14
14
|
getTrieDirectory,
|
|
15
15
|
getWorkingDirectory
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-7F2R2ITA.js";
|
|
17
17
|
|
|
18
18
|
// src/memory/issue-store.ts
|
|
19
19
|
import { mkdir as mkdir2, readFile as readFile2, readdir } from "fs/promises";
|
|
@@ -674,7 +674,7 @@ async function getDailyLogs(workDir) {
|
|
|
674
674
|
async function getIssueLedgerEntry(issue, workDir) {
|
|
675
675
|
if (!issue.ledgerBlockHash) return null;
|
|
676
676
|
const projectDir = workDir || getWorkingDirectory(void 0, true);
|
|
677
|
-
const { getLedgerBlocks } = await import("./ledger-
|
|
677
|
+
const { getLedgerBlocks } = await import("./ledger-PLE3C3X4.js");
|
|
678
678
|
const blocks = await getLedgerBlocks(projectDir);
|
|
679
679
|
const block = blocks.find((b) => b.blockHash === issue.ledgerBlockHash);
|
|
680
680
|
if (!block) return null;
|
|
@@ -779,4 +779,4 @@ export {
|
|
|
779
779
|
getDailyLogs,
|
|
780
780
|
getIssueLedgerEntry
|
|
781
781
|
};
|
|
782
|
-
//# sourceMappingURL=chunk-
|
|
782
|
+
//# sourceMappingURL=chunk-4ZAFQEP6.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isInteractiveMode
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-JKEEQAG2.js";
|
|
4
4
|
|
|
5
5
|
// src/utils/workspace.ts
|
|
6
6
|
import { execSync } from "child_process";
|
|
@@ -186,4 +186,4 @@ export {
|
|
|
186
186
|
getTrieDirectory,
|
|
187
187
|
getWorkingDirectory
|
|
188
188
|
};
|
|
189
|
-
//# sourceMappingURL=chunk-
|
|
189
|
+
//# sourceMappingURL=chunk-7F2R2ITA.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getTrieDirectory
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7F2R2ITA.js";
|
|
4
4
|
|
|
5
5
|
// src/storage/tiered-storage.ts
|
|
6
6
|
import { writeFile, mkdir } from "fs/promises";
|
|
@@ -588,4 +588,4 @@ export {
|
|
|
588
588
|
TieredStorage,
|
|
589
589
|
getStorage
|
|
590
590
|
};
|
|
591
|
-
//# sourceMappingURL=chunk-
|
|
591
|
+
//# sourceMappingURL=chunk-ALSCZ7WR.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
loadConfig
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-FTOF3FHT.js";
|
|
4
4
|
|
|
5
5
|
// src/ingest/github-ingester.ts
|
|
6
6
|
import path from "path";
|
|
@@ -213,4 +213,4 @@ var GitHubIngester = class {
|
|
|
213
213
|
export {
|
|
214
214
|
GitHubIngester
|
|
215
215
|
};
|
|
216
|
-
//# sourceMappingURL=chunk-
|
|
216
|
+
//# sourceMappingURL=chunk-CBAMZERA.js.map
|
|
@@ -1,35 +1,35 @@
|
|
|
1
1
|
import {
|
|
2
2
|
IncidentIndex
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-KYKADM7P.js";
|
|
4
4
|
import {
|
|
5
5
|
TriePatternDiscovery
|
|
6
6
|
} from "./chunk-ZV2K6M7T.js";
|
|
7
7
|
import {
|
|
8
8
|
ContextGraph
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-JYWGYUKX.js";
|
|
10
10
|
import {
|
|
11
11
|
scanForVulnerabilities
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-WO7CC5FH.js";
|
|
13
13
|
import {
|
|
14
14
|
scanForVibeCodeIssues
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-2LAJKFWU.js";
|
|
16
16
|
import {
|
|
17
17
|
storeIssues
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-4ZAFQEP6.js";
|
|
19
19
|
import {
|
|
20
20
|
getDiff,
|
|
21
21
|
getRecentCommits,
|
|
22
22
|
getStagedChanges,
|
|
23
23
|
getUncommittedChanges,
|
|
24
24
|
getWorkingTreeDiff
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-HD5H7YSW.js";
|
|
26
26
|
import {
|
|
27
27
|
getTrieDirectory,
|
|
28
28
|
getWorkingDirectory
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-7F2R2ITA.js";
|
|
30
30
|
import {
|
|
31
31
|
isInteractiveMode
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-JKEEQAG2.js";
|
|
33
33
|
|
|
34
34
|
// src/cli/checkpoint.ts
|
|
35
35
|
import { existsSync } from "fs";
|
|
@@ -1481,4 +1481,4 @@ export {
|
|
|
1481
1481
|
handleCheckpointCommand,
|
|
1482
1482
|
isTrieInitialized
|
|
1483
1483
|
};
|
|
1484
|
-
//# sourceMappingURL=chunk-
|
|
1484
|
+
//# sourceMappingURL=chunk-EMJ7RVWB.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getTrieDirectory,
|
|
3
3
|
getWorkingDirectory
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-7F2R2ITA.js";
|
|
5
5
|
import {
|
|
6
6
|
isInteractiveMode
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-JKEEQAG2.js";
|
|
8
8
|
|
|
9
9
|
// src/config/loader.ts
|
|
10
10
|
import { readFile, writeFile, mkdir } from "fs/promises";
|
|
@@ -464,4 +464,4 @@ export {
|
|
|
464
464
|
loadConfig,
|
|
465
465
|
saveConfig
|
|
466
466
|
};
|
|
467
|
-
//# sourceMappingURL=chunk-
|
|
467
|
+
//# sourceMappingURL=chunk-FTOF3FHT.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
loadConfig
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-FTOF3FHT.js";
|
|
4
4
|
|
|
5
5
|
// src/ingest/linear-ingester.ts
|
|
6
6
|
import path from "path";
|
|
@@ -129,4 +129,4 @@ var LinearIngester = class {
|
|
|
129
129
|
export {
|
|
130
130
|
LinearIngester
|
|
131
131
|
};
|
|
132
|
-
//# sourceMappingURL=chunk-
|
|
132
|
+
//# sourceMappingURL=chunk-FXZAABXO.js.map
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
getTrieDirectory,
|
|
6
6
|
getWorkingDirectory
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-7F2R2ITA.js";
|
|
8
8
|
|
|
9
9
|
// src/memory/ledger.ts
|
|
10
10
|
import { createHash } from "crypto";
|
|
@@ -1389,4 +1389,4 @@ export {
|
|
|
1389
1389
|
getEntryCorrectionHistory,
|
|
1390
1390
|
getCorrectionStats
|
|
1391
1391
|
};
|
|
1392
|
-
//# sourceMappingURL=chunk-
|
|
1392
|
+
//# sourceMappingURL=chunk-HD5H7YSW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/utils/progress.ts"],"sourcesContent":["/**\n * Progress Reporter for Trie Agent\n * \n * Provides real-time feedback to users as the agent works.\n * Uses console.error because MCP clients display stderr to users.\n */\n\n/**\n * Global interactive mode flag\n * When enabled, suppresses all console output (handled by InteractiveDashboard instead)\n */\nlet _interactiveMode = false;\n\n/**\n * Enable or disable interactive mode\n * When enabled, all console output from ProgressReporter and AgentProgressReporter is suppressed\n * \n * NOTE: This only sets the flag. The caller should verify that process.stdin.isTTY\n * and process.stdin.setRawMode are available before enabling interactive mode.\n */\nexport function setInteractiveMode(enabled: boolean): void {\n _interactiveMode = enabled;\n}\n\n/**\n * Check if interactive mode is enabled\n */\nexport function isInteractiveMode(): boolean {\n return _interactiveMode;\n}\n\nexport type ProgressPhase = \n | 'init'\n | 'discovery'\n | 'reading'\n | 'analyzing'\n | 'ai-review'\n | 'prioritizing'\n | 'complete';\n\nexport interface ProgressCallback {\n (phase: ProgressPhase, message: string, detail?: string): void;\n}\n\n/**\n * Progress Reporter - streams status updates to the user\n */\nexport class ProgressReporter {\n private currentPhase: ProgressPhase = 'init';\n private startTime: number = Date.now();\n private phaseStartTime: number = Date.now();\n private verbose: boolean;\n\n constructor(options: { verbose?: boolean } = {}) {\n this.verbose = options.verbose ?? true;\n }\n\n /**\n * Report a status update\n */\n report(message: string, detail?: string): void {\n if (!this.verbose || _interactiveMode) return;\n \n const prefix = this.getPhaseIcon(this.currentPhase);\n const fullMessage = detail ? `${message}: ${detail}` : message;\n console.error(`${prefix} ${fullMessage}`);\n }\n\n /**\n * Start a new phase\n */\n startPhase(phase: ProgressPhase, message: string): void {\n this.currentPhase = phase;\n this.phaseStartTime = Date.now();\n this.report(message);\n }\n\n /**\n * Update within current phase\n */\n update(message: string, detail?: string): void {\n this.report(message, detail);\n }\n\n /**\n * Report progress on a file\n */\n file(action: string, filePath: string): void {\n // Show just the filename for cleaner output\n const fileName = filePath.split('/').pop() || filePath;\n this.report(action, fileName);\n }\n\n /**\n * Report an AI analysis step\n */\n ai(action: string, context?: string): void {\n if (_interactiveMode) return;\n const prefix = '[AI]';\n const message = context ? `${action}: ${context}` : action;\n console.error(`${prefix} ${message}`);\n }\n\n /**\n * Report a finding\n */\n finding(severity: 'critical' | 'serious' | 'moderate' | 'low', message: string): void {\n if (_interactiveMode) return;\n const labels = {\n critical: '[CRITICAL]',\n serious: '[SERIOUS]',\n moderate: '[MODERATE]',\n low: '[LOW]'\n };\n console.error(` ${labels[severity]} ${message}`);\n }\n\n /**\n * Complete current phase\n */\n completePhase(summary: string): void {\n const elapsed = Date.now() - this.phaseStartTime;\n this.report(`Done: ${summary}`, `(${elapsed}ms)`);\n }\n\n /**\n * Complete the entire operation\n */\n complete(summary: string): void {\n if (_interactiveMode) return;\n const totalElapsed = Date.now() - this.startTime;\n console.error('');\n console.error(`----------------------------------------`);\n console.error(`[COMPLETE] ${summary}`);\n console.error(` Total time: ${(totalElapsed / 1000).toFixed(2)}s`);\n console.error(`----------------------------------------`);\n console.error('');\n }\n\n /**\n * Report an error\n */\n error(message: string, detail?: string): void {\n if (_interactiveMode) return;\n const fullMessage = detail ? `${message}: ${detail}` : message;\n console.error(`[ERROR] ${fullMessage}`);\n }\n\n /**\n * Report a warning\n */\n warn(message: string, detail?: string): void {\n if (_interactiveMode) return;\n const fullMessage = detail ? `${message}: ${detail}` : message;\n console.error(`[WARN] ${fullMessage}`);\n }\n\n /**\n * Get icon for current phase\n */\n private getPhaseIcon(phase: ProgressPhase): string {\n const icons: Record<ProgressPhase, string> = {\n 'init': '>>',\n 'discovery': '>>',\n 'reading': '>>',\n 'analyzing': '>>',\n 'ai-review': '[AI]',\n 'prioritizing': '>>',\n 'complete': '[OK]'\n };\n return icons[phase] || '>>';\n }\n\n /**\n * Create a sub-reporter for a specific agent\n */\n forAgent(agentName: string): AgentProgressReporter {\n return new AgentProgressReporter(agentName, this.verbose);\n }\n}\n\n/**\n * Progress reporter scoped to a specific agent\n */\nexport class AgentProgressReporter {\n private agentName: string;\n private verbose: boolean;\n private issueCount: number = 0;\n private issuesBySeverity: Map<string, number> = new Map();\n private batchedIssues: Map<string, Array<{ severity: string; issue: string; file?: string; line?: number }>> = new Map();\n private criticalIssues: Array<{ severity: string; issue: string; file?: string; line?: number }> = [];\n private seriousIssues: Array<{ severity: string; issue: string; file?: string; line?: number }> = [];\n private flushTimer: NodeJS.Timeout | null = null;\n private readonly BATCH_DELAY_MS = 100; // Batch issues for 100ms before flushing\n\n constructor(agentName: string, verbose: boolean = true) {\n this.agentName = agentName;\n this.verbose = verbose;\n }\n\n start(): void {\n if (!this.verbose || _interactiveMode) return;\n console.error(`\\n[SCOUT] ${this.agentName.toUpperCase()} starting...`);\n }\n\n analyzing(_file: string): void {\n if (!this.verbose || _interactiveMode) return;\n // Suppress individual file analysis messages - they're too verbose\n // The progress updates from streaming manager will show file progress\n }\n\n aiReview(context: string): void {\n if (!this.verbose || _interactiveMode) return;\n // Suppress AI review messages - they're too verbose during watch mode\n // Only show if there are very few issues (indicating a focused scan)\n if (this.issueCount < 5) {\n console.error(` [AI] reviewing: ${context}`);\n }\n }\n\n found(severity: string, issue: string, file?: string, line?: number): void {\n this.issueCount++;\n \n // Track by severity\n const current = this.issuesBySeverity.get(severity) || 0;\n this.issuesBySeverity.set(severity, current + 1);\n\n // Store critical and serious issues for detailed output\n if (severity === 'critical') {\n this.criticalIssues.push({\n severity,\n issue,\n ...(file !== undefined ? { file } : {}),\n ...(line !== undefined ? { line } : {}),\n });\n // Flush critical issues immediately\n if (this.verbose && !_interactiveMode) {\n this.flushCriticalAndSerious();\n }\n } else if (severity === 'serious') {\n this.seriousIssues.push({\n severity,\n issue,\n ...(file !== undefined ? { file } : {}),\n ...(line !== undefined ? { line } : {}),\n });\n }\n\n // Batch similar issues together for cleaner output\n if (!this.verbose || _interactiveMode) return;\n\n // Normalize issue description for grouping (remove line numbers, file paths)\n const normalizedIssue = issue.replace(/at line \\d+/gi, '').replace(/in .+$/gi, '').trim();\n const key = `${severity}:${normalizedIssue}`;\n \n if (!this.batchedIssues.has(key)) {\n this.batchedIssues.set(key, []);\n }\n this.batchedIssues.get(key)!.push({\n severity,\n issue,\n ...(file !== undefined ? { file } : {}),\n ...(line !== undefined ? { line } : {}),\n });\n\n // Schedule flush (debounced) - but flush immediately for critical\n if (severity === 'critical') {\n this.flushBatchedIssues();\n } else {\n if (this.flushTimer) {\n clearTimeout(this.flushTimer);\n }\n this.flushTimer = setTimeout(() => this.flushBatchedIssues(), this.BATCH_DELAY_MS);\n }\n }\n\n private flushCriticalAndSerious(): void {\n // Always show critical issues immediately\n for (const issue of this.criticalIssues) {\n console.error(` [CRITICAL] Found: ${issue.issue}`);\n }\n this.criticalIssues = [];\n }\n\n private flushBatchedIssues(): void {\n if (!this.verbose || _interactiveMode) return;\n\n // Always show critical issues immediately (should already be flushed, but double-check)\n if (this.criticalIssues.length > 0) {\n this.flushCriticalAndSerious();\n }\n\n // Show serious issues (limit to first 10 to avoid spam)\n if (this.seriousIssues.length > 0) {\n for (const issue of this.seriousIssues.slice(0, 10)) {\n console.error(` [SERIOUS] Found: ${issue.issue}`);\n }\n if (this.seriousIssues.length > 10) {\n console.error(` ... and ${this.seriousIssues.length - 10} more serious issues`);\n }\n this.seriousIssues = [];\n }\n\n if (this.batchedIssues.size === 0) return;\n\n // For moderate and low issues, group similar ones together\n const moderateGroups: Array<{ pattern: string; count: number; examples: string[] }> = [];\n const lowGroups: Array<{ pattern: string; count: number; examples: string[] }> = [];\n\n for (const [key, issues] of this.batchedIssues.entries()) {\n const [severity, pattern = ''] = key.split(':', 2);\n const count = issues.length;\n const examples = issues.slice(0, 2).map(i => i.issue);\n\n if (severity === 'moderate') {\n moderateGroups.push({ pattern, count, examples });\n } else if (severity === 'low') {\n lowGroups.push({ pattern, count, examples });\n }\n }\n\n // Show moderate issues (grouped, max 5 groups)\n if (moderateGroups.length > 0) {\n for (const group of moderateGroups.slice(0, 5)) {\n if (group.count === 1) {\n console.error(` [MODERATE] Found: ${group.examples[0]}`);\n } else {\n console.error(` [MODERATE] Found: ${group.pattern} (${group.count} instances)`);\n }\n }\n if (moderateGroups.length > 5) {\n const remaining = moderateGroups.slice(5).reduce((sum, g) => sum + g.count, 0);\n console.error(` ... and ${remaining} more moderate issues`);\n }\n }\n\n // Show low issues (grouped, max 3 groups, only if not too many)\n // Suppress low issues if there are too many total issues\n if (lowGroups.length > 0 && this.issueCount < 200) {\n for (const group of lowGroups.slice(0, 3)) {\n if (group.count === 1) {\n console.error(` [LOW] Found: ${group.examples[0]}`);\n } else {\n console.error(` [LOW] Found: ${group.pattern} (${group.count} instances)`);\n }\n }\n if (lowGroups.length > 3) {\n const remaining = lowGroups.slice(3).reduce((sum, g) => sum + g.count, 0);\n console.error(` ... and ${remaining} more low-severity issues`);\n }\n } else if (lowGroups.length > 0) {\n // Too many issues - just show summary\n const totalLow = lowGroups.reduce((sum, g) => sum + g.count, 0);\n console.error(` [LOW] Found ${totalLow} low-severity issues (suppressed for brevity)`);\n }\n\n this.batchedIssues.clear();\n }\n\n complete(summary?: string): void {\n // Flush any remaining batched issues\n if (this.flushTimer) {\n clearTimeout(this.flushTimer);\n this.flushTimer = null;\n }\n this.flushBatchedIssues();\n\n if (!this.verbose || _interactiveMode) return;\n\n // Build a better summary\n const severityCounts: string[] = [];\n if (this.issuesBySeverity.get('critical')) {\n severityCounts.push(`${this.issuesBySeverity.get('critical')} critical`);\n }\n if (this.issuesBySeverity.get('serious')) {\n severityCounts.push(`${this.issuesBySeverity.get('serious')} serious`);\n }\n if (this.issuesBySeverity.get('moderate')) {\n severityCounts.push(`${this.issuesBySeverity.get('moderate')} moderate`);\n }\n if (this.issuesBySeverity.get('low')) {\n severityCounts.push(`${this.issuesBySeverity.get('low')} low`);\n }\n\n const severitySummary = severityCounts.length > 0 \n ? ` (${severityCounts.join(', ')})`\n : '';\n \n const msg = summary || `${this.issueCount} issues found${severitySummary}`;\n console.error(` Done: ${this.agentName}: ${msg}`);\n }\n\n getIssueCount(): number {\n return this.issueCount;\n }\n\n getIssuesBySeverity(): Map<string, number> {\n return new Map(this.issuesBySeverity);\n }\n}\n\n/**\n * Global singleton for easy access\n */\nlet globalReporter: ProgressReporter | null = null;\n\nexport function getProgressReporter(options?: { verbose?: boolean }): ProgressReporter {\n if (!globalReporter) {\n globalReporter = new ProgressReporter(options);\n }\n return globalReporter;\n}\n\nexport function resetProgressReporter(): void {\n globalReporter = null;\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getTrieDirectory
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7F2R2ITA.js";
|
|
4
4
|
|
|
5
5
|
// src/context/graph.ts
|
|
6
6
|
import crypto from "crypto";
|
|
@@ -399,4 +399,4 @@ var ContextGraph = class {
|
|
|
399
399
|
export {
|
|
400
400
|
ContextGraph
|
|
401
401
|
};
|
|
402
|
-
//# sourceMappingURL=chunk-
|
|
402
|
+
//# sourceMappingURL=chunk-JYWGYUKX.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isInteractiveMode
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-JKEEQAG2.js";
|
|
4
4
|
|
|
5
5
|
// src/utils/output-manager.ts
|
|
6
6
|
import pc from "picocolors";
|
|
@@ -563,4 +563,4 @@ export {
|
|
|
563
563
|
output,
|
|
564
564
|
resetOutputManager
|
|
565
565
|
};
|
|
566
|
-
//# sourceMappingURL=chunk-
|
|
566
|
+
//# sourceMappingURL=chunk-KLMJKM63.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-6NLHFIYA.js";
|
|
4
4
|
import {
|
|
5
5
|
getTrieDirectory
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-7F2R2ITA.js";
|
|
7
7
|
|
|
8
8
|
// src/context/incident-index.ts
|
|
9
9
|
import path2 from "path";
|
|
@@ -170,4 +170,4 @@ var IncidentIndex = class _IncidentIndex {
|
|
|
170
170
|
export {
|
|
171
171
|
IncidentIndex
|
|
172
172
|
};
|
|
173
|
-
//# sourceMappingURL=chunk-
|
|
173
|
+
//# sourceMappingURL=chunk-KYKADM7P.js.map
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
} from "./chunk-43X6JBEM.js";
|
|
8
8
|
import {
|
|
9
9
|
getTrieDirectory
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-7F2R2ITA.js";
|
|
11
11
|
|
|
12
12
|
// src/agent/project-state.ts
|
|
13
13
|
import { mkdir, readFile } from "fs/promises";
|
|
@@ -686,4 +686,4 @@ function getProjectState(projectPath) {
|
|
|
686
686
|
export {
|
|
687
687
|
getProjectState
|
|
688
688
|
};
|
|
689
|
-
//# sourceMappingURL=chunk-
|
|
689
|
+
//# sourceMappingURL=chunk-L4FODDDB.js.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getInsightStore
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-T7UAH7GE.js";
|
|
4
4
|
import {
|
|
5
5
|
getProjectState
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-L4FODDDB.js";
|
|
7
7
|
import {
|
|
8
8
|
getMemoryStats,
|
|
9
9
|
searchIssues
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-4ZAFQEP6.js";
|
|
11
11
|
|
|
12
12
|
// src/agent/goal-manager.ts
|
|
13
13
|
import { basename } from "path";
|
|
@@ -648,4 +648,4 @@ export {
|
|
|
648
648
|
getGoalManager,
|
|
649
649
|
clearGoalManagers
|
|
650
650
|
};
|
|
651
|
-
//# sourceMappingURL=chunk-
|
|
651
|
+
//# sourceMappingURL=chunk-LFNH3CSN.js.map
|
|
@@ -1,38 +1,38 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getGoalManager
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-LFNH3CSN.js";
|
|
4
4
|
import {
|
|
5
5
|
getHypothesisEngine
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-NVZZUUEU.js";
|
|
7
7
|
import {
|
|
8
8
|
getInsightStore
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-T7UAH7GE.js";
|
|
10
10
|
import {
|
|
11
11
|
GotchaPredictor,
|
|
12
12
|
SlackIntegration,
|
|
13
13
|
findCrossProjectPatterns,
|
|
14
14
|
recordToGlobalMemory
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-OWSGJUUR.js";
|
|
16
16
|
import {
|
|
17
17
|
ContextGraph
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-JYWGYUKX.js";
|
|
19
19
|
import {
|
|
20
20
|
isAIAvailable,
|
|
21
21
|
runAIAnalysis
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-UL337UDQ.js";
|
|
23
23
|
import {
|
|
24
24
|
getProjectState
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-L4FODDDB.js";
|
|
26
26
|
import {
|
|
27
27
|
getStorage
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-ALSCZ7WR.js";
|
|
29
29
|
import {
|
|
30
30
|
autoResolveIssues,
|
|
31
31
|
getHistoricalInsights,
|
|
32
32
|
getIssueHash,
|
|
33
33
|
searchIssues,
|
|
34
34
|
storeIssues
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-4ZAFQEP6.js";
|
|
36
36
|
|
|
37
37
|
// src/agent/trie-agent.ts
|
|
38
38
|
import { basename as basename2 } from "path";
|
|
@@ -1322,9 +1322,9 @@ var TrieAgent = class {
|
|
|
1322
1322
|
}
|
|
1323
1323
|
if (issues.length >= 5 && this.canCreateInsight("pattern-discovery")) {
|
|
1324
1324
|
try {
|
|
1325
|
-
const { IncidentIndex } = await import("./incident-index-
|
|
1325
|
+
const { IncidentIndex } = await import("./incident-index-7CAXUNTL.js");
|
|
1326
1326
|
const { TriePatternDiscovery } = await import("./pattern-discovery-F7LU5K6E.js");
|
|
1327
|
-
const { ContextGraph: ContextGraph2 } = await import("./graph-
|
|
1327
|
+
const { ContextGraph: ContextGraph2 } = await import("./graph-JO7GG65P.js");
|
|
1328
1328
|
const graph = new ContextGraph2(this.projectPath);
|
|
1329
1329
|
const incidentIndex = await IncidentIndex.build(graph, this.projectPath);
|
|
1330
1330
|
const discovery = new TriePatternDiscovery(graph, incidentIndex);
|
|
@@ -1581,7 +1581,7 @@ var TrieAgent = class {
|
|
|
1581
1581
|
await this.projectState.recordScan();
|
|
1582
1582
|
try {
|
|
1583
1583
|
const riskLevel = issues.filter((i) => i.severity === "critical").length > 0 ? "critical" : issues.filter((i) => i.severity === "serious").length >= 3 ? "high" : issues.length > 10 ? "medium" : "low";
|
|
1584
|
-
const { calculateAdaptiveScanFrequency } = await import("./goal-manager-
|
|
1584
|
+
const { calculateAdaptiveScanFrequency } = await import("./goal-manager-5QDITJKE.js");
|
|
1585
1585
|
const result = await calculateAdaptiveScanFrequency(riskLevel);
|
|
1586
1586
|
await this.projectState.setScanFrequency(result.frequencyMs);
|
|
1587
1587
|
} catch {
|
|
@@ -1810,4 +1810,4 @@ export {
|
|
|
1810
1810
|
TrieAgent,
|
|
1811
1811
|
getTrieAgent
|
|
1812
1812
|
};
|
|
1813
|
-
//# sourceMappingURL=chunk-
|
|
1813
|
+
//# sourceMappingURL=chunk-LJISDV3A.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getInsightStore
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-T7UAH7GE.js";
|
|
4
4
|
import {
|
|
5
5
|
getProjectState
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-L4FODDDB.js";
|
|
7
7
|
import {
|
|
8
8
|
searchIssues
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-4ZAFQEP6.js";
|
|
10
10
|
|
|
11
11
|
// src/agent/hypothesis.ts
|
|
12
12
|
import { dirname } from "path";
|
|
@@ -134,7 +134,7 @@ var HypothesisEngine = class {
|
|
|
134
134
|
* This enables fully agentic hypothesis creation based on actual codebase observations
|
|
135
135
|
*/
|
|
136
136
|
async generateHypothesesWithAI(context) {
|
|
137
|
-
const { isAIAvailable, runAIAnalysis } = await import("./client-
|
|
137
|
+
const { isAIAvailable, runAIAnalysis } = await import("./client-ZHOLZTRW.js");
|
|
138
138
|
if (!isAIAvailable()) {
|
|
139
139
|
return [];
|
|
140
140
|
}
|
|
@@ -724,4 +724,4 @@ export {
|
|
|
724
724
|
clearHypothesisEngines,
|
|
725
725
|
gatherEvidenceForHypothesis
|
|
726
726
|
};
|
|
727
|
-
//# sourceMappingURL=chunk-
|
|
727
|
+
//# sourceMappingURL=chunk-NVZZUUEU.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getTrieDirectory,
|
|
3
3
|
getWorkingDirectory
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-7F2R2ITA.js";
|
|
5
5
|
|
|
6
6
|
// src/utils/project-info.ts
|
|
7
7
|
import { readFile, writeFile, mkdir } from "fs/promises";
|
|
@@ -847,4 +847,4 @@ export {
|
|
|
847
847
|
loadContextState,
|
|
848
848
|
getContextForAI
|
|
849
849
|
};
|
|
850
|
-
//# sourceMappingURL=chunk-
|
|
850
|
+
//# sourceMappingURL=chunk-OVSYTWUU.js.map
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import {
|
|
2
2
|
tryGetClient
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-UL337UDQ.js";
|
|
4
4
|
import {
|
|
5
5
|
scanForVulnerabilities
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-WO7CC5FH.js";
|
|
7
7
|
import {
|
|
8
8
|
scanForVibeCodeIssues
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-2LAJKFWU.js";
|
|
10
10
|
import {
|
|
11
11
|
getStorage
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-ALSCZ7WR.js";
|
|
13
13
|
import {
|
|
14
14
|
searchIssues
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-4ZAFQEP6.js";
|
|
16
16
|
import {
|
|
17
17
|
BackupManager,
|
|
18
18
|
GlobalPatternsIndexSchema,
|
|
@@ -821,4 +821,4 @@ export {
|
|
|
821
821
|
SlackIntegration,
|
|
822
822
|
GotchaPredictor
|
|
823
823
|
};
|
|
824
|
-
//# sourceMappingURL=chunk-
|
|
824
|
+
//# sourceMappingURL=chunk-OWSGJUUR.js.map
|