wyrm-mcp 7.3.2 → 7.3.3

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 (184) hide show
  1. package/README.md +8 -14
  2. package/dist/activation.js +59 -1
  3. package/dist/agent-daemon.js +281 -4
  4. package/dist/agent-loop.js +332 -7
  5. package/dist/analytics.js +236 -13
  6. package/dist/attribution.js +49 -1
  7. package/dist/audit.js +457 -2
  8. package/dist/auto-capture.js +138 -3
  9. package/dist/auto-orchestrator.js +325 -1
  10. package/dist/autoconfig.d.ts +50 -0
  11. package/dist/autoconfig.d.ts.map +1 -1
  12. package/dist/autoconfig.js +1115 -39
  13. package/dist/autoconfig.js.map +1 -1
  14. package/dist/buddy-runner.js +109 -1
  15. package/dist/buddy.js +564 -14
  16. package/dist/build-flags.js +15 -1
  17. package/dist/capabilities.js +183 -3
  18. package/dist/capture.js +56 -1
  19. package/dist/causality.js +148 -8
  20. package/dist/cli.js +281 -20
  21. package/dist/cloud/cli.js +541 -5
  22. package/dist/cloud/client.js +221 -1
  23. package/dist/cloud/crypto.js +85 -1
  24. package/dist/cloud/machine-id.js +113 -2
  25. package/dist/cloud/recovery.js +60 -1
  26. package/dist/cloud/sync-engine.js +543 -7
  27. package/dist/cloud-backup.js +579 -5
  28. package/dist/cloud-profile.js +138 -1
  29. package/dist/cloud-sync-entrypoint.js +47 -1
  30. package/dist/cloud-sync.js +309 -2
  31. package/dist/connectors/bridge-source.d.ts +46 -0
  32. package/dist/connectors/bridge-source.d.ts.map +1 -0
  33. package/dist/connectors/bridge-source.js +77 -0
  34. package/dist/connectors/bridge-source.js.map +1 -0
  35. package/dist/connectors/index.d.ts +24 -0
  36. package/dist/connectors/index.d.ts.map +1 -0
  37. package/dist/connectors/index.js +69 -0
  38. package/dist/connectors/index.js.map +1 -0
  39. package/dist/connectors/ingest.d.ts +16 -0
  40. package/dist/connectors/ingest.d.ts.map +1 -0
  41. package/dist/connectors/ingest.js +116 -0
  42. package/dist/connectors/ingest.js.map +1 -0
  43. package/dist/connectors/types.d.ts +99 -0
  44. package/dist/connectors/types.d.ts.map +1 -0
  45. package/dist/connectors/types.js +17 -0
  46. package/dist/connectors/types.js.map +1 -0
  47. package/dist/constellation.js +168 -12
  48. package/dist/content-signature.js +45 -1
  49. package/dist/context-build-budgeted.js +144 -4
  50. package/dist/context-ranking.js +69 -1
  51. package/dist/crypto.js +179 -1
  52. package/dist/daemon-write-endpoint.js +290 -1
  53. package/dist/daemon-writer.js +406 -2
  54. package/dist/database.js +1278 -53
  55. package/dist/deprecations.js +162 -2
  56. package/dist/design.js +141 -13
  57. package/dist/event-replication.js +112 -1
  58. package/dist/events-sse.js +43 -7
  59. package/dist/events.js +238 -6
  60. package/dist/failure-patterns.d.ts +107 -0
  61. package/dist/failure-patterns.d.ts.map +1 -1
  62. package/dist/failure-patterns.js +924 -43
  63. package/dist/failure-patterns.js.map +1 -1
  64. package/dist/federation.js +236 -12
  65. package/dist/goals.js +101 -13
  66. package/dist/golden.js +355 -3
  67. package/dist/handlers/agent.js +165 -4
  68. package/dist/handlers/alias-adapters.js +129 -1
  69. package/dist/handlers/aliases.js +171 -1
  70. package/dist/handlers/audit.js +87 -1
  71. package/dist/handlers/boundary.js +221 -1
  72. package/dist/handlers/capture.js +1114 -73
  73. package/dist/handlers/causality.js +119 -9
  74. package/dist/handlers/cloud.js +382 -85
  75. package/dist/handlers/companion.js +459 -28
  76. package/dist/handlers/datalake.js +187 -7
  77. package/dist/handlers/dispatch-context.js +22 -0
  78. package/dist/handlers/entity.js +256 -25
  79. package/dist/handlers/events.js +335 -16
  80. package/dist/handlers/failure.d.ts.map +1 -1
  81. package/dist/handlers/failure.js +408 -13
  82. package/dist/handlers/failure.js.map +1 -1
  83. package/dist/handlers/goals.js +296 -4
  84. package/dist/handlers/intelligence.js +681 -126
  85. package/dist/handlers/invoicing.js +70 -1
  86. package/dist/handlers/mcpclient.js +137 -6
  87. package/dist/handlers/orchestration.js +125 -40
  88. package/dist/handlers/output-schemas.js +24 -1
  89. package/dist/handlers/presence.js +99 -3
  90. package/dist/handlers/project.js +182 -28
  91. package/dist/handlers/prompts.js +157 -6
  92. package/dist/handlers/quest.js +224 -4
  93. package/dist/handlers/recall.js +237 -13
  94. package/dist/handlers/registry.js +167 -1
  95. package/dist/handlers/resources.js +288 -1
  96. package/dist/handlers/review.js +74 -11
  97. package/dist/handlers/run.js +498 -16
  98. package/dist/handlers/search.js +338 -15
  99. package/dist/handlers/session.js +643 -31
  100. package/dist/handlers/share.js +184 -8
  101. package/dist/handlers/shims.js +464 -1
  102. package/dist/handlers/skill.js +449 -67
  103. package/dist/handlers/survivors.js +120 -1
  104. package/dist/handlers/symbols.js +109 -8
  105. package/dist/handlers/syncops.js +302 -4
  106. package/dist/handlers/types.js +27 -1
  107. package/dist/harvest.js +191 -5
  108. package/dist/hours.js +156 -7
  109. package/dist/http-auth.js +321 -3
  110. package/dist/http-fast.js +1302 -22
  111. package/dist/icons.js +47 -1
  112. package/dist/importers.js +268 -1
  113. package/dist/index.js +840 -2
  114. package/dist/indexer.js +145 -4
  115. package/dist/intelligence.js +261 -31
  116. package/dist/internal-dispatch.js +212 -3
  117. package/dist/keyset.js +110 -1
  118. package/dist/knowledge-graph.js +176 -12
  119. package/dist/license.js +441 -2
  120. package/dist/logger.js +199 -2
  121. package/dist/maintenance.js +148 -2
  122. package/dist/mcp-client.js +262 -6
  123. package/dist/memory-artifacts.js +596 -32
  124. package/dist/migrate-prompt.js +124 -2
  125. package/dist/migrations.d.ts.map +1 -1
  126. package/dist/migrations.js +799 -42
  127. package/dist/migrations.js.map +1 -1
  128. package/dist/performance.js +228 -1
  129. package/dist/presence.js +140 -11
  130. package/dist/priority-embed.js +164 -5
  131. package/dist/providers/embedding-provider.js +196 -1
  132. package/dist/readonly-gate.js +29 -1
  133. package/dist/receipt.js +43 -1
  134. package/dist/rehydration.js +157 -9
  135. package/dist/reindex.js +88 -1
  136. package/dist/render-target.js +544 -21
  137. package/dist/render.js +280 -4
  138. package/dist/repl-guard.js +173 -1
  139. package/dist/replication-daemon-entrypoint.js +31 -1
  140. package/dist/replication-daemon.js +262 -2
  141. package/dist/rerank.js +142 -1
  142. package/dist/resilience.js +591 -1
  143. package/dist/reverse-bridge.js +360 -5
  144. package/dist/security.js +244 -1
  145. package/dist/session-seen.js +51 -3
  146. package/dist/setup.js +260 -1
  147. package/dist/skill-author.js +168 -5
  148. package/dist/spec-kit.js +191 -1
  149. package/dist/sqlite-busy.js +154 -1
  150. package/dist/statusline.js +315 -11
  151. package/dist/sub-agent.js +262 -13
  152. package/dist/summarizer.js +139 -13
  153. package/dist/symbols.js +283 -7
  154. package/dist/sync.js +359 -5
  155. package/dist/tasks-dispatch.js +84 -1
  156. package/dist/tasks.js +282 -1
  157. package/dist/token-budget.js +143 -1
  158. package/dist/tool-analytics.js +129 -7
  159. package/dist/tool-annotations.js +365 -1
  160. package/dist/tool-manifest-v2.json +1 -1
  161. package/dist/tool-manifest.json +1 -1
  162. package/dist/tool-profiles.js +75 -1
  163. package/dist/trace-harvest.js +244 -6
  164. package/dist/types.js +30 -1
  165. package/dist/ui-dashboard.js +50 -41
  166. package/dist/ulid.js +81 -1
  167. package/dist/usage-tracker.js +66 -1
  168. package/dist/validate.js +129 -1
  169. package/dist/vault.js +534 -1
  170. package/dist/vector-init.js +67 -1
  171. package/dist/vectors.js +184 -3
  172. package/dist/version-check.js +136 -4
  173. package/dist/visibility.js +155 -19
  174. package/dist/wyrm-cli.js +2845 -101
  175. package/dist/wyrm-cli.js.map +1 -1
  176. package/dist/wyrm-guard.d.ts.map +1 -1
  177. package/dist/wyrm-guard.js +475 -14
  178. package/dist/wyrm-guard.js.map +1 -1
  179. package/dist/wyrm-loop.js +150 -3
  180. package/dist/wyrm-manifest.json +1 -1
  181. package/dist/wyrm-statusline-daemon.js +11 -1
  182. package/dist/wyrm-statusline.js +56 -4
  183. package/dist/wyrm-ui.js +77 -9
  184. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"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"}
