@soleri/core 9.5.0 → 9.7.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.
Files changed (249) hide show
  1. package/dist/adapters/claude-code-adapter.d.ts +27 -0
  2. package/dist/adapters/claude-code-adapter.d.ts.map +1 -0
  3. package/dist/adapters/claude-code-adapter.js +111 -0
  4. package/dist/adapters/claude-code-adapter.js.map +1 -0
  5. package/dist/adapters/index.d.ts +9 -0
  6. package/dist/adapters/index.d.ts.map +1 -0
  7. package/dist/adapters/index.js +10 -0
  8. package/dist/adapters/index.js.map +1 -0
  9. package/dist/adapters/registry.d.ts +21 -0
  10. package/dist/adapters/registry.d.ts.map +1 -0
  11. package/dist/adapters/registry.js +44 -0
  12. package/dist/adapters/registry.js.map +1 -0
  13. package/dist/adapters/types.d.ts +93 -0
  14. package/dist/adapters/types.d.ts.map +1 -0
  15. package/dist/adapters/types.js +10 -0
  16. package/dist/adapters/types.js.map +1 -0
  17. package/dist/brain/brain.d.ts +12 -1
  18. package/dist/brain/brain.d.ts.map +1 -1
  19. package/dist/brain/brain.js +106 -44
  20. package/dist/brain/brain.js.map +1 -1
  21. package/dist/brain/intelligence.d.ts.map +1 -1
  22. package/dist/brain/intelligence.js +36 -30
  23. package/dist/brain/intelligence.js.map +1 -1
  24. package/dist/chat/agent-loop.js +1 -1
  25. package/dist/chat/agent-loop.js.map +1 -1
  26. package/dist/chat/notifications.d.ts.map +1 -1
  27. package/dist/chat/notifications.js +4 -0
  28. package/dist/chat/notifications.js.map +1 -1
  29. package/dist/control/intent-router.d.ts +1 -0
  30. package/dist/control/intent-router.d.ts.map +1 -1
  31. package/dist/control/intent-router.js +11 -5
  32. package/dist/control/intent-router.js.map +1 -1
  33. package/dist/curator/curator.d.ts +4 -0
  34. package/dist/curator/curator.d.ts.map +1 -1
  35. package/dist/curator/curator.js +141 -27
  36. package/dist/curator/curator.js.map +1 -1
  37. package/dist/index.d.ts +22 -2
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/index.js +18 -1
  40. package/dist/index.js.map +1 -1
  41. package/dist/llm/llm-client.d.ts.map +1 -1
  42. package/dist/llm/llm-client.js +1 -0
  43. package/dist/llm/llm-client.js.map +1 -1
  44. package/dist/packs/index.d.ts +3 -2
  45. package/dist/packs/index.d.ts.map +1 -1
  46. package/dist/packs/index.js +3 -2
  47. package/dist/packs/index.js.map +1 -1
  48. package/dist/packs/lockfile.d.ts +23 -1
  49. package/dist/packs/lockfile.d.ts.map +1 -1
  50. package/dist/packs/lockfile.js +50 -4
  51. package/dist/packs/lockfile.js.map +1 -1
  52. package/dist/packs/pack-installer.d.ts +10 -0
  53. package/dist/packs/pack-installer.d.ts.map +1 -1
  54. package/dist/packs/pack-installer.js +69 -2
  55. package/dist/packs/pack-installer.js.map +1 -1
  56. package/dist/packs/pack-lifecycle.d.ts +50 -0
  57. package/dist/packs/pack-lifecycle.d.ts.map +1 -0
  58. package/dist/packs/pack-lifecycle.js +91 -0
  59. package/dist/packs/pack-lifecycle.js.map +1 -0
  60. package/dist/packs/types.d.ts +76 -29
  61. package/dist/packs/types.d.ts.map +1 -1
  62. package/dist/packs/types.js +9 -0
  63. package/dist/packs/types.js.map +1 -1
  64. package/dist/persistence/sqlite-provider.d.ts +5 -1
  65. package/dist/persistence/sqlite-provider.d.ts.map +1 -1
  66. package/dist/persistence/sqlite-provider.js +22 -2
  67. package/dist/persistence/sqlite-provider.js.map +1 -1
  68. package/dist/planning/github-projection.d.ts +11 -9
  69. package/dist/planning/github-projection.d.ts.map +1 -1
  70. package/dist/planning/github-projection.js +47 -43
  71. package/dist/planning/github-projection.js.map +1 -1
  72. package/dist/planning/goal-ancestry.d.ts +72 -0
  73. package/dist/planning/goal-ancestry.d.ts.map +1 -0
  74. package/dist/planning/goal-ancestry.js +137 -0
  75. package/dist/planning/goal-ancestry.js.map +1 -0
  76. package/dist/planning/plan-lifecycle.d.ts +2 -0
  77. package/dist/planning/plan-lifecycle.d.ts.map +1 -1
  78. package/dist/planning/plan-lifecycle.js +1 -0
  79. package/dist/planning/plan-lifecycle.js.map +1 -1
  80. package/dist/planning/planner-types.d.ts +2 -0
  81. package/dist/planning/planner-types.d.ts.map +1 -1
  82. package/dist/plugins/types.d.ts +21 -21
  83. package/dist/queue/pipeline-runner.d.ts.map +1 -1
  84. package/dist/queue/pipeline-runner.js +4 -0
  85. package/dist/queue/pipeline-runner.js.map +1 -1
  86. package/dist/runtime/context-health.d.ts +14 -1
  87. package/dist/runtime/context-health.d.ts.map +1 -1
  88. package/dist/runtime/context-health.js +30 -2
  89. package/dist/runtime/context-health.js.map +1 -1
  90. package/dist/runtime/curator-extra-ops.d.ts.map +1 -1
  91. package/dist/runtime/curator-extra-ops.js +9 -1
  92. package/dist/runtime/curator-extra-ops.js.map +1 -1
  93. package/dist/runtime/facades/memory-facade.d.ts.map +1 -1
  94. package/dist/runtime/facades/memory-facade.js +169 -0
  95. package/dist/runtime/facades/memory-facade.js.map +1 -1
  96. package/dist/runtime/orchestrate-ops.d.ts.map +1 -1
  97. package/dist/runtime/orchestrate-ops.js +133 -4
  98. package/dist/runtime/orchestrate-ops.js.map +1 -1
  99. package/dist/runtime/runtime.d.ts.map +1 -1
  100. package/dist/runtime/runtime.js +128 -90
  101. package/dist/runtime/runtime.js.map +1 -1
  102. package/dist/runtime/session-briefing.d.ts.map +1 -1
  103. package/dist/runtime/session-briefing.js +44 -11
  104. package/dist/runtime/session-briefing.js.map +1 -1
  105. package/dist/runtime/shutdown-registry.d.ts +36 -0
  106. package/dist/runtime/shutdown-registry.d.ts.map +1 -0
  107. package/dist/runtime/shutdown-registry.js +74 -0
  108. package/dist/runtime/shutdown-registry.js.map +1 -0
  109. package/dist/runtime/types.d.ts +10 -1
  110. package/dist/runtime/types.d.ts.map +1 -1
  111. package/dist/session/compaction-evaluator.d.ts +20 -0
  112. package/dist/session/compaction-evaluator.d.ts.map +1 -0
  113. package/dist/session/compaction-evaluator.js +73 -0
  114. package/dist/session/compaction-evaluator.js.map +1 -0
  115. package/dist/session/compaction-policy.d.ts +50 -0
  116. package/dist/session/compaction-policy.d.ts.map +1 -0
  117. package/dist/session/compaction-policy.js +17 -0
  118. package/dist/session/compaction-policy.js.map +1 -0
  119. package/dist/session/handoff-renderer.d.ts +22 -0
  120. package/dist/session/handoff-renderer.d.ts.map +1 -0
  121. package/dist/session/handoff-renderer.js +49 -0
  122. package/dist/session/handoff-renderer.js.map +1 -0
  123. package/dist/session/index.d.ts +6 -0
  124. package/dist/session/index.d.ts.map +1 -0
  125. package/dist/session/index.js +5 -0
  126. package/dist/session/index.js.map +1 -0
  127. package/dist/session/policy-resolver.d.ts +20 -0
  128. package/dist/session/policy-resolver.d.ts.map +1 -0
  129. package/dist/session/policy-resolver.js +28 -0
  130. package/dist/session/policy-resolver.js.map +1 -0
  131. package/dist/skills/sync-skills.d.ts +27 -0
  132. package/dist/skills/sync-skills.d.ts.map +1 -1
  133. package/dist/skills/sync-skills.js +92 -1
  134. package/dist/skills/sync-skills.js.map +1 -1
  135. package/dist/skills/trust-classifier.d.ts +32 -0
  136. package/dist/skills/trust-classifier.d.ts.map +1 -0
  137. package/dist/skills/trust-classifier.js +109 -0
  138. package/dist/skills/trust-classifier.js.map +1 -0
  139. package/dist/subagent/concurrency-manager.d.ts +29 -0
  140. package/dist/subagent/concurrency-manager.d.ts.map +1 -0
  141. package/dist/subagent/concurrency-manager.js +73 -0
  142. package/dist/subagent/concurrency-manager.js.map +1 -0
  143. package/dist/subagent/dispatcher.d.ts +45 -0
  144. package/dist/subagent/dispatcher.d.ts.map +1 -0
  145. package/dist/subagent/dispatcher.js +271 -0
  146. package/dist/subagent/dispatcher.js.map +1 -0
  147. package/dist/subagent/index.d.ts +14 -0
  148. package/dist/subagent/index.d.ts.map +1 -0
  149. package/dist/subagent/index.js +15 -0
  150. package/dist/subagent/index.js.map +1 -0
  151. package/dist/subagent/orphan-reaper.d.ts +37 -0
  152. package/dist/subagent/orphan-reaper.d.ts.map +1 -0
  153. package/dist/subagent/orphan-reaper.js +71 -0
  154. package/dist/subagent/orphan-reaper.js.map +1 -0
  155. package/dist/subagent/result-aggregator.d.ts +7 -0
  156. package/dist/subagent/result-aggregator.d.ts.map +1 -0
  157. package/dist/subagent/result-aggregator.js +57 -0
  158. package/dist/subagent/result-aggregator.js.map +1 -0
  159. package/dist/subagent/task-checkout.d.ts +36 -0
  160. package/dist/subagent/task-checkout.d.ts.map +1 -0
  161. package/dist/subagent/task-checkout.js +52 -0
  162. package/dist/subagent/task-checkout.js.map +1 -0
  163. package/dist/subagent/types.d.ts +114 -0
  164. package/dist/subagent/types.d.ts.map +1 -0
  165. package/dist/subagent/types.js +9 -0
  166. package/dist/subagent/types.js.map +1 -0
  167. package/dist/subagent/workspace-resolver.d.ts +35 -0
  168. package/dist/subagent/workspace-resolver.d.ts.map +1 -0
  169. package/dist/subagent/workspace-resolver.js +99 -0
  170. package/dist/subagent/workspace-resolver.js.map +1 -0
  171. package/dist/transport/http-server.d.ts.map +1 -1
  172. package/dist/transport/http-server.js +49 -3
  173. package/dist/transport/http-server.js.map +1 -1
  174. package/dist/transport/ws-server.d.ts.map +1 -1
  175. package/dist/transport/ws-server.js +7 -0
  176. package/dist/transport/ws-server.js.map +1 -1
  177. package/dist/vault/linking.d.ts +3 -4
  178. package/dist/vault/linking.d.ts.map +1 -1
  179. package/dist/vault/linking.js +79 -32
  180. package/dist/vault/linking.js.map +1 -1
  181. package/dist/vault/vault-maintenance.d.ts.map +1 -1
  182. package/dist/vault/vault-maintenance.js +7 -14
  183. package/dist/vault/vault-maintenance.js.map +1 -1
  184. package/dist/vault/vault-memories.d.ts.map +1 -1
  185. package/dist/vault/vault-memories.js +19 -9
  186. package/dist/vault/vault-memories.js.map +1 -1
  187. package/dist/vault/vault-schema.d.ts +1 -0
  188. package/dist/vault/vault-schema.d.ts.map +1 -1
  189. package/dist/vault/vault-schema.js +20 -0
  190. package/dist/vault/vault-schema.js.map +1 -1
  191. package/dist/vault/vault.d.ts.map +1 -1
  192. package/dist/vault/vault.js +7 -3
  193. package/dist/vault/vault.js.map +1 -1
  194. package/package.json +5 -2
  195. package/src/__tests__/adapters/claude-code-adapter.test.ts +167 -0
  196. package/src/__tests__/adapters/registry.test.ts +100 -0
  197. package/src/__tests__/packs/pack-lifecycle.test.ts +379 -0
  198. package/src/__tests__/subagent/concurrency-manager.test.ts +132 -0
  199. package/src/__tests__/subagent/dispatcher.test.ts +195 -0
  200. package/src/__tests__/subagent/orphan-reaper.test.ts +141 -0
  201. package/src/__tests__/subagent/result-aggregator.test.ts +141 -0
  202. package/src/__tests__/subagent/task-checkout.test.ts +86 -0
  203. package/src/__tests__/subagent/workspace-resolver.test.ts +138 -0
  204. package/src/adapters/claude-code-adapter.ts +163 -0
  205. package/src/adapters/index.ts +22 -0
  206. package/src/adapters/registry.ts +53 -0
  207. package/src/adapters/types.ts +114 -0
  208. package/src/curator/curator.ts +1 -0
  209. package/src/index.ts +78 -1
  210. package/src/packs/index.ts +9 -1
  211. package/src/packs/lockfile.ts +70 -5
  212. package/src/packs/pack-installer.ts +78 -2
  213. package/src/packs/pack-lifecycle.ts +115 -0
  214. package/src/packs/pack-lockfile.test.ts +1 -1
  215. package/src/packs/pack-system.test.ts +1 -1
  216. package/src/packs/types.ts +72 -2
  217. package/src/persistence/sqlite-provider.ts +26 -2
  218. package/src/planning/github-projection.ts +6 -0
  219. package/src/planning/goal-ancestry.test.ts +427 -0
  220. package/src/planning/goal-ancestry.ts +187 -0
  221. package/src/planning/plan-lifecycle.ts +3 -0
  222. package/src/planning/planner-types.ts +2 -0
  223. package/src/runtime/admin-setup-ops.test.ts +9 -4
  224. package/src/runtime/context-health.ts +42 -2
  225. package/src/runtime/orchestrate-ops.ts +153 -1
  226. package/src/runtime/runtime.ts +15 -0
  227. package/src/runtime/session-briefing.test.ts +94 -2
  228. package/src/runtime/session-briefing.ts +48 -12
  229. package/src/runtime/types.ts +6 -0
  230. package/src/session/compaction-evaluator.ts +87 -0
  231. package/src/session/compaction-policy.ts +66 -0
  232. package/src/session/compaction.test.ts +259 -0
  233. package/src/session/handoff-renderer.ts +56 -0
  234. package/src/session/index.ts +12 -0
  235. package/src/session/policy-resolver.ts +34 -0
  236. package/src/skills/sync-skills.ts +114 -1
  237. package/src/skills/trust-classifier.test.ts +252 -0
  238. package/src/skills/trust-classifier.ts +127 -0
  239. package/src/subagent/concurrency-manager.ts +89 -0
  240. package/src/subagent/dispatcher.ts +342 -0
  241. package/src/subagent/index.ts +28 -0
  242. package/src/subagent/orphan-reaper.ts +82 -0
  243. package/src/subagent/result-aggregator.ts +66 -0
  244. package/src/subagent/task-checkout.ts +60 -0
  245. package/src/subagent/types.ts +138 -0
  246. package/src/subagent/workspace-resolver.ts +117 -0
  247. package/src/vault/vault-scaling.test.ts +3 -2
  248. package/vitest.config.ts +2 -0
  249. package/src/hooks/index.ts +0 -6
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Pack Lifecycle Manager — Central state machine for pack lifecycle management.
3
+ *
4
+ * Manages in-memory pack states, validates transitions against VALID_TRANSITIONS,
5
+ * records transition history, and notifies listeners on state changes.
6
+ */
7
+ import type { PackState, PackTransition } from './types.js';
8
+ type TransitionListener = (packId: string, from: PackState, to: PackState, reason?: string) => void;
9
+ export declare class PackLifecycleManager {
10
+ private packs;
11
+ private listeners;
12
+ /**
13
+ * Transition a pack to a new state. Validates against VALID_TRANSITIONS.
14
+ * Throws a descriptive error if the transition is not allowed.
15
+ */
16
+ transition(packId: string, to: PackState, reason?: string): void;
17
+ /**
18
+ * Set initial state without transition validation (for loading from lockfile).
19
+ */
20
+ initState(packId: string, state: PackState): void;
21
+ /**
22
+ * Returns current state of a pack, or undefined if not tracked.
23
+ */
24
+ getState(packId: string): PackState | undefined;
25
+ /**
26
+ * Returns the full transition history for a pack.
27
+ */
28
+ getTransitions(packId: string): PackTransition[];
29
+ /**
30
+ * Register a listener for state transitions. Returns an unsubscribe function.
31
+ */
32
+ onTransition(callback: TransitionListener): () => void;
33
+ /**
34
+ * Remove a pack from tracking entirely.
35
+ */
36
+ remove(packId: string): void;
37
+ /**
38
+ * List all tracked packs with their current state.
39
+ */
40
+ listAll(): Array<{
41
+ packId: string;
42
+ state: PackState;
43
+ }>;
44
+ /**
45
+ * Clear all tracked state and listeners.
46
+ */
47
+ reset(): void;
48
+ }
49
+ export {};
50
+ //# sourceMappingURL=pack-lifecycle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pack-lifecycle.d.ts","sourceRoot":"","sources":["../../src/packs/pack-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAG5D,KAAK,kBAAkB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;AAOpG,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,KAAK,CAAqC;IAClD,OAAO,CAAC,SAAS,CAAiC;IAElD;;;OAGG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IA8BhE;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI;IAIjD;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAI/C;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,EAAE;IAIhD;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM,IAAI;IAUtD;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI5B;;OAEG;IACH,OAAO,IAAI,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,SAAS,CAAA;KAAE,CAAC;IAQtD;;OAEG;IACH,KAAK,IAAI,IAAI;CAId"}
@@ -0,0 +1,91 @@
1
+ /**
2
+ * Pack Lifecycle Manager — Central state machine for pack lifecycle management.
3
+ *
4
+ * Manages in-memory pack states, validates transitions against VALID_TRANSITIONS,
5
+ * records transition history, and notifies listeners on state changes.
6
+ */
7
+ import { VALID_TRANSITIONS } from './types.js';
8
+ export class PackLifecycleManager {
9
+ packs = new Map();
10
+ listeners = [];
11
+ /**
12
+ * Transition a pack to a new state. Validates against VALID_TRANSITIONS.
13
+ * Throws a descriptive error if the transition is not allowed.
14
+ */
15
+ transition(packId, to, reason) {
16
+ const entry = this.packs.get(packId);
17
+ if (!entry) {
18
+ throw new Error(`Pack '${packId}' is not being tracked`);
19
+ }
20
+ const currentState = entry.state;
21
+ const validTargets = VALID_TRANSITIONS[currentState];
22
+ if (!validTargets.includes(to)) {
23
+ throw new Error(`Invalid pack lifecycle transition for '${packId}': '${currentState}' \u2192 '${to}'. Valid targets from '${currentState}': ${validTargets.join(', ')}`);
24
+ }
25
+ const transition = {
26
+ from: currentState,
27
+ to,
28
+ timestamp: Date.now(),
29
+ reason,
30
+ };
31
+ entry.state = to;
32
+ entry.transitions.push(transition);
33
+ for (const listener of this.listeners) {
34
+ listener(packId, currentState, to, reason);
35
+ }
36
+ }
37
+ /**
38
+ * Set initial state without transition validation (for loading from lockfile).
39
+ */
40
+ initState(packId, state) {
41
+ this.packs.set(packId, { state, transitions: [] });
42
+ }
43
+ /**
44
+ * Returns current state of a pack, or undefined if not tracked.
45
+ */
46
+ getState(packId) {
47
+ return this.packs.get(packId)?.state;
48
+ }
49
+ /**
50
+ * Returns the full transition history for a pack.
51
+ */
52
+ getTransitions(packId) {
53
+ return this.packs.get(packId)?.transitions ?? [];
54
+ }
55
+ /**
56
+ * Register a listener for state transitions. Returns an unsubscribe function.
57
+ */
58
+ onTransition(callback) {
59
+ this.listeners.push(callback);
60
+ return () => {
61
+ const idx = this.listeners.indexOf(callback);
62
+ if (idx !== -1) {
63
+ this.listeners.splice(idx, 1);
64
+ }
65
+ };
66
+ }
67
+ /**
68
+ * Remove a pack from tracking entirely.
69
+ */
70
+ remove(packId) {
71
+ this.packs.delete(packId);
72
+ }
73
+ /**
74
+ * List all tracked packs with their current state.
75
+ */
76
+ listAll() {
77
+ const result = [];
78
+ for (const [packId, entry] of this.packs) {
79
+ result.push({ packId, state: entry.state });
80
+ }
81
+ return result;
82
+ }
83
+ /**
84
+ * Clear all tracked state and listeners.
85
+ */
86
+ reset() {
87
+ this.packs.clear();
88
+ this.listeners.length = 0;
89
+ }
90
+ }
91
+ //# sourceMappingURL=pack-lifecycle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pack-lifecycle.js","sourceRoot":"","sources":["../../src/packs/pack-lifecycle.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,33 @@
17
17
  * no-inline-styles.md
