@ginkoai/cli 1.4.13 → 1.6.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 (72) hide show
  1. package/dist/commands/graph/api-client.d.ts +16 -1
  2. package/dist/commands/graph/api-client.d.ts.map +1 -1
  3. package/dist/commands/graph/api-client.js +79 -4
  4. package/dist/commands/graph/api-client.js.map +1 -1
  5. package/dist/commands/graph/health.d.ts +22 -0
  6. package/dist/commands/graph/health.d.ts.map +1 -0
  7. package/dist/commands/graph/health.js +37 -0
  8. package/dist/commands/graph/health.js.map +1 -0
  9. package/dist/commands/graph/index.d.ts.map +1 -1
  10. package/dist/commands/graph/index.js +8 -0
  11. package/dist/commands/graph/index.js.map +1 -1
  12. package/dist/commands/handoff.d.ts +7 -1
  13. package/dist/commands/handoff.d.ts.map +1 -1
  14. package/dist/commands/handoff.js +8 -0
  15. package/dist/commands/handoff.js.map +1 -1
  16. package/dist/commands/log.d.ts +5 -4
  17. package/dist/commands/log.d.ts.map +1 -1
  18. package/dist/commands/log.js +197 -216
  19. package/dist/commands/log.js.map +1 -1
  20. package/dist/commands/start/start-reflection.d.ts +22 -0
  21. package/dist/commands/start/start-reflection.d.ts.map +1 -1
  22. package/dist/commands/start/start-reflection.js +249 -30
  23. package/dist/commands/start/start-reflection.js.map +1 -1
  24. package/dist/index.js +7 -6
  25. package/dist/index.js.map +1 -1
  26. package/dist/lib/charter-loader.d.ts +74 -0
  27. package/dist/lib/charter-loader.d.ts.map +1 -0
  28. package/dist/lib/charter-loader.js +328 -0
  29. package/dist/lib/charter-loader.js.map +1 -0
  30. package/dist/lib/context-loader-events.d.ts +49 -0
  31. package/dist/lib/context-loader-events.d.ts.map +1 -1
  32. package/dist/lib/context-loader-events.js +280 -34
  33. package/dist/lib/context-loader-events.js.map +1 -1
  34. package/dist/lib/event-logger.d.ts +8 -5
  35. package/dist/lib/event-logger.d.ts.map +1 -1
  36. package/dist/lib/event-logger.js +54 -14
  37. package/dist/lib/event-logger.js.map +1 -1
  38. package/dist/lib/event-task-linker.d.ts +81 -0
  39. package/dist/lib/event-task-linker.d.ts.map +1 -0
  40. package/dist/lib/event-task-linker.js +132 -0
  41. package/dist/lib/event-task-linker.js.map +1 -0
  42. package/dist/lib/output-formatter.d.ts +172 -0
  43. package/dist/lib/output-formatter.d.ts.map +1 -0
  44. package/dist/lib/output-formatter.js +219 -0
  45. package/dist/lib/output-formatter.js.map +1 -0
  46. package/dist/lib/session-cursor.d.ts +12 -5
  47. package/dist/lib/session-cursor.d.ts.map +1 -1
  48. package/dist/lib/session-cursor.js +12 -5
  49. package/dist/lib/session-cursor.js.map +1 -1
  50. package/dist/lib/sprint-loader.d.ts +91 -0
  51. package/dist/lib/sprint-loader.d.ts.map +1 -0
  52. package/dist/lib/sprint-loader.js +296 -0
  53. package/dist/lib/sprint-loader.js.map +1 -0
  54. package/dist/lib/sprint-parser.d.ts +79 -0
  55. package/dist/lib/sprint-parser.d.ts.map +1 -0
  56. package/dist/lib/sprint-parser.js +346 -0
  57. package/dist/lib/sprint-parser.js.map +1 -0
  58. package/dist/lib/write-dispatcher/adapters/local-adapter.d.ts.map +1 -1
  59. package/dist/lib/write-dispatcher/adapters/local-adapter.js +8 -2
  60. package/dist/lib/write-dispatcher/adapters/local-adapter.js.map +1 -1
  61. package/dist/utils/command-helpers.d.ts +76 -0
  62. package/dist/utils/command-helpers.d.ts.map +1 -0
  63. package/dist/utils/command-helpers.js +314 -0
  64. package/dist/utils/command-helpers.js.map +1 -0
  65. package/dist/utils/graph-health-monitor.d.ts +75 -0
  66. package/dist/utils/graph-health-monitor.d.ts.map +1 -0
  67. package/dist/utils/graph-health-monitor.js +108 -0
  68. package/dist/utils/graph-health-monitor.js.map +1 -0
  69. package/dist/utils/synthesis.d.ts.map +1 -1
  70. package/dist/utils/synthesis.js +17 -9
  71. package/dist/utils/synthesis.js.map +1 -1
  72. package/package.json +1 -1
