@ginkoai/cli 2.4.5 → 2.5.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 (174) hide show
  1. package/LICENSE +661 -21
  2. package/dist/commands/agent/status.d.ts.map +1 -1
  3. package/dist/commands/agent/status.js +2 -0
  4. package/dist/commands/agent/status.js.map +1 -1
  5. package/dist/commands/assign.d.ts.map +1 -1
  6. package/dist/commands/assign.js +2 -0
  7. package/dist/commands/assign.js.map +1 -1
  8. package/dist/commands/charter.js +3 -3
  9. package/dist/commands/charter.js.map +1 -1
  10. package/dist/commands/context/index.d.ts +28 -0
  11. package/dist/commands/context/index.d.ts.map +1 -0
  12. package/dist/commands/context/index.js +165 -0
  13. package/dist/commands/context/index.js.map +1 -0
  14. package/dist/commands/context/score.d.ts +34 -0
  15. package/dist/commands/context/score.d.ts.map +1 -0
  16. package/dist/commands/context/score.js +163 -0
  17. package/dist/commands/context/score.js.map +1 -0
  18. package/dist/commands/diff/diff-command.d.ts.map +1 -1
  19. package/dist/commands/diff/diff-command.js +2 -0
  20. package/dist/commands/diff/diff-command.js.map +1 -1
  21. package/dist/commands/epic/status.d.ts.map +1 -1
  22. package/dist/commands/epic/status.js +5 -0
  23. package/dist/commands/epic/status.js.map +1 -1
  24. package/dist/commands/graph/api-client.d.ts +130 -0
  25. package/dist/commands/graph/api-client.d.ts.map +1 -1
  26. package/dist/commands/graph/api-client.js +153 -0
  27. package/dist/commands/graph/api-client.js.map +1 -1
  28. package/dist/commands/graph/cleanup.d.ts.map +1 -1
  29. package/dist/commands/graph/cleanup.js +2 -0
  30. package/dist/commands/graph/cleanup.js.map +1 -1
  31. package/dist/commands/graph/explore.d.ts.map +1 -1
  32. package/dist/commands/graph/explore.js +2 -0
  33. package/dist/commands/graph/explore.js.map +1 -1
  34. package/dist/commands/graph/query.d.ts.map +1 -1
  35. package/dist/commands/graph/query.js +2 -0
  36. package/dist/commands/graph/query.js.map +1 -1
  37. package/dist/commands/graph/status.d.ts.map +1 -1
  38. package/dist/commands/graph/status.js +2 -0
  39. package/dist/commands/graph/status.js.map +1 -1
  40. package/dist/commands/handoff.d.ts.map +1 -1
  41. package/dist/commands/handoff.js +34 -0
  42. package/dist/commands/handoff.js.map +1 -1
  43. package/dist/commands/health.d.ts +15 -0
  44. package/dist/commands/health.d.ts.map +1 -0
  45. package/dist/commands/health.js +212 -0
  46. package/dist/commands/health.js.map +1 -0
  47. package/dist/commands/init-copilot.js +1 -1
  48. package/dist/commands/init-copilot.js.map +1 -1
  49. package/dist/commands/init.d.ts.map +1 -1
  50. package/dist/commands/init.js +74 -2
  51. package/dist/commands/init.js.map +1 -1
  52. package/dist/commands/join/index.js +2 -2
  53. package/dist/commands/knowledge/create.d.ts.map +1 -1
  54. package/dist/commands/knowledge/create.js +2 -0
  55. package/dist/commands/knowledge/create.js.map +1 -1
  56. package/dist/commands/knowledge/graph.d.ts.map +1 -1
  57. package/dist/commands/knowledge/graph.js +2 -0
  58. package/dist/commands/knowledge/graph.js.map +1 -1
  59. package/dist/commands/knowledge/search.d.ts.map +1 -1
  60. package/dist/commands/knowledge/search.js +2 -0
  61. package/dist/commands/knowledge/search.js.map +1 -1
  62. package/dist/commands/log.d.ts.map +1 -1
  63. package/dist/commands/log.js +4 -3
  64. package/dist/commands/log.js.map +1 -1
  65. package/dist/commands/orchestrate.d.ts.map +1 -1
  66. package/dist/commands/orchestrate.js +2 -0
  67. package/dist/commands/orchestrate.js.map +1 -1
  68. package/dist/commands/pull/pull-command.d.ts.map +1 -1
  69. package/dist/commands/pull/pull-command.js +2 -0
  70. package/dist/commands/pull/pull-command.js.map +1 -1
  71. package/dist/commands/push/push-command.d.ts.map +1 -1
  72. package/dist/commands/push/push-command.js +5 -0
  73. package/dist/commands/push/push-command.js.map +1 -1
  74. package/dist/commands/ship.js +1 -1
  75. package/dist/commands/ship.js.map +1 -1
  76. package/dist/commands/sprint/create.d.ts +9 -5
  77. package/dist/commands/sprint/create.d.ts.map +1 -1
  78. package/dist/commands/sprint/create.js +226 -29
  79. package/dist/commands/sprint/create.js.map +1 -1
  80. package/dist/commands/sprint/index.d.ts.map +1 -1
  81. package/dist/commands/sprint/index.js +9 -5
  82. package/dist/commands/sprint/index.js.map +1 -1
  83. package/dist/commands/sprint/status.d.ts +3 -0
  84. package/dist/commands/sprint/status.d.ts.map +1 -1
  85. package/dist/commands/sprint/status.js +88 -2
  86. package/dist/commands/sprint/status.js.map +1 -1
  87. package/dist/commands/start/index.js +3 -3
  88. package/dist/commands/start/index.js.map +1 -1
  89. package/dist/commands/start/start-reflection.d.ts +5 -0
  90. package/dist/commands/start/start-reflection.d.ts.map +1 -1
  91. package/dist/commands/start/start-reflection.js +60 -11
  92. package/dist/commands/start/start-reflection.js.map +1 -1
  93. package/dist/commands/sync/sync-command.js +1 -1
  94. package/dist/commands/sync/sync-command.js.map +1 -1
  95. package/dist/commands/sync/team-sync.js +1 -1
  96. package/dist/commands/task/status.d.ts +1 -1
  97. package/dist/commands/task/status.d.ts.map +1 -1
  98. package/dist/commands/task/status.js +161 -6
  99. package/dist/commands/task/status.js.map +1 -1
  100. package/dist/commands/team/members.d.ts.map +1 -1
  101. package/dist/commands/team/members.js +4 -0
  102. package/dist/commands/team/members.js.map +1 -1
  103. package/dist/commands/team/projects.d.ts.map +1 -1
  104. package/dist/commands/team/projects.js +3 -0
  105. package/dist/commands/team/projects.js.map +1 -1
  106. package/dist/commands/team/status.d.ts.map +1 -1
  107. package/dist/commands/team/status.js +2 -0
  108. package/dist/commands/team/status.js.map +1 -1
  109. package/dist/index.js +12 -8
  110. package/dist/index.js.map +1 -1
  111. package/dist/lib/adoption-score.d.ts +1 -1
  112. package/dist/lib/adoption-score.d.ts.map +1 -1
  113. package/dist/lib/adoption-score.js +1 -0
  114. package/dist/lib/adoption-score.js.map +1 -1
  115. package/dist/lib/context-loader-events.d.ts +4 -4
  116. package/dist/lib/context-loader-events.d.ts.map +1 -1
  117. package/dist/lib/context-loader-events.js +69 -18
  118. package/dist/lib/context-loader-events.js.map +1 -1
  119. package/dist/lib/context-quality.d.ts +224 -0
  120. package/dist/lib/context-quality.d.ts.map +1 -0
  121. package/dist/lib/context-quality.js +363 -0
  122. package/dist/lib/context-quality.js.map +1 -0
  123. package/dist/lib/event-logger.d.ts.map +1 -1
  124. package/dist/lib/event-logger.js +2 -3
  125. package/dist/lib/event-logger.js.map +1 -1
  126. package/dist/lib/health-checker.d.ts +35 -0
  127. package/dist/lib/health-checker.d.ts.map +1 -0
  128. package/dist/lib/health-checker.js +475 -0
  129. package/dist/lib/health-checker.js.map +1 -0
  130. package/dist/lib/output-formatter.d.ts +48 -0
  131. package/dist/lib/output-formatter.d.ts.map +1 -1
  132. package/dist/lib/output-formatter.js +168 -4
  133. package/dist/lib/output-formatter.js.map +1 -1
  134. package/dist/lib/resumption-brief.d.ts +91 -0
  135. package/dist/lib/resumption-brief.d.ts.map +1 -0
  136. package/dist/lib/resumption-brief.js +344 -0
  137. package/dist/lib/resumption-brief.js.map +1 -0
  138. package/dist/lib/staleness-detector.js +1 -1
  139. package/dist/lib/state-cache.d.ts +43 -0
  140. package/dist/lib/state-cache.d.ts.map +1 -1
  141. package/dist/lib/state-cache.js +72 -0
  142. package/dist/lib/state-cache.js.map +1 -1
  143. package/dist/lib/targeted-coaching.js +2 -2
  144. package/dist/lib/task-parser.d.ts +34 -4
  145. package/dist/lib/task-parser.d.ts.map +1 -1
  146. package/dist/lib/task-parser.js +110 -4
  147. package/dist/lib/task-parser.js.map +1 -1
  148. package/dist/services/context-search.d.ts.map +1 -1
  149. package/dist/services/context-search.js +4 -2
  150. package/dist/services/context-search.js.map +1 -1
  151. package/dist/templates/ai-instructions-template.d.ts.map +1 -1
  152. package/dist/templates/ai-instructions-template.js +20 -0
  153. package/dist/templates/ai-instructions-template.js.map +1 -1
  154. package/dist/templates/commands/handoff.md +40 -0
  155. package/dist/templates/commands/quick.md +27 -0
  156. package/dist/templates/commands/ship.md +43 -0
  157. package/dist/templates/commands/start.md +15 -0
  158. package/dist/templates/commands/vibecheck.md +36 -0
  159. package/dist/templates/skills/ginko/SKILL.md +1 -8
  160. package/dist/templates/sprint-template.md +273 -0
  161. package/dist/utils/cloud-guard.d.ts +48 -0
  162. package/dist/utils/cloud-guard.d.ts.map +1 -0
  163. package/dist/utils/cloud-guard.js +107 -0
  164. package/dist/utils/cloud-guard.js.map +1 -0
  165. package/dist/utils/config-loader.d.ts +2 -2
  166. package/dist/utils/config-loader.js +2 -2
  167. package/dist/utils/helpers.d.ts.map +1 -1
  168. package/dist/utils/helpers.js +11 -10
  169. package/dist/utils/helpers.js.map +1 -1
  170. package/dist/utils/perf-logger.d.ts +100 -0
  171. package/dist/utils/perf-logger.d.ts.map +1 -0
  172. package/dist/utils/perf-logger.js +132 -0
  173. package/dist/utils/perf-logger.js.map +1 -0
  174. package/package.json +3 -3
