@tonycasey/lisa 2.25.2 → 2.26.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 (86) hide show
  1. package/README.md +31 -1
  2. package/dist/lib/application/handlers/SessionStartHandler.d.ts +15 -0
  3. package/dist/lib/application/handlers/SessionStartHandler.d.ts.map +1 -1
  4. package/dist/lib/application/handlers/SessionStartHandler.js +116 -5
  5. package/dist/lib/application/handlers/SessionStartHandler.js.map +1 -1
  6. package/dist/lib/application/services/GitTriageService.d.ts +45 -0
  7. package/dist/lib/application/services/GitTriageService.d.ts.map +1 -0
  8. package/dist/lib/application/services/GitTriageService.js +360 -0
  9. package/dist/lib/application/services/GitTriageService.js.map +1 -0
  10. package/dist/lib/application/services/SessionContextFormatter.d.ts +11 -1
  11. package/dist/lib/application/services/SessionContextFormatter.d.ts.map +1 -1
  12. package/dist/lib/application/services/SessionContextFormatter.js +59 -3
  13. package/dist/lib/application/services/SessionContextFormatter.js.map +1 -1
  14. package/dist/lib/application/services/index.d.ts +1 -0
  15. package/dist/lib/application/services/index.d.ts.map +1 -1
  16. package/dist/lib/application/services/index.js +3 -1
  17. package/dist/lib/application/services/index.js.map +1 -1
  18. package/dist/lib/commands/doctor.js +1 -1
  19. package/dist/lib/commands/doctor.js.map +1 -1
  20. package/dist/lib/domain/interfaces/ICommitEnricher.d.ts +81 -0
  21. package/dist/lib/domain/interfaces/ICommitEnricher.d.ts.map +1 -0
  22. package/dist/lib/domain/interfaces/ICommitEnricher.js +33 -0
  23. package/dist/lib/domain/interfaces/ICommitEnricher.js.map +1 -0
  24. package/dist/lib/domain/interfaces/IGitClient.d.ts +86 -0
  25. package/dist/lib/domain/interfaces/IGitClient.d.ts.map +1 -1
  26. package/dist/lib/domain/interfaces/IGitTriageService.d.ts +180 -0
  27. package/dist/lib/domain/interfaces/IGitTriageService.d.ts.map +1 -0
  28. package/dist/lib/domain/interfaces/IGitTriageService.js +12 -0
  29. package/dist/lib/domain/interfaces/IGitTriageService.js.map +1 -0
  30. package/dist/lib/domain/interfaces/ILisaServices.d.ts +6 -0
  31. package/dist/lib/domain/interfaces/ILisaServices.d.ts.map +1 -1
  32. package/dist/lib/domain/interfaces/index.d.ts +3 -1
  33. package/dist/lib/domain/interfaces/index.d.ts.map +1 -1
  34. package/dist/lib/domain/interfaces/index.js +4 -1
  35. package/dist/lib/domain/interfaces/index.js.map +1 -1
  36. package/dist/lib/infrastructure/adapters/claude/session-start.d.ts +5 -0
  37. package/dist/lib/infrastructure/adapters/claude/session-start.d.ts.map +1 -1
  38. package/dist/lib/infrastructure/adapters/claude/session-start.js +50 -4
  39. package/dist/lib/infrastructure/adapters/claude/session-start.js.map +1 -1
  40. package/dist/lib/infrastructure/adapters/claude/session-stop.d.ts +4 -0
  41. package/dist/lib/infrastructure/adapters/claude/session-stop.d.ts.map +1 -1
  42. package/dist/lib/infrastructure/adapters/claude/session-stop.js +32 -0
  43. package/dist/lib/infrastructure/adapters/claude/session-stop.js.map +1 -1
  44. package/dist/lib/infrastructure/di/ServiceFactory.d.ts +2 -0
  45. package/dist/lib/infrastructure/di/ServiceFactory.d.ts.map +1 -1
  46. package/dist/lib/infrastructure/di/bootstrap.d.ts.map +1 -1
  47. package/dist/lib/infrastructure/di/bootstrap.js +11 -1
  48. package/dist/lib/infrastructure/di/bootstrap.js.map +1 -1
  49. package/dist/lib/infrastructure/di/tokens.d.ts +2 -0
  50. package/dist/lib/infrastructure/di/tokens.d.ts.map +1 -1
  51. package/dist/lib/infrastructure/di/tokens.js +1 -0
  52. package/dist/lib/infrastructure/di/tokens.js.map +1 -1
  53. package/dist/lib/infrastructure/git/GitClient.d.ts +11 -1
  54. package/dist/lib/infrastructure/git/GitClient.d.ts.map +1 -1
  55. package/dist/lib/infrastructure/git/GitClient.js +137 -0
  56. package/dist/lib/infrastructure/git/GitClient.js.map +1 -1
  57. package/dist/lib/infrastructure/logging/Logger.d.ts +13 -1
  58. package/dist/lib/infrastructure/logging/Logger.d.ts.map +1 -1
  59. package/dist/lib/infrastructure/logging/Logger.js +25 -7
  60. package/dist/lib/infrastructure/logging/Logger.js.map +1 -1
  61. package/dist/lib/infrastructure/logging/factory.d.ts +5 -1
  62. package/dist/lib/infrastructure/logging/factory.d.ts.map +1 -1
  63. package/dist/lib/infrastructure/logging/factory.js +3 -0
  64. package/dist/lib/infrastructure/logging/factory.js.map +1 -1
  65. package/dist/lib/infrastructure/logging/index.d.ts +1 -1
  66. package/dist/lib/infrastructure/logging/index.d.ts.map +1 -1
  67. package/dist/lib/infrastructure/logging/index.js.map +1 -1
  68. package/dist/lib/infrastructure/services/CommitEnricher.d.ts +26 -0
  69. package/dist/lib/infrastructure/services/CommitEnricher.d.ts.map +1 -0
  70. package/dist/lib/infrastructure/services/CommitEnricher.js +214 -0
  71. package/dist/lib/infrastructure/services/CommitEnricher.js.map +1 -0
  72. package/dist/lib/infrastructure/services/TranscriptEnricher.d.ts +5 -2
  73. package/dist/lib/infrastructure/services/TranscriptEnricher.d.ts.map +1 -1
  74. package/dist/lib/infrastructure/services/TranscriptEnricher.js +10 -3
  75. package/dist/lib/infrastructure/services/TranscriptEnricher.js.map +1 -1
  76. package/dist/lib/infrastructure/services/prompts/commit-extraction.d.ts +26 -0
  77. package/dist/lib/infrastructure/services/prompts/commit-extraction.d.ts.map +1 -0
  78. package/dist/lib/infrastructure/services/prompts/commit-extraction.js +151 -0
  79. package/dist/lib/infrastructure/services/prompts/commit-extraction.js.map +1 -0
  80. package/dist/lib/skills/shared/utils/group-id.d.ts.map +1 -1
  81. package/dist/lib/skills/shared/utils/group-id.js +1 -0
  82. package/dist/lib/skills/shared/utils/group-id.js.map +1 -1
  83. package/dist/opencode/lisa.js +909 -19
  84. package/dist/package.json +1 -1
  85. package/dist/project/.lisa/rules/shared/git-rules.md +12 -3
  86. package/package.json +3 -3