@@ -25,9 +25,137 @@
25
25
  */
26
26
  import fs from 'fs-extra';
27
27
  import path from 'path';
28
+ import os from 'os';
29
+ /**
30
+ * Load recent events without cursor (TASK-011: Simplified chronological loading)
31
+ *
32
+ * Simple chronological query for last N events - no cursor state needed.
33
+ * Replaces cursor-based loading with direct "ORDER BY timestamp DESC LIMIT N" query.
34
+ *
35
+ * TASK-012: Cloud-first architecture
36
+ * - Cloud-only mode (GINKO_CLOUD_ONLY=true): Fails loudly if graph unavailable
37
+ * - Dual-mode (default): Falls back to strategic loading if graph fails
38
+ *
39
+ * Performance: ~2-3s for consolidated load
40
+ */
41
+ export async function loadRecentEvents(userId, projectId, options = {}) {
42
+ const { eventLimit = 50, includeTeam = false, teamEventLimit = 20, categories, documentDepth = 2, teamDays = 7 } = options;
43
+ // TASK-012: Check cloud-only mode
44
+ const cloudOnly = process.env.GINKO_CLOUD_ONLY === 'true';
45
+ try {
46
+ const { GraphApiClient } = await import('../commands/graph/api-client.js');
47
+ const client = new GraphApiClient();
48
+ // Build query parameters (use special cursor value for chronological loading)
49
+ const params = new URLSearchParams({
50
+ cursorId: 'chronological', // Special value to trigger chronological query on server
51
+ userId,
52
+ projectId,
53
+ eventLimit: eventLimit.toString(),
54
+ includeTeam: includeTeam.toString(),
55
+ teamEventLimit: teamEventLimit.toString(),
56
+ teamDays: teamDays.toString(),
57
+ documentDepth: documentDepth.toString(),
58
+ });
59
+ if (categories && categories.length > 0) {
60
+ params.append('categories', categories.join(','));
61
+ }
62
+ const mode = cloudOnly ? 'cloud-only' : 'chronological';
63
+ console.log(`📡 Using consolidated API endpoint (${mode} mode)`);
64
+ // Single API call - server detects "chronological" cursor and uses ORDER BY timestamp DESC
65
+ const response = await client.request('GET', `/api/v1/context/initial-load?${params.toString()}`);
66
+ console.log(`⚡ Consolidated load: ${response.performance.queryTimeMs}ms (${response.event_count} events, ${response.performance.documentsLoaded} docs)`);
67
+ // TASK-10: Load strategic context + charter in PARALLEL (saves 200-300ms)
68
+ const graphId = process.env.GINKO_GRAPH_ID || '';
69
+ // Fire both requests simultaneously
70
+ const [strategicResult, charterResult] = await Promise.all([
71
+ graphId
72
+ ? loadStrategicContext(graphId, userId, projectId).catch(() => null)
73
+ : Promise.resolve(null),
74
+ import('./charter-loader.js')
75
+ .then(m => m.loadCharter())
76
+ .catch(() => null)
77
+ ]);
78
+ let strategicContext = strategicResult || undefined;
79
+ const filesystemCharter = charterResult;
80
+ if (strategicContext?.metadata) {
81
+ console.log(`📊 Strategic context loaded: ${strategicContext.metadata.teamEventCount} team events, ${strategicContext.metadata.patternCount} patterns`);
82
+ }
83
+ if (filesystemCharter) {
84
+ // Merge filesystem charter into strategic context (filesystem takes precedence)
85
+ if (!strategicContext) {
86
+ strategicContext = {
87
+ charter: {
88
+ purpose: filesystemCharter.purpose,
89
+ goals: filesystemCharter.goals,
90
+ successCriteria: filesystemCharter.successCriteria,
91
+ scope: filesystemCharter.scope,
92
+ },
93
+ teamActivity: [],
94
+ patterns: [],
95
+ metadata: {
96
+ charterStatus: 'loaded-from-filesystem',
97
+ teamEventCount: 0,
98
+ patternCount: 0,
99
+ loadTimeMs: 0,
100
+ tokenEstimate: 0,
101
+ },
102
+ };
103
+ }
104
+ else {
105
+ // Override graph charter with filesystem charter
106
+ strategicContext.charter = {
107
+ purpose: filesystemCharter.purpose,
108
+ goals: filesystemCharter.goals,
109
+ successCriteria: filesystemCharter.successCriteria,
110
+ scope: filesystemCharter.scope,
111
+ };
112
+ strategicContext.metadata.charterStatus = 'loaded-from-filesystem';
113
+ }
114
+ console.log(`📜 Charter loaded from filesystem (${filesystemCharter.goals.length} goals, ${filesystemCharter.successCriteria.length} criteria)`);
115
+ }
116
+ // Create a minimal cursor for backward compatibility
117
+ const cursor = {
118
+ id: 'chronological-query',
119
+ user_id: userId,
120
+ project_id: projectId,
121
+ started: new Date(),
122
+ last_active: new Date(),
123
+ current_event_id: response.myEvents?.[0]?.id || 'latest',
124
+ status: 'active',
125
+ };
126
+ return {
127
+ cursor,
128
+ myEvents: normalizeEvents(response.myEvents || []),
129
+ teamEvents: response.teamEvents ? normalizeEvents(response.teamEvents) : undefined,
130
+ documents: response.documents || [],
131
+ relatedDocs: response.relatedDocs || [],
132
+ sprint: response.sprint,
133
+ strategicContext,
134
+ loaded_at: new Date(response.loaded_at),
135
+ event_count: response.event_count,
136
+ token_estimate: response.token_estimate,
137
+ };
138
+ }
139
+ catch (error) {
140
+ if (cloudOnly) {
141
+ // CLOUD-ONLY MODE: Fail loudly, no fallback
142
+ console.error('❌ Cloud-only mode: Graph API unavailable!');
143
+ console.error(' Cannot load context from cloud graph.');
144
+ console.error(` Error: ${error.message}`);
145
+ throw new Error(`Cloud-only mode: Graph API failed: ${error.message}`);
146
+ }
147
+ else {
148
+ // DUAL-MODE: Log warning and re-throw for fallback handling
149
+ console.log(`⚠️ Graph API failed: ${error.message}`);
150
+ throw error; // Re-throw to trigger fallback
151
+ }
152
+ }
153
+ }
28
154
  /**
29
155
  * Load context using consolidated API endpoint (performance optimized)
30
156
  *
157
+ * @deprecated Use loadRecentEvents() instead (TASK-011). Cursors are unnecessary for "last N events" queries.
158
+ *
31
159
  * Single API call that performs all operations server-side:
32
160
  * - Read events backward
33
161
  * - Load team events
@@ -202,6 +330,122 @@ async function loadTeamEvents(projectId, excludeUserId, limit = 20, days = 7) {
202
330
  return [];
203
331
  }
204
332
  }
333
+ /**
334
+ * Load strategic context via GraphQL (EPIC-001)
335
+ *
336
+ * Fetches charter + team activity + relevant patterns in single GraphQL query
337
+ *
338
+ * @param graphId - Graph ID
339
+ * @param userId - User ID
340
+ * @param projectId - Project ID
341
+ * @returns Strategic context data
342
+ */
343
+ async function loadStrategicContext(graphId, userId, projectId) {
344
+ try {
345
+ // Read API key from ~/.ginko/auth.json
346
+ const authPath = path.join(os.homedir(), '.ginko', 'auth.json');
347
+ if (!fs.existsSync(authPath)) {
348
+ return null;
349
+ }
350
+ const authData = JSON.parse(fs.readFileSync(authPath, 'utf-8'));
351
+ const apiKey = authData.api_key;
352
+ if (!apiKey) {
353
+ return null;
354
+ }
355
+ const apiUrl = process.env.GINKO_API_URL || 'https://app.ginkoai.com';
356
+ const query = `
357
+ query GetStrategicContext($graphId: String!, $userId: String!, $projectId: String!) {
358
+ strategicContext(
359
+ graphId: $graphId
360
+ userId: $userId
361
+ projectId: $projectId
362
+ teamEventDays: 7
363
+ teamEventLimit: 10
364
+ patternLimit: 5
365
+ ) {
366
+ charter {
367
+ purpose
368
+ goals
369
+ successCriteria
370
+ scope {
371
+ inScope
372
+ outOfScope
373
+ tbd
374
+ }
375
+ }
376
+ teamActivity {
377
+ category
378
+ description
379
+ impact
380
+ user
381
+ timestamp
382
+ }
383
+ patterns {
384
+ title
385
+ content
386
+ tags
387
+ category
388
+ }
389
+ metadata {
390
+ charterStatus
391
+ teamEventCount
392
+ patternCount
393
+ loadTimeMs
394
+ tokenEstimate
395
+ }
396
+ }
397
+ }
398
+ `;
399
+ const variables = { graphId, userId, projectId };
400
+ // TASK-10: Add 3-second timeout to prevent hangs
401
+ const controller = new AbortController();
402
+ const timeoutId = setTimeout(() => controller.abort(), 3000);
403
+ try {
404
+ const response = await fetch(`${apiUrl}/api/graphql`, {
405
+ method: 'POST',
406
+ headers: {
407
+ 'Content-Type': 'application/json',
408
+ 'Authorization': `Bearer ${apiKey}`,
409
+ },
410
+ body: JSON.stringify({ query, variables }),
411
+ signal: controller.signal,
412
+ });
413
+ clearTimeout(timeoutId);
414
+ if (!response.ok) {
415
+ const errorBody = await response.text();
416
+ console.log(`⚠️ Strategic context GraphQL failed: ${response.status} ${response.statusText}`);
417
+ console.log(` Response: ${errorBody.substring(0, 200)}`);
418
+ return null;
419
+ }
420
+ const result = await response.json();
421
+ // Check for GraphQL errors
422
+ if (result.errors) {
423
+ console.log('⚠️ Strategic context GraphQL errors:', JSON.stringify(result.errors, null, 2));
424
+ return null;
425
+ }
426
+ return result.data?.strategicContext || null;
427
+ }
428
+ catch (innerError) {
429
+ clearTimeout(timeoutId);
430
+ // Handle timeout specifically
431
+ if (innerError instanceof Error && innerError.name === 'AbortError') {
432
+ console.log('⚠️ Strategic context timeout (3s) - skipping');
433
+ return null;
434
+ }
435
+ throw innerError; // Re-throw for outer catch
436
+ }
437
+ }
438
+ catch (error) {
439
+ console.log('⚠️ Strategic context not available (GraphQL query failed)');
440
+ console.log(` Error: ${error.message}`);
441
+ if (process.env.GINKO_DEBUG_API) {
442
+ console.log(` Stack: ${error.stack}`);
443
+ }
444
+ return null;
445
+ }
446
+ }
447
+ // Module-level regex patterns (compiled once, reused - TASK-10 optimization)
448
+ const DOCUMENT_REFERENCE_PATTERN = /(ADR|PRD|Pattern|TASK)-\d+/gi;
205
449
  /**
206
450
  * Extract document references from event descriptions
207
451
  *
@@ -216,21 +460,10 @@ async function loadTeamEvents(projectId, excludeUserId, limit = 20, days = 7) {
216
460
  */
