@wrongstack/core 0.313.0 → 0.316.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/chronicle/index.js +84 -6391
- package/dist/chronicle/legacy-journal-import.d.ts +0 -6
- package/dist/chronicle/metrics-ingest.d.ts +14 -0
- package/dist/chronicle/metrics-schema.d.ts +10 -1
- package/dist/chronicle/metrics-store.d.ts +20 -2
- package/dist/chronicle/project-server.js +98 -4874
- package/dist/chronicle/sink.d.ts +13 -0
- package/dist/chronicle/sqlite-journal.d.ts +20 -2
- package/dist/chunk-25LSLC3G.js +334 -0
- package/dist/chunk-27QIURLN.js +1073 -0
- package/dist/chunk-2FK4WTFF.js +207 -0
- package/dist/chunk-2YU4WVBW.js +134 -0
- package/dist/chunk-3AGWVSS7.js +4608 -0
- package/dist/chunk-3BDV7RL3.js +211 -0
- package/dist/chunk-3ECENVHL.js +325 -0
- package/dist/chunk-3XPVB7BA.js +135 -0
- package/dist/chunk-45WI72ZB.js +16884 -0
- package/dist/chunk-4BMVPOHO.js +3748 -0
- package/dist/chunk-4I7HGVVA.js +363 -0
- package/dist/chunk-4LCZVJVF.js +317 -0
- package/dist/chunk-4SJNS7OB.js +217 -0
- package/dist/chunk-4VWO3ZXL.js +342 -0
- package/dist/chunk-57GEWK5X.js +26 -0
- package/dist/chunk-5BMIE7QG.js +46 -0
- package/dist/chunk-5S437PRC.js +50 -0
- package/dist/chunk-5XDUGTKN.js +511 -0
- package/dist/chunk-5YPSXQXM.js +1443 -0
- package/dist/chunk-6FHWXLPT.js +10 -0
- package/dist/chunk-6H5GEOET.js +2406 -0
- package/dist/chunk-6NWEVFEL.js +151 -0
- package/dist/chunk-AYW5YINX.js +58 -0
- package/dist/chunk-B4AMLZPB.js +9 -0
- package/dist/chunk-B7F4WVP4.js +65 -0
- package/dist/chunk-BJHVULHO.js +55 -0
- package/dist/chunk-BPBKKBUK.js +2085 -0
- package/dist/chunk-BYD345OX.js +589 -0
- package/dist/chunk-C27KDLOX.js +279 -0
- package/dist/chunk-CU546ESW.js +597 -0
- package/dist/chunk-DLHHXUAM.js +172 -0
- package/dist/chunk-DOTHQSJ2.js +429 -0
- package/dist/chunk-DYLPMV4Q.js +711 -0
- package/dist/chunk-EODDVJBM.js +82 -0
- package/dist/chunk-F3JWNST7.js +361 -0
- package/dist/chunk-FC2ZGRF3.js +140 -0
- package/dist/chunk-FCBTO76Z.js +5786 -0
- package/dist/chunk-FHZVFYSL.js +396 -0
- package/dist/chunk-FNXVT7HF.js +52 -0
- package/dist/chunk-FWNLEZYG.js +259 -0
- package/dist/chunk-FXQLIX3K.js +211 -0
- package/dist/chunk-G5S3S5ZN.js +38 -0
- package/dist/chunk-GDQ7CZRQ.js +116 -0
- package/dist/chunk-GJJGJB2R.js +1374 -0
- package/dist/chunk-GTCU6DZ3.js +1 -0
- package/dist/chunk-HA4ZYA6T.js +178 -0
- package/dist/chunk-HI3JGZR2.js +188 -0
- package/dist/chunk-HMLIGAU7.js +395 -0
- package/dist/chunk-HXKZ7OBQ.js +303 -0
- package/dist/chunk-I7DALG7J.js +292 -0
- package/dist/chunk-IRUTEHCE.js +960 -0
- package/dist/chunk-IYFBFX34.js +86 -0
- package/dist/chunk-J2WRWR37.js +1104 -0
- package/dist/chunk-JFPJ6LLQ.js +129 -0
- package/dist/chunk-JMULFFLN.js +9 -0
- package/dist/chunk-JO4MGB6Z.js +1264 -0
- package/dist/chunk-JVKB2TBL.js +48 -0
- package/dist/chunk-JX7VBZDK.js +31 -0
- package/dist/chunk-K6BXGITA.js +931 -0
- package/dist/chunk-KDQJCT2J.js +45 -0
- package/dist/chunk-KJ2ZTQSL.js +47 -0
- package/dist/chunk-KZMSZV32.js +187 -0
- package/dist/chunk-LA7CLDRW.js +129 -0
- package/dist/chunk-LHOA5DWA.js +28 -0
- package/dist/chunk-LSMMOS2Z.js +119 -0
- package/dist/chunk-LX5QWLBL.js +27 -0
- package/dist/chunk-LXWCMQNJ.js +789 -0
- package/dist/chunk-M27LIEKV.js +2829 -0
- package/dist/chunk-MJPHJRAL.js +663 -0
- package/dist/chunk-MTL4O5YR.js +228 -0
- package/dist/chunk-NDBIPFNY.js +102 -0
- package/dist/chunk-NEMIWEXC.js +1199 -0
- package/dist/chunk-NHJ75HXY.js +1 -0
- package/dist/chunk-NIOAGFPB.js +1510 -0
- package/dist/chunk-NS52ISWS.js +355 -0
- package/dist/chunk-NSOFPKGT.js +5352 -0
- package/dist/chunk-NVIZG63R.js +757 -0
- package/dist/chunk-O37BQ65S.js +21 -0
- package/dist/chunk-OOYZPOXM.js +308 -0
- package/dist/chunk-OSGLYW5J.js +28 -0
- package/dist/chunk-PFCMSSUF.js +1640 -0
- package/dist/chunk-PFZO3C6H.js +14 -0
- package/dist/chunk-PGRVXIMY.js +158 -0
- package/dist/chunk-PHH7LD45.js +113 -0
- package/dist/chunk-PISBFBJN.js +109 -0
- package/dist/chunk-POOOIWE5.js +9 -0
- package/dist/chunk-PQNS3U7Z.js +1240 -0
- package/dist/chunk-QSTSJOCK.js +402 -0
- package/dist/chunk-RFQMOKWK.js +282 -0
- package/dist/chunk-RJIZEJ42.js +30 -0
- package/dist/chunk-RTOTNK3P.js +484 -0
- package/dist/chunk-RXKSDUAU.js +1172 -0
- package/dist/chunk-S45JPKQN.js +3317 -0
- package/dist/chunk-SAFHACFA.js +152 -0
- package/dist/chunk-SQJVFEBV.js +41 -0
- package/dist/chunk-SVT4RNTR.js +49 -0
- package/dist/chunk-SWUFN7XM.js +43 -0
- package/dist/chunk-SXMVYC5H.js +174 -0
- package/dist/chunk-SZ6AYUIZ.js +23 -0
- package/dist/chunk-TBRL2RCC.js +9 -0
- package/dist/chunk-TCCHINEF.js +655 -0
- package/dist/chunk-THEGTRAG.js +316 -0
- package/dist/chunk-TR4LQE7L.js +2256 -0
- package/dist/chunk-TRT2HRWZ.js +18 -0
- package/dist/chunk-TWJMGXCI.js +900 -0
- package/dist/chunk-U45AXT5D.js +1023 -0
- package/dist/chunk-U4FWBSO3.js +509 -0
- package/dist/chunk-UBGDX6FI.js +147 -0
- package/dist/chunk-UJILKYES.js +75 -0
- package/dist/chunk-ULMAQV3T.js +234 -0
- package/dist/chunk-VVBP6KGT.js +9 -0
- package/dist/chunk-W5VITDM2.js +168 -0
- package/dist/chunk-WAHQVNWT.js +194 -0
- package/dist/chunk-WBPVKEEE.js +227 -0
- package/dist/chunk-WGGYRBXH.js +5434 -0
- package/dist/chunk-WLYKU45P.js +5770 -0
- package/dist/chunk-WP7BVANJ.js +53 -0
- package/dist/chunk-WQQON3SV.js +473 -0
- package/dist/chunk-WQTOVMGV.js +119 -0
- package/dist/chunk-XBDP4QPW.js +7 -0
- package/dist/chunk-XEBHSJLT.js +103 -0
- package/dist/chunk-XF4VUMKW.js +231 -0
- package/dist/chunk-XQ2ECNK3.js +1 -0
- package/dist/chunk-Y5YXDM7D.js +74 -0
- package/dist/chunk-YOPAUVU4.js +2588 -0
- package/dist/chunk-YPT4A46F.js +362 -0
- package/dist/chunk-YWXT3JNM.js +425 -0
- package/dist/chunk-YY6APYUM.js +49 -0
- package/dist/chunk-Z2IJUO45.js +691 -0
- package/dist/chunk-ZHZ2Y2DH.js +1643 -0
- package/dist/chunk-ZT7JNIGX.js +152 -0
- package/dist/coordination/agent-monitor.d.ts +9 -1
- package/dist/coordination/agent-subagent-runner.d.ts +1 -1
- package/dist/coordination/agents/agent-prompts.d.ts +8 -0
- package/dist/coordination/agents/index.d.ts +33 -1
- package/dist/coordination/agents/index.js +184 -6269
- package/dist/coordination/agents/phase3-wave1-platform.d.ts +1 -3
- package/dist/coordination/agents/phase3-wave2-meta.d.ts +1 -3
- package/dist/coordination/agents/phase8-wave3-products.d.ts +1 -3
- package/dist/coordination/agents/phase9-wave4-platform-meta.d.ts +1 -3
- package/dist/coordination/agents/project-agent-identity.d.ts +11 -11
- package/dist/coordination/agents/types.d.ts +13 -2
- package/dist/coordination/brain-monitor.d.ts +30 -7
- package/dist/coordination/collab-debug.d.ts +1 -1
- package/dist/coordination/collab-pause.d.ts +1 -1
- package/dist/coordination/delegate-tool.d.ts +7 -5
- package/dist/coordination/director-kanban-queue-helpers.d.ts +1 -0
- package/dist/coordination/director-options.d.ts +7 -0
- package/dist/coordination/director-spawn-model.d.ts +17 -0
- package/dist/coordination/director-tools.d.ts +2 -2
- package/dist/coordination/director.d.ts +12 -0
- package/dist/coordination/dispatcher.d.ts +8 -0
- package/dist/coordination/fleet-bus.d.ts +35 -4
- package/dist/coordination/fleet-supervisor.d.ts +10 -2
- package/dist/coordination/fleet.d.ts +16 -7
- package/dist/coordination/index.d.ts +4 -0
- package/dist/coordination/index.js +402 -34324
- package/dist/coordination/kanban-dispatch-port.d.ts +2 -2
- package/dist/coordination/mailbox-http-router.d.ts +4 -3
- package/dist/coordination/mailbox-http-validation.d.ts +1 -1
- package/dist/coordination/mailbox-project-server.js +48 -3276
- package/dist/coordination/mailbox-types.d.ts +24 -6
- package/dist/coordination/model-tier-leader.d.ts +122 -0
- package/dist/coordination/model-tier.d.ts +122 -0
- package/dist/coordination/multi-agent-coordinator.d.ts +24 -0
- package/dist/coordination/origin-session.d.ts +16 -0
- package/dist/coordination/provider-status-tracker.d.ts +41 -5
- package/dist/coordination/session-note-hub.d.ts +44 -0
- package/dist/coordination/session-note-tool.d.ts +10 -0
- package/dist/core/agent.d.ts +15 -2
- package/dist/core/context.d.ts +22 -3
- package/dist/core/index.d.ts +2 -0
- package/dist/core/index.js +239 -12360
- package/dist/core/model-ref.js +5 -23
- package/dist/core/provider-runner.d.ts +36 -1
- package/dist/core/request-conversation-binding.d.ts +37 -0
- package/dist/core/session-notes.d.ts +25 -0
- package/dist/core/system-prompt-builder.d.ts +11 -2
- package/dist/core/system-prompt-variants.d.ts +78 -0
- package/dist/design/index.js +50 -1087
- package/dist/execution/auto-compaction-middleware.d.ts +11 -0
- package/dist/execution/autonomy-brain.d.ts +2 -1
- package/dist/execution/autonomy-prompt-contributor.d.ts +7 -2
- package/dist/execution/compaction-core.d.ts +4 -4
- package/dist/execution/eternal-autonomy.d.ts +1 -1
- package/dist/execution/index.d.ts +1 -1
- package/dist/execution/index.js +1615 -21895
- package/dist/execution/model-runtime.d.ts +0 -7
- package/dist/execution/parallel-eternal-engine.d.ts +7 -7
- package/dist/execution/prompt-enhancer.js +16 -535
- package/dist/execution/retry-policy.d.ts +31 -1
- package/dist/extension/index.js +7 -311
- package/dist/goal/index.js +33 -3435
- package/dist/hooks/index.js +14 -1138
- package/dist/hq/index.js +114 -5139
- package/dist/hq/persistence/event-log.d.ts +0 -1
- package/dist/hq/persistence.d.ts +4 -4
- package/dist/hq/protocol.js +21 -668
- package/dist/hq/publisher.d.ts +2 -0
- package/dist/index.d.ts +14 -11
- package/dist/index.js +1502 -92655
- package/dist/infrastructure/index.d.ts +4 -4
- package/dist/infrastructure/index.js +504 -5230
- package/dist/infrastructure/token-counter.d.ts +9 -0
- package/dist/kernel/events/agent-events.d.ts +77 -3
- package/dist/kernel/events/brain-events.d.ts +12 -0
- package/dist/kernel/events/provider-events.d.ts +22 -1
- package/dist/kernel/events/session-events.d.ts +14 -0
- package/dist/kernel/events/tool-events.d.ts +13 -0
- package/dist/kernel/index.js +14 -992
- package/dist/mailbox-attach.d.ts +1 -1
- package/dist/models/index.js +41 -1117
- package/dist/notifications/index.js +3 -108
- package/dist/observability/event-bridge.d.ts +25 -5
- package/dist/observability/index.d.ts +9 -8
- package/dist/observability/index.js +477 -631
- package/dist/observability/tool-usage-source.d.ts +65 -0
- package/dist/plugin/index.d.ts +5 -0
- package/dist/plugin/index.js +600 -14835
- package/dist/plugins/auto-review-plugin.d.ts +3 -2
- package/dist/plugins/review-finding-commands.d.ts +0 -8
- package/dist/plugins/review-finding-store.js +22 -0
- package/dist/plugins/review-finding-types.js +19 -0
- package/dist/plugins/review-report-integration.js +21 -0
- package/dist/plugins/review-report-store.js +20 -0
- package/dist/plugins/review-report-types.js +13 -0
- package/dist/prompts/index.js +14 -948
- package/dist/registry/index.js +9 -822
- package/dist/registry/tool-registry.d.ts +59 -9
- package/dist/registry-7N4O3E7W.js +14 -0
- package/dist/replay/index.js +6 -84
- package/dist/security/capabilities.d.ts +6 -0
- package/dist/security/file-permissions.d.ts +1 -1
- package/dist/security/index.js +161 -2235
- package/dist/security/permission-policy.d.ts +12 -1
- package/dist/security/secret-scrubber.d.ts +15 -0
- package/dist/session-catalog/index.d.ts +1 -0
- package/dist/session-catalog/index.js +41 -2103
- package/dist/session-catalog/project-server.js +59 -1435
- package/dist/session-catalog/protocol.d.ts +32 -1
- package/dist/session-catalog/registry.d.ts +17 -1
- package/dist/session-catalog/session-agents.d.ts +56 -0
- package/dist/session-catalog/store-rebuild.d.ts +14 -0
- package/dist/session-catalog/store-schema.d.ts +26 -0
- package/dist/session-catalog/store.d.ts +27 -1
- package/dist/session-note-attach.d.ts +9 -0
- package/dist/skills/index.js +35 -1578
- package/dist/statusline/index.d.ts +43 -0
- package/dist/statusline/index.js +102 -0
- package/dist/storage/board-store-port.d.ts +2 -2
- package/dist/storage/config-loader/in-project-policy.d.ts +29 -0
- package/dist/storage/config-loader.d.ts +3 -2
- package/dist/storage/file-session-writer.d.ts +4 -2
- package/dist/storage/goal-coordination.d.ts +6 -1
- package/dist/storage/goal-kanban.d.ts +4 -1
- package/dist/storage/index.d.ts +12 -4
- package/dist/storage/index.js +198 -15601
- package/dist/storage/input-history-store.d.ts +2 -4
- package/dist/storage/memory-curator.d.ts +133 -0
- package/dist/storage/session-agent-attribution.d.ts +39 -0
- package/dist/storage/session-doctor.d.ts +109 -0
- package/dist/storage/session-event-bridge.d.ts +5 -7
- package/dist/storage/session-outcome.d.ts +42 -0
- package/dist/storage/session-recovery.d.ts +55 -0
- package/dist/storage/session-store/load-session-data.d.ts +11 -0
- package/dist/storage/session-store/prune-helpers.d.ts +1 -1
- package/dist/storage/session-store/resume-session.d.ts +0 -2
- package/dist/storage/session-store/types.d.ts +8 -0
- package/dist/storage/session-store.d.ts +3 -3
- package/dist/storage/session-summary-tracker.d.ts +8 -1
- package/dist/storage/session-write-buffer.d.ts +18 -0
- package/dist/storage/session-writer-truncate.d.ts +2 -0
- package/dist/tasking/index.js +10 -676
- package/dist/tools/fallback-manage-tools.d.ts +6 -4
- package/dist/tools/index.js +52 -9590
- package/dist/tools/model-tier-set-tool.d.ts +66 -0
- package/dist/types/agent-bridge.d.ts +2 -1
- package/dist/types/config/autonomy.d.ts +5 -0
- package/dist/types/config/mcp-features.d.ts +7 -0
- package/dist/types/config/model-tiers.d.ts +148 -0
- package/dist/types/config/root.d.ts +9 -0
- package/dist/types/config/tools.d.ts +73 -0
- package/dist/types/config/ui.d.ts +1 -1
- package/dist/types/config.d.ts +1 -0
- package/dist/types/context.d.ts +2 -0
- package/dist/types/default-config.d.ts +6 -0
- package/dist/types/errors.d.ts +20 -1
- package/dist/types/index.d.ts +11 -9
- package/dist/types/index.js +131 -1342
- package/dist/types/multi-agent.d.ts +43 -0
- package/dist/types/plugin.d.ts +1 -1
- package/dist/types/provider-runner.d.ts +8 -0
- package/dist/types/provider.d.ts +15 -0
- package/dist/types/runtime-capability-manifest.d.ts +1 -1
- package/dist/types/secret-scrubber.d.ts +15 -0
- package/dist/types/session-markers.d.ts +37 -10
- package/dist/types/session-markers.js +8 -144
- package/dist/types/session-timeline.d.ts +197 -0
- package/dist/types/session-timeline.js +12 -0
- package/dist/types/session.d.ts +172 -11
- package/dist/types/system-prompt.d.ts +27 -0
- package/dist/utils/config-backup.d.ts +9 -1
- package/dist/utils/error.js +3 -4
- package/dist/utils/expect-defined.js +3 -9
- package/dist/utils/heap-watchdog.js +6 -706
- package/dist/utils/index.js +271 -5685
- package/dist/utils/message-invariants.d.ts +4 -1
- package/dist/utils/regex-guard.d.ts +1 -1
- package/dist/utils/sage-output-block.js +5 -42
- package/dist/utils/socket-path.d.ts +1 -1
- package/dist/utils/token-estimate.d.ts +6 -2
- package/dist/utils/wstack-paths.d.ts +2 -0
- package/dist/wiring/proxy-rewrite.d.ts +46 -0
- package/dist/wiring/proxy-rewrite.js +24 -121
- package/dist/worktree/index.js +6 -887
- package/instructions/agents/explore-companion.md +45 -18
- package/instructions/agents/memory-curator.md +34 -22
- package/instructions/coordination/director-preamble.md +12 -7
- package/instructions/coordination/subagent-baseline.md +26 -5
- package/instructions/leader-after-task.md +4 -1
- package/instructions/llm/chimera-review.md +30 -9
- package/instructions/llm/memory-curator.md +31 -0
- package/instructions/sections/tool/delegation-compact.md +2 -0
- package/instructions/sections/tool/delegation-full.md +5 -1
- package/instructions/sections/tool/mailbox-compact.md +5 -1
- package/instructions/sections/tool/mailbox-full.md +3 -0
- package/instructions/sections/tool/session-note-compact.md +3 -0
- package/instructions/sections/tool/session-note-full.md +15 -0
- package/instructions/system-lite.md +9 -4
- package/instructions/system-pro.md +66 -143
- package/instructions/system.md +73 -175
- package/package.json +32 -4
- package/dist/coordination/agents.d.ts +0 -8
- package/dist/coordination/transport.d.ts +0 -2
- package/dist/storage/session-writer/session-writer-summary-tracker.d.ts +0 -28
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ensureProjectGitignore
|
|
3
|
+
} from "./chunk-HI3JGZR2.js";
|
|
4
|
+
|
|
5
|
+
// src/utils/config-backup.ts
|
|
6
|
+
import * as fs from "node:fs/promises";
|
|
7
|
+
import * as path from "node:path";
|
|
8
|
+
function configHistoryDir(globalRoot) {
|
|
9
|
+
return path.join(globalRoot, "config-history");
|
|
10
|
+
}
|
|
11
|
+
function configSlug(absolutePath, globalRoot) {
|
|
12
|
+
const rel = path.relative(globalRoot, absolutePath);
|
|
13
|
+
const normalized = rel.replace(/\\/g, "/").replace(/\.json$/i, "");
|
|
14
|
+
return normalized.replace(/[^a-zA-Z0-9_-]+/g, "-").replace(/^-+|-+$/g, "") || "config";
|
|
15
|
+
}
|
|
16
|
+
async function backupConfigFile(filePath, paths) {
|
|
17
|
+
let currentContent;
|
|
18
|
+
try {
|
|
19
|
+
currentContent = await fs.readFile(filePath, "utf8");
|
|
20
|
+
if (!currentContent.trim()) return;
|
|
21
|
+
} catch {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
const now = /* @__PURE__ */ new Date();
|
|
25
|
+
const ts = now.toISOString().replace(/[:.]/g, "-").replace(/Z$/, "");
|
|
26
|
+
const slug = configSlug(filePath, paths.globalRoot);
|
|
27
|
+
const backupDir = configHistoryDir(paths.globalRoot);
|
|
28
|
+
const backupFile = path.join(backupDir, `${slug}-${ts}.json`);
|
|
29
|
+
try {
|
|
30
|
+
await fs.mkdir(backupDir, { recursive: true });
|
|
31
|
+
await fs.writeFile(backupFile, currentContent, { mode: 384, encoding: "utf8" });
|
|
32
|
+
} catch {
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
// src/utils/project-state-guard.ts
|
|
37
|
+
import * as fs2 from "node:fs";
|
|
38
|
+
import * as fsp from "node:fs/promises";
|
|
39
|
+
import * as path2 from "node:path";
|
|
40
|
+
var PROJECT_STATE_DIRECTORY = ".wrongstack";
|
|
41
|
+
var DEFAULT_POLL_INTERVAL_MS = 1e3;
|
|
42
|
+
var REPAIR_DEBOUNCE_MS = 25;
|
|
43
|
+
var ACTIVE_GUARD_KEY = /* @__PURE__ */ Symbol.for("wrongstack.activeProjectStateGuard");
|
|
44
|
+
var globalScope = globalThis;
|
|
45
|
+
globalScope[ACTIVE_GUARD_KEY] ??= {};
|
|
46
|
+
var activeGuard = globalScope[ACTIVE_GUARD_KEY];
|
|
47
|
+
function normalizedRoot(root) {
|
|
48
|
+
const resolved = path2.resolve(root);
|
|
49
|
+
return process.platform === "win32" ? resolved.toLowerCase() : resolved;
|
|
50
|
+
}
|
|
51
|
+
function concernsProjectState(filename) {
|
|
52
|
+
if (filename === null) return true;
|
|
53
|
+
const firstSegment = String(filename).replaceAll("\\", "/").split("/")[0];
|
|
54
|
+
return firstSegment?.toLowerCase() === PROJECT_STATE_DIRECTORY;
|
|
55
|
+
}
|
|
56
|
+
async function startProjectStateGuard(projectRoot, options = {}) {
|
|
57
|
+
const root = path2.resolve(projectRoot);
|
|
58
|
+
const directory = path2.join(root, PROJECT_STATE_DIRECTORY);
|
|
59
|
+
const pollIntervalMs = Math.max(25, options.pollIntervalMs ?? DEFAULT_POLL_INTERVAL_MS);
|
|
60
|
+
let closed = false;
|
|
61
|
+
let repairPending = false;
|
|
62
|
+
let repairInFlight;
|
|
63
|
+
let repairTimer;
|
|
64
|
+
const ensureDirectory = async () => {
|
|
65
|
+
await fsp.mkdir(directory, { recursive: true });
|
|
66
|
+
};
|
|
67
|
+
const ensureInvariant = async () => {
|
|
68
|
+
await ensureDirectory();
|
|
69
|
+
try {
|
|
70
|
+
await ensureProjectGitignore(root);
|
|
71
|
+
} catch (error) {
|
|
72
|
+
options.onError?.(error);
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
const scheduleRepair = () => {
|
|
76
|
+
if (closed) return;
|
|
77
|
+
repairPending = true;
|
|
78
|
+
if (repairInFlight || repairTimer) return;
|
|
79
|
+
repairTimer = setTimeout(() => {
|
|
80
|
+
repairTimer = void 0;
|
|
81
|
+
repairInFlight = (async () => {
|
|
82
|
+
while (!closed && repairPending) {
|
|
83
|
+
repairPending = false;
|
|
84
|
+
try {
|
|
85
|
+
const rootState = await fsp.stat(root).catch(() => void 0);
|
|
86
|
+
if (!rootState?.isDirectory()) return;
|
|
87
|
+
await ensureInvariant();
|
|
88
|
+
} catch (error) {
|
|
89
|
+
options.onError?.(error);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
})().finally(() => {
|
|
93
|
+
repairInFlight = void 0;
|
|
94
|
+
if (repairPending && !closed) scheduleRepair();
|
|
95
|
+
});
|
|
96
|
+
}, REPAIR_DEBOUNCE_MS);
|
|
97
|
+
repairTimer.unref?.();
|
|
98
|
+
};
|
|
99
|
+
await ensureDirectory();
|
|
100
|
+
await ensureProjectGitignore(root).catch((error) => options.onError?.(error));
|
|
101
|
+
let watcher;
|
|
102
|
+
try {
|
|
103
|
+
watcher = fs2.watch(root, { persistent: false }, (_eventType, filename) => {
|
|
104
|
+
if (concernsProjectState(filename) || String(filename).toLowerCase() === ".gitignore") {
|
|
105
|
+
scheduleRepair();
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
watcher.on("error", (error) => {
|
|
109
|
+
options.onError?.(error);
|
|
110
|
+
watcher = void 0;
|
|
111
|
+
scheduleRepair();
|
|
112
|
+
});
|
|
113
|
+
} catch (error) {
|
|
114
|
+
options.onError?.(error);
|
|
115
|
+
}
|
|
116
|
+
const poll = setInterval(scheduleRepair, pollIntervalMs);
|
|
117
|
+
poll.unref?.();
|
|
118
|
+
return {
|
|
119
|
+
directory,
|
|
120
|
+
close() {
|
|
121
|
+
if (closed) return;
|
|
122
|
+
closed = true;
|
|
123
|
+
clearInterval(poll);
|
|
124
|
+
if (repairTimer) clearTimeout(repairTimer);
|
|
125
|
+
repairTimer = void 0;
|
|
126
|
+
try {
|
|
127
|
+
watcher?.close();
|
|
128
|
+
} catch {
|
|
129
|
+
}
|
|
130
|
+
watcher = void 0;
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
async function activateProjectStateGuard(projectRoot, options = {}) {
|
|
135
|
+
const root = normalizedRoot(projectRoot);
|
|
136
|
+
if (activeGuard.root === root && activeGuard.guard) return activeGuard.guard;
|
|
137
|
+
const next = await startProjectStateGuard(projectRoot, options);
|
|
138
|
+
const previous = activeGuard.guard;
|
|
139
|
+
activeGuard.root = root;
|
|
140
|
+
activeGuard.guard = next;
|
|
141
|
+
previous?.close();
|
|
142
|
+
return next;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
export {
|
|
146
|
+
configHistoryDir,
|
|
147
|
+
configSlug,
|
|
148
|
+
backupConfigFile,
|
|
149
|
+
startProjectStateGuard,
|
|
150
|
+
activateProjectStateGuard
|
|
151
|
+
};
|
|
152
|
+
//# sourceMappingURL=chunk-ZT7JNIGX.js.map
|
|
@@ -104,8 +104,16 @@ export declare class AgentMonitorService {
|
|
|
104
104
|
*
|
|
105
105
|
* Entries already in the ring win: a live subagent's in-memory segment is
|
|
106
106
|
* newer than its JSONL, which is only written when a segment closes.
|
|
107
|
+
*
|
|
108
|
+
* `only` restricts BOTH the disk scan and the returned set to a known list of
|
|
109
|
+
* subagent ids. This is how a session gets ITS OWN subagents back: the
|
|
110
|
+
* transcripts directory is shared by every session of the project, so the
|
|
111
|
+
* unfiltered form hands each of four open tabs the union of all four tabs'
|
|
112
|
+
* workers. The caller derives the list from the session's own journal
|
|
113
|
+
* (`deriveSessionAgents`), which is the only record that says which agents
|
|
114
|
+
* belong to which session.
|
|
107
115
|
*/
|
|
108
|
-
loadSessionsFromDisk(): Promise<AgentVirtualSession[]>;
|
|
116
|
+
loadSessionsFromDisk(only?: readonly string[]): Promise<AgentVirtualSession[]>;
|
|
109
117
|
private _readTranscriptFile;
|
|
110
118
|
/** Get a specific agent's virtual session, or undefined. */
|
|
111
119
|
getSession(subagentId: string): AgentVirtualSession | undefined;
|
|
@@ -36,7 +36,7 @@ export interface AgentFactoryResult {
|
|
|
36
36
|
* thrown here are swallowed so a flaky cleanup can't mask the task's
|
|
37
37
|
* real result.
|
|
38
38
|
*/
|
|
39
|
-
dispose?: ((
|
|
39
|
+
dispose?: (() => Promise<void> | void) | undefined;
|
|
40
40
|
}
|
|
41
41
|
export interface AgentRunnerOptions {
|
|
42
42
|
factory: AgentFactory;
|
|
@@ -1,2 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Number of live prompt-cache entries.
|
|
3
|
+
*
|
|
4
|
+
* Exposed so the "one entry per role, regardless of how many times the overlay
|
|
5
|
+
* is rewritten" bound above is testable. The old fingerprint-in-key scheme grew
|
|
6
|
+
* this without limit and nothing could observe it.
|
|
7
|
+
*/
|
|
8
|
+
export declare function agentPromptCacheSize(): number;
|
|
1
9
|
export declare function agentPrompt(id: string): string;
|
|
2
10
|
//# sourceMappingURL=agent-prompts.d.ts.map
|
|
@@ -23,13 +23,33 @@ import { WAVE3_AGENTS } from './phase8-wave3-products.js';
|
|
|
23
23
|
import { META_AGENTS } from './phase9-meta.js';
|
|
24
24
|
import { WAVE4_AGENTS } from './phase9-wave4-platform-meta.js';
|
|
25
25
|
import { ROLE_SKILL_SETS, SHADOW_AGENT_SKILLS } from './role-skills.js';
|
|
26
|
-
import type { AgentDefinition } from './types.js';
|
|
26
|
+
import type { AgentCapability, AgentDefinition } from './types.js';
|
|
27
27
|
export * from './capability-manifest.js';
|
|
28
28
|
export * from './phase3-wave1-platform.js';
|
|
29
29
|
export * from './phase3-wave2-meta.js';
|
|
30
30
|
export * from './phase8-wave3-products.js';
|
|
31
31
|
export * from './phase9-wave4-platform-meta.js';
|
|
32
|
+
export * from './project-agent-auto-optimize.js';
|
|
33
|
+
export * from './project-agent-capture-window.js';
|
|
34
|
+
export * from './project-agent-capture.js';
|
|
35
|
+
export * from './project-agent-config-io.js';
|
|
36
|
+
export * from './project-agent-config-validation.js';
|
|
37
|
+
export * from './project-agent-consolidation.js';
|
|
38
|
+
export * from './project-agent-directive-outcome.js';
|
|
39
|
+
export * from './project-agent-files.js';
|
|
40
|
+
export * from './project-agent-identity-types.js';
|
|
32
41
|
export * from './project-agent-identity.js';
|
|
42
|
+
export * from './project-agent-knowledge-manifests.js';
|
|
43
|
+
export * from './project-agent-learning-entries.js';
|
|
44
|
+
export * from './project-agent-learning-normalize.js';
|
|
45
|
+
export * from './project-agent-learning-policy.js';
|
|
46
|
+
export * from './project-agent-learning-structured.js';
|
|
47
|
+
export * from './project-agent-optimizer.js';
|
|
48
|
+
export * from './project-agent-paths.js';
|
|
49
|
+
export * from './project-agent-profile.js';
|
|
50
|
+
export * from './project-agent-quarantine.js';
|
|
51
|
+
export * from './project-agent-roster.js';
|
|
52
|
+
export * from './project-agent-skill-layer.js';
|
|
33
53
|
export * from './role-skills.js';
|
|
34
54
|
export * from './types.js';
|
|
35
55
|
export { BUILD_AGENTS, DELIVERY_AGENTS, DISCOVERY_AGENTS, DOMAIN_AGENTS, KNOWLEDGE_AGENTS, META_AGENTS, PLANNING_AGENTS, REVIEW_AGENTS, VERIFY_AGENTS, WAVE1_AGENTS, WAVE2_AGENTS, WAVE3_AGENTS, WAVE4_AGENTS, };
|
|
@@ -53,5 +73,17 @@ export declare const AGENTS_BY_PHASE: {
|
|
|
53
73
|
export declare const AGENT_CATALOG: Record<string, AgentDefinition>;
|
|
54
74
|
/** Role lookup helper. Returns undefined for unknown roles. */
|
|
55
75
|
export declare function getAgentDefinition(role: string): AgentDefinition | undefined;
|
|
76
|
+
/**
|
|
77
|
+
* Role → dispatcher rationale, for every role that declares one.
|
|
78
|
+
*
|
|
79
|
+
* Derived from the catalog rather than hand-listed. There used to be four
|
|
80
|
+
* hand-maintained `WAVE*_ROLE_METAS` maps beside the agent arrays; nothing
|
|
81
|
+
* read them, and `WAVE2_ROLE_METAS` had drifted to carry six roles that live
|
|
82
|
+
* in `WAVE4_AGENTS` — a duplicate set no consumer would ever have noticed
|
|
83
|
+
* because the map itself was dead. Deriving from `AGENT_CATALOG` makes that
|
|
84
|
+
* class of drift impossible: a role is listed here exactly when its own
|
|
85
|
+
* `capability.rationale` is set.
|
|
86
|
+
*/
|
|
87
|
+
export declare const ROLE_DISPATCH_RATIONALE: Record<string, NonNullable<AgentCapability['rationale']>>;
|
|
56
88
|
export { ROLE_SKILL_SETS, SHADOW_AGENT_SKILLS };
|
|
57
89
|
//# sourceMappingURL=index.d.ts.map
|