@@ -1,12 +1,12 @@
1
1
  /**
2
2
  * @fileType: utility
3
3
  * @status: current
4
- * @updated: 2025-11-04
5
- * @tags: [context-loading, events, adr-043, session-cursor, graph]
6
- * @related: [context-loader.ts, session-logger.ts, CloudGraphClient]
4
+ * @updated: 2026-02-05
5
+ * @tags: [context-loading, events, adr-043, session-cursor, graph, epic-018]
6
+ * @related: [context-loader.ts, session-logger.ts, CloudGraphClient, api-client.ts]
7
7
  * @priority: critical
8
8
  * @complexity: high
9
- * @dependencies: [fs-extra, path]
9
+ * @dependencies: [fs-extra, path, perf-logger]
10
10
  */
11
11
  /**
12
12
  * Event-Based Context Loader (ADR-043)
@@ -22,10 +22,48 @@
22
22
  * - Target: <30K tokens total (vs 88K with handoff approach)
23
23
  *
24
24
  * Based on ADR-043 Event Stream Session Model
25
+ *
26
+ * =============================================================================
27
+ * EPIC-018 Sprint 1 TASK-04: Performance Optimization
28
+ * =============================================================================
29
+ *
30
+ * Optimizations applied:
31
+ * 1. Timing instrumentation (enable with GINKO_PERF_LOG=true)
32
+ * 2. Parallel API calls for events + team events
33
+ * 3. Parallel loading of documents + sprint data
34
+ * 4. Cache-first pattern for sprint data (see state-cache.ts)
35
+ *
36
+ * Future optimization: GraphQL sessionStart query
37
+ * -----------------------------------------------
38
+ * A new GraphQL query `sessionStart` consolidates 4-5 REST calls into one:
39
+ *
40
+ * ```typescript
41
+ * import { GraphApiClient } from '../commands/graph/api-client.js';
42
+ *
43
+ * const client = new GraphApiClient();
44
+ * const context = await client.getSessionStart(graphId, userId, {
45
+ * sprintId: preferredSprintId, // optional
46
+ * eventLimit: 25,
47
+ * teamEventDays: 7,
48
+ * });
49
+ *
50
+ * // Returns: activeSprint, recentEvents, charter, teamActivity, epic, metadata
51
+ * // The activeSprint.currentTask is already enriched with patterns/gotchas/constraints
52
+ * ```
53
+ *
54
+ * This query replaces:
55
+ * - GET /api/v1/sprint/active
56
+ * - GET /api/v1/task/{id}/patterns
57
+ * - GET /api/v1/task/{id}/gotchas
58
+ * - GET /api/v1/task/{id}/constraints
59
+ * - (optional) charter and team activity queries
60
+ *
61
+ * Performance: ~2-3s vs ~5-8s (4-5 sequential calls)
25
62
  */