217
461
  function extractDocumentReferences(events) {
218
462
  const refs = new Set();
219
- // Regex patterns for document references
220
- const patterns = [
221
- /ADR-(\d+)/gi,
222
- /PRD-(\d+)/gi,
223
- /Pattern-(\d+)/gi,
224
- /TASK-(\d+)/gi,
225
- ];
226
463
  for (const event of events) {
227
- const text = event.description;
228
- for (const pattern of patterns) {
229
- const matches = text.matchAll(pattern);
230
- for (const match of matches) {
231
- refs.add(match[0]); // e.g., "ADR-043"
232
- }
233
- }
464
+ // Use single combined regex (faster than 4 separate patterns)
465
+ const matches = event.description.match(DOCUMENT_REFERENCE_PATTERN) || [];
466
+ matches.forEach(match => refs.add(match.toUpperCase()));
234
467
  }
235
468
  console.log(`📎 Extracted ${refs.size} document references from ${events.length} events`);
236
469
  return Array.from(refs);
@@ -274,6 +507,8 @@ async function loadDocuments(documentIds) {
274
507
  * - REFERENCES (ADR -> ADR, Pattern -> ADR)
275
508
  * - DEPENDS_ON (Feature -> Feature)
276
509
  *
510
+ * TASK-10: Parallelized API calls (saves 500ms-1.5s)
511
+ *
277
512
  * @param documents - Starting documents
278
513
  * @param depth - How many hops to follow
279
514
  * @returns Array of related documents
@@ -286,38 +521,49 @@ async function followTypedRelationships(documents, depth = 2) {
286
521
  try {
287
522
  const { GraphApiClient } = await import('../commands/graph/api-client.js');
288
523
  const client = new GraphApiClient();
289
- const relatedDocs = new Set();
290
- // For each starting document, explore its relationships
291
- for (const doc of documents.slice(0, 10)) { // Limit to first 10 to avoid too many API calls
292
- try {
293
- const response = await client.request('GET', `/api/v1/graph/explore/${doc.id}`);
294
- // Collect all related documents from typed relationships
295
- const relationships = response.relationships;
296
- if (relationships.implements) {
297
- relationships.implements.forEach((rel) => {
298
- relatedDocs.add({
524
+ // TASK-10: Fetch all relationships in PARALLEL (was sequential for-loop)
525
+ const docsToExplore = documents.slice(0, 10); // Limit to first 10
526
+ const explorationPromises = docsToExplore.map(doc => client
527
+ .request('GET', `/api/v1/graph/explore/${doc.id}`)
528
+ .catch((error) => {
529
+ console.log(` ⚠️ Could not explore ${doc.id}:`, error.message);
530
+ return null; // Return null on error instead of throwing
531
+ }));
532
+ const results = await Promise.all(explorationPromises);
533
+ // Collect all related documents from typed relationships
534
+ const relatedDocs = [];
535
+ const seenIds = new Set();
536
+ for (const response of results) {
537
+ if (!response?.relationships)
538
+ continue;
539
+ const { implements: implementsList, referencedBy } = response.relationships;
540
+ if (implementsList) {
541
+ for (const rel of implementsList) {
542
+ if (!seenIds.has(rel.id)) {
543
+ seenIds.add(rel.id);
544
+ relatedDocs.push({
299
545
  id: rel.id,
300
546
  type: rel.type,
301
547
  title: rel.title,
302
548
  });
303
- });
549
+ }
304
550
  }
305
- if (relationships.referencedBy) {
306
- relationships.referencedBy.forEach((rel) => {
307
- relatedDocs.add({
551
+ }
552
+ if (referencedBy) {
553
+ for (const rel of referencedBy) {
554
+ if (!seenIds.has(rel.id)) {
555
+ seenIds.add(rel.id);
556
+ relatedDocs.push({
308
557
  id: rel.id,
309
558
  type: rel.type,
310
559
  title: rel.title,
311
560
  });
312
- });
561
+ }
313
562
  }
314
- // Skip SIMILAR_TO as these are lower signal
315
- }
316
- catch (error) {
317
- console.log(` ⚠️ Could not explore ${doc.id}:`, error.message);
318
563
  }
564
+ // Skip SIMILAR_TO as these are lower signal
319
565
  }
320
- return Array.from(relatedDocs);
566
+ return relatedDocs;
321
567
  }
322
568
  catch (error) {
323
569
  console.error('Failed to follow relationships:', error);
@@ -1 +1 @@
1
- {"version":3,"file":"context-loader-events.js","sourceRoot":"","sources":["../../src/lib/context-loader-events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context-loader-events.js","sourceRoot":"","sources":["../../src/lib/context-loader-events.ts"],"names":[],"mappings":"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"}
@@ -34,12 +34,15 @@ export interface Event extends EventEntry {
34
34
  synced_to_graph?: boolean;
35
35
  }
36
36
  /**
37
- * Log an event with dual-write pattern
37
+ * Log an event with cloud-first pattern (TASK-012)
38
38
  *
39
- * Pattern (ADR-043):
40
- * 1. Write to local file immediately (blocking, must succeed)
41
- * 2. Add to async queue for Neo4j sync (non-blocking)
42
- * 3. Return immediately (don't wait for sync)
39
+ * Pattern evolution:
40
+ * - LEGACY (ADR-043): Dual-write (local file + async graph sync)
41
+ * - NEW (TASK-012): Cloud-first with optional local backup
42
+ *
43
+ * Modes:
44
+ * - Cloud-only: GINKO_CLOUD_ONLY=true - Graph only, no local files
45
+ * - Dual-write: (default) - Local file + graph sync for backward compat
43
46
  *
44
47
  * @param entry - Event entry data
45
48
  * @returns Promise<Event> - The logged event with metadata
@@ -1 +1 @@
1
- {"version":3,"file":"event-logger.d.ts","sourceRoot":"","sources":["../../src/lib/event-logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,KAAK,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,KAAK,GAAG,aAAa,CAAC;IAC7E,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,KAAM,SAAQ,UAAU;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAgGD;;;;;;;;;;GAUG;AACH,wBAAsB,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CAqChE;AAED;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAgBnD;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBxE;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAG1D;AAED;;GAEG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAOjD"}
1
+ {"version":3,"file":"event-logger.d.ts","sourceRoot":"","sources":["../../src/lib/event-logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,KAAK,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,KAAK,GAAG,aAAa,CAAC;IAC7E,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,KAAM,SAAQ,UAAU;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAgGD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CA2EhE;AAED;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAgBnD;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBxE;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAG1D;AAED;;GAEG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAOjD"}
@@ -89,12 +89,15 @@ async function appendToLocalFile(event) {
89
89
  }
90
90
  }
91
91
  /**
92
- * Log an event with dual-write pattern
92
+ * Log an event with cloud-first pattern (TASK-012)
93
93
  *
94
- * Pattern (ADR-043):
95
- * 1. Write to local file immediately (blocking, must succeed)
96
- * 2. Add to async queue for Neo4j sync (non-blocking)
97
- * 3. Return immediately (don't wait for sync)
94
+ * Pattern evolution:
95
+ * - LEGACY (ADR-043): Dual-write (local file + async graph sync)
96
+ * - NEW (TASK-012): Cloud-first with optional local backup
97
+ *
98
+ * Modes:
99
+ * - Cloud-only: GINKO_CLOUD_ONLY=true - Graph only, no local files
100
+ * - Dual-write: (default) - Local file + graph sync for backward compat
98
101
  *
99
102
  * @param entry - Event entry data
100
103
  * @returns Promise<Event> - The logged event with metadata
@@ -121,16 +124,53 @@ export async function logEvent(entry) {
121
124
  commit_hash: entry.commit_hash,
122
125
  synced_to_graph: false
123
126
  };
124
- // 3. Write to local file immediately (MUST succeed)
125
- await appendToLocalFile(event);
126
- // 4. Add to async queue (import lazily to avoid circular deps)
127
- try {
128
- const { addToQueue } = await import('./event-queue.js');
129
- await addToQueue(event);
127
+ // TASK-012: Check cloud-only mode
128
+ const cloudOnly = process.env.GINKO_CLOUD_ONLY === 'true';
129
+ if (cloudOnly) {
130
+ // CLOUD-ONLY MODE: Write directly to graph API, bypassing queue
131
+ // (Queue depends on local files which don't exist in cloud-only mode)
132
+ try {
133
+ const { createGraphEvents } = await import('../commands/graph/api-client.js');
134
+ // Convert to graph API format
135
+ const graphEvent = {
136
+ id: event.id,
137
+ user_id: event.user_id,
138
+ organization_id: event.organization_id,
139
+ project_id: event.project_id,
140
+ category: event.category,
141
+ description: event.description,
142
+ timestamp: event.timestamp,
143
+ impact: event.impact,
144
+ files: event.files,
145
+ branch: event.branch,
146
+ tags: event.tags,
147
+ shared: event.shared,
148
+ commit_hash: event.commit_hash,
149
+ pressure: event.pressure
150
+ };
151
+ // Synchronous write to graph (fail loudly if it fails)
152
+ await createGraphEvents([graphEvent]);
153
+ console.log('[EventLogger] ☁️ Cloud-only: Event synced to graph');
154
+ }
155
+ catch (error) {
156
+ console.error('[EventLogger] ❌ Cloud-only mode: Graph write failed!');
157
+ console.error('[EventLogger] Event NOT persisted (no local fallback)');
158
+ throw new Error(`Cloud-only mode: Graph write failed: ${error instanceof Error ? error.message : String(error)}`);
159
+ }
130
160
  }
131
- catch (error) {
132
- // Queue failure is non-critical - event is persisted locally
133
- console.warn('[EventLogger] Failed to add to sync queue:', error instanceof Error ? error.message : String(error));
161
+ else {
162
+ // DUAL-WRITE MODE (legacy): Local file first, then async graph sync
163
+ // 3. Write to local file immediately (MUST succeed)
164
+ await appendToLocalFile(event);
165
+ // 4. Add to async queue (import lazily to avoid circular deps)
166
+ try {
167
+ const { addToQueue } = await import('./event-queue.js');
168
+ await addToQueue(event);
169
+ }
170
+ catch (error) {
171
+ // Queue failure is non-critical - event is persisted locally
172
+ console.warn('[EventLogger] Failed to add to sync queue:', error instanceof Error ? error.message : String(error));
173
+ }
134
174
  }
135
175
  return event;
136
176
  }
@@ -1 +1 @@
1
- {"version":3,"file":"event-logger.js","sourceRoot":"","sources":["../../src/lib/event-logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-logger.js","sourceRoot":"","sources":["../../src/lib/event-logger.ts"],"names":[],"mappings":"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"}