18
18
  */
19
19
  import { z } from 'zod';
20
+ /** How much a skill can do — escalates from pure docs to executable code */
21
+ export type TrustLevel = 'markdown_only' | 'assets' | 'scripts';
22
+ /** Where a skill came from */
23
+ export type SourceType = 'builtin' | 'pack' | 'local' | 'github' | 'npm';
24
+ /** A single file in a skill directory, classified by kind */
25
+ export interface SkillInventoryItem {
26
+ /** Relative path within the skill directory */
27
+ path: string;
28
+ /** What kind of file this is */
29
+ kind: 'skill' | 'reference' | 'asset' | 'script';
30
+ }
31
+ /** Extended metadata for a discovered skill */
32
+ export interface SkillMetadata {
33
+ /** Computed trust level based on directory contents */
34
+ trust: TrustLevel;
35
+ /** Where this skill was sourced from */
36
+ source: {
37
+ type: SourceType;
38
+ uri: string;
39
+ };
40
+ /** Engine version compatibility check result */
41
+ compatibility: 'compatible' | 'unknown' | 'invalid';
42
+ /** Engine version declared by the skill (if any) */
43
+ engineVersion?: string;
44
+ /** Classified inventory of all files in the skill directory */
45
+ inventory: SkillInventoryItem[];
46
+ }
20
47
  export declare const PACK_TIERS: readonly ["default", "community", "premium"];