26
63
  import fs from 'fs-extra';
27
64
  import path from 'path';
28
65
  import os from 'os';
66
+ import { PerfLogger } from '../utils/perf-logger.js';
29
67
  /**
30
68
  * Load recent events without cursor (TASK-011: Simplified chronological loading)
31
69
  *
@@ -40,14 +78,18 @@ import os from 'os';
40
78
  */
41
79
  export async function loadRecentEvents(userId, projectId, options = {}) {
42
80
  const { eventLimit = 50, includeTeam = false, teamEventLimit = 20, categories, documentDepth = 2, teamDays = 7, silent = false } = options;
81
+ // EPIC-018 Sprint 1 TASK-04: Performance timing instrumentation
82
+ const perf = PerfLogger.create('loadRecentEvents');
43
83
  // Helper for conditional logging (suppressed when silent=true)
44
84
  const log = (...args) => { if (!silent)
45
85
  console.log(...args); };
46
86
  // TASK-012: Check cloud-only mode
47
87
  const cloudOnly = process.env.GINKO_CLOUD_ONLY === 'true';
48
88
  try {
89
+ perf.mark('importClient');
49
90
  const { GraphApiClient } = await import('../commands/graph/api-client.js');
50
91
  const client = new GraphApiClient();
92
+ perf.measure('importClient', 'GraphApiClient import');
51
93
  // Build query parameters (use special cursor value for chronological loading)
52
94
  const params = new URLSearchParams({
53
95
  cursorId: 'chronological', // Special value to trigger chronological query on server
@@ -65,11 +107,14 @@ export async function loadRecentEvents(userId, projectId, options = {}) {
65
107
  const mode = cloudOnly ? 'cloud-only' : 'chronological';
66
108
  log(`📡 Using consolidated API endpoint (${mode} mode)`);
67
109
  // Single API call - server detects "chronological" cursor and uses ORDER BY timestamp DESC
110
+ perf.mark('initialLoad');
68
111
  const response = await client.request('GET', `/api/v1/context/initial-load?${params.toString()}`);
112
+ perf.measure('initialLoad', 'Initial load API call');
69
113
  log(`⚡ Consolidated load: ${response.performance.queryTimeMs}ms (${response.event_count} events, ${response.performance.documentsLoaded} docs)`);
70
114
  // TASK-10: Load strategic context + charter in PARALLEL (saves 200-300ms)
71
115
  const graphId = process.env.GINKO_GRAPH_ID || '';
72
116
  // Fire both requests simultaneously
117
+ perf.mark('parallelLoad');
73
118
  const [strategicResult, charterResult] = await Promise.all([
74
119
  graphId
75
120
  ? loadStrategicContext(graphId, userId, projectId, silent).catch(() => null)
@@ -78,6 +123,7 @@ export async function loadRecentEvents(userId, projectId, options = {}) {
78
123
  .then(m => m.loadCharter())
79
124
  .catch(() => null)
80
125
  ]);
126
+ perf.measure('parallelLoad', 'Strategic context + charter (parallel)');
81
127
  let strategicContext = strategicResult || undefined;
82
128
  const filesystemCharter = charterResult;
83
129
  if (strategicContext?.metadata) {
@@ -126,6 +172,8 @@ export async function loadRecentEvents(userId, projectId, options = {}) {
126
172
  current_event_id: response.myEvents?.[0]?.id || 'latest',
127
173
  status: 'active',
128
174
  };
175
+ // Log performance summary if enabled
176
+ perf.summary();
129
177
  return {
130
178
  cursor,
131
179
  myEvents: normalizeEvents(response.myEvents || []),
@@ -229,23 +277,26 @@ export async function loadContextFromCursor(cursor, options = {}) {
229
277
  console.log('⚠️ Falling back to multi-call approach');
230
278
  }
231
279
  // Fallback: Multi-call approach (original behavior)
232
- // 1. Read my events backwards from cursor
233
- const myEvents = await readEventsBackward(cursor.current_event_id, cursor.user_id, cursor.project_id, eventLimit, { categories, branch: cursor.branch });
234
- // 2. Load team events (optional)
235
- let teamEvents = [];
236
- if (includeTeam) {
237
- teamEvents = await loadTeamEvents(cursor.project_id, cursor.user_id, teamEventLimit, teamDays);
238
- }
239
- // 3. Extract document references from events
280
+ // EPIC-018 TASK-04: Optimized with parallel calls where possible
281
+ // Step 1-2: Load events in PARALLEL (my events + team events)
282
+ const [myEvents, teamEvents] = await Promise.all([
283
+ readEventsBackward(cursor.current_event_id, cursor.user_id, cursor.project_id, eventLimit, { categories, branch: cursor.branch }),
284
+ includeTeam
285
+ ? loadTeamEvents(cursor.project_id, cursor.user_id, teamEventLimit, teamDays)
286
+ : Promise.resolve([]),
287
+ ]);
288
+ // Step 3: Extract document references (synchronous)
240
289
  const allEvents = [...myEvents, ...teamEvents];
241
290
  const documentRefs = extractDocumentReferences(allEvents);
242
- // 4. Load mentioned documents from graph
243
- const documents = await loadDocuments(documentRefs);
244
- // 5. Follow typed relationships (ADR-042)
291
+ // Step 4-6: Load documents and sprint in PARALLEL
292
+ // Note: relatedDocs depends on documents, so we do this in two stages
293
+ const [documents, sprint] = await Promise.all([
294
+ loadDocuments(documentRefs),
295
+ getActiveSprint(cursor.project_id),
296
+ ]);
297
+ // Step 5: Follow relationships (depends on documents from step 4)
245
298
  const relatedDocs = await followTypedRelationships(documents, documentDepth);
246
- // 6. Get active sprint context
247
- const sprint = await getActiveSprint(cursor.project_id);
248
- // 7. Calculate token estimate
299
+ // Step 7: Calculate token estimate
249
300
  const tokenEstimate = estimateTokens({
250
301
  myEvents,
251
302
  teamEvents,
@@ -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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"}
@@ -0,0 +1,224 @@
1
+ /**
2
+ * @fileType: utility
3
+ * @status: current
4
+ * @updated: 2026-02-05
5
+ * @tags: [context-quality, ai-feedback, flow-optimization, epic-018, sprint-1]
6
+ * @related: [event-logger.ts, context-metrics.ts, ../commands/context.ts]
7
+ * @priority: high
8
+ * @complexity: medium
9
+ * @dependencies: [event-logger]
10
+ */
11
+ /**
12
+ * Individual dimension scores (0-10 scale)
13
+ *
14
+ * Scoring guide:
15
+ * - 0-3: Missing critical information, cannot proceed confidently
16
+ * - 4-6: Partial information, may need clarification
17
+ * - 7-8: Good clarity, minor gaps acceptable
18
+ * - 9-10: Crystal clear, ready to execute
19
+ */
20
+ export interface ContextQualityScore {
21
+ /** 0-10: Do I know what to do next? (task clarity) */
22
+ direction: number;
23
+ /** 0-10: Do I understand WHY? (purpose/motivation) */
24
+ intent: number;
25
+ /** 0-10: Do I know WHERE to start? (entry points, files) */
26
+ location: number;
27
+ /** 0-10: Do I know WHAT was decided? (ADRs, decisions) */
28
+ history: number;
29
+ /** Average of above dimensions */
30
+ overall: number;
31
+ /** When the score was recorded */
32
+ scoredAt: Date;
33
+ /** Who scored: 'ai' or user email */
34
+ scoredBy?: string;
35
+ /** What's missing or unclear */
36
+ notes?: string[];
37
+ }
38
+ /**
39
+ * Feedback with actionable suggestions
40
+ */
41
+ export interface ContextQualityFeedback {
42
+ /** The quality score */
43
+ score: ContextQualityScore;
44
+ /** Suggestions for improving the score */
45
+ suggestions: string[];
46
+ /** Confidence level in the score itself (meta-confidence) */
47
+ scoreConfidence?: number;
48
+ }
49
+ /**
50
+ * Quality zone classification based on overall score
51
+ */
52
+ export type ContextQualityZone = 'excellent' | 'good' | 'adequate' | 'poor' | 'critical';
53
+ /**
54
+ * Dimension metadata for display and analysis
55
+ */
56
+ export interface DimensionInfo {
57
+ name: string;
58
+ question: string;
59
+ description: string;
60
+ improvementHint: string;
61
+ }
62
+ /**
63
+ * Dimension metadata for each quality dimension
64
+ */
65
+ export declare const DIMENSION_INFO: Record<keyof Omit<ContextQualityScore, 'overall' | 'scoredAt' | 'scoredBy' | 'notes'>, DimensionInfo>;
66
+ /**
67
+ * Thresholds for quality zone classification
68
+ */
69
+ export declare const QUALITY_THRESHOLDS: {
70
+ excellent: number;
71
+ good: number;
72
+ adequate: number;
73
+ poor: number;
74
+ critical: number;
75
+ };
76
+ /**
77
+ * Alert threshold - scores below this in any dimension trigger notes
78
+ */
79
+ export declare const DIMENSION_ALERT_THRESHOLD = 7;
80
+ /**
81
+ * Calculate overall score from individual dimensions
82
+ *
83
+ * @param dimensions - Individual dimension scores
84
+ * @returns Average of all dimensions (0-10)
85
+ */
86
+ export declare function calculateOverallScore(dimensions: {
87
+ direction: number;
88
+ intent: number;
89
+ location: number;
90
+ history: number;
91
+ }): number;
92
+ /**
93
+ * Create a complete quality score from dimension values
94
+ *
95
+ * @param dimensions - Individual dimension scores (0-10 each)
96
+ * @param scoredBy - 'ai' or user email
97
+ * @param notes - Optional notes about what's missing
98
+ * @returns Complete ContextQualityScore
99
+ */
100
+ export declare function createQualityScore(dimensions: {
101
+ direction: number;
102
+ intent: number;
103
+ location: number;
104
+ history: number;
105
+ }, scoredBy?: string, notes?: string[]): ContextQualityScore;
106
+ /**
107
+ * Get quality zone from overall score
108
+ *
109
+ * @param score - Overall score (0-10)
110
+ * @returns Quality zone classification
111
+ */
112
+ export declare function getQualityZone(score: number): ContextQualityZone;
113
+ /**
114
+ * Get color for quality zone (for display)
115
+ *
116
+ * @param zone - Quality zone
117
+ * @returns Chalk color name
118
+ */
119
+ export declare function getQualityColor(zone: ContextQualityZone): string;
120
+ /**
121
+ * Generate suggestions based on low-scoring dimensions
122
+ *
123
+ * @param score - The quality score
124
+ * @returns Array of improvement suggestions
125
+ */
126
+ export declare function generateSuggestions(score: ContextQualityScore): string[];
127
+ /**
128
+ * Create complete feedback with score and suggestions
129
+ *
130
+ * @param dimensions - Individual dimension scores
131
+ * @param scoredBy - 'ai' or user email
132
+ * @param notes - Optional notes about what's missing
133
+ * @returns Complete feedback with suggestions
134
+ */
135
+ export declare function createQualityFeedback(dimensions: {
136
+ direction: number;
137
+ intent: number;
138
+ location: number;
139
+ history: number;
140
+ }, scoredBy?: string, notes?: string[]): ContextQualityFeedback;
141
+ /**
142
+ * Log a context quality score as an event
143
+ *
144
+ * This enables aggregation and analysis of context quality over time.
145
+ *
146
+ * @param score - The quality score to log
147
+ * @returns Promise resolving when event is logged
148
+ */
149
+ export declare function logContextQualityScore(score: ContextQualityScore): Promise<void>;
150
+ /**
151
+ * Format score as a human-readable description
152
+ *
153
+ * @param score - The quality score
154
+ * @returns Formatted description string
155
+ */
156
+ export declare function formatScoreDescription(score: ContextQualityScore): string;
157
+ /**
158
+ * Format score as compact single-line display
159
+ *
160
+ * @param score - The quality score
161
+ * @returns Compact display string
162
+ */
163
+ export declare function formatScoreCompact(score: ContextQualityScore): string;
164
+ /**
165
+ * Format score for detailed display
166
+ *
167
+ * @param feedback - Complete feedback with suggestions
168
+ * @returns Multi-line display string
169
+ */
170
+ export declare function formatScoreDetailed(feedback: ContextQualityFeedback): string;
171
+ /**
172
+ * Parse a score string into a ContextQualityScore
173
+ *
174
+ * Supports formats:
175
+ * - "direction=8, intent=7, location=9, history=6"
176
+ * - "8,7,9,6" (in order: direction, intent, location, history)
177
+ *
178
+ * @param input - Score string to parse
179
+ * @param scoredBy - Who scored (optional)
180
+ * @returns Parsed ContextQualityScore
181
+ * @throws Error if parsing fails
182
+ */
183
+ export declare function parseScoreString(input: string, scoredBy?: string): ContextQualityScore;
184
+ /**
185
+ * Quick score entry point for AI assistants
186
+ *
187
+ * Call this within 60 seconds of session start to log context quality.
188
+ *
189
+ * @param direction - 0-10: Do I know what to do next?
190
+ * @param intent - 0-10: Do I understand WHY?
191
+ * @param location - 0-10: Do I know WHERE to start?
192
+ * @param history - 0-10: Do I know WHAT was decided?
193
+ * @param notes - Optional notes about what's missing
194
+ * @returns Promise resolving to the logged score
195
+ *
196
+ * @example
197
+ * ```typescript
198
+ * // AI scores context after ginko start
199
+ * await scoreContext(8, 7, 9, 6, ['Missing ADR references for auth decision']);
200
+ * ```
201
+ */
202
+ export declare function scoreContext(direction: number, intent: number, location: number, history: number, notes?: string[]): Promise<ContextQualityScore>;
203
+ declare const _default: {
204
+ createQualityScore: typeof createQualityScore;
205
+ createQualityFeedback: typeof createQualityFeedback;
206
+ scoreContext: typeof scoreContext;
207
+ logContextQualityScore: typeof logContextQualityScore;
208
+ parseScoreString: typeof parseScoreString;
209
+ formatScoreCompact: typeof formatScoreCompact;
210
+ formatScoreDetailed: typeof formatScoreDetailed;
211
+ getQualityZone: typeof getQualityZone;
212
+ getQualityColor: typeof getQualityColor;
213
+ DIMENSION_INFO: Record<"history" | "direction" | "intent" | "location", DimensionInfo>;
214
+ QUALITY_THRESHOLDS: {
215
+ excellent: number;
216
+ good: number;
217
+ adequate: number;
218
+ poor: number;
219
+ critical: number;
220
+ };
221
+ DIMENSION_ALERT_THRESHOLD: number;
222
+ };
223
+ export default _default;
224
+ //# sourceMappingURL=context-quality.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-quality.d.ts","sourceRoot":"","sources":["../../src/lib/context-quality.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AA2BH;;;;;;;;GAQG;AACH,MAAM,WAAW,mBAAmB;IAClC,sDAAsD;IACtD,SAAS,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,CAAC;IACjB,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,QAAQ,EAAE,IAAI,CAAC;IACf,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,wBAAwB;IACxB,KAAK,EAAE,mBAAmB,CAAC;IAC3B,0CAA0C;IAC1C,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,6DAA6D;IAC7D,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC;AAEzF;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;CACzB;AAMD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,IAAI,CAAC,mBAAmB,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CAAC,EAAE,aAAa,CAyBhI,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;CAM9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAM3C;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE;IAChD,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,MAAM,CAOT;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,EACD,QAAQ,CAAC,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,EAAE,GACf,mBAAmB,CAmBrB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,kBAAkB,CAMhE;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,kBAAkB,GAAG,MAAM,CAQhE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,GAAG,MAAM,EAAE,CAoBxE;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,EACD,QAAQ,CAAC,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,EAAE,GACf,sBAAsB,CASxB;AAMD;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBtF;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,mBAAmB,GAAG,MAAM,CAUzE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,mBAAmB,GAAG,MAAM,CASrE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,MAAM,CAuC5E;AAMD;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,mBAAmB,CAsBtF;AAMD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,YAAY,CAChC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,EAAE,GACf,OAAO,CAAC,mBAAmB,CAAC,CAU9B;;;;;;;;;;;;;;;;;;;;;AAED,wBAaE"}