@ginkoai/cli 1.4.13 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/dist/commands/graph/api-client.d.ts +45 -1
  2. package/dist/commands/graph/api-client.d.ts.map +1 -1
  3. package/dist/commands/graph/api-client.js +86 -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 +295 -47
  23. package/dist/commands/start/start-reflection.js.map +1 -1
  24. package/dist/index.js +7 -7
  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 +289 -36
  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 +182 -0
  43. package/dist/lib/output-formatter.d.ts.map +1 -0
  44. package/dist/lib/output-formatter.js +263 -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 +94 -0
  51. package/dist/lib/sprint-loader.d.ts.map +1 -0
  52. package/dist/lib/sprint-loader.js +330 -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 +9 -0
  70. package/dist/utils/synthesis.d.ts.map +1 -1
  71. package/dist/utils/synthesis.js +47 -40
  72. package/dist/utils/synthesis.js.map +1 -1
  73. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"start-reflection.d.ts","sourceRoot":"","sources":["../../../src/commands/start/start-reflection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAerE;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,iBAAiB;IAC3D,OAAO,CAAC,cAAc,CAAuB;;IAQ7C;;OAEG;IACH,OAAO,CAAC,WAAW;IAQnB;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,GAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAoL/D;;;OAGG;YACW,kBAAkB;IA6PhC;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC;IA+BlC;;OAEG;IACG,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;IAsDlF;;OAEG;YACW,WAAW;IAuBzB;;OAEG;YACW,0BAA0B;IA2DxC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAqB1B;;OAEG;YACW,aAAa;IAM3B;;OAEG;YACW,iBAAiB;IAU/B;;OAEG;YACW,WAAW;IAKzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;OAEG;IACH,OAAO,CAAC,4BAA4B;IA6BpC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA4CzB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA2B9B;;OAEG;IACG,aAAa,CAAC,YAAY,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAmCpD;;OAEG;YACW,oBAAoB;CAqBnC;AAGD,eAAe,sBAAsB,CAAC"}
