@jamesaphoenix/tx-core 0.4.3 → 0.4.5

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 (94) hide show
  1. package/dist/db.d.ts.map +1 -1
  2. package/dist/db.js +8 -2
  3. package/dist/db.js.map +1 -1
  4. package/dist/layer.d.ts +3 -3
  5. package/dist/services/auto-sync-service.d.ts +1 -1
  6. package/dist/services/cycle-scan-service.d.ts.map +1 -1
  7. package/dist/services/cycle-scan-service.js +6 -2
  8. package/dist/services/cycle-scan-service.js.map +1 -1
  9. package/dist/services/learning-service.d.ts +1 -1
  10. package/dist/services/orchestrator-service.d.ts +1 -1
  11. package/dist/services/orchestrator-service.d.ts.map +1 -1
  12. package/dist/services/orchestrator-service.js +14 -13
  13. package/dist/services/orchestrator-service.js.map +1 -1
  14. package/dist/services/retriever-service.d.ts +2 -2
  15. package/dist/services/sync-service.d.ts.map +1 -1
  16. package/dist/services/sync-service.js +9 -8
  17. package/dist/services/sync-service.js.map +1 -1
  18. package/dist/services/task-service.d.ts.map +1 -1
  19. package/dist/services/task-service.js +3 -2
  20. package/dist/services/task-service.js.map +1 -1
  21. package/dist/services/worker-process.d.ts +1 -1
  22. package/dist/services/worker-process.d.ts.map +1 -1
  23. package/dist/services/worker-process.js +9 -2
  24. package/dist/services/worker-process.js.map +1 -1
  25. package/dist/worker/run-worker.d.ts +1 -1
  26. package/package.json +1 -1
  27. package/dist/mappers/anchor.d.ts +0 -28
  28. package/dist/mappers/anchor.d.ts.map +0 -1
  29. package/dist/mappers/anchor.js +0 -105
  30. package/dist/mappers/anchor.js.map +0 -1
  31. package/dist/mappers/candidate.d.ts +0 -25
  32. package/dist/mappers/candidate.d.ts.map +0 -1
  33. package/dist/mappers/candidate.js +0 -83
  34. package/dist/mappers/candidate.js.map +0 -1
  35. package/dist/mappers/edge.d.ts +0 -19
  36. package/dist/mappers/edge.d.ts.map +0 -1
  37. package/dist/mappers/edge.js +0 -81
  38. package/dist/mappers/edge.js.map +0 -1
  39. package/dist/repo/anchor-repo.d.ts +0 -52
  40. package/dist/repo/anchor-repo.d.ts.map +0 -1
  41. package/dist/repo/anchor-repo.js +0 -245
  42. package/dist/repo/anchor-repo.js.map +0 -1
  43. package/dist/repo/candidate-repo.d.ts +0 -16
  44. package/dist/repo/candidate-repo.d.ts.map +0 -1
  45. package/dist/repo/candidate-repo.js +0 -164
  46. package/dist/repo/candidate-repo.js.map +0 -1
  47. package/dist/repo/compaction-repo.d.ts +0 -41
  48. package/dist/repo/compaction-repo.d.ts.map +0 -1
  49. package/dist/repo/compaction-repo.js +0 -84
  50. package/dist/repo/compaction-repo.js.map +0 -1
  51. package/dist/repo/edge-repo.d.ts +0 -26
  52. package/dist/repo/edge-repo.d.ts.map +0 -1
  53. package/dist/repo/edge-repo.js +0 -258
  54. package/dist/repo/edge-repo.js.map +0 -1
  55. package/dist/services/anchor-service.d.ts +0 -147
  56. package/dist/services/anchor-service.d.ts.map +0 -1
  57. package/dist/services/anchor-service.js +0 -540
  58. package/dist/services/anchor-service.js.map +0 -1
  59. package/dist/services/anchor-verification.d.ts +0 -102
  60. package/dist/services/anchor-verification.d.ts.map +0 -1
  61. package/dist/services/anchor-verification.js +0 -817
  62. package/dist/services/anchor-verification.js.map +0 -1
  63. package/dist/services/ast-grep-service.d.ts +0 -58
  64. package/dist/services/ast-grep-service.d.ts.map +0 -1
  65. package/dist/services/ast-grep-service.js +0 -427
  66. package/dist/services/ast-grep-service.js.map +0 -1
  67. package/dist/services/candidate-extractor-service.d.ts +0 -56
  68. package/dist/services/candidate-extractor-service.d.ts.map +0 -1
  69. package/dist/services/candidate-extractor-service.js +0 -365
  70. package/dist/services/candidate-extractor-service.js.map +0 -1
  71. package/dist/services/compaction-service.d.ts +0 -105
  72. package/dist/services/compaction-service.d.ts.map +0 -1
  73. package/dist/services/compaction-service.js +0 -369
  74. package/dist/services/compaction-service.js.map +0 -1
  75. package/dist/services/edge-service.d.ts +0 -78
  76. package/dist/services/edge-service.d.ts.map +0 -1
  77. package/dist/services/edge-service.js +0 -158
  78. package/dist/services/edge-service.js.map +0 -1
  79. package/dist/services/feedback-tracker.d.ts +0 -64
  80. package/dist/services/feedback-tracker.d.ts.map +0 -1
  81. package/dist/services/feedback-tracker.js +0 -110
  82. package/dist/services/feedback-tracker.js.map +0 -1
  83. package/dist/services/graph-expansion.d.ts +0 -158
  84. package/dist/services/graph-expansion.d.ts.map +0 -1
  85. package/dist/services/graph-expansion.js +0 -487
  86. package/dist/services/graph-expansion.js.map +0 -1
  87. package/dist/services/promotion-service.d.ts +0 -67
  88. package/dist/services/promotion-service.d.ts.map +0 -1
  89. package/dist/services/promotion-service.js +0 -151
  90. package/dist/services/promotion-service.js.map +0 -1
  91. package/dist/services/swarm-verification.d.ts +0 -104
  92. package/dist/services/swarm-verification.d.ts.map +0 -1
  93. package/dist/services/swarm-verification.js +0 -406
  94. package/dist/services/swarm-verification.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"anchor-verification.js","sourceRoot":"","sources":["../../src/services/anchor-verification.ts"],"names":[],"mappings":"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"}