21
48
  export type PackTier = (typeof PACK_TIERS)[number];
22
49
  export declare const packManifestSchema: z.ZodObject<{
@@ -41,19 +68,19 @@ export declare const packManifestSchema: z.ZodObject<{
41
68
  depends: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
42
69
  knowledge: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
43
70
  }, "strip", z.ZodTypeAny, {
44
- knowledge: string[];
45
71
  id: string;
46
72
  description: string;
47
- depends: string[];
48
- requires: string[];
49
73
  provides: string[];
74
+ requires: string[];
75
+ depends: string[];
76
+ knowledge: string[];
50
77
  }, {
51
78
  id: string;
52
79
  description: string;
53
- requires: string[];
54
80
  provides: string[];
55
- knowledge?: string[] | undefined;
81
+ requires: string[];
56
82
  depends?: string[] | undefined;
83
+ knowledge?: string[] | undefined;
57
84
  }>, "many">>>;
58
85
  /** Facade definitions (same as plugin manifest) */
59
86
  facades: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -64,8 +91,8 @@ export declare const packManifestSchema: z.ZodObject<{
64
91
  description: z.ZodDefault<z.ZodOptional<z.ZodString>>;
65
92
  auth: z.ZodDefault<z.ZodOptional<z.ZodEnum<["read", "write", "admin"]>>>;
66
93
  }, "strip", z.ZodTypeAny, {
67
- description: string;
68
94
  name: string;
95
+ description: string;
69
96
  auth: "read" | "write" | "admin";
70
97
  }, {
71
98
  name: string;
@@ -73,11 +100,11 @@ export declare const packManifestSchema: z.ZodObject<{
73
100
  auth?: "read" | "write" | "admin" | undefined;
74
101
  }>, "many">;
75
102
  }, "strip", z.ZodTypeAny, {
76
- description: string;
77
103
  name: string;
104
+ description: string;
78
105
  ops: {
79
- description: string;
80
106
  name: string;
107
+ description: string;
81
108
  auth: "read" | "write" | "admin";
82
109
  }[];
83
110
  }, {
@@ -117,34 +144,34 @@ export declare const packManifestSchema: z.ZodObject<{
117
144
  dir?: string | undefined;
118
145
  }>>;
119
146
  }, "strip", z.ZodTypeAny, {
120
- domains: string[];
121
- version: string;
122
147
  id: string;
148
+ name: string;
149
+ version: string;
123
150
  description: string;
124
151
  tier: "default" | "community" | "premium";
125
- name: string;
152
+ domains: string[];
153
+ dependencies: string[];
126
154
  capabilities: {
127
- knowledge: string[];
128
155
  id: string;
129
156
  description: string;
130
- depends: string[];
131
- requires: string[];
132
157
  provides: string[];
158
+ requires: string[];
159
+ depends: string[];
160
+ knowledge: string[];
133
161
  }[];
134
- dependencies: string[];
135
162
  facades: {
136
- description: string;
137
163
  name: string;
164
+ description: string;
138
165
  ops: {
139
- description: string;
140
166
  name: string;
167
+ description: string;
141
168
  auth: "read" | "write" | "admin";
142
169
  }[];
143
170
  }[];
171
+ engine?: string | undefined;
144
172
  vault?: {
145
173
  dir: string;
146
174
  } | undefined;
147
- engine?: string | undefined;
148
175
  skills?: {
149
176
  dir: string;
150
177
  } | undefined;
@@ -152,24 +179,22 @@ export declare const packManifestSchema: z.ZodObject<{
152
179
  dir: string;
153
180
  } | undefined;
154
181
  }, {
155
- version: string;
156
182
  id: string;
157
183
  name: string;
158
- domains?: string[] | undefined;
184
+ version: string;
159
185
  description?: string | undefined;
160
186
  tier?: "default" | "community" | "premium" | undefined;
161
- vault?: {
162
- dir?: string | undefined;
163
- } | undefined;
187
+ domains?: string[] | undefined;
188
+ engine?: string | undefined;
189
+ dependencies?: string[] | undefined;
164
190
  capabilities?: {
165
191
  id: string;
166
192
  description: string;
167
- requires: string[];
168
193
  provides: string[];
169
- knowledge?: string[] | undefined;
194
+ requires: string[];
170
195
  depends?: string[] | undefined;
196
+ knowledge?: string[] | undefined;
171
197
  }[] | undefined;
172
- dependencies?: string[] | undefined;
173
198
  facades?: {
174
199
  name: string;
175
200
  ops: {
@@ -179,7 +204,9 @@ export declare const packManifestSchema: z.ZodObject<{
179
204
  }[];
180
205
  description?: string | undefined;
181
206
  }[] | undefined;
182
- engine?: string | undefined;
207
+ vault?: {
208
+ dir?: string | undefined;
209
+ } | undefined;
183
210
  skills?: {
184
211
  dir?: string | undefined;
185
212
  } | undefined;
@@ -188,12 +215,24 @@ export declare const packManifestSchema: z.ZodObject<{
188
215
  } | undefined;
189
216
  }>;
190
217
  export type PackManifest = z.infer<typeof packManifestSchema>;
191
- export type PackStatus = 'installed' | 'error' | 'uninstalled';
218
+ /** Full lifecycle state for a pack */
219
+ export type PackState = 'installed' | 'ready' | 'disabled' | 'error' | 'upgrade_pending' | 'uninstalled';
220
+ /** @deprecated Use PackState instead */
221
+ export type PackStatus = PackState;
222
+ /** Valid state transitions — key is "from" state, values are allowed "to" states */
223
+ export declare const VALID_TRANSITIONS: Record<PackState, PackState[]>;
224
+ /** A recorded state transition */
225
+ export interface PackTransition {
226
+ from: PackState;
227
+ to: PackState;
228
+ timestamp: number;
229
+ reason?: string;
230
+ }
192
231
  export interface InstalledPack {
193
232
  id: string;
194
233
  manifest: PackManifest;
195
234
  directory: string;
196
- status: PackStatus;
235
+ status: PackState;
197
236
  error?: string;
198
237
  /** Number of vault entries seeded */
199
238
  vaultEntries: number;
@@ -204,6 +243,14 @@ export interface InstalledPack {
204
243
  /** Whether facades were registered via plugin system */
205
244
  facadesRegistered: boolean;
206
245
  installedAt: number;
246
+ /** Lifecycle transition history (most recent last) */
247
+ transitions?: PackTransition[];
248
+ /** When the pack was disabled (if in disabled state) */
249
+ disabledAt?: number;
250
+ /** Error message (if in error state) */
251
+ errorMessage?: string;
252
+ /** Version available for upgrade (if in upgrade_pending state) */
253
+ upgradeVersion?: string;
207
254
  }
208
255
  export interface InstallResult {
209
256
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/packs/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAUxB,eAAO,MAAM,UAAU,8CAA+C,CAAC;AACvE,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,eAAO,MAAM,kBAAkB;;;;;IAK7B,iHAAiH;;IAEjH,+BAA+B;;IAE/B,qDAAqD;;IAErD,yCAAyC;;IAEzC,wEAAwE;;;;;;;;;;;;;;;;;;;;;;;IAmBxE,mDAAmD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiBnD,0BAA0B;;QAGtB,0EAA0E;;;;;;;IAI9E,2BAA2B;;QAGvB,iEAAiE;;;;;;;IAIrE,0BAA0B;;QAGtB,+DAA+D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAInE,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAM9D,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,OAAO,GAAG,aAAa,CAAC;AAE/D,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,YAAY,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,wBAAwB;IACxB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,uBAAuB;IACvB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,wDAAwD;IACxD,iBAAiB,EAAE,OAAO,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,wCAAwC;IACxC,MAAM,CAAC,EAAE;QACP,YAAY,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;CACH"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/packs/types.ts"],"names":[],"mappings":"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"}
@@ -86,4 +86,13 @@ export const packManifestSchema = z.object({
86
86
  })
87
87
  .optional(),
88
88
  });
