@goondocks/myco 0.6.5 → 0.10.0
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/.claude-plugin/marketplace.json +1 -5
- package/.claude-plugin/plugin.json +3 -3
- package/CONTRIBUTING.md +37 -30
- package/README.md +81 -28
- package/bin/myco-run +2 -0
- package/dist/agent-run-CGXF5PPC.js +34 -0
- package/dist/agent-run-CGXF5PPC.js.map +1 -0
- package/dist/agent-tasks-T7NVI3R7.js +180 -0
- package/dist/agent-tasks-T7NVI3R7.js.map +1 -0
- package/dist/chunk-5LPERML5.js +486 -0
- package/dist/chunk-5LPERML5.js.map +1 -0
- package/dist/chunk-5PEUFJ6U.js +92 -0
- package/dist/chunk-5PEUFJ6U.js.map +1 -0
- package/dist/chunk-5QERXFH7.js +26 -0
- package/dist/chunk-5QERXFH7.js.map +1 -0
- package/dist/{chunk-4DYD4HHG.js → chunk-5SDH75YC.js} +2 -2
- package/dist/chunk-76ZO5RGT.js +150 -0
- package/dist/chunk-76ZO5RGT.js.map +1 -0
- package/dist/chunk-AEJS57ZK.js +26 -0
- package/dist/chunk-AEJS57ZK.js.map +1 -0
- package/dist/chunk-C3AEZ3BZ.js +22 -0
- package/dist/chunk-C3AEZ3BZ.js.map +1 -0
- package/dist/chunk-CUDM5YJY.js +294 -0
- package/dist/chunk-CUDM5YJY.js.map +1 -0
- package/dist/chunk-D6DXYAFK.js +93 -0
- package/dist/chunk-D6DXYAFK.js.map +1 -0
- package/dist/chunk-D7TYRPRM.js +7312 -0
- package/dist/chunk-D7TYRPRM.js.map +1 -0
- package/dist/chunk-E4VLWIJC.js +2 -0
- package/dist/chunk-ENWBFX7F.js +50 -0
- package/dist/chunk-ENWBFX7F.js.map +1 -0
- package/dist/chunk-FFQES5MC.js +904 -0
- package/dist/chunk-FFQES5MC.js.map +1 -0
- package/dist/chunk-FMIWFRAM.js +41 -0
- package/dist/chunk-FMIWFRAM.js.map +1 -0
- package/dist/chunk-FPMEIN2W.js +66 -0
- package/dist/chunk-FPMEIN2W.js.map +1 -0
- package/dist/chunk-G2LQBFE3.js +35 -0
- package/dist/chunk-G2LQBFE3.js.map +1 -0
- package/dist/chunk-IB76KGBY.js +2 -0
- package/dist/{chunk-AHZN4Z34.js → chunk-J4RVYUH4.js} +2 -2
- package/dist/{chunk-N33KUCFP.js → chunk-JTYZRPX5.js} +1 -9
- package/dist/chunk-JTYZRPX5.js.map +1 -0
- package/dist/{chunk-ERG2IEWX.js → chunk-KH64DHOY.js} +3 -7413
- package/dist/chunk-KH64DHOY.js.map +1 -0
- package/dist/chunk-LPUQPDC2.js +19 -0
- package/dist/chunk-LPUQPDC2.js.map +1 -0
- package/dist/chunk-M5XWW7UI.js +97 -0
- package/dist/chunk-M5XWW7UI.js.map +1 -0
- package/dist/chunk-MAZOVVDU.js +305 -0
- package/dist/chunk-MAZOVVDU.js.map +1 -0
- package/dist/{chunk-54WVLTKD.js → chunk-MKKXCCQ5.js} +33 -17
- package/dist/chunk-MKKXCCQ5.js.map +1 -0
- package/dist/chunk-MSXYUXZR.js +187 -0
- package/dist/chunk-MSXYUXZR.js.map +1 -0
- package/dist/chunk-MYX5NCRH.js +45 -0
- package/dist/chunk-MYX5NCRH.js.map +1 -0
- package/dist/chunk-RJMXDUMA.js +40 -0
- package/dist/chunk-RJMXDUMA.js.map +1 -0
- package/dist/chunk-S6I62FAH.js +92 -0
- package/dist/chunk-S6I62FAH.js.map +1 -0
- package/dist/chunk-U7UUJ4FD.js +180 -0
- package/dist/chunk-U7UUJ4FD.js.map +1 -0
- package/dist/{chunk-HIN3UVOG.js → chunk-V7XG6V6C.js} +20 -11
- package/dist/chunk-V7XG6V6C.js.map +1 -0
- package/dist/chunk-W6HI4CCS.js +162 -0
- package/dist/chunk-W6HI4CCS.js.map +1 -0
- package/dist/{chunk-F7GAYVWF.js → chunk-WXSJKESH.js} +96 -9
- package/dist/chunk-WXSJKESH.js.map +1 -0
- package/dist/chunk-WZZH3YXJ.js +601 -0
- package/dist/chunk-WZZH3YXJ.js.map +1 -0
- package/dist/chunk-XLY3REL3.js +165 -0
- package/dist/chunk-XLY3REL3.js.map +1 -0
- package/dist/{chunk-4B5RO2YV.js → chunk-YZMNEIFI.js} +33 -43
- package/dist/chunk-YZMNEIFI.js.map +1 -0
- package/dist/chunk-ZESTWGJT.js +116 -0
- package/dist/chunk-ZESTWGJT.js.map +1 -0
- package/dist/chunk-ZMW6KQX2.js +103 -0
- package/dist/chunk-ZMW6KQX2.js.map +1 -0
- package/dist/cli-6CPFJGRZ.js +139 -0
- package/dist/cli-6CPFJGRZ.js.map +1 -0
- package/dist/client-B27SN5QG.js +15 -0
- package/dist/client-EYOTW3JU.js +19 -0
- package/dist/{config-IBS6KOLQ.js → config-G3CSGI7P.js} +21 -34
- package/dist/config-G3CSGI7P.js.map +1 -0
- package/dist/detect-H5OPI7GD.js +17 -0
- package/dist/detect-H5OPI7GD.js.map +1 -0
- package/dist/detect-providers-AZ6DEQU7.js +26 -0
- package/dist/detect-providers-AZ6DEQU7.js.map +1 -0
- package/dist/doctor-RHHWJTMB.js +258 -0
- package/dist/doctor-RHHWJTMB.js.map +1 -0
- package/dist/executor-A5C5KDLP.js +1454 -0
- package/dist/executor-A5C5KDLP.js.map +1 -0
- package/dist/init-ARJROOWV.js +198 -0
- package/dist/init-ARJROOWV.js.map +1 -0
- package/dist/init-wizard-XNFOZCEB.js +294 -0
- package/dist/init-wizard-XNFOZCEB.js.map +1 -0
- package/dist/llm-XJFHRFHB.js +17 -0
- package/dist/llm-XJFHRFHB.js.map +1 -0
- package/dist/loader-GKXR5ONU.js +28 -0
- package/dist/loader-GKXR5ONU.js.map +1 -0
- package/dist/loader-PZ7ZRSA4.js +22 -0
- package/dist/loader-PZ7ZRSA4.js.map +1 -0
- package/dist/{chunk-F7PGDD2X.js → logs-LXHPDKUA.js} +74 -5
- package/dist/logs-LXHPDKUA.js.map +1 -0
- package/dist/machine-id-RCM7TXPJ.js +13 -0
- package/dist/machine-id-RCM7TXPJ.js.map +1 -0
- package/dist/main-PVX6R3I6.js +5065 -0
- package/dist/main-PVX6R3I6.js.map +1 -0
- package/dist/openai-embeddings-ST3B6GW7.js +14 -0
- package/dist/openai-embeddings-ST3B6GW7.js.map +1 -0
- package/dist/openrouter-HJHOO3EO.js +14 -0
- package/dist/openrouter-HJHOO3EO.js.map +1 -0
- package/dist/post-compact-LR3DSGT3.js +26 -0
- package/dist/post-compact-LR3DSGT3.js.map +1 -0
- package/dist/post-tool-use-SOFVNFU3.js +56 -0
- package/dist/post-tool-use-SOFVNFU3.js.map +1 -0
- package/dist/post-tool-use-failure-2CZZZASB.js +28 -0
- package/dist/post-tool-use-failure-2CZZZASB.js.map +1 -0
- package/dist/pre-compact-3E3D6565.js +25 -0
- package/dist/pre-compact-3E3D6565.js.map +1 -0
- package/dist/provider-check-SOTDYLJE.js +12 -0
- package/dist/provider-check-SOTDYLJE.js.map +1 -0
- package/dist/registry-WVZG6R2R.js +25 -0
- package/dist/registry-WVZG6R2R.js.map +1 -0
- package/dist/resolution-events-UPHJJLDQ.js +15 -0
- package/dist/resolution-events-UPHJJLDQ.js.map +1 -0
- package/dist/resolve-3FEUV462.js +9 -0
- package/dist/resolve-3FEUV462.js.map +1 -0
- package/dist/{restart-UIP7US4U.js → restart-XIUFVS33.js} +10 -6
- package/dist/{restart-UIP7US4U.js.map → restart-XIUFVS33.js.map} +1 -1
- package/dist/search-VB6Z2ZXV.js +91 -0
- package/dist/search-VB6Z2ZXV.js.map +1 -0
- package/dist/{server-43KSJ65Q.js → server-AKPBRP6Z.js} +267 -524
- package/dist/server-AKPBRP6Z.js.map +1 -0
- package/dist/session-UVZS6CY5.js +69 -0
- package/dist/session-UVZS6CY5.js.map +1 -0
- package/dist/session-end-YMQ44U6Z.js +38 -0
- package/dist/session-end-YMQ44U6Z.js.map +1 -0
- package/dist/session-start-3754HF3N.js +170 -0
- package/dist/session-start-3754HF3N.js.map +1 -0
- package/dist/setup-digest-4KDSXAIV.js +15 -0
- package/dist/setup-digest-4KDSXAIV.js.map +1 -0
- package/dist/setup-llm-NWHOPJUV.js +81 -0
- package/dist/setup-llm-NWHOPJUV.js.map +1 -0
- package/dist/src/agent/definitions/agent.yaml +35 -0
- package/dist/src/agent/definitions/tasks/digest-only.yaml +84 -0
- package/dist/src/agent/definitions/tasks/extract-only.yaml +87 -0
- package/dist/src/agent/definitions/tasks/full-intelligence.yaml +472 -0
- package/dist/src/agent/definitions/tasks/graph-maintenance.yaml +92 -0
- package/dist/src/agent/definitions/tasks/review-session.yaml +132 -0
- package/dist/src/agent/definitions/tasks/supersession-sweep.yaml +86 -0
- package/dist/src/agent/definitions/tasks/title-summary.yaml +88 -0
- package/dist/src/agent/prompts/agent.md +121 -0
- package/dist/src/agent/prompts/orchestrator.md +91 -0
- package/dist/src/cli.js +1 -8
- package/dist/src/cli.js.map +1 -1
- package/dist/src/daemon/main.js +1 -8
- package/dist/src/daemon/main.js.map +1 -1
- package/dist/src/hooks/post-tool-use.js +3 -50
- package/dist/src/hooks/post-tool-use.js.map +1 -1
- package/dist/src/hooks/session-end.js +3 -32
- package/dist/src/hooks/session-end.js.map +1 -1
- package/dist/src/hooks/session-start.js +2 -8
- package/dist/src/hooks/session-start.js.map +1 -1
- package/dist/src/hooks/stop.js +3 -42
- package/dist/src/hooks/stop.js.map +1 -1
- package/dist/src/hooks/user-prompt-submit.js +3 -53
- package/dist/src/hooks/user-prompt-submit.js.map +1 -1
- package/dist/src/mcp/server.js +1 -8
- package/dist/src/mcp/server.js.map +1 -1
- package/dist/src/prompts/digest-system.md +1 -1
- package/dist/src/symbionts/manifests/claude-code.yaml +16 -0
- package/dist/src/symbionts/manifests/cursor.yaml +14 -0
- package/dist/stats-CDQXOTEC.js +94 -0
- package/dist/stats-CDQXOTEC.js.map +1 -0
- package/dist/stop-WSFGRPXZ.js +42 -0
- package/dist/stop-WSFGRPXZ.js.map +1 -0
- package/dist/stop-failure-4FR7574F.js +26 -0
- package/dist/stop-failure-4FR7574F.js.map +1 -0
- package/dist/subagent-start-7SGBXJYP.js +26 -0
- package/dist/subagent-start-7SGBXJYP.js.map +1 -0
- package/dist/subagent-stop-MRVTNX3V.js +28 -0
- package/dist/subagent-stop-MRVTNX3V.js.map +1 -0
- package/dist/task-completed-XXPYPSRV.js +27 -0
- package/dist/task-completed-XXPYPSRV.js.map +1 -0
- package/dist/team-XMHYCKFF.js +251 -0
- package/dist/team-XMHYCKFF.js.map +1 -0
- package/dist/ui/assets/index-BGbil7f1.css +1 -0
- package/dist/ui/assets/index-CPA_uq_j.js +794 -0
- package/dist/ui/favicon.svg +7 -7
- package/dist/ui/fonts/Inter-Variable.woff2 +0 -0
- package/dist/ui/fonts/JetBrainsMono-Variable.woff2 +0 -0
- package/dist/ui/fonts/Newsreader-Italic-Variable.woff2 +0 -0
- package/dist/ui/fonts/Newsreader-Variable.woff2 +0 -0
- package/dist/ui/index.html +2 -2
- package/dist/update-W3UFZU4G.js +79 -0
- package/dist/update-W3UFZU4G.js.map +1 -0
- package/dist/user-prompt-submit-LSWCYUW3.js +59 -0
- package/dist/user-prompt-submit-LSWCYUW3.js.map +1 -0
- package/dist/{verify-X272WGBD.js → verify-O7TQ5DDY.js} +17 -22
- package/dist/verify-O7TQ5DDY.js.map +1 -0
- package/dist/{version-XE4GYTBV.js → version-VWWY7SPQ.js} +3 -4
- package/dist/version-VWWY7SPQ.js.map +1 -0
- package/hooks/hooks.json +82 -5
- package/package.json +6 -3
- package/skills/myco/SKILL.md +10 -10
- package/skills/myco/references/cli-usage.md +15 -13
- package/skills/myco/references/vault-status.md +3 -3
- package/skills/myco/references/wisdom.md +4 -4
- package/skills/myco-curate/SKILL.md +86 -0
- package/dist/chunk-4B5RO2YV.js.map +0 -1
- package/dist/chunk-4RMSHZE4.js +0 -107
- package/dist/chunk-4RMSHZE4.js.map +0 -1
- package/dist/chunk-54WVLTKD.js.map +0 -1
- package/dist/chunk-5LMRZDH3.js +0 -65
- package/dist/chunk-5LMRZDH3.js.map +0 -1
- package/dist/chunk-6FQISQNA.js +0 -61
- package/dist/chunk-6FQISQNA.js.map +0 -1
- package/dist/chunk-DYDBF5W6.js +0 -147
- package/dist/chunk-DYDBF5W6.js.map +0 -1
- package/dist/chunk-ERG2IEWX.js.map +0 -1
- package/dist/chunk-F7GAYVWF.js.map +0 -1
- package/dist/chunk-F7PGDD2X.js.map +0 -1
- package/dist/chunk-GENQ5QGP.js +0 -37
- package/dist/chunk-GENQ5QGP.js.map +0 -1
- package/dist/chunk-HIN3UVOG.js.map +0 -1
- package/dist/chunk-HYVT345Y.js +0 -159
- package/dist/chunk-HYVT345Y.js.map +0 -1
- package/dist/chunk-LEK6DEAE.js +0 -113
- package/dist/chunk-LEK6DEAE.js.map +0 -1
- package/dist/chunk-MDLSAFPP.js +0 -99
- package/dist/chunk-MDLSAFPP.js.map +0 -1
- package/dist/chunk-N33KUCFP.js.map +0 -1
- package/dist/chunk-O6TBHGVO.js +0 -168
- package/dist/chunk-O6TBHGVO.js.map +0 -1
- package/dist/chunk-OEGZ5YTJ.js +0 -56
- package/dist/chunk-OEGZ5YTJ.js.map +0 -1
- package/dist/chunk-P723N2LP.js +0 -147
- package/dist/chunk-P723N2LP.js.map +0 -1
- package/dist/chunk-RGVBGTD6.js +0 -21
- package/dist/chunk-RGVBGTD6.js.map +0 -1
- package/dist/chunk-TK7A4RX7.js +0 -1085
- package/dist/chunk-TK7A4RX7.js.map +0 -1
- package/dist/chunk-TWSTAVLO.js +0 -132
- package/dist/chunk-TWSTAVLO.js.map +0 -1
- package/dist/chunk-V6BJVYNH.js +0 -4423
- package/dist/chunk-V6BJVYNH.js.map +0 -1
- package/dist/chunk-XH34FX4C.js +0 -43
- package/dist/chunk-XH34FX4C.js.map +0 -1
- package/dist/chunk-YRIIBPJD.js +0 -86
- package/dist/chunk-YRIIBPJD.js.map +0 -1
- package/dist/cli-OJYHLO4Y.js +0 -97
- package/dist/cli-OJYHLO4Y.js.map +0 -1
- package/dist/client-SS3C5MF6.js +0 -12
- package/dist/config-IBS6KOLQ.js.map +0 -1
- package/dist/curate-4CKEMOPV.js +0 -78
- package/dist/curate-4CKEMOPV.js.map +0 -1
- package/dist/detect-providers-LFIVJYQO.js +0 -35
- package/dist/detect-providers-LFIVJYQO.js.map +0 -1
- package/dist/digest-ZLARHLLY.js +0 -85
- package/dist/digest-ZLARHLLY.js.map +0 -1
- package/dist/init-3LVKVQ4L.js +0 -109
- package/dist/init-3LVKVQ4L.js.map +0 -1
- package/dist/logs-6CWVP574.js +0 -84
- package/dist/logs-6CWVP574.js.map +0 -1
- package/dist/main-RB727YRP.js +0 -5836
- package/dist/main-RB727YRP.js.map +0 -1
- package/dist/rebuild-QWVVCBCZ.js +0 -64
- package/dist/rebuild-QWVVCBCZ.js.map +0 -1
- package/dist/reprocess-YG3WLUI2.js +0 -79
- package/dist/reprocess-YG3WLUI2.js.map +0 -1
- package/dist/search-BQLBW5CS.js +0 -120
- package/dist/search-BQLBW5CS.js.map +0 -1
- package/dist/server-43KSJ65Q.js.map +0 -1
- package/dist/session-F326AWCH.js +0 -44
- package/dist/session-F326AWCH.js.map +0 -1
- package/dist/session-start-6SHGT2AW.js +0 -192
- package/dist/session-start-6SHGT2AW.js.map +0 -1
- package/dist/setup-digest-X735EZSD.js +0 -15
- package/dist/setup-llm-QBSTQO7N.js +0 -15
- package/dist/src/prompts/classification.md +0 -43
- package/dist/stats-QBLIEFWL.js +0 -58
- package/dist/stats-QBLIEFWL.js.map +0 -1
- package/dist/templates-XPRBOWCE.js +0 -38
- package/dist/templates-XPRBOWCE.js.map +0 -1
- package/dist/ui/assets/index-CjWGVHhF.css +0 -1
- package/dist/ui/assets/index-Cq-H7wgE.js +0 -369
- package/dist/verify-X272WGBD.js.map +0 -1
- package/skills/setup/SKILL.md +0 -174
- package/skills/setup/references/model-recommendations.md +0 -83
- /package/dist/{chunk-4DYD4HHG.js.map → chunk-5SDH75YC.js.map} +0 -0
- /package/dist/{client-SS3C5MF6.js.map → chunk-E4VLWIJC.js.map} +0 -0
- /package/dist/{setup-digest-X735EZSD.js.map → chunk-IB76KGBY.js.map} +0 -0
- /package/dist/{chunk-AHZN4Z34.js.map → chunk-J4RVYUH4.js.map} +0 -0
- /package/dist/{setup-llm-QBSTQO7N.js.map → client-B27SN5QG.js.map} +0 -0
- /package/dist/{version-XE4GYTBV.js.map → client-EYOTW3JU.js.map} +0 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
syncRow
|
|
4
|
+
} from "./chunk-XLY3REL3.js";
|
|
5
|
+
import {
|
|
6
|
+
getDatabase
|
|
7
|
+
} from "./chunk-MYX5NCRH.js";
|
|
8
|
+
import {
|
|
9
|
+
DEFAULT_MACHINE_ID
|
|
10
|
+
} from "./chunk-76ZO5RGT.js";
|
|
11
|
+
|
|
12
|
+
// src/db/queries/resolution-events.ts
|
|
13
|
+
var DEFAULT_LIST_LIMIT = 100;
|
|
14
|
+
var EVENT_COLUMNS = [
|
|
15
|
+
"id",
|
|
16
|
+
"agent_id",
|
|
17
|
+
"spore_id",
|
|
18
|
+
"action",
|
|
19
|
+
"new_spore_id",
|
|
20
|
+
"reason",
|
|
21
|
+
"session_id",
|
|
22
|
+
"created_at",
|
|
23
|
+
"machine_id",
|
|
24
|
+
"synced_at"
|
|
25
|
+
];
|
|
26
|
+
var SELECT_COLUMNS = EVENT_COLUMNS.join(", ");
|
|
27
|
+
function toResolutionEventRow(row) {
|
|
28
|
+
return {
|
|
29
|
+
id: row.id,
|
|
30
|
+
agent_id: row.agent_id,
|
|
31
|
+
spore_id: row.spore_id,
|
|
32
|
+
action: row.action,
|
|
33
|
+
new_spore_id: row.new_spore_id ?? null,
|
|
34
|
+
reason: row.reason ?? null,
|
|
35
|
+
session_id: row.session_id ?? null,
|
|
36
|
+
created_at: row.created_at,
|
|
37
|
+
machine_id: row.machine_id ?? DEFAULT_MACHINE_ID,
|
|
38
|
+
synced_at: row.synced_at ?? null
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
function insertResolutionEvent(data) {
|
|
42
|
+
const db = getDatabase();
|
|
43
|
+
db.prepare(
|
|
44
|
+
`INSERT INTO resolution_events (
|
|
45
|
+
id, agent_id, spore_id, action, new_spore_id, reason, session_id, created_at, machine_id
|
|
46
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)`
|
|
47
|
+
).run(
|
|
48
|
+
data.id,
|
|
49
|
+
data.agent_id,
|
|
50
|
+
data.spore_id,
|
|
51
|
+
data.action,
|
|
52
|
+
data.new_spore_id ?? null,
|
|
53
|
+
data.reason ?? null,
|
|
54
|
+
data.session_id ?? null,
|
|
55
|
+
data.created_at,
|
|
56
|
+
data.machine_id ?? DEFAULT_MACHINE_ID
|
|
57
|
+
);
|
|
58
|
+
const row = toResolutionEventRow(
|
|
59
|
+
db.prepare(`SELECT ${SELECT_COLUMNS} FROM resolution_events WHERE id = ?`).get(data.id)
|
|
60
|
+
);
|
|
61
|
+
syncRow("resolution_events", row);
|
|
62
|
+
return row;
|
|
63
|
+
}
|
|
64
|
+
function listResolutionEvents(options = {}) {
|
|
65
|
+
const db = getDatabase();
|
|
66
|
+
const conditions = [];
|
|
67
|
+
const params = [];
|
|
68
|
+
if (options.agent_id !== void 0) {
|
|
69
|
+
conditions.push(`agent_id = ?`);
|
|
70
|
+
params.push(options.agent_id);
|
|
71
|
+
}
|
|
72
|
+
if (options.spore_id !== void 0) {
|
|
73
|
+
conditions.push(`spore_id = ?`);
|
|
74
|
+
params.push(options.spore_id);
|
|
75
|
+
}
|
|
76
|
+
const where = conditions.length > 0 ? `WHERE ${conditions.join(" AND ")}` : "";
|
|
77
|
+
const limit = options.limit ?? DEFAULT_LIST_LIMIT;
|
|
78
|
+
params.push(limit);
|
|
79
|
+
const rows = db.prepare(
|
|
80
|
+
`SELECT ${SELECT_COLUMNS}
|
|
81
|
+
FROM resolution_events
|
|
82
|
+
${where}
|
|
83
|
+
ORDER BY created_at DESC
|
|
84
|
+
LIMIT ?`
|
|
85
|
+
).all(...params);
|
|
86
|
+
return rows.map(toResolutionEventRow);
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
export {
|
|
90
|
+
insertResolutionEvent,
|
|
91
|
+
listResolutionEvents
|
|
92
|
+
};
|
|
93
|
+
//# sourceMappingURL=chunk-D6DXYAFK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/db/queries/resolution-events.ts"],"sourcesContent":["/**\n * Resolution event CRUD query helpers.\n *\n * All functions obtain the SQLite instance internally via `getDatabase()`.\n * Queries use positional `?` placeholders throughout (better-sqlite3).\n */\n\nimport { getDatabase } from '@myco/db/client.js';\nimport { DEFAULT_MACHINE_ID } from '@myco/constants.js';\nimport { syncRow } from '@myco/db/queries/team-outbox.js';\n\n// ---------------------------------------------------------------------------\n// Constants\n// ---------------------------------------------------------------------------\n\n/** Default number of events returned by listResolutionEvents when no limit given. */\nconst DEFAULT_LIST_LIMIT = 100;\n\n// ---------------------------------------------------------------------------\n// Types\n// ---------------------------------------------------------------------------\n\n/** Fields required (or optional) when inserting a resolution event. */\nexport interface ResolutionEventInsert {\n id: string;\n agent_id: string;\n spore_id: string;\n action: string;\n created_at: number;\n new_spore_id?: string | null;\n reason?: string | null;\n session_id?: string | null;\n machine_id?: string;\n}\n\n/** Row shape returned from resolution_events queries (all columns). */\nexport interface ResolutionEventRow {\n id: string;\n agent_id: string;\n spore_id: string;\n action: string;\n new_spore_id: string | null;\n reason: string | null;\n session_id: string | null;\n created_at: number;\n machine_id: string;\n synced_at: number | null;\n}\n\n/** Filter options for `listResolutionEvents`. */\nexport interface ListResolutionEventsOptions {\n agent_id?: string;\n spore_id?: string;\n limit?: number;\n}\n\n// ---------------------------------------------------------------------------\n// Column list\n// ---------------------------------------------------------------------------\n\nconst EVENT_COLUMNS = [\n 'id',\n 'agent_id',\n 'spore_id',\n 'action',\n 'new_spore_id',\n 'reason',\n 'session_id',\n 'created_at',\n 'machine_id',\n 'synced_at',\n] as const;\n\nconst SELECT_COLUMNS = EVENT_COLUMNS.join(', ');\n\n// ---------------------------------------------------------------------------\n// Helpers\n// ---------------------------------------------------------------------------\n\n/** Normalize a SQLite result row into a typed ResolutionEventRow. */\nfunction toResolutionEventRow(row: Record<string, unknown>): ResolutionEventRow {\n return {\n id: row.id as string,\n agent_id: row.agent_id as string,\n spore_id: row.spore_id as string,\n action: row.action as string,\n new_spore_id: (row.new_spore_id as string) ?? null,\n reason: (row.reason as string) ?? null,\n session_id: (row.session_id as string) ?? null,\n created_at: row.created_at as number,\n machine_id: (row.machine_id as string) ?? DEFAULT_MACHINE_ID,\n synced_at: (row.synced_at as number) ?? null,\n };\n}\n\n// ---------------------------------------------------------------------------\n// Public API\n// ---------------------------------------------------------------------------\n\n/**\n * Insert a new resolution event.\n */\nexport function insertResolutionEvent(\n data: ResolutionEventInsert,\n): ResolutionEventRow {\n const db = getDatabase();\n\n db.prepare(\n `INSERT INTO resolution_events (\n id, agent_id, spore_id, action, new_spore_id, reason, session_id, created_at, machine_id\n ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)`,\n ).run(\n data.id,\n data.agent_id,\n data.spore_id,\n data.action,\n data.new_spore_id ?? null,\n data.reason ?? null,\n data.session_id ?? null,\n data.created_at,\n data.machine_id ?? DEFAULT_MACHINE_ID,\n );\n\n const row = toResolutionEventRow(\n db.prepare(`SELECT ${SELECT_COLUMNS} FROM resolution_events WHERE id = ?`).get(data.id) as Record<string, unknown>,\n );\n\n syncRow('resolution_events', row);\n\n return row;\n}\n\n/**\n * List resolution events with optional filters, ordered by created_at DESC.\n */\nexport function listResolutionEvents(\n options: ListResolutionEventsOptions = {},\n): ResolutionEventRow[] {\n const db = getDatabase();\n\n const conditions: string[] = [];\n const params: unknown[] = [];\n\n if (options.agent_id !== undefined) {\n conditions.push(`agent_id = ?`);\n params.push(options.agent_id);\n }\n\n if (options.spore_id !== undefined) {\n conditions.push(`spore_id = ?`);\n params.push(options.spore_id);\n }\n\n const where = conditions.length > 0 ? `WHERE ${conditions.join(' AND ')}` : '';\n const limit = options.limit ?? DEFAULT_LIST_LIMIT;\n\n params.push(limit);\n\n const rows = db.prepare(\n `SELECT ${SELECT_COLUMNS}\n FROM resolution_events\n ${where}\n ORDER BY created_at DESC\n LIMIT ?`,\n ).all(...params) as Record<string, unknown>[];\n\n return rows.map(toResolutionEventRow);\n}\n"],"mappings":";;;;;;;;;;;;AAgBA,IAAM,qBAAqB;AA4C3B,IAAM,gBAAgB;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,IAAM,iBAAiB,cAAc,KAAK,IAAI;AAO9C,SAAS,qBAAqB,KAAkD;AAC9E,SAAO;AAAA,IACL,IAAI,IAAI;AAAA,IACR,UAAU,IAAI;AAAA,IACd,UAAU,IAAI;AAAA,IACd,QAAQ,IAAI;AAAA,IACZ,cAAe,IAAI,gBAA2B;AAAA,IAC9C,QAAS,IAAI,UAAqB;AAAA,IAClC,YAAa,IAAI,cAAyB;AAAA,IAC1C,YAAY,IAAI;AAAA,IAChB,YAAa,IAAI,cAAyB;AAAA,IAC1C,WAAY,IAAI,aAAwB;AAAA,EAC1C;AACF;AASO,SAAS,sBACd,MACoB;AACpB,QAAM,KAAK,YAAY;AAEvB,KAAG;AAAA,IACD;AAAA;AAAA;AAAA,EAGF,EAAE;AAAA,IACA,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK,gBAAgB;AAAA,IACrB,KAAK,UAAU;AAAA,IACf,KAAK,cAAc;AAAA,IACnB,KAAK;AAAA,IACL,KAAK,cAAc;AAAA,EACrB;AAEA,QAAM,MAAM;AAAA,IACV,GAAG,QAAQ,UAAU,cAAc,sCAAsC,EAAE,IAAI,KAAK,EAAE;AAAA,EACxF;AAEA,UAAQ,qBAAqB,GAAG;AAEhC,SAAO;AACT;AAKO,SAAS,qBACd,UAAuC,CAAC,GAClB;AACtB,QAAM,KAAK,YAAY;AAEvB,QAAM,aAAuB,CAAC;AAC9B,QAAM,SAAoB,CAAC;AAE3B,MAAI,QAAQ,aAAa,QAAW;AAClC,eAAW,KAAK,cAAc;AAC9B,WAAO,KAAK,QAAQ,QAAQ;AAAA,EAC9B;AAEA,MAAI,QAAQ,aAAa,QAAW;AAClC,eAAW,KAAK,cAAc;AAC9B,WAAO,KAAK,QAAQ,QAAQ;AAAA,EAC9B;AAEA,QAAM,QAAQ,WAAW,SAAS,IAAI,SAAS,WAAW,KAAK,OAAO,CAAC,KAAK;AAC5E,QAAM,QAAQ,QAAQ,SAAS;AAE/B,SAAO,KAAK,KAAK;AAEjB,QAAM,OAAO,GAAG;AAAA,IACd,UAAU,cAAc;AAAA;AAAA,OAErB,KAAK;AAAA;AAAA;AAAA,EAGV,EAAE,IAAI,GAAG,MAAM;AAEf,SAAO,KAAK,IAAI,oBAAoB;AACtC;","names":[]}
|