1
+ {"version":3,"file":"start-reflection.d.ts","sourceRoot":"","sources":["../../../src/commands/start/start-reflection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAqBrE;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,iBAAiB;IAC3D,OAAO,CAAC,cAAc,CAAuB;;IAQ7C;;OAEG;IACH,OAAO,CAAC,WAAW;IAQnB;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,GAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAoM/D;;;;;OAKG;YACW,kBAAkB;IA6VhC;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC;IA+BlC;;OAEG;IACG,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;IAsDlF;;OAEG;YACW,WAAW;IAuBzB;;OAEG;YACW,0BAA0B;IA2DxC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAqB1B;;OAEG;YACW,aAAa;IAM3B;;OAEG;YACW,iBAAiB;IAU/B;;OAEG;YACW,WAAW;IAKzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;OAEG;IACH,OAAO,CAAC,4BAA4B;IA6BpC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA4CzB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA2B9B;;OAEG;IACG,aAAa,CAAC,YAAY,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAmCpD;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IA+HtB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAM5B;;;;OAIG;YACW,cAAc;IAa5B;;OAEG;YACW,oBAAoB;CAqBnC;AAGD,eAAe,sBAAsB,CAAC"}
@@ -19,9 +19,10 @@ import { ActiveContextManager } from '../../services/active-context-manager.js';
19
19
  import { SessionLogManager } from '../../core/session-log-manager.js';
20
20
  import { SessionSynthesizer } from '../../utils/synthesis.js';
21
21
  import { loadContextStrategic, formatContextSummary } from '../../utils/context-loader.js';
22
- import { getOrCreateCursor } from '../../lib/session-cursor.js';
23
22
  import { initializeQueue } from '../../lib/event-queue.js';
24
- import { loadContextFromCursor, formatContextSummary as formatEventContextSummary } from '../../lib/context-loader-events.js';
23
+ import { formatContextSummary as formatEventContextSummary } from '../../lib/context-loader-events.js';
24
+ import { loadSprintChecklist, formatSprintChecklist, formatCurrentTaskDetails } from '../../lib/sprint-loader.js';
25
+ import { formatHumanOutput, formatVerboseOutput, formatAIContextJSONL } from '../../lib/output-formatter.js';
25
26
  /**
26
27
  * Start domain reflection for intelligent session initialization
27
28
  * Reads handoff and loads optimal context for instant flow state
@@ -65,13 +66,9 @@ export class StartReflectionCommand extends ReflectionCommand {
65
66
  // Non-critical - continue without sync
66
67
  spinner.warn(chalk.yellow('Event sync queue unavailable (offline mode)'));
67
68
  }
68
- // 3. Create or resume session cursor (ADR-043)
69
- spinner.text = 'Creating session cursor...';
70
- const { cursor, isNew } = await getOrCreateCursor({});
71
- // 4. Gather context (including handoff)
69
+ // 3. Gather context (including handoff)
72
70
  const context = await this.gatherContext(parsedIntent);
73
- context.cursor = cursor;
74
- context.isNewSession = isNew;
71
+ context.isNewSession = true; // Always a new session with chronological loading
75
72
  // 4. Read previous session log BEFORE archiving (ADR-033: Fresh AI synthesis at optimal pressure)
76
73
  spinner.text = 'Reading previous session log...';
77
74
  const ginkoDir = await getGinkoDir();
@@ -79,6 +76,8 @@ export class StartReflectionCommand extends ReflectionCommand {
79
76
  const userSlug = userEmail.replace('@', '-at-').replace(/\./g, '-');
80
77
  const sessionDir = path.join(ginkoDir, 'sessions', userSlug);
81
78
  const projectRoot = await getProjectRoot();
79
+ // Load sprint checklist for session context
80
+ const sprintChecklist = await loadSprintChecklist(projectRoot);
82
81
  // Load session log content before archiving
83
82
  const previousSessionLog = await SessionLogManager.loadSessionLog(sessionDir);
84
83
  const hasLog = previousSessionLog.length > 100; // Non-empty log
@@ -96,24 +95,30 @@ export class StartReflectionCommand extends ReflectionCommand {
96
95
  const workMode = this.determineWorkMode(context, options);
97
96
  this.contextManager = new ActiveContextManager(workMode);
98
97
  spinner.text = 'Loading context strategically...';
99
- // 8. Load context strategically (TASK-011: Progressive Context Loading)
100
- // ADR-043 Phase 3: Event-based context loading is now the default
98
+ // 8. Load context strategically (TASK-011: Chronological loading)
99
+ // ADR-043 Phase 3 + TASK-011: Simple chronological loading is now the default
101
100
  // Falls back to strategic loading if event loading fails
102
101
  let strategyContext;
103
102
  let eventContext;
104
103
  let eventSynthesis;
105
104
  // Allow disabling event-based loading with env var or --strategic flag
106
105
  const useEventBasedLoading = process.env.GINKO_USE_EVENT_CONTEXT !== 'false' && !options.strategic;
107
- if (useEventBasedLoading && cursor) {
108
- spinner.text = 'Loading context from event stream (ADR-043)...';
106
+ if (useEventBasedLoading) {
107
+ spinner.text = 'Loading recent events (chronological query)...';
109
108
  try {
110
- eventContext = await loadContextFromCursor(cursor, {
109
+ // TASK-011: Use simple chronological loading (no cursor needed!)
110
+ const projectInfo = await import('../../utils/helpers.js').then(m => m.getProjectInfo());
111
+ eventContext = await import('../../lib/context-loader-events.js').then(m => m.loadRecentEvents(userEmail, projectInfo.name, {
111
112
  eventLimit: 50,
112
113
  includeTeam: options.team || false,
113
114
  teamEventLimit: 20,
114
115
  documentDepth: 2,
115
116
  teamDays: 7,
116
- });
117
+ }));
118
+ // Ensure eventContext is defined
119
+ if (!eventContext) {
120
+ throw new Error('Event context loading failed');
121
+ }
117
122
  // Display event-based context summary
118
123
  spinner.succeed('Event stream context loaded');
119
124
  console.log(chalk.dim(formatEventContextSummary(eventContext)));
@@ -187,13 +192,22 @@ export class StartReflectionCommand extends ReflectionCommand {
187
192
  if (!options.noLog) {
188
193
  spinner.info('Session logging enabled (use --no-log to disable)');
189
194
  }
190
- // 11. Display session information with synthesis and strategy metrics
191
- await this.displaySessionInfo(context, contextLevel, activeSynthesis, strategyContext);
192
- // Display strategic context loading summary
195
+ // 11. Build AI context for dual output system (TASK-11)
196
+ const aiContext = this.buildAIContext(context, activeSynthesis, strategyContext, eventContext, sprintChecklist);
197
+ // Store AI context for MCP/external access
198
+ await this.storeAIContext(aiContext, sessionDir);
199
+ // 12. Display output based on mode (TASK-P2: Concise is now default)
193
200
  if (options.verbose) {
201
+ // Verbose mode: Full session info (~80 lines)
202
+ await this.displaySessionInfo(context, contextLevel, activeSynthesis, strategyContext, eventContext, sprintChecklist);
203
+ console.log(formatVerboseOutput(aiContext));
194
204
  console.log('');
195
205
  console.log(chalk.dim(formatContextSummary(strategyContext)));
196
206
  }
207
+ else {
208
+ // Default mode: Concise human-optimized output (≤20 lines)
209
+ this.displayConciseOutput(aiContext);
210
+ }
197
211
  spinner.succeed('Session initialized with strategic context!');
198
212
  }
199
213
  catch (error) {
@@ -205,20 +219,16 @@ export class StartReflectionCommand extends ReflectionCommand {
205
219
  /**
206
220
  * Display session information based on synthesis (ADR-036)
207
221
  * Enhanced with strategic context metrics (TASK-011)
222
+ * EPIC-001: Display charter, team activity, patterns
223
+ * TASK-5: Display sprint checklist with [@] current task
208
224
  */
209
- async displaySessionInfo(context, contextLevel, synthesis, strategyContext) {
225
+ async displaySessionInfo(context, contextLevel, synthesis, strategyContext, eventContext, sprintChecklist) {
210
226
  console.log('');
211
- // Display cursor information (ADR-043)
212
- if (context.cursor) {
213
- const cursor = context.cursor;
214
- const statusEmoji = context.isNewSession ? '🆕' : '🔄';
215
- const statusText = context.isNewSession ? 'New session' : 'Resumed session';
216
- console.log(chalk.cyan(`${statusEmoji} Session Cursor:`));
217
- console.log(chalk.dim(` ${statusText} on ${chalk.bold(cursor.branch)}`));
218
- console.log(chalk.dim(` Project: ${cursor.project_id}`));
219
- if (!context.isNewSession) {
220
- console.log(chalk.dim(` Position: ${cursor.current_event_id}`));
221
- }
227
+ // Display session information (TASK-011: Chronological loading, no cursor state)
228
+ if (context.currentBranch) {
229
+ console.log(chalk.cyan(`🆕 Session:`));
230
+ console.log(chalk.dim(` Chronological loading on ${chalk.bold(context.currentBranch)}`));
231
+ console.log(chalk.dim(` Loading last 50 events (no cursor state)`));
222
232
  console.log('');
223
233
  }
224
234
  // Display quality tier
@@ -232,6 +242,69 @@ export class StartReflectionCommand extends ReflectionCommand {
232
242
  console.log(chalk.dim(`${tierEmoji[synthesis.qualityTier]} Context Quality: ${synthesis.qualityTier}`));
233
243
  console.log('');
234
244
  }
245
+ // Display strategic context (EPIC-001: Charter, Team, Patterns)
246
+ if (eventContext?.strategicContext) {
247
+ const strategic = eventContext.strategicContext;
248
+ const workMode = context.workMode || 'Think & Build';
249
+ // Charter section
250
+ if (strategic.charter) {
251
+ console.log(chalk.cyan('📜 Project Charter'));
252
+ console.log(chalk.dim(` Purpose: ${strategic.charter.purpose}`));
253
+ if (workMode !== 'Hack & Ship' && strategic.charter.goals && strategic.charter.goals.length > 0) {
254
+ console.log('');
255
+ console.log(chalk.dim(' 🎯 Goals:'));
256
+ const goalLimit = workMode === 'Full Planning' ? 5 : 3;
257
+ strategic.charter.goals.slice(0, goalLimit).forEach((goal, i) => {
258
+ console.log(chalk.dim(` ${i + 1}. ${goal}`));
259
+ });
260
+ if (strategic.charter.goals.length > goalLimit) {
261
+ console.log(chalk.dim(` ... and ${strategic.charter.goals.length - goalLimit} more`));
262
+ }
263
+ }
264
+ console.log('');
265
+ }
266
+ // Team activity section
267
+ if (strategic.teamActivity && strategic.teamActivity.length > 0) {
268
+ console.log(chalk.cyan('👥 Team Activity (7d)'));
269
+ if (workMode === 'Hack & Ship') {
270
+ // Just show count for Hack & Ship
271
+ console.log(chalk.dim(` ${strategic.teamActivity.length} team updates this week`));
272
+ }
273
+ else {
274
+ // Group by category
275
+ const decisions = strategic.teamActivity.filter((e) => e.category === 'decision');
276
+ const achievements = strategic.teamActivity.filter((e) => e.category === 'achievement');
277
+ if (decisions.length > 0) {
278
+ console.log(chalk.yellow(' Decisions:'));
279
+ decisions.slice(0, 3).forEach((d) => {
280
+ const desc = d.description.length > 60 ? d.description.substring(0, 57) + '...' : d.description;
281
+ console.log(chalk.dim(` - ${d.user}: ${desc}`));
282
+ });
283
+ }
284
+ if (achievements.length > 0) {
285
+ console.log(chalk.green(' Achievements:'));
286
+ achievements.slice(0, 3).forEach((a) => {
287
+ const desc = a.description.length > 60 ? a.description.substring(0, 57) + '...' : a.description;
288
+ console.log(chalk.dim(` - ${a.user}: ${desc}`));
289
+ });
290
+ }
291
+ }
292
+ console.log('');
293
+ }
294
+ // Patterns & Gotchas section (skip in Hack & Ship mode)
295
+ if (workMode !== 'Hack & Ship' && strategic.patterns && strategic.patterns.length > 0) {
296
+ console.log(chalk.cyan('🧠 Relevant Patterns'));
297
+ const limit = workMode === 'Full Planning' ? 5 : 3;
298
+ strategic.patterns.slice(0, limit).forEach((p) => {
299
+ const tags = p.tags ? ` [${p.tags.join(', ')}]` : '';
300
+ console.log(chalk.dim(` - ${p.title}${tags}`));
301
+ });
302
+ if (strategic.patterns.length > limit) {
303
+ console.log(chalk.dim(` ... and ${strategic.patterns.length - limit} more`));
304
+ }
305
+ console.log('');
306
+ }
307
+ }
235
308
  // Display flow state (ADR-036: 1-10 scale with emotional tone)
236
309
  if (synthesis?.flowState) {
237
310
  const flow = synthesis.flowState;
@@ -270,7 +343,15 @@ export class StartReflectionCommand extends ReflectionCommand {
270
343
  }
271
344
  console.log('');
272
345
  }
273
- if (work.inProgress.length > 0) {
346
+ // Display sprint checklist (TASK-5) - replaces generic "In Progress"
347
+ if (sprintChecklist) {
348
+ console.log(formatSprintChecklist(sprintChecklist));
349
+ if (sprintChecklist.currentTask) {
350
+ console.log(formatCurrentTaskDetails(sprintChecklist.currentTask));
351
+ }
352
+ }
353
+ else if (work.inProgress.length > 0) {
354
+ // Fallback to generic in-progress if no sprint file
274
355
  console.log(chalk.yellow('🚧 In Progress:'));
275
356
  work.inProgress.forEach(item => {
276
357
  console.log(chalk.dim(` - ${item}`));
@@ -390,29 +471,49 @@ export class StartReflectionCommand extends ReflectionCommand {
390
471
  console.log('');
391
472
  }
392
473
  // Resume point from synthesis (ADR-036)
393
- if (synthesis?.resumePoint) {
394
- const resume = synthesis.resumePoint;
395
- console.log(chalk.green('⚡ Resume Point:'));
396
- console.log(chalk.white(` ${resume.summary}`));
397
- console.log('');
398
- console.log(chalk.yellow('📍 Next Action:'));
399
- console.log(chalk.white(` ${resume.nextAction}`));
400
- console.log(chalk.dim(` $ ${resume.suggestedCommand}`));
401
- if (resume.contextFiles.length > 0) {
474
+ // Priority order for next action (TASK-P3):
475
+ // 1. If sprint has in_progress task -> "Continue: [task title]"
476
+ // 2. If resume event has explicit nextAction -> use it
477
+ // 3. Default -> "What would you like to work on?"
478
+ // Determine next action with single source of truth
479
+ let nextAction;
480
+ let resumeSummary;
481
+ if (sprintChecklist?.currentTask) {
482
+ const task = sprintChecklist.currentTask;
483
+ const isInProgress = task.state === 'in_progress';
484
+ // Sprint task takes priority
485
+ resumeSummary = synthesis?.resumePoint?.summary || 'Resuming sprint work';
486
+ nextAction = isInProgress
487
+ ? `Continue: ${task.title}`
488
+ : `Begin: ${task.title}`;
489
+ }
490
+ else if (synthesis?.resumePoint) {
491
+ // Use synthesis resume point if no sprint task
492
+ resumeSummary = synthesis.resumePoint.summary;
493
+ nextAction = synthesis.resumePoint.nextAction;
494
+ }
495
+ else {
496
+ // Generic fallback
497
+ resumeSummary = 'Ready to work';
498
+ nextAction = 'What would you like to work on?';
499
+ }
500
+ // Display coherent resume + next action
501
+ console.log(chalk.green('⚡ Resume Point:'));
502
+ console.log(chalk.white(` ${resumeSummary}`));
503
+ console.log('');
504
+ console.log(chalk.yellow('📍 Next Action:'));
505
+ console.log(chalk.white(` ${nextAction}`));
506
+ // Only show context files if available and no sprint task
507
+ if (!sprintChecklist?.currentTask && synthesis?.resumePoint?.contextFiles) {
508
+ const contextFiles = synthesis.resumePoint.contextFiles;
509
+ if (contextFiles.length > 0) {
402
510
  console.log('');
403
511
  console.log(chalk.cyan('📄 Context Files:'));
404
- resume.contextFiles.slice(0, 3).forEach(file => {
512
+ contextFiles.slice(0, 3).forEach(file => {
405
513
  console.log(chalk.dim(` - ${file}`));
406
514
  });
407
515
  }
408
516
  }
409
- else {
410
- // Fallback to generic steps
411
- console.log(chalk.green('⚡ Next Steps:'));
412
- console.log(chalk.white(' 1. Review uncommitted changes'));
413
- console.log(chalk.white(' 2. Continue where you left off'));
414
- console.log(chalk.white(' 3. Run tests to verify everything works'));
415
- }
416
517
  // Show warnings from synthesis
417
518
  if (synthesis?.warnings && synthesis.warnings.length > 0) {
418
519
  console.log('');
@@ -772,6 +873,153 @@ Example output structure:
772
873
  hasUncommittedChanges: status.files.length > 0
773
874
  };
774
875
  }
876
+ /**
877
+ * Build AI context object for structured output (TASK-11)
878
+ *
879
+ * Creates a rich, structured context object that AI partners can parse.
880
+ * This is the "AI UX" side of the dual output system.
881
+ */
882
+ buildAIContext(context, synthesis, strategyContext, eventContext, sprintChecklist) {
883
+ const workMode = context.workMode || 'Think & Build';
884
+ // Build sprint object
885
+ let sprint;
886
+ if (sprintChecklist) {
887
+ // Calculate progress percentage from SprintChecklist.progress object
888
+ const progressPercent = sprintChecklist.progress?.total > 0
889
+ ? Math.round((sprintChecklist.progress.complete / sprintChecklist.progress.total) * 100)
890
+ : 0;
891
+ sprint = {
892
+ id: sprintChecklist.file || 'unknown',
893
+ name: sprintChecklist.name || 'Active Sprint',
894
+ goal: synthesis?.sprintContext?.goal || '',
895
+ progress: progressPercent,
896
+ currentTask: sprintChecklist.currentTask ? {
897
+ id: sprintChecklist.currentTask.id,
898
+ title: sprintChecklist.currentTask.title,
899
+ status: sprintChecklist.currentTask.status || 'in_progress',
900
+ files: sprintChecklist.currentTask.files || [],
901
+ priority: sprintChecklist.currentTask.priority || 'medium',
902
+ // ADR constraints for current task (EPIC-002 Phase 1)
903
+ constraints: sprintChecklist.currentTask.relatedADRs?.map((adrId) => ({
904
+ adr: {
905
+ id: adrId,
906
+ title: adrId, // Title will be enriched by API if available
907
+ },
908
+ source: 'sprint_definition',
909
+ })),
910
+ } : undefined,
911
+ tasks: (sprintChecklist.tasks || []).map((t) => ({
912
+ id: t.id,
913
+ title: t.title,
914
+ status: t.status,
915
+ })),
916
+ };
917
+ }
918
+ // Build synthesis object
919
+ let synthObj;
920
+ if (synthesis) {
921
+ synthObj = {
922
+ completedWork: synthesis.workPerformed?.completed || [],
923
+ inProgressWork: synthesis.workPerformed?.inProgress || [],
924
+ blockedItems: synthesis.workPerformed?.blocked || [],
925
+ keyDecisions: synthesis.discoveries?.decisions?.map((d) => d.description) || [],
926
+ gotchas: synthesis.discoveries?.gotchas || [],
927
+ resumePoint: synthesis.resumePoint?.summary,
928
+ nextAction: synthesis.resumePoint?.nextAction,
929
+ suggestedCommand: synthesis.resumePoint?.suggestedCommand,
930
+ };
931
+ }
932
+ // Build git status
933
+ const uncommittedChanges = {
934
+ modified: context.uncommittedWork?.modified || [],
935
+ created: context.uncommittedWork?.created || [],
936
+ untracked: context.uncommittedWork?.not_added || [],
937
+ };
938
+ const warnings = [];
939
+ const totalChanges = uncommittedChanges.modified.length +
940
+ uncommittedChanges.created.length +
941
+ uncommittedChanges.untracked.length;
942
+ if (totalChanges > 0) {
943
+ warnings.push(`${totalChanges} uncommitted files`);
944
+ }
945
+ if (synthesis?.warnings) {
946
+ warnings.push(...synthesis.warnings);
947
+ }
948
+ return {
949
+ session: {
950
+ id: `session-${Date.now()}`,
951
+ branch: context.currentBranch || 'unknown',
952
+ startedAt: new Date().toISOString(),
953
+ flowScore: synthesis?.flowState?.score || 5,
954
+ flowState: synthesis?.flowState?.energy || 'neutral',
955
+ workMode: workMode,
956
+ },
957
+ charter: eventContext?.strategicContext?.charter,
958
+ teamActivity: eventContext?.strategicContext?.teamActivity ? {
959
+ decisions: eventContext.strategicContext.teamActivity
960
+ .filter((e) => e.category === 'decision')
961
+ .map((d) => ({
962
+ user: d.user,
963
+ description: d.description,
964
+ timestamp: d.timestamp,
965
+ impact: d.impact,
966
+ })),
967
+ achievements: eventContext.strategicContext.teamActivity
968
+ .filter((e) => e.category === 'achievement')
969
+ .map((a) => ({
970
+ user: a.user,
971
+ description: a.description,
972
+ timestamp: a.timestamp,
973
+ })),
974
+ } : undefined,
975
+ patterns: eventContext?.strategicContext?.patterns,
976
+ sprint,
977
+ synthesis: synthObj,
978
+ git: {
979
+ branch: context.currentBranch || 'unknown',
980
+ commitsAhead: context.uncommittedWork?.ahead || 0,
981
+ uncommittedChanges,
982
+ warnings,
983
+ },
984
+ metrics: {
985
+ eventsLoaded: eventContext?.event_count || 0,
986
+ documentsLoaded: strategyContext?.metrics?.documentsLoaded || 0,
987
+ tokenEstimate: strategyContext?.metrics?.totalTokens || eventContext?.token_estimate || 0,
988
+ tokenReduction: strategyContext?.metrics?.tokenReductionPercent
989
+ ? `${strategyContext.metrics.tokenReductionPercent}%`
990
+ : undefined,
991
+ loadTimeMs: strategyContext?.metrics?.bootstrapTimeMs || 0,
992
+ },
993
+ };
994
+ }
995
+ /**
996
+ * Display concise human output (TASK-11)
997
+ *
998
+ * Shows only essential info for instant productivity (6-8 lines).
999
+ * Used with --concise flag.
1000
+ */
1001
+ displayConciseOutput(aiContext) {
1002
+ console.log('');
1003
+ console.log(formatHumanOutput(aiContext, { workMode: aiContext.session.workMode }));
1004
+ console.log('');
1005
+ }
1006
+ /**
1007
+ * Store AI context to file for MCP/external access (TASK-11)
1008
+ *
1009
+ * Writes structured context to .ginko/sessions/[user]/current-context.jsonl
1010
+ */
1011
+ async storeAIContext(aiContext, sessionDir) {
1012
+ const contextPath = path.join(sessionDir, 'current-context.jsonl');
1013
+ try {
1014
+ // Append context as JSONL entry
1015
+ const jsonlEntry = formatAIContextJSONL(aiContext) + '\n';
1016
+ await fs.appendFile(contextPath, jsonlEntry);
1017
+ }
1018
+ catch (error) {
1019
+ // Non-critical - log but don't fail
1020
+ console.log(chalk.dim(`⚠️ Could not store AI context: ${error.message}`));
1021
+ }
1022
+ }
775
1023
  /**
776
1024
  * Initialize session logging (ADR-033)
777
1025
  */
@@ -1 +1 @@
1
- {"version":3,"file":"start-reflection.js","sourceRoot":"","sources":["../../../src/commands/start/start-reflection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"start-reflection.js","sourceRoot":"","sources":["../../../src/commands/start/start-reflection.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -81,8 +81,8 @@ program
81
81
  program
82
82
  .command('start [sessionId]')
83
83
  .description('Start or resume a session with event-based context loading (ADR-043)')
84
- .option('-v, --verbose', 'Show full context and session details')
85
- .option('-m, --minimal', 'Minimal output for quick start')
84
+ .option('-v, --verbose', 'Show full session details with all context (~80 lines, for detailed review)')
85
+ .option('-m, --minimal', 'Minimal output for quick start (deprecated, concise is now default)')
86
86
  .option('--noai', 'Disable AI enhancement and use procedural templates')
87
87
  .option('--legacy', 'Use original implementation without reflection (deprecated)')
88
88
  .option('--strategic', 'Use strategic context loading instead of event-based (fallback mode)')
@@ -94,10 +94,10 @@ program
94
94
  .option('--all', 'Show all session cursors')
95
95
  .action(statusCommand);
96
96
  program
97
- .command('handoff')
98
- .description('Pause current session and update cursor (ADR-043)')
97
+ .command('handoff [message]')
98
+ .description('Pause current session and update cursor (ADR-043). Optionally provide a handoff summary message.')
99
99
  .option('-v, --verbose', 'Show detailed cursor and sync information')
100
- .action(handoffCommand);
100
+ .action((message, options) => handoffCommand({ message, ...options }));
101
101
  program
102
102
  .command('charter')
103
103
  .description('Create and manage project charter (AI-assisted by default)')
@@ -122,8 +122,8 @@ program
122
122
  program
123
123
  .command('log [description]')
124
124
  .description('Log an event to the current session (ADR-033 defensive logging)')
125
- .option('-c, --category <category>', 'Event category: fix, feature, decision, insight, git, achievement', 'feature')
126
- .option('-i, --impact <impact>', 'Impact level: high, medium, low', 'medium')
125
+ .option('-c, --category <category>', 'Event category: fix, feature, decision, insight, git, achievement (auto-detected if not provided)')
126
+ .option('-i, --impact <impact>', 'Impact level: high, medium, low (auto-detected if not provided)')
127
127
  .option('-f, --files <files>', 'Comma-separated list of files affected')
128
128
  .option('-s, --show', 'Show current session log with quality score')
129
129
  .option('--validate', 'Check session log quality and get suggestions')