@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
package/dist/chronicle/sink.d.ts
CHANGED
|
@@ -8,6 +8,19 @@ import type { ChronicleEvent, ChronicleEventInput } from './types.js';
|
|
|
8
8
|
*/
|
|
9
9
|
export interface ChronicleEventSink {
|
|
10
10
|
append(input: ChronicleEventInput): Promise<ChronicleEvent>;
|
|
11
|
+
/**
|
|
12
|
+
* Append many events as ONE unit of work. Optional: adapters that emit a
|
|
13
|
+
* single event per call have nothing to gain, and leaving it optional keeps
|
|
14
|
+
* every existing sink (and test double) valid without a shim.
|
|
15
|
+
*
|
|
16
|
+
* The SQLite journal wraps each append in `BEGIN IMMEDIATE` and, at
|
|
17
|
+
* `synchronous = FULL`, fsyncs on commit. Callers that produce a burst —
|
|
18
|
+
* the file observer reconciling a branch switch, say — turn N transactions
|
|
19
|
+
* and N fsyncs into one by routing through here. SQLite's binding is
|
|
20
|
+
* synchronous, so `Promise.all` over N `append()` calls does NOT overlap
|
|
21
|
+
* them; batching is the only thing that actually helps.
|
|
22
|
+
*/
|
|
23
|
+
appendBatch?(inputs: readonly ChronicleEventInput[]): Promise<ChronicleEvent[]>;
|
|
11
24
|
flush(): Promise<void>;
|
|
12
25
|
stats(): ChronicleJournalStats;
|
|
13
26
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { ChronicleJournalStats, ChroniclePurgeResult } from './journal.js';
|
|
2
2
|
import { ChronicleStorageQuotaError } from './sqlite-journal-quota.js';
|
|
3
|
-
import { CHRONICLE_SQLITE_FILE, LEGACY_JSONL_BOUNDARY_KEY, LEGACY_JSONL_MIGRATION_KEY
|
|
3
|
+
import { CHRONICLE_SQLITE_FILE, LEGACY_JSONL_BOUNDARY_KEY, LEGACY_JSONL_MIGRATION_KEY } from './sqlite-journal-schema.js';
|
|
4
4
|
import { ChronicleSqliteQueryEngine, type ChronicleSqliteQueryEngineOptions } from './sqlite-query.js';
|
|
5
5
|
import { type ChronicleEvent, type ChronicleEventInput, type ChronicleVerifyResult } from './types.js';
|
|
6
|
-
export { CHRONICLE_SQLITE_FILE, ChronicleStorageQuotaError, LEGACY_JSONL_BOUNDARY_KEY, LEGACY_JSONL_MIGRATION_KEY
|
|
6
|
+
export { CHRONICLE_SQLITE_FILE, ChronicleStorageQuotaError, LEGACY_JSONL_BOUNDARY_KEY, LEGACY_JSONL_MIGRATION_KEY };
|
|
7
7
|
export interface ChronicleSqliteJournalOptions {
|
|
8
8
|
/** Directory holding the journal, i.e. `<projectDir>/chronicle`. */
|
|
9
9
|
directory: string;
|
|
@@ -17,6 +17,24 @@ export interface ChronicleSqliteJournalOptions {
|
|
|
17
17
|
/** Aggregate SQLite allocation ceiling across the database, WAL, and SHM files. */
|
|
18
18
|
maxBytes?: number | undefined;
|
|
19
19
|
retentionCheckIntervalMs?: number | undefined;
|
|
20
|
+
/**
|
|
21
|
+
* WAL durability level. Defaults to `'normal'`.
|
|
22
|
+
*
|
|
23
|
+
* In WAL mode `NORMAL` still survives a **process** crash — an aborted
|
|
24
|
+
* agent, an OOM kill, a `taskkill` — because the WAL is already written;
|
|
25
|
+
* only an OS crash or power loss can cost the last commits. `FULL` adds an
|
|
26
|
+
* fsync to every commit to close that last gap.
|
|
27
|
+
*
|
|
28
|
+
* This journal is the highest-volume writer in the runtime (measured at
|
|
29
|
+
* ~7.2GB over 7 days), so that per-commit fsync was the single largest
|
|
30
|
+
* source of disk I/O in the system — paid continuously, for telemetry that
|
|
31
|
+
* is reconstructible from the session logs. Every other SQLite store here
|
|
32
|
+
* (mailbox, kanban, techstack, vector-memory) runs `NORMAL`.
|
|
33
|
+
*
|
|
34
|
+
* Set `'full'` when the deployment genuinely needs power-loss durability
|
|
35
|
+
* for the audit trail.
|
|
36
|
+
*/
|
|
37
|
+
durability?: 'normal' | 'full' | undefined;
|
|
20
38
|
}
|
|
21
39
|
export interface ChronicleSqlitePurgeOptions {
|
|
22
40
|
retentionDays: number;
|
|
@@ -0,0 +1,334 @@
|
|
|
1
|
+
import {
|
|
2
|
+
toErrorMessage
|
|
3
|
+
} from "./chunk-TBRL2RCC.js";
|
|
4
|
+
|
|
5
|
+
// src/types/errors.ts
|
|
6
|
+
var ERROR_CODES = {
|
|
7
|
+
// Provider
|
|
8
|
+
PROVIDER_RATE_LIMITED: "PROVIDER_RATE_LIMITED",
|
|
9
|
+
PROVIDER_AUTH_FAILED: "PROVIDER_AUTH_FAILED",
|
|
10
|
+
PROVIDER_OVERLOADED: "PROVIDER_OVERLOADED",
|
|
11
|
+
PROVIDER_INVALID_REQUEST: "PROVIDER_INVALID_REQUEST",
|
|
12
|
+
PROVIDER_SERVER_ERROR: "PROVIDER_SERVER_ERROR",
|
|
13
|
+
PROVIDER_NETWORK_ERROR: "PROVIDER_NETWORK_ERROR",
|
|
14
|
+
PROVIDER_CONTEXT_OVERFLOW: "PROVIDER_CONTEXT_OVERFLOW",
|
|
15
|
+
// Tool
|
|
16
|
+
TOOL_NOT_FOUND: "TOOL_NOT_FOUND",
|
|
17
|
+
TOOL_PERMISSION_DENIED: "TOOL_PERMISSION_DENIED",
|
|
18
|
+
TOOL_EXECUTION_FAILED: "TOOL_EXECUTION_FAILED",
|
|
19
|
+
TOOL_TIMEOUT: "TOOL_TIMEOUT",
|
|
20
|
+
TOOL_INPUT_INVALID: "TOOL_INPUT_INVALID",
|
|
21
|
+
// Config
|
|
22
|
+
CONFIG_INVALID: "CONFIG_INVALID",
|
|
23
|
+
CONFIG_NOT_FOUND: "CONFIG_NOT_FOUND",
|
|
24
|
+
CONFIG_PARSE_FAILED: "CONFIG_PARSE_FAILED",
|
|
25
|
+
CONFIG_MIGRATION_NEEDED: "CONFIG_MIGRATION_NEEDED",
|
|
26
|
+
// Plugin
|
|
27
|
+
PLUGIN_LOAD_FAILED: "PLUGIN_LOAD_FAILED",
|
|
28
|
+
PLUGIN_API_MISMATCH: "PLUGIN_API_MISMATCH",
|
|
29
|
+
PLUGIN_MISSING_DEPENDENCY: "PLUGIN_MISSING_DEPENDENCY",
|
|
30
|
+
// Agent
|
|
31
|
+
AGENT_ITERATION_LIMIT: "AGENT_ITERATION_LIMIT",
|
|
32
|
+
AGENT_CONTEXT_OVERFLOW: "AGENT_CONTEXT_OVERFLOW",
|
|
33
|
+
AGENT_ABORTED: "AGENT_ABORTED",
|
|
34
|
+
AGENT_RUN_FAILED: "AGENT_RUN_FAILED",
|
|
35
|
+
// Session
|
|
36
|
+
SESSION_NOT_FOUND: "SESSION_NOT_FOUND",
|
|
37
|
+
SESSION_CORRUPTED: "SESSION_CORRUPTED",
|
|
38
|
+
SESSION_WRITE_FAILED: "SESSION_WRITE_FAILED",
|
|
39
|
+
SESSION_ID_REQUIRED: "SESSION_ID_REQUIRED",
|
|
40
|
+
// Container / Registry
|
|
41
|
+
CONTAINER_TOKEN_ALREADY_BOUND: "CONTAINER_TOKEN_ALREADY_BOUND",
|
|
42
|
+
CONTAINER_TOKEN_NOT_BOUND: "CONTAINER_TOKEN_NOT_BOUND",
|
|
43
|
+
CONTAINER_CIRCULAR_DEPENDENCY: "CONTAINER_CIRCULAR_DEPENDENCY",
|
|
44
|
+
REGISTRY_DUPLICATE: "REGISTRY_DUPLICATE",
|
|
45
|
+
REGISTRY_NOT_FOUND: "REGISTRY_NOT_FOUND",
|
|
46
|
+
REGISTRY_INVALID: "REGISTRY_INVALID",
|
|
47
|
+
// File system
|
|
48
|
+
FS_READ_FAILED: "FS_READ_FAILED",
|
|
49
|
+
FS_WRITE_FAILED: "FS_WRITE_FAILED",
|
|
50
|
+
FS_MKDIR_FAILED: "FS_MKDIR_FAILED",
|
|
51
|
+
FS_DELETE_FAILED: "FS_DELETE_FAILED",
|
|
52
|
+
FS_ATOMIC_WRITE_FAILED: "FS_ATOMIC_WRITE_FAILED",
|
|
53
|
+
// SDD (Spec-Driven Development)
|
|
54
|
+
SDD_VALIDATION_FAILED: "SDD_VALIDATION_FAILED",
|
|
55
|
+
SDD_PARSE_FAILED: "SDD_PARSE_FAILED",
|
|
56
|
+
SDD_INVALID_STATE: "SDD_INVALID_STATE",
|
|
57
|
+
SDD_NOT_READY: "SDD_NOT_READY",
|
|
58
|
+
// General
|
|
59
|
+
VALIDATION_ERROR: "VALIDATION_ERROR",
|
|
60
|
+
PARSE_FAILED: "PARSE_FAILED",
|
|
61
|
+
UNKNOWN: "UNKNOWN"
|
|
62
|
+
};
|
|
63
|
+
var WrongStackError = class _WrongStackError extends Error {
|
|
64
|
+
code;
|
|
65
|
+
subsystem;
|
|
66
|
+
severity;
|
|
67
|
+
recoverable;
|
|
68
|
+
context;
|
|
69
|
+
constructor(opts) {
|
|
70
|
+
super(opts.message, { cause: opts.cause });
|
|
71
|
+
this.name = "WrongStackError";
|
|
72
|
+
this.code = opts.code;
|
|
73
|
+
this.subsystem = opts.subsystem;
|
|
74
|
+
this.severity = opts.severity ?? "error";
|
|
75
|
+
this.recoverable = opts.recoverable ?? false;
|
|
76
|
+
this.context = opts.context;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Duck-type guard mirroring {@link ProviderError.isProviderError}.
|
|
80
|
+
*
|
|
81
|
+
* `instanceof WrongStackError` is NOT reliable inside this monorepo: the
|
|
82
|
+
* package builder emits every `@wrongstack/core` subpath (`core`, `types`,
|
|
83
|
+
* `coordination`, `execution`, `extension`, …) as an independent esbuild
|
|
84
|
+
* bundle with `splitting: false`, so each entry inlines its OWN copy of this
|
|
85
|
+
* class. An error constructed by `@wrongstack/providers` (which imports from
|
|
86
|
+
* `@wrongstack/core/types`) therefore fails `instanceof` against the copy
|
|
87
|
+
* baked into `@wrongstack/core/core` — which is where the agent loop and the
|
|
88
|
+
* provider runner live.
|
|
89
|
+
*
|
|
90
|
+
* That mismatch silently downgraded every provider failure to a generic
|
|
91
|
+
* `AgentError` in {@link toWrongStackError}, stripping `kind` / `status` /
|
|
92
|
+
* `body` and blinding the fallback engine and the provider waiting room.
|
|
93
|
+
* Use this guard anywhere the error may have crossed a subpath boundary.
|
|
94
|
+
*/
|
|
95
|
+
static isWrongStackError(err) {
|
|
96
|
+
if (err instanceof _WrongStackError) return true;
|
|
97
|
+
if (!err || typeof err !== "object") return false;
|
|
98
|
+
const e = err;
|
|
99
|
+
return typeof e["name"] === "string" && e["name"].endsWith("Error") && typeof e["code"] === "string" && typeof e["subsystem"] === "string" && typeof e["severity"] === "string" && typeof e["describe"] === "function";
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Render a one-line user-facing description.
|
|
103
|
+
* Subclasses should override for domain-specific formatting.
|
|
104
|
+
*/
|
|
105
|
+
describe() {
|
|
106
|
+
const ctx = this.context ? ` ${formatContext(this.context)}` : "";
|
|
107
|
+
return `${this.code}: ${this.message}${ctx}`;
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
function formatContext(ctx) {
|
|
111
|
+
const parts = Object.entries(ctx).filter(([, v]) => v !== void 0).slice(0, 3).map(([k, v]) => `${k}=${String(v)}`);
|
|
112
|
+
return parts.length > 0 ? `[${parts.join(" ")}]` : "";
|
|
113
|
+
}
|
|
114
|
+
var ToolError = class extends WrongStackError {
|
|
115
|
+
toolName;
|
|
116
|
+
constructor(opts) {
|
|
117
|
+
super({
|
|
118
|
+
message: opts.message,
|
|
119
|
+
code: opts.code,
|
|
120
|
+
subsystem: "tool",
|
|
121
|
+
recoverable: opts.recoverable,
|
|
122
|
+
context: { tool: opts.toolName, ...opts.context },
|
|
123
|
+
cause: opts.cause
|
|
124
|
+
});
|
|
125
|
+
this.name = "ToolError";
|
|
126
|
+
this.toolName = opts.toolName;
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
var ConfigError = class extends WrongStackError {
|
|
130
|
+
constructor(opts) {
|
|
131
|
+
super({
|
|
132
|
+
message: opts.message,
|
|
133
|
+
code: opts.code,
|
|
134
|
+
subsystem: "config",
|
|
135
|
+
severity: "fatal",
|
|
136
|
+
recoverable: false,
|
|
137
|
+
context: opts.context,
|
|
138
|
+
cause: opts.cause
|
|
139
|
+
});
|
|
140
|
+
this.name = "ConfigError";
|
|
141
|
+
}
|
|
142
|
+
};
|
|
143
|
+
var PluginError = class extends WrongStackError {
|
|
144
|
+
pluginName;
|
|
145
|
+
constructor(opts) {
|
|
146
|
+
super({
|
|
147
|
+
message: opts.message,
|
|
148
|
+
code: opts.code,
|
|
149
|
+
subsystem: "plugin",
|
|
150
|
+
severity: "error",
|
|
151
|
+
recoverable: opts.code === ERROR_CODES.PLUGIN_MISSING_DEPENDENCY,
|
|
152
|
+
context: { plugin: opts.pluginName, ...opts.context },
|
|
153
|
+
cause: opts.cause
|
|
154
|
+
});
|
|
155
|
+
this.name = "PluginError";
|
|
156
|
+
this.pluginName = opts.pluginName;
|
|
157
|
+
}
|
|
158
|
+
};
|
|
159
|
+
var AgentError = class extends WrongStackError {
|
|
160
|
+
constructor(opts) {
|
|
161
|
+
super({
|
|
162
|
+
message: opts.message,
|
|
163
|
+
code: opts.code,
|
|
164
|
+
subsystem: "agent",
|
|
165
|
+
severity: opts.code === ERROR_CODES.AGENT_ABORTED ? "warning" : "error",
|
|
166
|
+
recoverable: opts.recoverable ?? opts.code === ERROR_CODES.AGENT_ITERATION_LIMIT,
|
|
167
|
+
context: opts.context,
|
|
168
|
+
cause: opts.cause
|
|
169
|
+
});
|
|
170
|
+
this.name = "AgentError";
|
|
171
|
+
}
|
|
172
|
+
};
|
|
173
|
+
function toWrongStackError(err, code = ERROR_CODES.AGENT_RUN_FAILED) {
|
|
174
|
+
if (WrongStackError.isWrongStackError(err)) return err;
|
|
175
|
+
const message = toErrorMessage(err);
|
|
176
|
+
return new AgentError({
|
|
177
|
+
message,
|
|
178
|
+
code: code === "UNKNOWN" ? ERROR_CODES.AGENT_RUN_FAILED : code,
|
|
179
|
+
cause: err
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
var SessionError = class extends WrongStackError {
|
|
183
|
+
sessionId;
|
|
184
|
+
constructor(opts) {
|
|
185
|
+
super({
|
|
186
|
+
message: opts.message,
|
|
187
|
+
code: opts.code,
|
|
188
|
+
subsystem: "session",
|
|
189
|
+
severity: opts.code === ERROR_CODES.SESSION_WRITE_FAILED ? "error" : "warning",
|
|
190
|
+
recoverable: opts.code !== ERROR_CODES.SESSION_CORRUPTED,
|
|
191
|
+
context: { sessionId: opts.sessionId, ...opts.context },
|
|
192
|
+
cause: opts.cause
|
|
193
|
+
});
|
|
194
|
+
this.name = "SessionError";
|
|
195
|
+
this.sessionId = opts.sessionId;
|
|
196
|
+
}
|
|
197
|
+
};
|
|
198
|
+
var SddError = class extends WrongStackError {
|
|
199
|
+
constructor(opts) {
|
|
200
|
+
super({
|
|
201
|
+
message: opts.message,
|
|
202
|
+
code: opts.code,
|
|
203
|
+
subsystem: "sdd",
|
|
204
|
+
severity: opts.code === ERROR_CODES.SDD_PARSE_FAILED ? "warning" : "error",
|
|
205
|
+
recoverable: opts.code === ERROR_CODES.SDD_NOT_READY,
|
|
206
|
+
context: opts.context,
|
|
207
|
+
cause: opts.cause
|
|
208
|
+
});
|
|
209
|
+
this.name = "SddError";
|
|
210
|
+
}
|
|
211
|
+
};
|
|
212
|
+
var FsError = class extends WrongStackError {
|
|
213
|
+
path;
|
|
214
|
+
constructor(opts) {
|
|
215
|
+
super({
|
|
216
|
+
message: opts.message,
|
|
217
|
+
code: opts.code,
|
|
218
|
+
subsystem: "fs",
|
|
219
|
+
severity: "error",
|
|
220
|
+
recoverable: opts.code !== ERROR_CODES.FS_READ_FAILED,
|
|
221
|
+
context: { path: opts.path, ...opts.context },
|
|
222
|
+
cause: opts.cause
|
|
223
|
+
});
|
|
224
|
+
this.name = "FsError";
|
|
225
|
+
this.path = opts.path;
|
|
226
|
+
}
|
|
227
|
+
};
|
|
228
|
+
var FetchError = class extends WrongStackError {
|
|
229
|
+
status;
|
|
230
|
+
constructor(opts) {
|
|
231
|
+
super({
|
|
232
|
+
message: opts.message,
|
|
233
|
+
code: ERROR_CODES.VALIDATION_ERROR,
|
|
234
|
+
subsystem: "general",
|
|
235
|
+
severity: "error",
|
|
236
|
+
recoverable: opts.status === 429 || opts.status >= 500,
|
|
237
|
+
context: { status: opts.status, ...opts.context },
|
|
238
|
+
cause: opts.cause
|
|
239
|
+
});
|
|
240
|
+
this.name = "FetchError";
|
|
241
|
+
this.status = opts.status;
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
var ToolValidationError = class extends WrongStackError {
|
|
245
|
+
constructor(opts) {
|
|
246
|
+
super({
|
|
247
|
+
message: opts.message,
|
|
248
|
+
code: ERROR_CODES.VALIDATION_ERROR,
|
|
249
|
+
subsystem: "general",
|
|
250
|
+
severity: "error",
|
|
251
|
+
recoverable: false,
|
|
252
|
+
context: { field: opts.field, ...opts.context },
|
|
253
|
+
cause: opts.cause
|
|
254
|
+
});
|
|
255
|
+
this.name = "ToolValidationError";
|
|
256
|
+
}
|
|
257
|
+
};
|
|
258
|
+
var ParseError = class extends WrongStackError {
|
|
259
|
+
source;
|
|
260
|
+
constructor(opts) {
|
|
261
|
+
super({
|
|
262
|
+
message: opts.message,
|
|
263
|
+
code: ERROR_CODES.PARSE_FAILED,
|
|
264
|
+
subsystem: "general",
|
|
265
|
+
severity: "error",
|
|
266
|
+
recoverable: false,
|
|
267
|
+
context: { source: opts.source, ...opts.context },
|
|
268
|
+
cause: opts.cause
|
|
269
|
+
});
|
|
270
|
+
this.name = "ParseError";
|
|
271
|
+
this.source = opts.source;
|
|
272
|
+
}
|
|
273
|
+
};
|
|
274
|
+
function isWrongStackError(err) {
|
|
275
|
+
return err instanceof WrongStackError;
|
|
276
|
+
}
|
|
277
|
+
function isToolError(err) {
|
|
278
|
+
return err instanceof ToolError;
|
|
279
|
+
}
|
|
280
|
+
function isConfigError(err) {
|
|
281
|
+
return err instanceof ConfigError;
|
|
282
|
+
}
|
|
283
|
+
function isPluginError(err) {
|
|
284
|
+
return err instanceof PluginError;
|
|
285
|
+
}
|
|
286
|
+
function isSessionError(err) {
|
|
287
|
+
return err instanceof SessionError;
|
|
288
|
+
}
|
|
289
|
+
function isAgentError(err) {
|
|
290
|
+
return err instanceof AgentError;
|
|
291
|
+
}
|
|
292
|
+
function isFsError(err) {
|
|
293
|
+
return err instanceof FsError;
|
|
294
|
+
}
|
|
295
|
+
function isToolValidationError(err) {
|
|
296
|
+
return err instanceof ToolValidationError;
|
|
297
|
+
}
|
|
298
|
+
function isFetchError(err) {
|
|
299
|
+
return err instanceof FetchError;
|
|
300
|
+
}
|
|
301
|
+
function isParseError(err) {
|
|
302
|
+
return err instanceof ParseError;
|
|
303
|
+
}
|
|
304
|
+
function isSddError(err) {
|
|
305
|
+
return err instanceof SddError;
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
export {
|
|
309
|
+
ERROR_CODES,
|
|
310
|
+
WrongStackError,
|
|
311
|
+
ToolError,
|
|
312
|
+
ConfigError,
|
|
313
|
+
PluginError,
|
|
314
|
+
AgentError,
|
|
315
|
+
toWrongStackError,
|
|
316
|
+
SessionError,
|
|
317
|
+
SddError,
|
|
318
|
+
FsError,
|
|
319
|
+
FetchError,
|
|
320
|
+
ToolValidationError,
|
|
321
|
+
ParseError,
|
|
322
|
+
isWrongStackError,
|
|
323
|
+
isToolError,
|
|
324
|
+
isConfigError,
|
|
325
|
+
isPluginError,
|
|
326
|
+
isSessionError,
|
|
327
|
+
isAgentError,
|
|
328
|
+
isFsError,
|
|
329
|
+
isToolValidationError,
|
|
330
|
+
isFetchError,
|
|
331
|
+
isParseError,
|
|
332
|
+
isSddError
|
|
333
|
+
};
|
|
334
|
+
//# sourceMappingURL=chunk-25LSLC3G.js.map
|