@@ -1,58 +0,0 @@
1
- import { Context, Effect, Layer } from "effect";
2
- import { AstGrepError } from "../errors.js";
3
- import type { SymbolInfo, ImportInfo, Match, SymbolPattern } from "@jamesaphoenix/tx-types";
4
- /**
5
- * File extension to ast-grep language mapping.
6
- * Covers TypeScript, JavaScript, Python, Go, Rust, Java, C#, Ruby, PHP, Kotlin, Swift, C/C++.
7
- */
8
- export declare const EXT_TO_LANGUAGE: Readonly<Record<string, string>>;
9
- /**
10
- * Default symbol patterns for each supported language.
11
- * These patterns are used by ast-grep to extract symbols from source files.
12
- * Following DD-014 specification.
13
- */
14
- export declare const DEFAULT_SYMBOL_PATTERNS: Readonly<Record<string, readonly SymbolPattern[]>>;
15
- declare const AstGrepService_base: Context.TagClass<AstGrepService, "AstGrepService", {
16
- /**
17
- * Find all symbols (functions, classes, interfaces, etc.) in a file.
18
- * Returns empty array for unsupported file types.
19
- */
20
- readonly findSymbols: (filePath: string) => Effect.Effect<readonly SymbolInfo[], AstGrepError>;
21
- /**
22
- * Extract import statements from a file.
23
- * Returns empty array for unsupported file types.
24
- */
25
- readonly getImports: (filePath: string) => Effect.Effect<readonly ImportInfo[], AstGrepError>;
26
- /**
27
- * Match a custom ast-grep pattern against a file or directory.
28
- */
29
- readonly matchPattern: (pattern: string, path: string) => Effect.Effect<readonly Match[], AstGrepError>;
30
- }>;
31
- /**
32
- * AstGrepService provides code intelligence via ast-grep CLI.
33
- *
34
- * This service extracts symbols, imports, and matches patterns from source files
35
- * using structural code analysis. It gracefully degrades when ast-grep is not
36
- * installed by providing a Noop fallback.
37
- *
38
- * Design: Following DD-014 specification for symbol extraction.
39
- */
40
- export declare class AstGrepService extends AstGrepService_base {
41
- }
42
- /**
43
- * Live implementation that spawns ast-grep CLI.
44
- * Requires ast-grep to be installed and available in PATH.
45
- */
46
- export declare const AstGrepServiceLive: Layer.Layer<AstGrepService, never, never>;
47
- /**
48
- * Noop implementation that returns empty arrays.
49
- * Used when ast-grep is not installed or not available.
50
- */
51
- export declare const AstGrepServiceNoop: Layer.Layer<AstGrepService, never, never>;
52
- /**
53
- * Auto-detecting layer that uses Live if ast-grep is available, Noop otherwise.
54
- * This allows graceful degradation when ast-grep is not installed.
55
- */
56
- export declare const AstGrepServiceAuto: Layer.Layer<AstGrepService, never, never>;
57
- export {};
58
- //# sourceMappingURL=ast-grep-service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ast-grep-service.d.ts","sourceRoot":"","sources":["../../src/services/ast-grep-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAU,MAAM,QAAQ,CAAA;AAEvD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAc,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAgGvG;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAqC5D,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,aAAa,EAAE,CAAC,CAsHtF,CAAA;;IAcG;;;OAGG;0BACmB,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,UAAU,EAAE,EAAE,YAAY,CAAC;IAC9F;;;OAGG;yBACkB,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,UAAU,EAAE,EAAE,YAAY,CAAC;IAC7F;;OAEG;2BACoB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,KAAK,EAAE,EAAE,YAAY,CAAC;;AAzB3G;;;;;;;;GAQG;AACH,qBAAa,cAAe,SAAQ,mBAkBjC;CAAG;AA+DN;;;GAGG;AACH,eAAO,MAAM,kBAAkB,2CA8G7B,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,2CAI7B,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,2CAoB9B,CAAA"}
@@ -1,427 +0,0 @@
1
- import { Context, Effect, Layer, Schema } from "effect";
2
- import { spawn } from "child_process";
3
- import { AstGrepError } from "../errors.js";
4
- // ----- Schema Definitions for JSON Parsing -----
5
- /**
6
- * Schema for optional text holder { text?: string }
7
- */
8
- const TextHolderSchema = Schema.Struct({
9
- text: Schema.optional(Schema.String)
10
- });
11
- /**
12
- * Schema for AstGrepMatch - the output from ast-grep --json for symbol extraction.
13
- */
14
- const AstGrepMatchSchema = Schema.Struct({
15
- range: Schema.optional(Schema.Struct({
16
- start: Schema.optional(Schema.Struct({
17
- line: Schema.optional(Schema.Number)
18
- }))
19
- })),
20
- metaVariables: Schema.optional(Schema.Struct({
21
- NAME: Schema.optional(TextHolderSchema)
22
- })),
23
- file: Schema.optional(Schema.String),
24
- text: Schema.optional(Schema.String)
25
- });
26
- /**
27
- * Schema for ImportMatch - the output from ast-grep --json for import extraction.
28
- */
29
- const ImportMatchSchema = Schema.Struct({
30
- metaVariables: Schema.optional(Schema.Struct({
31
- SOURCE: Schema.optional(TextHolderSchema),
32
- SPECS: Schema.optional(TextHolderSchema),
33
- ALIAS: Schema.optional(TextHolderSchema),
34
- DEFAULT: Schema.optional(TextHolderSchema)
35
- }))
36
- });
37
- /**
38
- * Schema for PatternMatch - the output from ast-grep --json for pattern matching.
39
- */
40
- const PatternMatchSchema = Schema.Struct({
41
- file: Schema.optional(Schema.String),
42
- range: Schema.optional(Schema.Struct({
43
- start: Schema.optional(Schema.Struct({
44
- line: Schema.optional(Schema.Number),
45
- column: Schema.optional(Schema.Number)
46
- }))
47
- })),
48
- text: Schema.optional(Schema.String),
49
- metaVariables: Schema.optional(Schema.Record({ key: Schema.String, value: TextHolderSchema }))
50
- });
51
- /**
52
- * Safely parse and validate ast-grep match array output.
53
- * Returns empty array if parsing fails or validation fails.
54
- */
55
- const parseAstGrepMatches = (output) => {
56
- try {
57
- const parsed = JSON.parse(output);
58
- const result = Schema.decodeUnknownSync(Schema.Array(AstGrepMatchSchema))(parsed);
59
- return result;
60
- }
61
- catch {
62
- return [];
63
- }
64
- };
65
- /**
66
- * Safely parse and validate import match array output.
67
- * Returns empty array if parsing fails or validation fails.
68
- */
69
- const parseImportMatches = (output) => {
70
- try {
71
- const parsed = JSON.parse(output);
72
- const result = Schema.decodeUnknownSync(Schema.Array(ImportMatchSchema))(parsed);
73
- return result;
74
- }
75
- catch {
76
- return [];
77
- }
78
- };
79
- /**
80
- * Safely parse and validate pattern match array output.
81
- * Returns empty array if parsing fails or validation fails.
82
- */
83
- const parsePatternMatches = (output) => {
84
- try {
85
- const parsed = JSON.parse(output);
86
- const result = Schema.decodeUnknownSync(Schema.Array(PatternMatchSchema))(parsed);
87
- return result;
88
- }
89
- catch {
90
- return [];
91
- }
92
- };
93
- /**
94
- * File extension to ast-grep language mapping.
95
- * Covers TypeScript, JavaScript, Python, Go, Rust, Java, C#, Ruby, PHP, Kotlin, Swift, C/C++.
96
- */
97
- export const EXT_TO_LANGUAGE = {
98
- // TypeScript
99
- ".ts": "typescript",
100
- ".tsx": "typescript",
101
- ".mts": "typescript",
102
- // JavaScript
103
- ".js": "javascript",
104
- ".jsx": "javascript",
105
- ".mjs": "javascript",
106
- // Python
107
- ".py": "python",
108
- ".pyw": "python",
109
- // Go
110
- ".go": "go",
111
- // Rust
112
- ".rs": "rust",
113
- // Java
114
- ".java": "java",
115
- // C#
116
- ".cs": "csharp",
117
- // Ruby
118
- ".rb": "ruby",
119
- // PHP
120
- ".php": "php",
121
- // Kotlin
122
- ".kt": "kotlin",
123
- ".kts": "kotlin",
124
- // Swift
125
- ".swift": "swift",
126
- // C
127
- ".c": "c",
128
- ".h": "c",
129
- // C++
130
- ".cpp": "cpp",
131
- ".cc": "cpp",
132
- ".cxx": "cpp",
133
- ".hpp": "cpp",
134
- };
135
- /**
136
- * Default symbol patterns for each supported language.
137
- * These patterns are used by ast-grep to extract symbols from source files.
138
- * Following DD-014 specification.
139
- */
140
- export const DEFAULT_SYMBOL_PATTERNS = {
141
- // TypeScript / JavaScript
142
- typescript: [
143
- { pattern: "export function $NAME($_) { $$$_ }", kind: "function", exported: true },
144
- { pattern: "export const $NAME = ($_) => $$$_", kind: "function", exported: true },
145
- { pattern: "export class $NAME { $$$_ }", kind: "class", exported: true },
146
- { pattern: "export interface $NAME { $$$_ }", kind: "interface", exported: true },
147
- { pattern: "export type $NAME = $_", kind: "type", exported: true },
148
- { pattern: "export const $NAME = $_", kind: "const", exported: true },
149
- { pattern: "function $NAME($_) { $$$_ }", kind: "function" },
150
- { pattern: "class $NAME { $$$_ }", kind: "class" },
151
- ],
152
- javascript: [
153
- { pattern: "export function $NAME($_) { $$$_ }", kind: "function", exported: true },
154
- { pattern: "export const $NAME = ($_) => $$$_", kind: "function", exported: true },
155
- { pattern: "export class $NAME { $$$_ }", kind: "class", exported: true },
156
- { pattern: "module.exports.$NAME = $_", kind: "function", exported: true },
157
- { pattern: "function $NAME($_) { $$$_ }", kind: "function" },
158
- { pattern: "class $NAME { $$$_ }", kind: "class" },
159
- ],
160
- // Python
161
- python: [
162
- { pattern: "def $NAME($_): $$$_", kind: "function" },
163
- { pattern: "async def $NAME($_): $$$_", kind: "function" },
164
- { pattern: "class $NAME: $$$_", kind: "class" },
165
- { pattern: "class $NAME($_): $$$_", kind: "class" },
166
- ],
167
- // Go
168
- go: [
169
- { pattern: "func $NAME($_) $_ { $$$_ }", kind: "function" },
170
- { pattern: "func ($_ $_) $NAME($_) $_ { $$$_ }", kind: "method" },
171
- { pattern: "type $NAME struct { $$$_ }", kind: "struct" },
172
- { pattern: "type $NAME interface { $$$_ }", kind: "interface" },
173
- ],
174
- // Rust
175
- rust: [
176
- { pattern: "pub fn $NAME($_) $$$_ { $$$_ }", kind: "function", exported: true },
177
- { pattern: "fn $NAME($_) $$$_ { $$$_ }", kind: "function" },
178
- { pattern: "pub struct $NAME { $$$_ }", kind: "struct", exported: true },
179
- { pattern: "struct $NAME { $$$_ }", kind: "struct" },
180
- { pattern: "pub enum $NAME { $$$_ }", kind: "enum", exported: true },
181
- { pattern: "pub trait $NAME { $$$_ }", kind: "trait", exported: true },
182
- { pattern: "impl $NAME { $$$_ }", kind: "class" },
183
- ],
184
- // Java
185
- java: [
186
- { pattern: "public class $NAME { $$$_ }", kind: "class", exported: true },
187
- { pattern: "public interface $NAME { $$$_ }", kind: "interface", exported: true },
188
- { pattern: "public enum $NAME { $$$_ }", kind: "enum", exported: true },
189
- { pattern: "public $_ $NAME($_) { $$$_ }", kind: "method", exported: true },
190
- { pattern: "private $_ $NAME($_) { $$$_ }", kind: "method" },
191
- ],
192
- // C#
193
- csharp: [
194
- { pattern: "public class $NAME { $$$_ }", kind: "class", exported: true },
195
- { pattern: "public interface $NAME { $$$_ }", kind: "interface", exported: true },
196
- { pattern: "public enum $NAME { $$$_ }", kind: "enum", exported: true },
197
- { pattern: "public $_ $NAME($_) { $$$_ }", kind: "method", exported: true },
198
- { pattern: "private $_ $NAME($_) { $$$_ }", kind: "method" },
199
- { pattern: "public struct $NAME { $$$_ }", kind: "struct", exported: true },
200
- ],
201
- // Ruby
202
- ruby: [
203
- { pattern: "def $NAME $$$_ end", kind: "method" },
204
- { pattern: "def self.$NAME $$$_ end", kind: "function" },
205
- { pattern: "class $NAME $$$_ end", kind: "class" },
206
- { pattern: "module $NAME $$$_ end", kind: "module" },
207
- ],
208
- // PHP
209
- php: [
210
- { pattern: "function $NAME($_) { $$$_ }", kind: "function" },
211
- { pattern: "public function $NAME($_) { $$$_ }", kind: "method", exported: true },
212
- { pattern: "class $NAME { $$$_ }", kind: "class" },
213
- { pattern: "interface $NAME { $$$_ }", kind: "interface" },
214
- { pattern: "trait $NAME { $$$_ }", kind: "trait" },
215
- ],
216
- // Kotlin
217
- kotlin: [
218
- { pattern: "fun $NAME($_): $_ { $$$_ }", kind: "function" },
219
- { pattern: "class $NAME { $$$_ }", kind: "class" },
220
- { pattern: "data class $NAME($_)", kind: "class" },
221
- { pattern: "interface $NAME { $$$_ }", kind: "interface" },
222
- { pattern: "object $NAME { $$$_ }", kind: "class" },
223
- ],
224
- // Swift
225
- swift: [
226
- { pattern: "func $NAME($_) $$$_ { $$$_ }", kind: "function" },
227
- { pattern: "class $NAME { $$$_ }", kind: "class" },
228
- { pattern: "struct $NAME { $$$_ }", kind: "struct" },
229
- { pattern: "protocol $NAME { $$$_ }", kind: "interface" },
230
- { pattern: "enum $NAME { $$$_ }", kind: "enum" },
231
- ],
232
- // C
233
- c: [
234
- { pattern: "$_ $NAME($_) { $$$_ }", kind: "function" },
235
- { pattern: "struct $NAME { $$$_ }", kind: "struct" },
236
- { pattern: "typedef struct { $$$_ } $NAME", kind: "struct" },
237
- { pattern: "enum $NAME { $$$_ }", kind: "enum" },
238
- ],
239
- // C++
240
- cpp: [
241
- { pattern: "$_ $NAME($_) { $$$_ }", kind: "function" },
242
- { pattern: "class $NAME { $$$_ }", kind: "class" },
243
- { pattern: "struct $NAME { $$$_ }", kind: "struct" },
244
- { pattern: "namespace $NAME { $$$_ }", kind: "module" },
245
- { pattern: "template<$_> class $NAME { $$$_ }", kind: "class" },
246
- ],
247
- };
248
- /**
249
- * AstGrepService provides code intelligence via ast-grep CLI.
250
- *
251
- * This service extracts symbols, imports, and matches patterns from source files
252
- * using structural code analysis. It gracefully degrades when ast-grep is not
253
- * installed by providing a Noop fallback.
254
- *
255
- * Design: Following DD-014 specification for symbol extraction.
256
- */
257
- export class AstGrepService extends Context.Tag("AstGrepService")() {
258
- }
259
- /**
260
- * Get the language identifier for a file path based on extension.
261
- */
262
- const getLanguage = (filePath) => {
263
- const lastDot = filePath.lastIndexOf(".");
264
- if (lastDot === -1)
265
- return null;
266
- const ext = filePath.slice(lastDot);
267
- return EXT_TO_LANGUAGE[ext] ?? null;
268
- };
269
- /**
270
- * Get symbol patterns for a language.
271
- */
272
- const getPatterns = (language) => {
273
- return DEFAULT_SYMBOL_PATTERNS[language] ?? [];
274
- };
275
- /**
276
- * Run ast-grep CLI with given arguments.
277
- * Returns the stdout as a string.
278
- */
279
- const runAstGrep = (args) => Effect.async((resume) => {
280
- const proc = spawn("ast-grep", [...args], { stdio: ["ignore", "pipe", "pipe"] });
281
- let stdout = "";
282
- let stderr = "";
283
- proc.stdout.on("data", (data) => {
284
- stdout += data.toString();
285
- });
286
- proc.stderr.on("data", (data) => {
287
- stderr += data.toString();
288
- });
289
- proc.on("close", (code) => {
290
- if (code !== 0 && code !== null) {
291
- resume(Effect.fail(new AstGrepError({
292
- reason: `ast-grep exited with code ${code}`,
293
- cause: stderr,
294
- })));
295
- }
296
- else {
297
- resume(Effect.succeed(stdout));
298
- }
299
- });
300
- proc.on("error", (err) => {
301
- resume(Effect.fail(new AstGrepError({
302
- reason: "Failed to spawn ast-grep",
303
- cause: err,
304
- })));
305
- });
306
- });
307
- /**
308
- * Live implementation that spawns ast-grep CLI.
309
- * Requires ast-grep to be installed and available in PATH.
310
- */
311
- export const AstGrepServiceLive = Layer.succeed(AstGrepService, {
312
- findSymbols: (filePath) => Effect.gen(function* () {
313
- const language = getLanguage(filePath);
314
- if (!language) {
315
- return [];
316
- }
317
- const patterns = getPatterns(language);
318
- const symbols = [];
319
- for (const { pattern, kind, exported } of patterns) {
320
- const output = yield* runAstGrep(["--pattern", pattern, "--json", filePath]).pipe(Effect.catchAll(() => Effect.succeed("[]")));
321
- const matches = parseAstGrepMatches(output);
322
- for (const m of matches) {
323
- const name = m.metaVariables?.NAME?.text;
324
- if (name) {
325
- symbols.push({
326
- name,
327
- kind: kind,
328
- line: (m.range?.start?.line ?? 0) + 1, // Convert 0-indexed to 1-indexed
329
- exported: exported ?? false,
330
- });
331
- }
332
- }
333
- }
334
- return symbols;
335
- }),
336
- getImports: (filePath) => Effect.gen(function* () {
337
- const language = getLanguage(filePath);
338
- if (!language) {
339
- return [];
340
- }
341
- // TypeScript/JavaScript import patterns
342
- const importPatterns = language === "typescript" || language === "javascript"
343
- ? [
344
- 'import { $$$SPECS } from "$SOURCE"',
345
- 'import * as $ALIAS from "$SOURCE"',
346
- 'import $DEFAULT from "$SOURCE"',
347
- ]
348
- : [];
349
- const imports = [];
350
- for (const pattern of importPatterns) {
351
- const output = yield* runAstGrep(["--pattern", pattern, "--json", filePath]).pipe(Effect.catchAll(() => Effect.succeed("[]")));
352
- const matches = parseImportMatches(output);
353
- for (const m of matches) {
354
- const source = m.metaVariables?.SOURCE?.text ?? "";
355
- if (!source)
356
- continue;
357
- // Extract specifiers from different patterns
358
- const specsText = m.metaVariables?.SPECS?.text ?? "";
359
- const aliasText = m.metaVariables?.ALIAS?.text ?? "";
360
- const defaultText = m.metaVariables?.DEFAULT?.text ?? "";
361
- let specifiers;
362
- if (specsText) {
363
- specifiers = specsText
364
- .split(",")
365
- .map((s) => s.trim())
366
- .filter(Boolean);
367
- }
368
- else if (aliasText) {
369
- specifiers = [`* as ${aliasText}`];
370
- }
371
- else if (defaultText) {
372
- specifiers = [defaultText];
373
- }
374
- else {
375
- specifiers = [];
376
- }
377
- imports.push({
378
- source,
379
- specifiers,
380
- kind: "static",
381
- });
382
- }
383
- }
384
- return imports;
385
- }),
386
- matchPattern: (pattern, path) => Effect.gen(function* () {
387
- const output = yield* runAstGrep(["--pattern", pattern, "--json", path]);
388
- const matches = parsePatternMatches(output);
389
- return matches.map((m) => ({
390
- file: m.file ?? path,
391
- line: (m.range?.start?.line ?? 0) + 1, // Convert 0-indexed to 1-indexed
392
- column: (m.range?.start?.column ?? 0) + 1,
393
- text: m.text ?? "",
394
- captures: Object.fromEntries(Object.entries(m.metaVariables ?? {}).map(([k, v]) => [k, v?.text ?? ""])),
395
- }));
396
- }),
397
- });
398
- /**
399
- * Noop implementation that returns empty arrays.
400
- * Used when ast-grep is not installed or not available.
401
- */
402
- export const AstGrepServiceNoop = Layer.succeed(AstGrepService, {
403
- findSymbols: () => Effect.succeed([]),
404
- getImports: () => Effect.succeed([]),
405
- matchPattern: () => Effect.succeed([]),
406
- });
407
- /**
408
- * Auto-detecting layer that uses Live if ast-grep is available, Noop otherwise.
409
- * This allows graceful degradation when ast-grep is not installed.
410
- */
411
- export const AstGrepServiceAuto = Layer.unwrapEffect(Effect.gen(function* () {
412
- // Check if ast-grep is available by trying to run it
413
- const available = yield* Effect.async((resume) => {
414
- const proc = spawn("ast-grep", ["--version"], { stdio: ["ignore", "pipe", "pipe"] });
415
- proc.on("close", (code) => {
416
- resume(Effect.succeed(code === 0));
417
- });
418
- proc.on("error", () => {
419
- resume(Effect.succeed(false));
420
- });
421
- });
422
- if (available) {
423
- return AstGrepServiceLive;
424
- }
425
- return AstGrepServiceNoop;
426
- }));
427
- //# sourceMappingURL=ast-grep-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ast-grep-service.js","sourceRoot":"","sources":["../../src/services/ast-grep-service.ts"],"names":[],"mappings":"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"}
@@ -1,56 +0,0 @@
1
- import { Context, Effect, Layer } from "effect";
2
- import { ExtractionUnavailableError } from "../errors.js";
3
- import type { TranscriptChunk, ExtractionResult } from "@jamesaphoenix/tx-types";
4
- declare const CandidateExtractorService_base: Context.TagClass<CandidateExtractorService, "CandidateExtractorService", {
5
- /**
6
- * Extract learning candidates from a transcript chunk.
7
- * Returns structured candidates with confidence and category.
8
- */
9
- readonly extract: (chunk: TranscriptChunk) => Effect.Effect<ExtractionResult, ExtractionUnavailableError>;
10
- /** Check if extraction functionality is available */
11
- readonly isAvailable: () => Effect.Effect<boolean>;
12
- }>;
13
- /**
14
- * CandidateExtractorService extracts learning candidates from Claude Code transcripts.
15
- *
16
- * This service uses LLM to analyze transcript content and identify:
17
- * - Technical decisions with rationale
18
- * - Gotchas and pitfalls to avoid
19
- * - Patterns that worked well
20
- * - Future improvements
21
- *
22
- * Design: Following DD-006 patterns for LLM integration with pluggable backends.
23
- * Supports Anthropic, OpenAI, and noop backends with graceful degradation.
24
- *
25
- * @see PRD-015 for the JSONL daemon and knowledge promotion pipeline
26
- */
27
- export declare class CandidateExtractorService extends CandidateExtractorService_base {
28
- }
29
- /**
30
- * Noop implementation - returns empty results without LLM processing.
31
- * Used when no LLM API key is configured or for testing.
32
- */
33
- export declare const CandidateExtractorServiceNoop: Layer.Layer<CandidateExtractorService, never, never>;
34
- /**
35
- * Anthropic (Claude) implementation.
36
- * Uses Claude to extract learning candidates from transcripts.
37
- */
38
- export declare const CandidateExtractorServiceAnthropic: Layer.Layer<CandidateExtractorService, ExtractionUnavailableError, never>;
39
- /**
40
- * OpenAI (GPT) implementation.
41
- * Uses GPT to extract learning candidates from transcripts.
42
- */
43
- export declare const CandidateExtractorServiceOpenAI: Layer.Layer<CandidateExtractorService, ExtractionUnavailableError, never>;
44
- /**
45
- * Auto-detecting layer that selects the appropriate backend based on environment.
46
- *
47
- * Priority:
48
- * 1. ANTHROPIC_API_KEY set → Use Anthropic (Claude)
49
- * 2. OPENAI_API_KEY set → Use OpenAI (GPT)
50
- * 3. Neither set → Use Noop (graceful degradation)
51
- *
52
- * This allows graceful degradation when no LLM API keys are configured.
53
- */
54
- export declare const CandidateExtractorServiceAuto: Layer.Layer<CandidateExtractorService, ExtractionUnavailableError, never>;
55
- export {};
56
- //# sourceMappingURL=candidate-extractor-service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"candidate-extractor-service.d.ts","sourceRoot":"","sources":["../../src/services/candidate-extractor-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAkB,MAAM,QAAQ,CAAA;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA;AACzD,OAAO,KAAK,EACV,eAAe,EAEf,gBAAgB,EAGjB,MAAM,yBAAyB,CAAA;;IAgL5B;;;OAGG;sBACe,CAAC,KAAK,EAAE,eAAe,KAAK,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;IACzG,qDAAqD;0BAC/B,MAAM,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;;AAvBtD;;;;;;;;;;;;;GAaG;AACH,qBAAa,yBAA0B,SAAQ,8BAW5C;CAAG;AAEN;;;GAGG;AACH,eAAO,MAAM,6BAA6B,sDAUzC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,kCAAkC,2EA0G9C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,+BAA+B,2EA4G3C,CAAA;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,6BAA6B,2EAmBzC,CAAA"}