89
+ /** Valid state transitions — key is "from" state, values are allowed "to" states */
90
+ export const VALID_TRANSITIONS = {
91
+ installed: ['ready', 'error', 'uninstalled'],
92
+ ready: ['ready', 'disabled', 'error', 'upgrade_pending', 'uninstalled'],
93
+ disabled: ['ready', 'uninstalled'],
94
+ error: ['ready', 'uninstalled'],
95
+ upgrade_pending: ['ready', 'error', 'uninstalled'],
96
+ uninstalled: ['installed'],
97
+ };
89
98
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/packs/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/packs/types.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,12 @@
3
3
  *
4
4
  * Supports both positional (array) and named (object) parameters.
5
5
  * Exposes getDatabase() for backward-compat consumers that need the raw db.
6
+ *
7
+ * better-sqlite3 is loaded lazily at construction time (not at module import)
8
+ * so that code paths that never instantiate a provider don't require the
9
+ * native module to be installed.
6
10
  */
7
- import Database from 'better-sqlite3';
11
+ import type Database from 'better-sqlite3';
8
12
  import type { PersistenceProvider, PersistenceParams, RunResult, FtsSearchOptions } from './types.js';
9
13
  /** Apply performance-tuning PRAGMAs for file-backed SQLite databases. */
10
14
  export declare function applyPerformancePragmas(db: Database.Database): void;
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-provider.d.ts","sourceRoot":"","sources":["../../src/persistence/sqlite-provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAGtC,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAEpB,yEAAyE;AACzE,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAInE;AAED,qBAAa,yBAA0B,YAAW,mBAAmB;IACnE,QAAQ,CAAC,OAAO,EAAG,QAAQ,CAAU;IACrC,OAAO,CAAC,EAAE,CAAoB;gBAElB,IAAI,GAAE,MAAmB;IAMrC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI1B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,SAAS;IAOvD,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,CAAC,GAAG,SAAS;IAOxF,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,CAAC,EAAE;IAO9E,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;IAI9B,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,gBAAgB,GACzB,CAAC,EAAE;IAwBN,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAS/B,KAAK,IAAI,IAAI;IAIb;;;;OAIG;IACH,WAAW,IAAI,QAAQ,CAAC,QAAQ;CAQjC"}
1
+ {"version":3,"file":"sqlite-provider.d.ts","sourceRoot":"","sources":["../../src/persistence/sqlite-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAI3C,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAoBpB,yEAAyE;AACzE,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAKnE;AAED,qBAAa,yBAA0B,YAAW,mBAAmB;IACnE,QAAQ,CAAC,OAAO,EAAG,QAAQ,CAAU;IACrC,OAAO,CAAC,EAAE,CAAoB;gBAElB,IAAI,GAAE,MAAmB;IAOrC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI1B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,SAAS;IAOvD,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,CAAC,GAAG,SAAS;IAOxF,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,CAAC,EAAE;IAO9E,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;IAI9B,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,gBAAgB,GACzB,CAAC,EAAE;IAwBN,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAS/B,KAAK,IAAI,IAAI;IAIb;;;;OAIG;IACH,WAAW,IAAI,QAAQ,CAAC,QAAQ;CAQjC"}
@@ -3,23 +3,43 @@
3
3
  *
4
4
  * Supports both positional (array) and named (object) parameters.
5
5
  * Exposes getDatabase() for backward-compat consumers that need the raw db.
6
+ *
7
+ * better-sqlite3 is loaded lazily at construction time (not at module import)
8
+ * so that code paths that never instantiate a provider don't require the
9
+ * native module to be installed.
6
10
  */
7
- import Database from 'better-sqlite3';
11
+ import { createRequire } from 'node:module';
8
12
  import { mkdirSync } from 'node:fs';
9
13
  import { dirname } from 'node:path';
14
+ let _DatabaseCtor;
15
+ function loadDriver() {
16
+ if (!_DatabaseCtor) {
17
+ const req = createRequire(import.meta.url);
18
+ try {
19
+ _DatabaseCtor = req('better-sqlite3');
20
+ }
21
+ catch {
22
+ throw new Error('better-sqlite3 is required for persistence but is not installed.\n' +
23
+ 'Run: npm install better-sqlite3');
24
+ }
25
+ }
26
+ return _DatabaseCtor;
27
+ }
10
28
  /** Apply performance-tuning PRAGMAs for file-backed SQLite databases. */
11
29
  export function applyPerformancePragmas(db) {
12
30
  db.pragma('cache_size = -64000'); // 64MB
13
31
  db.pragma('temp_store = MEMORY');
14
32
  db.pragma('mmap_size = 268435456'); // 256MB
33
+ db.pragma('synchronous = NORMAL');
15
34
  }
16
35
  export class SQLitePersistenceProvider {
17
36
  backend = 'sqlite';
18
37
  db;
19
38
  constructor(path = ':memory:') {
39
+ const Driver = loadDriver();
20
40
  if (path !== ':memory:')
21
41
  mkdirSync(dirname(path), { recursive: true });
22
- this.db = new Database(path);
42
+ this.db = new Driver(path);
23
43
  if (path !== ':memory:')
24
44
  applyPerformancePragmas(this.db);
25
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-provider.js","sourceRoot":"","sources":["../../src/persistence/sqlite-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqlite-provider.js","sourceRoot":"","sources":["../../src/persistence/sqlite-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,IAAI,aAA8C,CAAC;AAEnD,SAAS,UAAU;IACjB,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC;YACH,aAAa,GAAG,GAAG,CAAC,gBAAgB,CAAwB,CAAC;QAC/D,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CACb,oEAAoE;gBAClE,iCAAiC,CACpC,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,uBAAuB,CAAC,EAAqB;IAC3D,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,OAAO;IACzC,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;IACjC,EAAE,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,QAAQ;IAC5C,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,OAAO,yBAAyB;IAC3B,OAAO,GAAG,QAAiB,CAAC;IAC7B,EAAE,CAAoB;IAE9B,YAAY,OAAe,UAAU;QACnC,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;QAC5B,IAAI,IAAI,KAAK,UAAU;YAAE,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,IAAI,KAAK,UAAU;YAAE,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,CAAC,GAAW;QACjB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,MAA0B;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC;QAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED,GAAG,CAA8B,GAAW,EAAE,MAA0B;QACtE,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,GAAG,EAAmB,CAAC;QAChD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAkB,CAAC;QACvE,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAkB,CAAC;IAC3C,CAAC;IAED,GAAG,CAA8B,GAAW,EAAE,MAA0B;QACtE,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,GAAG,EAAS,CAAC;QACtC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAQ,CAAC;QAC7D,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAQ,CAAC;IACjC,CAAC;IAED,WAAW,CAAI,EAAW;QACxB,OAAO,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC;IACnC,CAAC;IAED,SAAS,CACP,KAAa,EACb,KAAa,EACb,OAA0B;QAE1B,MAAM,QAAQ,GAAG,GAAG,KAAK,MAAM,CAAC;QAChC,MAAM,IAAI,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC;QAClF,MAAM,OAAO,GAAG,OAAO,EAAE,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAEjE,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,MAAM,YAAY,GAAc,CAAC,KAAK,CAAC,CAAC;QAExC,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;YACrB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3D,aAAa,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,GAAG,MAAM,CAAC,CAAC;gBAC1C,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAEnF,MAAM,GAAG,GAAG,UAAU,IAAI,SAAS,QAAQ,SAAS,KAAK,OAAO,KAAK,YAAY,QAAQ,gBAAgB,QAAQ,YAAY,SAAS,IAAI,OAAO,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC;QAEvK,OAAO,IAAI,CAAC,GAAG,CAAI,GAAG,EAAE,YAAY,CAAC,CAAC;IACxC,CAAC;IAED,UAAU,CAAC,KAAa;QACtB,MAAM,QAAQ,GAAG,GAAG,KAAK,MAAM,CAAC;QAChC,IAAI,CAAC;YACH,IAAI,CAAC,OAAO,CAAC,eAAe,QAAQ,IAAI,QAAQ,qBAAqB,CAAC,CAAC;QACzE,CAAC;QAAC,MAAM,CAAC;YACP,gDAAgD;QAClD,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACH,WAAW;QACT,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACrE,OAAO,CAAC,IAAI,CACV,sFAAsF,CACvF,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;CACF"}
@@ -55,28 +55,28 @@ export declare function parseGitHubRemote(remoteUrl: string): GitHubRepo | null;
55
55
  * Detect the GitHub remote from a project directory.
56
56
  * Returns null if no GitHub remote found or not a git repo.
57
57
  */
58
- export declare function detectGitHubRemote(projectPath: string): GitHubRepo | null;
58
+ export declare function detectGitHubRemote(projectPath: string): Promise<GitHubRepo | null>;
59
59
  /**
60
60
  * Check if the `gh` CLI is authenticated.
61
61
  */
62
- export declare function isGhAuthenticated(): boolean;
62
+ export declare function isGhAuthenticated(): Promise<boolean>;
63
63
  /**
64
64
  * List milestones for a GitHub repo.
65
65
  */
66
- export declare function listMilestones(repo: GitHubRepo): GitHubMilestone[];
66
+ export declare function listMilestones(repo: GitHubRepo): Promise<GitHubMilestone[]>;
67
67
  /**
68
68
  * List open issues for a GitHub repo.
69
69
  */
70
- export declare function listOpenIssues(repo: GitHubRepo, limit?: number): GitHubIssue[];
70
+ export declare function listOpenIssues(repo: GitHubRepo, limit?: number): Promise<GitHubIssue[]>;
71
71
  /**
72
72
  * List labels for a GitHub repo.
73
73
  */
74
- export declare function listLabels(repo: GitHubRepo): GitHubLabel[];
74
+ export declare function listLabels(repo: GitHubRepo): Promise<GitHubLabel[]>;
75
75
  /**
76
76
  * Detect full GitHub context for a project.
77
77
  * Returns null if not a GitHub project or gh CLI not available.
78
78
  */
79
- export declare function detectGitHubContext(projectPath: string): GitHubContext | null;
79
+ export declare function detectGitHubContext(projectPath: string): Promise<GitHubContext | null>;
80
80
  /**
81
81
  * Find the best matching milestone by name similarity.
82
82
  * Uses simple word overlap scoring.
@@ -106,7 +106,9 @@ export interface PlanMetadataForIssue {
106
106
  /**
107
107
  * Format an issue body with plan metadata.
108
108
  */
109
- export declare function formatIssueBody(plan: PlanMetadataForIssue, taskTitle: string, taskDescription: string): string;
109
+ export declare function formatIssueBody(plan: PlanMetadataForIssue, taskTitle: string, taskDescription: string, options?: {
110
+ goalContext?: string;
111
+ }): string;
110
112
  /**
111
113
  * Create a GitHub issue using the `gh` CLI.
112
114
  * Returns the issue number, or null on failure.
@@ -114,9 +116,9 @@ export declare function formatIssueBody(plan: PlanMetadataForIssue, taskTitle: s
114
116
  export declare function createGitHubIssue(repo: GitHubRepo, title: string, body: string, options?: {
115
117
  milestone?: number;
116
118
  labels?: string[];
117
- }): number | null;
119
+ }): Promise<number | null>;
118
120
  /**
119
121
  * Update an existing GitHub issue body (for linking plans to existing issues).
120
122
  */
121
- export declare function updateGitHubIssueBody(repo: GitHubRepo, issueNumber: number, body: string): boolean;
123
+ export declare function updateGitHubIssueBody(repo: GitHubRepo, issueNumber: number, body: string): Promise<boolean>;
122
124
  //# sourceMappingURL=github-projection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"github-projection.d.ts","sourceRoot":"","sources":["../../src/planning/github-projection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github-projection.d.ts","sourceRoot":"","sources":["../../src/planning/github-projection.ts"],"names":[],"mappings":"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"}