package/README.md CHANGED
@@ -7,8 +7,38 @@
7
7
 
8
8
  ## Why Lisa?
9
9
 
10
- Unlike simple vector databases or file-based memory, Lisa uses **[Graphiti](https://github.com/getzep/graphiti)** - a knowledge graph that captures *relationships* between concepts, not just text.
10
+ ### Because you would like every Claude session to remember the last one, the one from last week, last month. ALL OF THEM!!
11
11
 
12
+ ## You want..
13
+
14
+ - memory to load automatically
15
+ - store automatically
16
+ - recall automatically
17
+
18
+ ## You DON'T want..
19
+ - Having to repeat yourself, over & over
20
+ - Having to update .md files
21
+ - Having to fill up your context window.
22
+
23
+ ## How?
24
+
25
+ `lisa init` in your project directory. Open Claude cli and code away as normal.
26
+
27
+ ### Ask Lisa..
28
+
29
+ - Lisa, tell me about this project?
30
+ - Lisa, what was the last thing we were working on?
31
+ - Lisa, why are we not using Postgres?
32
+ - Lisa, ...
33
+
34
+ ### Tell Lisa.
35
+ - Lisa, remember this for future reference
36
+ - Lisa, create Jira/GitHub ticket
37
+ - Lisa, let's commit, push, and create a PR
38
+
39
+ ---
40
+
41
+ ## The tech..
12
42
  - **Graph-native storage** (Neo4j) - Connections matter as much as content
13
43
  - **LLM-powered extraction** - Automatically identifies entities and relationships
14
44
  - **Temporal awareness** - Knows *when* you learned something
@@ -20,9 +20,11 @@ export declare class SessionStartHandler implements IRequestHandler<SessionStart
20
20
  private readonly router?;
21
21
  private readonly logger?;
22
22
  private readonly githubSync?;
23
+ private readonly commitEnricher?;
23
24
  private readonly formatter;
24
25
  private readonly gitService;
25
26
  private readonly memoryLoader;
27
+ private readonly triageService;
26
28
  /**
27
29
  * Create a new SessionStartHandler.
28
30
  *
@@ -51,6 +53,19 @@ export declare class SessionStartHandler implements IRequestHandler<SessionStart
51
53
  * Sync GitHub issues on startup (fire-and-forget).
52
54
  */
53
55
  private syncGitHubOnStartup;
56
+ /**
57
+ * Run git triage to analyze commit history.
58
+ * Returns null if triage fails (non-blocking).
59
+ */
60
+ private runGitTriage;
61
+ /**
62
+ * Enrich high-interest commits and save facts to memory (fire-and-forget).
63
+ */
64
+ private enrichAndSaveCommits;
65
+ /**
66
+ * Check which commits have already been enriched (by short SHA tag in memory).
67
+ */
68
+ private checkEnrichedCommits;
54
69
  /**
55
70
  * Compute date options based on trigger type.
56
71
  */
@@ -1 +1 @@
1
- {"version":3,"file":"SessionStartHandler.d.ts","sourceRoot":"","sources":["../../../../src/lib/application/handlers/SessionStartHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,aAAa,EACb,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,UAAU,EAIV,OAAO,EAEP,UAAU,EACX,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAEzF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAU3D;;;;;;;GAOG;AACH,qBAAa,mBAAoB,YAAW,eAAe,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IACnG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAoB;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAqB;IAGjD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0B;IACpD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA0B;IACrD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IAEnD;;;;;OAKG;gBACS,QAAQ,EAAE,aAAa,EAAE,SAAS,CAAC,EAAE,UAAU;IAE3D;;;;;;;;;;;OAWG;gBAED,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,UAAU,EACf,MAAM,CAAC,EAAE,iBAAiB,EAC1B,MAAM,CAAC,EAAE,OAAO,EAChB,UAAU,CAAC,EAAE,kBAAkB,EAC/B,SAAS,CAAC,EAAE,UAAU;IAyDxB;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAgDxE;;OAEG;YACW,mBAAmB;IAgCjC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;OAEG;IACH,OAAO,CAAC,YAAY;IAgCpB;;OAEG;IACH,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,UAAU;CAKnB"}
1
+ {"version":3,"file":"SessionStartHandler.d.ts","sourceRoot":"","sources":["../../../../src/lib/application/handlers/SessionStartHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,aAAa,EACb,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,UAAU,EAIV,OAAO,EAEP,UAAU,EAKX,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAEzF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAW3D;;;;;;;GAOG;AACH,qBAAa,mBAAoB,YAAW,eAAe,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IACnG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAoB;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAkB;IAGlD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0B;IACpD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA0B;IACrD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB;IAElD;;;;;OAKG;gBACS,QAAQ,EAAE,aAAa,EAAE,SAAS,CAAC,EAAE,UAAU;IAE3D;;;;;;;;;;;OAWG;gBAED,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,UAAU,EACf,MAAM,CAAC,EAAE,iBAAiB,EAC1B,MAAM,CAAC,EAAE,OAAO,EAChB,UAAU,CAAC,EAAE,kBAAkB,EAC/B,SAAS,CAAC,EAAE,UAAU;IA2DxB;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA4DxE;;OAEG;YACW,mBAAmB;IAgCjC;;;OAGG;YACW,YAAY;IAmB1B;;OAEG;YACW,oBAAoB;IA8DlC;;OAEG;YACW,oBAAoB;IAyBlC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;OAEG;IACH,OAAO,CAAC,YAAY;IAgCpB;;OAEG;IACH,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,UAAU;CAKnB"}
@@ -5,6 +5,7 @@ const domain_1 = require("../../domain");
5
5
  const SessionContextFormatter_1 = require("../services/SessionContextFormatter");
6
6
  const GitIntrospectionService_1 = require("../services/GitIntrospectionService");
7
7
  const MemoryContextLoader_1 = require("../services/MemoryContextLoader");
8
+ const GitTriageService_1 = require("../services/GitTriageService");
8
9
  /**
9
10
  * Configuration for recent memories display.
10
11
  */
@@ -30,6 +31,7 @@ class SessionStartHandler {
30
31
  this.router = services.router;
31
32
  this.logger = services.logger;
32
33
  this.githubSync = services.githubSync;
34
+ this.commitEnricher = services.commitEnricher;
33
35
  resolvedGitClient = memoryOrGitClient;
34
36
  }
35
37
  else {
@@ -53,6 +55,7 @@ class SessionStartHandler {
53
55
  this.formatter = new SessionContextFormatter_1.SessionContextFormatter();
54
56
  this.gitService = new GitIntrospectionService_1.GitIntrospectionService(resolvedGitClient);
55
57
  this.memoryLoader = new MemoryContextLoader_1.MemoryContextLoader(this.memory, this.tasks, this.mcp, this.router, this.logger);
58
+ this.triageService = new GitTriageService_1.GitTriageService(resolvedGitClient);
56
59
  }
57
60
  /**
58
61
  * Handle a session start request.
@@ -63,15 +66,25 @@ class SessionStartHandler {
63
66
  await this.syncGitHubOnStartup(request.trigger, hierarchicalGroupIds, projectName);
64
67
  // Determine date options based on trigger
65
68
  const dateOptions = this.computeDateOptions(request.trigger);
66
- // Load memory using optimal strategy (DAL or MCP)
67
- const memories = await this.memoryLoader.loadMemory(hierarchicalGroupIds, projectAliases, branch, dateOptions);
68
- // Load recent git commits for context
69
- const gitCommits = await this.gitService.loadGitCommits(dateOptions.since, projectRoot);
69
+ // Load memory and run git triage in parallel
70
+ const [memories, gitTriage] = await Promise.all([
71
+ this.memoryLoader.loadMemory(hierarchicalGroupIds, projectAliases, branch, dateOptions),
72
+ this.runGitTriage(dateOptions.since, projectRoot),
73
+ ]);
74
+ // Load recent git commits as fallback (only if triage didn't run)
75
+ const gitCommits = gitTriage
76
+ ? []
77
+ : await this.gitService.loadGitCommits(dateOptions.since, projectRoot);
78
+ // Enrich high-interest commits (fire-and-forget, non-blocking)
79
+ if (gitTriage && request.trigger === 'startup') {
80
+ this.enrichAndSaveCommits(gitTriage.highInterest, hierarchicalGroupIds[0])
81
+ .catch(err => this.logger?.warn('Commit enrichment failed', { error: err.message }));
82
+ }
70
83
  // Process tasks from memory
71
84
  const tasks = this.processTasks(memories.tasks);
72
85
  const taskCounts = this.countTasks(tasks);
73
86
  // Build context content
74
- const contextContent = this.formatter.formatContextContent(request.trigger, memories, tasks, taskCounts, { projectName, userName, folderType, projectRoot, branch }, gitCommits, dateOptions.since);
87
+ const contextContent = this.formatter.formatContextContent(request.trigger, memories, tasks, taskCounts, { projectName, userName, folderType, projectRoot, branch }, gitCommits, dateOptions.since, gitTriage);
75
88
  // Build message
76
89
  const message = this.formatter.getTriggerMessage(request.trigger, memories.timedOut);
77
90
  return {
@@ -112,6 +125,104 @@ class SessionStartHandler {
112
125
  this.logger?.warn('GitHub sync failed', { error: error.message });
113
126
  }
114
127
  }
128
+ /**
129
+ * Run git triage to analyze commit history.
130
+ * Returns null if triage fails (non-blocking).
131
+ */
132
+ async runGitTriage(since, projectRoot) {
133
+ try {
134
+ const result = await this.triageService.triage({
135
+ since,
136
+ cwd: projectRoot,
137
+ });
138
+ this.logger?.debug('Git triage completed', {
139
+ total: result.totalCommits,
140
+ highInterest: result.highInterest.length,
141
+ durationMs: result.durationMs,
142
+ });
143
+ return result;
144
+ }
145
+ catch (error) {
146
+ // Don't fail session start if triage fails
147
+ this.logger?.warn('Git triage failed', { error: error.message });
148
+ return null;
149
+ }
150
+ }
151
+ /**
152
+ * Enrich high-interest commits and save facts to memory (fire-and-forget).
153
+ */
154
+ async enrichAndSaveCommits(commits, groupId) {
155
+ if (!this.commitEnricher || commits.length === 0)
156
+ return;
157
+ try {
158
+ // Check which commits are already enriched (by short SHA tag)
159
+ const existingShas = await this.checkEnrichedCommits(groupId);
160
+ const toEnrich = commits.filter(c => !existingShas.has(c.commit.shortSha));
161
+ if (toEnrich.length === 0) {
162
+ this.logger?.debug('All commits already enriched, skipping');
163
+ return;
164
+ }
165
+ this.logger?.debug('Enriching commits', { count: toEnrich.length });
166
+ const result = await this.commitEnricher.enrich(toEnrich, { maxCommits: 5 });
167
+ if (result.facts.length === 0) {
168
+ this.logger?.debug('No facts extracted from commits');
169
+ return;
170
+ }
171
+ // Build a canonical short SHA map for consistent tagging (dedup uses shortSha)
172
+ const shaToShort = new Map();
173
+ for (const commit of toEnrich) {
174
+ if (commit.commit.sha && commit.commit.shortSha) {
175
+ shaToShort.set(commit.commit.sha, commit.commit.shortSha);
176
+ shaToShort.set(commit.commit.shortSha, commit.commit.shortSha);
177
+ }
178
+ }
179
+ // Save facts to memory with proper metadata
180
+ for (const fact of result.facts) {
181
+ // Normalize SHA to short form for consistent dedup
182
+ const commitSha = shaToShort.get(fact.commitSha) ?? fact.commitSha;
183
+ const tags = [
184
+ 'type:commit-enrichment',
185
+ `commit:${commitSha}`,
186
+ `factType:${fact.type}`,
187
+ `confidence:${fact.confidence}`,
188
+ 'source:git-enrichment',
189
+ ...fact.tags.map(t => `tag:${t}`),
190
+ ];
191
+ await this.memory.addFact(groupId, fact.text, tags);
192
+ }
193
+ this.logger?.info('Commit enrichment complete', {
194
+ processed: result.commitsProcessed,
195
+ facts: result.facts.length,
196
+ inputTokens: result.usage.inputTokens,
197
+ outputTokens: result.usage.outputTokens,
198
+ });
199
+ }
200
+ catch (error) {
201
+ // Non-blocking - log and continue
202
+ this.logger?.warn('Commit enrichment error', { error: error.message });
203
+ }
204
+ }
205
+ /**
206
+ * Check which commits have already been enriched (by short SHA tag in memory).
207
+ */
208
+ async checkEnrichedCommits(groupId) {
209
+ const enrichedShas = new Set();
210
+ try {
211
+ // Search for existing commit enrichment facts
212
+ const existingFacts = await this.memory.searchFacts([groupId], 'type:commit-enrichment', 100);
213
+ for (const fact of existingFacts) {
214
+ const shaTag = fact.tags?.find(t => t.startsWith('commit:'));
215
+ if (shaTag) {
216
+ enrichedShas.add(shaTag.replace('commit:', ''));
217
+ }
218
+ }
219
+ }
220
+ catch (error) {
221
+ // If search fails, return empty set (will re-enrich)
222
+ this.logger?.debug('Could not check existing enrichments', { error: error.message });
223
+ }
224
+ return enrichedShas;
225
+ }
115
226
  /**
116
227
  * Compute date options based on trigger type.
117
228
  */
@@ -1 +1 @@
1
- {"version":3,"file":"SessionStartHandler.js","sourceRoot":"","sources":["../../../../src/lib/application/handlers/SessionStartHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionStartHandler.js","sourceRoot":"","sources":["../../../../src/lib/application/handlers/SessionStartHandler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * GitTriageService
3
+ *
4
+ * Application service that scans git history and scores commits
5
+ * for "interestingness" to identify which commits warrant API enrichment.
6
+ *
7
+ * Part of the Git-Powered Memory feature (LISA-7).
8
+ */
9
+ import type { IGitClient } from '../../domain/interfaces/IGitClient';
10
+ import type { IGitTriageService, IGitCommitData, IGitCommitStats, IScoredCommit, ITriageResult, ITriageOptions } from '../../domain/interfaces/IGitTriageService';
11
+ export declare class GitTriageService implements IGitTriageService {
12
+ private readonly git;
13
+ constructor(git: IGitClient);
14
+ triage(options?: ITriageOptions): Promise<ITriageResult>;
15
+ scoreCommit(commit: IGitCommitData, stats: IGitCommitStats | null, tagShas: ReadonlySet<string>, isTagAdjacent?: boolean): IScoredCommit;
16
+ /**
17
+ * Parse raw git log commit into domain type.
18
+ */
19
+ private parseCommit;
20
+ /**
21
+ * Parse raw stat entries into domain type.
22
+ */
23
+ private parseStats;
24
+ /**
25
+ * Detect interest signals for a commit.
26
+ */
27
+ private detectSignals;
28
+ /**
29
+ * Calculate interest score from signals.
30
+ */
31
+ private calculateScore;
32
+ /**
33
+ * Get default "since" date (3 months ago).
34
+ */
35
+ private getDefaultSince;
36
+ /**
37
+ * Check if a tag name looks like a version tag.
38
+ */
39
+ private isVersionTag;
40
+ /**
41
+ * Create an empty result (for repos with no commits in range).
42
+ */
43
+ private emptyResult;
44
+ }
45
+ //# sourceMappingURL=GitTriageService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GitTriageService.d.ts","sourceRoot":"","sources":["../../../../src/lib/application/services/GitTriageService.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAsC,MAAM,oCAAoC,CAAC;AACzG,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EACd,eAAe,EAEf,aAAa,EACb,aAAa,EACb,cAAc,EAGf,MAAM,2CAA2C,CAAC;AAiFnD,qBAAa,gBAAiB,YAAW,iBAAiB;IAC5C,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,UAAU;IAEtC,MAAM,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;IAyI9D,WAAW,CACT,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,eAAe,GAAG,IAAI,EAC7B,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,EAC5B,aAAa,CAAC,EAAE,OAAO,GACtB,aAAa;IAehB;;OAEG;IACH,OAAO,CAAC,WAAW;IAoBnB;;OAEG;IACH,OAAO,CAAC,UAAU;IAmClB;;OAEG;IACH,OAAO,CAAC,aAAa;IA8CrB;;OAEG;IACH,OAAO,CAAC,cAAc;IAetB;;OAEG;IACH,OAAO,CAAC,eAAe;IAMvB;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;OAEG;IACH,OAAO,CAAC,WAAW;CAapB"}