@@ -1 +1,228 @@
1
- class o{cache=new Map;defaultTTL;maxSize;hits=0;misses=0;constructor(t=60,s=256){this.defaultTTL=t*1e3,this.maxSize=s,typeof setInterval<"u"&&setInterval(()=>this.evictExpired(),3e4).unref?.()}get(t){const s=this.cache.get(t);if(!s){this.misses++;return}if(Date.now()>s.expires){this.cache.delete(t),this.misses++;return}return this.hits++,s.lastAccess=Date.now(),s.data}set(t,s,i){this.cache.size>=this.maxSize&&!this.cache.has(t)&&this.evictLRU(),this.cache.set(t,{data:s,expires:Date.now()+(i??this.defaultTTL),lastAccess:Date.now()})}invalidate(t){if(!t){this.cache.clear();return}for(const s of this.cache.keys())s.includes(t)&&this.cache.delete(s)}evictLRU(){let t,s=1/0;for(const[i,n]of this.cache)n.lastAccess<s&&(s=n.lastAccess,t=i);t&&this.cache.delete(t)}evictExpired(){const t=Date.now();for(const[s,i]of this.cache)t>i.expires&&this.cache.delete(s)}stats(){const t=this.hits+this.misses;return{size:this.cache.size,maxSize:this.maxSize,keys:[...this.cache.keys()],hits:this.hits,misses:this.misses,hitRate:t>0?`${(this.hits/t*100).toFixed(1)}%`:"0%"}}}const u=new o(60,256);function f(e){return{i:e.id,n:e.name,p:e.path,...e.stack&&{s:e.stack}}}function l(e){return{i:e.id,t:e.title,p:e.priority[0],s:e.status[0]}}function p(e){const t=e.summary||e.notes?.slice(0,100);return{i:e.id,d:e.date.slice(0,10),...t&&{s:t}}}function h(e){const t=typeof e=="string"?e:JSON.stringify(e);return Math.ceil(t.length/4)}function m(e){return Math.ceil(e/4)}function a(e,t){const s=t*4;return e.length<=s?e:e.slice(0,s-3)+"..."}function d(e,t=4e3){const s=h(e);return s<=t?e:{truncated:!0,preview:a(JSON.stringify(e),500),tokens:s}}function x(e,t){const s={};for(const[i,n]of Object.entries(t))JSON.stringify(e[i])!==JSON.stringify(n)&&(s[i]=n);return s}class y{queue=[];running=!1;add(t,s){this.queue.push({priority:t,op:s}),this.queue.sort((i,n)=>n.priority-i.priority),this.process()}async process(){if(!this.running){for(this.running=!0;this.queue.length>0;){const t=this.queue.shift();t&&await t.op().catch(()=>{})}this.running=!1}}}function g(e,t){let s;return(...i)=>{clearTimeout(s),s=setTimeout(()=>e(...i),t)}}function w(e){const t=performance.now();return{result:e(),ms:Math.round(performance.now()-t)}}async function T(e){const t=performance.now();return{result:await e(),ms:Math.round(performance.now()-t)}}class k{pending=[];timer=null;flushMs;maxBatch;constructor(t=50,s=100){this.flushMs=t,this.maxBatch=s}enqueue(t){if(this.pending.push(t),this.pending.length>=this.maxBatch){this.flush();return}this.timer||(this.timer=setTimeout(()=>this.flush(),this.flushMs),this.timer.unref?.())}flush(){this.timer&&(clearTimeout(this.timer),this.timer=null);const t=this.pending.splice(0);if(t.length!==0)for(const s of t)try{s()}catch{}}get size(){return this.pending.length}}function S(e,t=50){if(e.length<=3)return e;const s=e.slice(0,t),i=Object.keys(s[0]||{}),n=s.map(r=>i.map(c=>r[c]));return{columns:i,rows:n}}export{y as OpQueue,k as WriteCoalescer,u as cache,f as compactProject,l as compactQuest,p as compactSession,S as compressArray,g as debounce,x as diffObjects,h as estimateTokens,m as estimateTokensFast,d as guardSize,w as timed,T as timedAsync,a as truncateToTokens};
1
+ /**
2
+ * 󱅝 Wyrm Performance Layer v2
3
+ * LRU caching, prepared statement pooling, response optimization
4
+ */
5
+ // LRU cache with TTL + max size eviction
6
+ class MemCache {
7
+ cache = new Map();
8
+ defaultTTL;
9
+ maxSize;
10
+ hits = 0;
11
+ misses = 0;
12
+ constructor(ttlSeconds = 60, maxEntries = 256) {
13
+ this.defaultTTL = ttlSeconds * 1000;
14
+ this.maxSize = maxEntries;
15
+ // Periodic cleanup of expired entries (every 30s)
16
+ if (typeof setInterval !== 'undefined') {
17
+ setInterval(() => this.evictExpired(), 30_000).unref?.();
18
+ }
19
+ }
20
+ get(key) {
21
+ const entry = this.cache.get(key);
22
+ if (!entry) {
23
+ this.misses++;
24
+ return undefined;
25
+ }
26
+ if (Date.now() > entry.expires) {
27
+ this.cache.delete(key);
28
+ this.misses++;
29
+ return undefined;
30
+ }
31
+ this.hits++;
32
+ entry.lastAccess = Date.now();
33
+ return entry.data;
34
+ }
35
+ set(key, data, ttlMs) {
36
+ // LRU eviction when at capacity
37
+ if (this.cache.size >= this.maxSize && !this.cache.has(key)) {
38
+ this.evictLRU();
39
+ }
40
+ this.cache.set(key, {
41
+ data,
42
+ expires: Date.now() + (ttlMs ?? this.defaultTTL),
43
+ lastAccess: Date.now(),
44
+ });
45
+ }
46
+ invalidate(pattern) {
47
+ if (!pattern) {
48
+ this.cache.clear();
49
+ return;
50
+ }
51
+ for (const key of this.cache.keys()) {
52
+ if (key.includes(pattern))
53
+ this.cache.delete(key);
54
+ }
55
+ }
56
+ /** Evict the least-recently-used entry */
57
+ evictLRU() {
58
+ let oldestKey;
59
+ let oldestAccess = Infinity;
60
+ for (const [key, entry] of this.cache) {
61
+ if (entry.lastAccess < oldestAccess) {
62
+ oldestAccess = entry.lastAccess;
63
+ oldestKey = key;
64
+ }
65
+ }
66
+ if (oldestKey)
67
+ this.cache.delete(oldestKey);
68
+ }
69
+ /** Remove all expired entries */
70
+ evictExpired() {
71
+ const now = Date.now();
72
+ for (const [key, entry] of this.cache) {
73
+ if (now > entry.expires)
74
+ this.cache.delete(key);
75
+ }
76
+ }
77
+ stats() {
78
+ const total = this.hits + this.misses;
79
+ return {
80
+ size: this.cache.size,
81
+ maxSize: this.maxSize,
82
+ keys: [...this.cache.keys()],
83
+ hits: this.hits,
84
+ misses: this.misses,
85
+ hitRate: total > 0 ? `${((this.hits / total) * 100).toFixed(1)}%` : '0%',
86
+ };
87
+ }
88
+ }
89
+ // Singleton cache — 60s TTL, 256 max entries with LRU eviction
90
+ export const cache = new MemCache(60, 256);
91
+ // Compact response formats - reduce token usage
92
+ export function compactProject(p) {
93
+ return { i: p.id, n: p.name, p: p.path, ...(p.stack && { s: p.stack }) };
94
+ }
95
+ export function compactQuest(q) {
96
+ return { i: q.id, t: q.title, p: q.priority[0], s: q.status[0] };
97
+ }
98
+ export function compactSession(s) {
99
+ const summary = s.summary || s.notes?.slice(0, 100);
100
+ return { i: s.id, d: s.date.slice(0, 10), ...(summary && { s: summary }) };
101
+ }
102
+ // Token estimation - helps AI manage context
103
+ export function estimateTokens(obj) {
104
+ const str = typeof obj === 'string' ? obj : JSON.stringify(obj);
105
+ // ~4 chars per token for English text, tighter for JSON
106
+ return Math.ceil(str.length / 4);
107
+ }
108
+ // Fast token count for pre-sized buffers
109
+ export function estimateTokensFast(length) {
110
+ return Math.ceil(length / 4);
111
+ }
112
+ // Truncate to token limit
113
+ export function truncateToTokens(text, maxTokens) {
114
+ const maxChars = maxTokens * 4;
115
+ if (text.length <= maxChars)
116
+ return text;
117
+ return text.slice(0, maxChars - 3) + '...';
118
+ }
119
+ // Response size guard
120
+ export function guardSize(data, maxTokens = 4000) {
121
+ const tokens = estimateTokens(data);
122
+ if (tokens <= maxTokens)
123
+ return data;
124
+ const preview = truncateToTokens(JSON.stringify(data), 500);
125
+ return { truncated: true, preview, tokens };
126
+ }
127
+ // Diff helper - only return what changed
128
+ export function diffObjects(prev, curr) {
129
+ const diff = {};
130
+ for (const [k, v] of Object.entries(curr)) {
131
+ if (JSON.stringify(prev[k]) !== JSON.stringify(v)) {
132
+ diff[k] = v;
133
+ }
134
+ }
135
+ return diff;
136
+ }
137
+ // Priority queue for operations
138
+ export class OpQueue {
139
+ queue = [];
140
+ running = false;
141
+ add(priority, op) {
142
+ this.queue.push({ priority, op });
143
+ this.queue.sort((a, b) => b.priority - a.priority);
144
+ this.process();
145
+ }
146
+ async process() {
147
+ if (this.running)
148
+ return;
149
+ this.running = true;
150
+ while (this.queue.length > 0) {
151
+ const item = this.queue.shift();
152
+ if (item)
153
+ await item.op().catch(() => { });
154
+ }
155
+ this.running = false;
156
+ }
157
+ }
158
+ // Debounce writes
159
+ export function debounce(fn, ms) {
160
+ let timer;
161
+ return (...args) => {
162
+ clearTimeout(timer);
163
+ timer = setTimeout(() => fn(...args), ms);
164
+ };
165
+ }
166
+ // Measure execution time
167
+ export function timed(fn) {
168
+ const start = performance.now();
169
+ const result = fn();
170
+ return { result, ms: Math.round(performance.now() - start) };
171
+ }
172
+ export async function timedAsync(fn) {
173
+ const start = performance.now();
174
+ const result = await fn();
175
+ return { result, ms: Math.round(performance.now() - start) };
176
+ }
177
+ // Write coalescer - batches rapid sequential writes into single transactions
178
+ export class WriteCoalescer {
179
+ pending = [];
180
+ timer = null;
181
+ flushMs;
182
+ maxBatch;
183
+ constructor(flushMs = 50, maxBatch = 100) {
184
+ this.flushMs = flushMs;
185
+ this.maxBatch = maxBatch;
186
+ }
187
+ /** Queue a write operation. It will be batched with others if they arrive within flushMs. */
188
+ enqueue(op) {
189
+ this.pending.push(op);
190
+ if (this.pending.length >= this.maxBatch) {
191
+ this.flush();
192
+ return;
193
+ }
194
+ if (!this.timer) {
195
+ this.timer = setTimeout(() => this.flush(), this.flushMs);
196
+ this.timer.unref?.();
197
+ }
198
+ }
199
+ /** Execute all pending writes in a single transaction */
200
+ flush() {
201
+ if (this.timer) {
202
+ clearTimeout(this.timer);
203
+ this.timer = null;
204
+ }
205
+ const ops = this.pending.splice(0);
206
+ if (ops.length === 0)
207
+ return;
208
+ for (const op of ops) {
209
+ try {
210
+ op();
211
+ }
212
+ catch { /* individual op failure shouldn't stop batch */ }
213
+ }
214
+ }
215
+ get size() {
216
+ return this.pending.length;
217
+ }
218
+ }
219
+ // Response compressor - deduplicates repeated field names in JSON arrays
220
+ export function compressArray(items, maxItems = 50) {
221
+ if (items.length <= 3)
222
+ return items;
223
+ const sliced = items.slice(0, maxItems);
224
+ const columns = Object.keys(sliced[0] || {});
225
+ const rows = sliced.map(item => columns.map(c => item[c]));
226
+ return { columns, rows };
227
+ }
228
+ //# sourceMappingURL=performance.js.map
package/dist/presence.js CHANGED
@@ -1,4 +1,52 @@
1
- import{getActor as a}from"./handlers/boundary.js";class i{db;constructor(e){this.db=e}membershipRole(e,t){if(!e)return null;try{return this.db.prepare("SELECT role FROM run_agents WHERE run_id = ? AND agent_id = ?").get(e,t)?.role??null}catch{return null}}announce(e){const t=e.metadata?JSON.stringify(e.metadata):null,r=a().run_id,n=e.role??this.membershipRole(r,e.agent_id);return this.db.prepare(`
1
+ /**
2
+ * Agent Presence — multi-agent coordination + work-stealing queue.
3
+ *
4
+ * The orchestrator's liveness + lease board. Two Claude sessions, Claude +
5
+ * Codex, an orchestrator + 12 subagents — none of these can see each other
6
+ * without it: announce who you are (a TTL heartbeat row), claim a quest so
7
+ * no other agent double-works it (PK-conflict CAS — atomic by construction,
8
+ * a losing claimer gets null, never a partial write), and release on clean
9
+ * exit. TTL-based heartbeats mean a dead session can't permanently hold a
10
+ * lock: stale rows are reaped inline at claim time AND asynchronously by
11
+ * wyrm_maintenance (v7 F3 T029).
12
+ *
13
+ * v7 fleet attribution (migrations 20 + 24): presence rows and quest claims
14
+ * are stamped with the ambient run_id (the T009 actor envelope) and the
15
+ * agent's fleet role (run_agents membership, set at `wyrm_run action=join`),
16
+ * so per-run dashboards and `wyrm_run action=status` see who is online and
17
+ * which role holds each lease. NULL outside a run — 6.x callers unchanged.
18
+ *
19
+ * @copyright 2026 Ghost Protocol (Pvt) Ltd.
20
+ * @license Proprietary — (c) 2026 Ghost Protocol (Pvt) Ltd. All rights reserved. See LICENSE.
21
+ */
22
+ import { getActor } from './handlers/boundary.js';
23
+ export class AgentPresence {
24
+ db;
25
+ constructor(db) {
26
+ this.db = db;
27
+ }
28
+ /** v7 F3 (T029): the agent's role inside a fleet run — run_agents
29
+ * membership recorded at `wyrm_run action=join`. Best-effort (NULL when
30
+ * outside a run or never joined); never throws. */
31
+ membershipRole(runId, agentId) {
32
+ if (!runId)
33
+ return null;
34
+ try {
35
+ const row = this.db.prepare('SELECT role FROM run_agents WHERE run_id = ? AND agent_id = ?').get(runId, agentId);
36
+ return row?.role ?? null;
37
+ }
38
+ catch {
39
+ return null;
40
+ }
41
+ }
42
+ /** Upsert an agent's presence row. Updates `last_heartbeat`. v7 F3: stamps
43
+ * the ambient run_id (T009 actor envelope) + the agent's fleet role so
44
+ * orchestrators polling the board see per-run liveness. */
45
+ announce(input) {
46
+ const metaJson = input.metadata ? JSON.stringify(input.metadata) : null;
47
+ const runId = getActor().run_id;
48
+ const role = input.role ?? this.membershipRole(runId, input.agent_id);
49
+ this.db.prepare(`
2
50
  INSERT INTO agent_presence
3
51
  (agent_id, agent_kind, project_id, current_file, current_symbol,
4
52
  current_quest_id, ttl_seconds, metadata, run_id, role)
@@ -14,38 +62,119 @@ import{getActor as a}from"./handlers/boundary.js";class i{db;constructor(e){this
14
62
  run_id = excluded.run_id,
15
63
  role = excluded.role,
16
64
  last_heartbeat = datetime('now')
17
- `).run(e.agent_id,e.agent_kind,e.project_id??null,e.current_file??null,e.current_symbol??null,e.current_quest_id??null,e.ttl_seconds??300,t,r,n),this.get(e.agent_id)}get(e){return this.db.prepare("SELECT * FROM agent_presence WHERE agent_id = ?").get(e)??null}liveAgents(e){const t=e==null?`SELECT * FROM agent_presence
65
+ `).run(input.agent_id, input.agent_kind, input.project_id ?? null, input.current_file ?? null, input.current_symbol ?? null, input.current_quest_id ?? null, input.ttl_seconds ?? 300, metaJson, runId, role);
66
+ return this.get(input.agent_id);
67
+ }
68
+ get(agentId) {
69
+ return this.db.prepare('SELECT * FROM agent_presence WHERE agent_id = ?').get(agentId) ?? null;
70
+ }
71
+ /** Return all live agents (those whose last_heartbeat is within ttl_seconds). */
72
+ liveAgents(projectId) {
73
+ // SQLite datetime arithmetic: "agent is live if julianday(now) - julianday(last_heartbeat) < ttl_seconds / 86400"
74
+ const sql = projectId == null
75
+ ? `SELECT * FROM agent_presence
18
76
  WHERE (julianday('now') - julianday(last_heartbeat)) * 86400 < ttl_seconds
19
- ORDER BY last_heartbeat DESC`:`SELECT * FROM agent_presence
77
+ ORDER BY last_heartbeat DESC`
78
+ : `SELECT * FROM agent_presence
20
79
  WHERE project_id = ?
21
80
  AND (julianday('now') - julianday(last_heartbeat)) * 86400 < ttl_seconds
22
- ORDER BY last_heartbeat DESC`;return e==null?this.db.prepare(t).all():this.db.prepare(t).all(e)}agentsOnFile(e){return this.db.prepare(`
81
+ ORDER BY last_heartbeat DESC`;
82
+ return (projectId == null
83
+ ? this.db.prepare(sql).all()
84
+ : this.db.prepare(sql).all(projectId));
85
+ }
86
+ /** Find live agents currently working on a specific file. */
87
+ agentsOnFile(filePath) {
88
+ return this.db.prepare(`
23
89
  SELECT * FROM agent_presence
24
90
  WHERE current_file = ?
25
91
  AND (julianday('now') - julianday(last_heartbeat)) * 86400 < ttl_seconds
26
92
  ORDER BY last_heartbeat DESC
27
- `).all(e)}release(e){return this.db.prepare("DELETE FROM quest_claims WHERE agent_id = ?").run(e),this.db.prepare("DELETE FROM agent_presence WHERE agent_id = ?").run(e).changes>0}reap(){const e=this.db.prepare(`
93
+ `).all(filePath);
94
+ }
95
+ /** Remove an agent's presence (clean exit). */
96
+ release(agentId) {
97
+ // Also drop any quest claims this agent holds — clean exit
98
+ this.db.prepare(`DELETE FROM quest_claims WHERE agent_id = ?`).run(agentId);
99
+ const info = this.db.prepare('DELETE FROM agent_presence WHERE agent_id = ?').run(agentId);
100
+ return info.changes > 0;
101
+ }
102
+ /** Remove all stale (expired-TTL) presence + claim rows. Returns counts.
103
+ * Runs inline at claim/list time AND from wyrm_maintenance (v7 F3 T029) so
104
+ * an idle board still sheds dead-session leases between fleet waves. */
105
+ reap() {
106
+ const p = this.db.prepare(`
28
107
  DELETE FROM agent_presence
29
108
  WHERE (julianday('now') - julianday(last_heartbeat)) * 86400 >= ttl_seconds
30
- `).run(),t=this.db.prepare(`
109
+ `).run();
110
+ const c = this.db.prepare(`
31
111
  DELETE FROM quest_claims
32
112
  WHERE (julianday('now') - julianday(claimed_at)) * 86400 >= claim_ttl_seconds
33
- `).run();return{presence:e.changes,claims:t.changes}}claimQuest(e,t,r=1800){this.reap();try{const n=a().run_id;return this.db.prepare(`
113
+ `).run();
114
+ return { presence: p.changes, claims: c.changes };
115
+ }
116
+ // ============================ Quest claims ============================
117
+ /** Try to claim a quest — an exclusive TTL lease. Atomic via the
118
+ * (quest_id, agent_id) PK-conflict CAS: the loser gets null (a visible
119
+ * already-claimed outcome), never a partial write. Fails (returns null) if
120
+ * another live agent has it. */
121
+ claimQuest(questId, agentId, ttlSeconds = 1800) {
122
+ // First reap stale claims to free up abandoned work
123
+ this.reap();
124
+ try {
125
+ // v7 F2 (T009): stamp the run this claim belongs to (NULL outside a run).
126
+ // agent_id stays the caller's explicit identity — it was always required here.
127
+ // v7 F3 (T029): plus the agent's fleet role (run_agents membership) so
128
+ // the claim board reads per-role for orchestrators.
129
+ const runId = getActor().run_id;
130
+ this.db.prepare(`
34
131
  INSERT INTO quest_claims (quest_id, agent_id, claim_ttl_seconds, run_id, role)
35
132
  VALUES (?, ?, ?, ?, ?)
36
- `).run(e,t,r,n,this.membershipRole(n,t)),this.getClaim(e)}catch{return null}}releaseRunClaims(e){return this.db.prepare("DELETE FROM quest_claims WHERE run_id = ?").run(e).changes}releaseClaim(e,t){return this.db.prepare(`
133
+ `).run(questId, agentId, ttlSeconds, runId, this.membershipRole(runId, agentId));
134
+ return this.getClaim(questId);
135
+ }
136
+ catch {
137
+ // PK conflict — already claimed. Return existing claim so caller sees it.
138
+ return null;
139
+ }
140
+ }
141
+ /** v7 F3 (T027): release every claim a fleet run holds — `wyrm_run
142
+ * action=end` calls this so a finished run never leaves TTL-orphaned
143
+ * leases behind. Claims are ephemeral leases (re-claimable), so the
144
+ * bulk delete is non-destructive in the annotation sense. */
145
+ releaseRunClaims(runId) {
146
+ return this.db.prepare('DELETE FROM quest_claims WHERE run_id = ?').run(runId).changes;
147
+ }
148
+ /** Release a claim (only if held by this agent). */
149
+ releaseClaim(questId, agentId) {
150
+ const info = this.db.prepare(`
37
151
  DELETE FROM quest_claims WHERE quest_id = ? AND agent_id = ?
38
- `).run(e,t).changes>0}getClaim(e){return this.db.prepare("SELECT * FROM quest_claims WHERE quest_id = ?").get(e)??null}activeClaims(e){this.reap();const t=e==null?`
152
+ `).run(questId, agentId);
153
+ return info.changes > 0;
154
+ }
155
+ getClaim(questId) {
156
+ return this.db.prepare(`SELECT * FROM quest_claims WHERE quest_id = ?`).get(questId) ?? null;
157
+ }
158
+ /** List quests currently claimed in a project (joined with quest titles). */
159
+ activeClaims(projectId) {
160
+ this.reap();
161
+ const sql = projectId == null ? `
39
162
  SELECT c.*, q.title AS quest_title, p.agent_kind
40
163
  FROM quest_claims c
41
164
  JOIN quests q ON q.id = c.quest_id
42
165
  JOIN agent_presence p ON p.agent_id = c.agent_id
43
166
  ORDER BY c.claimed_at DESC
44
- `:`
167
+ ` : `
45
168
  SELECT c.*, q.title AS quest_title, p.agent_kind
46
169
  FROM quest_claims c
47
170
  JOIN quests q ON q.id = c.quest_id
48
171
  JOIN agent_presence p ON p.agent_id = c.agent_id
49
172
  WHERE q.project_id = ?
50
173
  ORDER BY c.claimed_at DESC
51
- `;return e==null?this.db.prepare(t).all():this.db.prepare(t).all(e)}}export{i as AgentPresence};
174
+ `;
175
+ return (projectId == null
176
+ ? this.db.prepare(sql).all()
177
+ : this.db.prepare(sql).all(projectId));
178
+ }
179
+ }
180
+ //# sourceMappingURL=presence.js.map