@gitwand/core 2.3.0 → 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 (136) hide show
  1. package/dist/__tests__/corpus.d.ts.map +1 -1
  2. package/dist/__tests__/corpus.js +377 -0
  3. package/dist/__tests__/corpus.js.map +1 -1
  4. package/dist/__tests__/patterns/complex.test.d.ts +9 -0
  5. package/dist/__tests__/patterns/complex.test.d.ts.map +1 -0
  6. package/dist/__tests__/patterns/complex.test.js +198 -0
  7. package/dist/__tests__/patterns/complex.test.js.map +1 -0
  8. package/dist/__tests__/patterns/delete-no-change.test.d.ts +11 -0
  9. package/dist/__tests__/patterns/delete-no-change.test.d.ts.map +1 -0
  10. package/dist/__tests__/patterns/delete-no-change.test.js +178 -0
  11. package/dist/__tests__/patterns/delete-no-change.test.js.map +1 -0
  12. package/dist/__tests__/patterns/llm-proposed.test.d.ts +10 -0
  13. package/dist/__tests__/patterns/llm-proposed.test.d.ts.map +1 -0
  14. package/dist/__tests__/patterns/llm-proposed.test.js +306 -0
  15. package/dist/__tests__/patterns/llm-proposed.test.js.map +1 -0
  16. package/dist/__tests__/patterns/non-overlapping.test.d.ts +11 -0
  17. package/dist/__tests__/patterns/non-overlapping.test.d.ts.map +1 -0
  18. package/dist/__tests__/patterns/non-overlapping.test.js +240 -0
  19. package/dist/__tests__/patterns/non-overlapping.test.js.map +1 -0
  20. package/dist/__tests__/patterns/one-side-change.test.d.ts +10 -0
  21. package/dist/__tests__/patterns/one-side-change.test.d.ts.map +1 -0
  22. package/dist/__tests__/patterns/one-side-change.test.js +191 -0
  23. package/dist/__tests__/patterns/one-side-change.test.js.map +1 -0
  24. package/dist/__tests__/patterns/same-change.test.d.ts +9 -0
  25. package/dist/__tests__/patterns/same-change.test.d.ts.map +1 -0
  26. package/dist/__tests__/patterns/same-change.test.js +173 -0
  27. package/dist/__tests__/patterns/same-change.test.js.map +1 -0
  28. package/dist/__tests__/patterns/value-only-change.test.d.ts +11 -0
  29. package/dist/__tests__/patterns/value-only-change.test.d.ts.map +1 -0
  30. package/dist/__tests__/patterns/value-only-change.test.js +159 -0
  31. package/dist/__tests__/patterns/value-only-change.test.js.map +1 -0
  32. package/dist/__tests__/patterns/whitespace-only.test.d.ts +10 -0
  33. package/dist/__tests__/patterns/whitespace-only.test.d.ts.map +1 -0
  34. package/dist/__tests__/patterns/whitespace-only.test.js +177 -0
  35. package/dist/__tests__/patterns/whitespace-only.test.js.map +1 -0
  36. package/dist/__tests__/resolvers/css.test.d.ts +12 -0
  37. package/dist/__tests__/resolvers/css.test.d.ts.map +1 -0
  38. package/dist/__tests__/resolvers/css.test.js +171 -0
  39. package/dist/__tests__/resolvers/css.test.js.map +1 -0
  40. package/dist/__tests__/resolvers/imports.test.d.ts +12 -0
  41. package/dist/__tests__/resolvers/imports.test.d.ts.map +1 -0
  42. package/dist/__tests__/resolvers/imports.test.js +135 -0
  43. package/dist/__tests__/resolvers/imports.test.js.map +1 -0
  44. package/dist/__tests__/resolvers/json.test.d.ts +12 -0
  45. package/dist/__tests__/resolvers/json.test.d.ts.map +1 -0
  46. package/dist/__tests__/resolvers/json.test.js +184 -0
  47. package/dist/__tests__/resolvers/json.test.js.map +1 -0
  48. package/dist/__tests__/resolvers/lockfile-npm.test.d.ts +12 -0
  49. package/dist/__tests__/resolvers/lockfile-npm.test.d.ts.map +1 -0
  50. package/dist/__tests__/resolvers/lockfile-npm.test.js +187 -0
  51. package/dist/__tests__/resolvers/lockfile-npm.test.js.map +1 -0
  52. package/dist/__tests__/resolvers/lockfile-pnpm.test.d.ts +12 -0
  53. package/dist/__tests__/resolvers/lockfile-pnpm.test.d.ts.map +1 -0
  54. package/dist/__tests__/resolvers/lockfile-pnpm.test.js +175 -0
  55. package/dist/__tests__/resolvers/lockfile-pnpm.test.js.map +1 -0
  56. package/dist/__tests__/resolvers/lockfile-yarn.test.d.ts +12 -0
  57. package/dist/__tests__/resolvers/lockfile-yarn.test.d.ts.map +1 -0
  58. package/dist/__tests__/resolvers/lockfile-yarn.test.js +165 -0
  59. package/dist/__tests__/resolvers/lockfile-yarn.test.js.map +1 -0
  60. package/dist/__tests__/resolvers/markdown.test.d.ts +12 -0
  61. package/dist/__tests__/resolvers/markdown.test.d.ts.map +1 -0
  62. package/dist/__tests__/resolvers/markdown.test.js +188 -0
  63. package/dist/__tests__/resolvers/markdown.test.js.map +1 -0
  64. package/dist/__tests__/resolvers/vue.test.d.ts +12 -0
  65. package/dist/__tests__/resolvers/vue.test.d.ts.map +1 -0
  66. package/dist/__tests__/resolvers/vue.test.js +225 -0
  67. package/dist/__tests__/resolvers/vue.test.js.map +1 -0
  68. package/dist/__tests__/resolvers/yaml.test.d.ts +12 -0
  69. package/dist/__tests__/resolvers/yaml.test.d.ts.map +1 -0
  70. package/dist/__tests__/resolvers/yaml.test.js +203 -0
  71. package/dist/__tests__/resolvers/yaml.test.js.map +1 -0
  72. package/dist/__tests__/v2-core-scenarios.test.d.ts +35 -0
  73. package/dist/__tests__/v2-core-scenarios.test.d.ts.map +1 -0
  74. package/dist/__tests__/v2-core-scenarios.test.js +692 -0
  75. package/dist/__tests__/v2-core-scenarios.test.js.map +1 -0
  76. package/dist/__tests__/validation-parse-tree.test.d.ts +15 -0
  77. package/dist/__tests__/validation-parse-tree.test.d.ts.map +1 -0
  78. package/dist/__tests__/validation-parse-tree.test.js +243 -0
  79. package/dist/__tests__/validation-parse-tree.test.js.map +1 -0
  80. package/dist/classifier.d.ts.map +1 -1
  81. package/dist/classifier.js +3 -0
  82. package/dist/classifier.js.map +1 -1
  83. package/dist/config.d.ts +54 -0
  84. package/dist/config.d.ts.map +1 -1
  85. package/dist/config.js +42 -0
  86. package/dist/config.js.map +1 -1
  87. package/dist/diff/index.d.ts.map +1 -1
  88. package/dist/diff/index.js +1 -3
  89. package/dist/diff/index.js.map +1 -1
  90. package/dist/index.d.ts +3 -1
  91. package/dist/index.d.ts.map +1 -1
  92. package/dist/index.js +2 -0
  93. package/dist/index.js.map +1 -1
  94. package/dist/patterns/llm-proposed.d.ts +8 -0
  95. package/dist/patterns/llm-proposed.d.ts.map +1 -0
  96. package/dist/patterns/llm-proposed.js +66 -0
  97. package/dist/patterns/llm-proposed.js.map +1 -0
  98. package/dist/patterns/utils.d.ts +8 -7
  99. package/dist/patterns/utils.d.ts.map +1 -1
  100. package/dist/patterns/utils.js +13 -12
  101. package/dist/patterns/utils.js.map +1 -1
  102. package/dist/resolver/adapters/strict-node.d.ts +32 -0
  103. package/dist/resolver/adapters/strict-node.d.ts.map +1 -0
  104. package/dist/resolver/adapters/strict-node.js +117 -0
  105. package/dist/resolver/adapters/strict-node.js.map +1 -0
  106. package/dist/resolver/index.d.ts +20 -1
  107. package/dist/resolver/index.d.ts.map +1 -1
  108. package/dist/resolver/index.js +106 -5
  109. package/dist/resolver/index.js.map +1 -1
  110. package/dist/resolver/llm-pipeline.d.ts +33 -0
  111. package/dist/resolver/llm-pipeline.d.ts.map +1 -0
  112. package/dist/resolver/llm-pipeline.js +218 -0
  113. package/dist/resolver/llm-pipeline.js.map +1 -0
  114. package/dist/resolver/policy.d.ts.map +1 -1
  115. package/dist/resolver/policy.js +5 -0
  116. package/dist/resolver/policy.js.map +1 -1
  117. package/dist/resolver/validate-parse-tree.d.ts +52 -0
  118. package/dist/resolver/validate-parse-tree.d.ts.map +1 -0
  119. package/dist/resolver/validate-parse-tree.js +87 -0
  120. package/dist/resolver/validate-parse-tree.js.map +1 -0
  121. package/dist/resolver/validate-strict.d.ts +27 -0
  122. package/dist/resolver/validate-strict.d.ts.map +1 -0
  123. package/dist/resolver/validate-strict.js +41 -0
  124. package/dist/resolver/validate-strict.js.map +1 -0
  125. package/dist/resolver/validation.d.ts.map +1 -1
  126. package/dist/resolver/validation.js +15 -1
  127. package/dist/resolver/validation.js.map +1 -1
  128. package/dist/resolvers/dispatcher.d.ts.map +1 -1
  129. package/dist/resolvers/dispatcher.js.map +1 -1
  130. package/dist/resolvers/llm-fallback.d.ts +41 -0
  131. package/dist/resolvers/llm-fallback.d.ts.map +1 -0
  132. package/dist/resolvers/llm-fallback.js +231 -0
  133. package/dist/resolvers/llm-fallback.js.map +1 -0
  134. package/dist/types.d.ts +183 -4
  135. package/dist/types.d.ts.map +1 -1
  136. package/package.json +1 -1
@@ -0,0 +1,218 @@
1
+ /**
2
+ * v2.5 — LLM fallback pipeline (phase 5 de resolveAsync).
3
+ *
4
+ * Après la résolution hunk-par-hunk et la validation parse-tree, cette phase
5
+ * tente de résoudre les hunks `complex` restants via le fallback LLM.
6
+ *
7
+ * ## Intégration dans resolveAsync
8
+ *
9
+ * La fonction `runLlmFallbackPhase` est appelée par `resolveAsync()` uniquement si :
10
+ * - `options.llmFallback.enabled === true`
11
+ * - `options.llmFallback.endpoint` est injecté
12
+ * - Il reste des hunks `complex` non résolus dans `result.resolutions`
13
+ *
14
+ * ## Reconstruction du mergedContent
15
+ *
16
+ * Les `HunkResolution` sont mises à jour en place. Le `mergedContent` est
17
+ * reconstruit à partir des segments parsés de `conflictedContent` en appliquant
18
+ * les nouvelles résolutions.
19
+ */
20
+ import { parseConflictMarkers } from "../parser.js";
21
+ import { tryLlmFallbackResolve } from "../resolvers/llm-fallback.js";
22
+ import { checkParseTreeValid, applyPostMergeRiskPenalty } from "./validate-parse-tree.js";
23
+ import { validateMergedContent } from "./validation.js";
24
+ // ─── Helpers ──────────────────────────────────────────────
25
+ /**
26
+ * Extrait les lignes de contexte autour d'un hunk dans le contenu original.
27
+ * Utilisé pour construire le prompt LLM.
28
+ *
29
+ * @param conflictedContent - Contenu original avec marqueurs de conflit
30
+ * @param hunk - Hunk de conflit
31
+ * @param contextLines - Nombre de lignes de contexte de chaque côté
32
+ */
33
+ function extractHunkContext(conflictedContent, hunk, contextLines) {
34
+ const allLines = conflictedContent.split("\n");
35
+ const startIdx = Math.max(0, hunk.startLine - 1 - contextLines);
36
+ const endIdx = Math.min(allLines.length, hunk.startLine + contextLines);
37
+ return allLines.slice(startIdx, endIdx).join("\n");
38
+ }
39
+ /**
40
+ * Reconstruit le `mergedContent` à partir du contenu original et des résolutions.
41
+ * Remplace chaque hunk par ses lignes résolues, ou restore les marqueurs de conflit.
42
+ *
43
+ * Retourne :
44
+ * - La string fusionnée si toutes les résolutions sont résolues (`allResolved = true`)
45
+ * - `null` si des conflits subsistent
46
+ */
47
+ function reconstructMergedContent(conflictedContent, resolutions) {
48
+ const { segments } = parseConflictMarkers(conflictedContent);
49
+ const outputLines = [];
50
+ let hunkIndex = 0;
51
+ let allResolved = true;
52
+ for (const segment of segments) {
53
+ if (segment.type === "text") {
54
+ outputLines.push(...segment.lines);
55
+ continue;
56
+ }
57
+ const resolution = resolutions[hunkIndex++];
58
+ if (resolution?.autoResolved && resolution.resolvedLines !== null) {
59
+ outputLines.push(...resolution.resolvedLines);
60
+ }
61
+ else {
62
+ // Restore conflict markers
63
+ const h = resolution?.hunk;
64
+ if (h) {
65
+ outputLines.push(`<<<<<<< ours`);
66
+ outputLines.push(...h.oursLines);
67
+ if (h.baseLines.length > 0) {
68
+ outputLines.push(`||||||| base`);
69
+ outputLines.push(...h.baseLines);
70
+ }
71
+ outputLines.push(`=======`);
72
+ outputLines.push(...h.theirsLines);
73
+ outputLines.push(`>>>>>>> theirs`);
74
+ }
75
+ allResolved = false;
76
+ }
77
+ }
78
+ return { content: outputLines.join("\n"), allResolved };
79
+ }
80
+ /**
81
+ * Applique le fallback LLM sur les hunks `complex` non résolus.
82
+ *
83
+ * Retourne le `MergeResult` mis à jour avec :
84
+ * - Les `HunkResolution` patchées (llm_proposed ou toujours complex)
85
+ * - La `DecisionTrace` enrichie avec `llmTrace` pour chaque résolution LLM
86
+ * - Le `mergedContent` reconstruit
87
+ * - Les stats mises à jour
88
+ * - La validation post-merge re-exécutée si toutes les résolutions passent
89
+ */
90
+ export async function runLlmFallbackPhase(conflictedContent, result, filePath, options, structuralOpts = {}) {
91
+ const llmConfig = options.llmFallback ?? { enabled: false };
92
+ if (!llmConfig.enabled || !llmConfig.endpoint) {
93
+ return result;
94
+ }
95
+ const contextLines = llmConfig.contextLines ?? 50;
96
+ // Identifier les hunks llm_proposed non résolus.
97
+ // Quand setLlmFallbackEnabled(true) était actif pendant resolve(), les hunks
98
+ // qui auraient été "complex" ont été classifiés "llm_proposed". Leur score
99
+ // (dataRisk: 60) étant trop bas pour une auto-résolution, ils restent non résolus.
100
+ const complexUnresolved = result.resolutions
101
+ .map((r, idx) => ({ r, idx }))
102
+ .filter(({ r }) => !r.autoResolved && r.hunk.type === "llm_proposed");
103
+ if (complexUnresolved.length === 0) {
104
+ return result;
105
+ }
106
+ // Cloner les résolutions pour mutation
107
+ const updatedResolutions = result.resolutions.map((r) => ({ ...r }));
108
+ const updatedHunks = result.hunks.map((h) => ({
109
+ ...h,
110
+ trace: { ...h.trace, steps: [...h.trace.steps] },
111
+ confidence: {
112
+ ...h.confidence,
113
+ dimensions: { ...h.confidence.dimensions },
114
+ },
115
+ }));
116
+ // Traiter chaque hunk complex en séquence
117
+ // (séquentiel pour respecter l'ordre et éviter les race conditions d'endpoint)
118
+ for (const { r, idx } of complexUnresolved) {
119
+ const hunk = r.hunk;
120
+ const fileContext = extractHunkContext(conflictedContent, hunk, contextLines);
121
+ const llmResult = await tryLlmFallbackResolve(hunk, filePath, fileContext, llmConfig);
122
+ if (llmResult.lines !== null) {
123
+ // Résolution acceptée — mettre à jour le hunk et la résolution
124
+ const updatedHunk = {
125
+ ...updatedHunks[idx],
126
+ type: "llm_proposed",
127
+ trace: {
128
+ ...updatedHunks[idx].trace,
129
+ selected: "llm_proposed",
130
+ summary: `LLM fallback (${llmConfig.model ?? "claude-sonnet-4-6"}) — ${llmResult.reason}`,
131
+ llmTrace: llmResult.llmTrace,
132
+ },
133
+ };
134
+ updatedHunks[idx] = updatedHunk;
135
+ updatedResolutions[idx] = {
136
+ hunk: updatedHunk,
137
+ resolvedLines: llmResult.lines,
138
+ autoResolved: true,
139
+ resolutionReason: llmResult.reason,
140
+ };
141
+ }
142
+ else {
143
+ // Résolution refusée — enrichir la trace avec llmTrace pour l'audit
144
+ const updatedHunk = {
145
+ ...updatedHunks[idx],
146
+ trace: {
147
+ ...updatedHunks[idx].trace,
148
+ summary: `${updatedHunks[idx].trace.summary} | LLM refusé: ${llmResult.reason}`,
149
+ llmTrace: llmResult.llmTrace,
150
+ },
151
+ };
152
+ updatedHunks[idx] = updatedHunk;
153
+ updatedResolutions[idx] = {
154
+ ...updatedResolutions[idx],
155
+ hunk: updatedHunk,
156
+ resolutionReason: `${updatedResolutions[idx].resolutionReason} | LLM refusé: ${llmResult.reason}`,
157
+ };
158
+ }
159
+ }
160
+ // Reconstruire le mergedContent depuis les résolutions mises à jour
161
+ const { content: newMergedContent, allResolved } = reconstructMergedContent(conflictedContent, updatedResolutions);
162
+ // Calculer les nouvelles stats
163
+ const autoResolvedCount = updatedResolutions.filter((r) => r.autoResolved).length;
164
+ const updatedStats = {
165
+ ...result.stats,
166
+ autoResolved: autoResolvedCount,
167
+ remaining: updatedResolutions.length - autoResolvedCount,
168
+ byType: {},
169
+ };
170
+ for (const hunk of updatedHunks) {
171
+ updatedStats.byType[hunk.type] = (updatedStats.byType[hunk.type] || 0) + 1;
172
+ }
173
+ if (!allResolved) {
174
+ // Des conflits subsistent — pas de mergedContent
175
+ return {
176
+ ...result,
177
+ hunks: updatedHunks,
178
+ resolutions: updatedResolutions,
179
+ stats: updatedStats,
180
+ mergedContent: null,
181
+ };
182
+ }
183
+ // Tout est résolu — re-valider le mergedContent complet
184
+ const validation = validateMergedContent(newMergedContent, filePath);
185
+ // Re-vérification parse-tree sur le contenu post-LLM
186
+ if (options.validationLevel !== "off") {
187
+ const parseTreeValid = await checkParseTreeValid(newMergedContent, filePath, structuralOpts);
188
+ if (parseTreeValid === false) {
189
+ // Parse-tree invalide après fallback LLM → rétraction de tout
190
+ const retractedResolutions = updatedResolutions.map((r) => r.autoResolved ? applyPostMergeRiskPenalty(r) : r);
191
+ return {
192
+ ...result,
193
+ hunks: updatedHunks,
194
+ resolutions: retractedResolutions,
195
+ stats: { ...updatedStats, autoResolved: 0, remaining: updatedStats.totalConflicts },
196
+ mergedContent: null,
197
+ validation: { ...validation, isValid: false, parseTreeValid: false, externalValidation: null },
198
+ };
199
+ }
200
+ return {
201
+ ...result,
202
+ hunks: updatedHunks,
203
+ resolutions: updatedResolutions,
204
+ stats: updatedStats,
205
+ mergedContent: newMergedContent,
206
+ validation: { ...validation, parseTreeValid, externalValidation: null },
207
+ };
208
+ }
209
+ return {
210
+ ...result,
211
+ hunks: updatedHunks,
212
+ resolutions: updatedResolutions,
213
+ stats: updatedStats,
214
+ mergedContent: newMergedContent,
215
+ validation: { ...validation, parseTreeValid: null, externalValidation: null },
216
+ };
217
+ }
218
+ //# sourceMappingURL=llm-pipeline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm-pipeline.js","sourceRoot":"","sources":["../../src/resolver/llm-pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAWH,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAC1F,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAExD,6DAA6D;AAE7D;;;;;;;GAOG;AACH,SAAS,kBAAkB,CACzB,iBAAyB,EACzB,IAAkB,EAClB,YAAoB;IAEpB,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,CAAC;IACxE,OAAO,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,wBAAwB,CAC/B,iBAAyB,EACzB,WAA6B;IAE7B,MAAM,EAAE,QAAQ,EAAE,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,WAAW,GAAG,IAAI,CAAC;IAEvB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC5B,WAAW,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YACnC,SAAS;QACX,CAAC;QAED,MAAM,UAAU,GAAG,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC;QAC5C,IAAI,UAAU,EAAE,YAAY,IAAI,UAAU,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YAClE,WAAW,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;QAChD,CAAC;aAAM,CAAC;YACN,2BAA2B;YAC3B,MAAM,CAAC,GAAG,UAAU,EAAE,IAAI,CAAC;YAC3B,IAAI,CAAC,EAAE,CAAC;gBACN,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBACjC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;gBACjC,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3B,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBACjC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;gBACnC,CAAC;gBACD,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC5B,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC;gBACnC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACrC,CAAC;YACD,WAAW,GAAG,KAAK,CAAC;QACtB,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,CAAC;AAC1D,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,iBAAyB,EACzB,MAAmB,EACnB,QAAgB,EAChB,OAAiC,EACjC,iBAA0C,EAAE;IAE5C,MAAM,SAAS,GAAsB,OAAO,CAAC,WAAW,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAE/E,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC9C,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,IAAI,EAAE,CAAC;IAElD,iDAAiD;IACjD,6EAA6E;IAC7E,2EAA2E;IAC3E,mFAAmF;IACnF,MAAM,iBAAiB,GAAG,MAAM,CAAC,WAAW;SACzC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;SAC7B,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC;IAExE,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,uCAAuC;IACvC,MAAM,kBAAkB,GAAqB,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACvF,MAAM,YAAY,GAAmB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5D,GAAG,CAAC;QACJ,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;QAChD,UAAU,EAAE;YACV,GAAG,CAAC,CAAC,UAAU;YACf,UAAU,EAAE,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,UAAU,EAAE;SAC3C;KACF,CAAC,CAAC,CAAC;IAEJ,0CAA0C;IAC1C,+EAA+E;IAC/E,KAAK,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,iBAAiB,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;QACpB,MAAM,WAAW,GAAG,kBAAkB,CAAC,iBAAiB,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAE9E,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QAEtF,IAAI,SAAS,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YAC7B,+DAA+D;YAC/D,MAAM,WAAW,GAAiB;gBAChC,GAAG,YAAY,CAAC,GAAG,CAAC;gBACpB,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE;oBACL,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK;oBAC1B,QAAQ,EAAE,cAAc;oBACxB,OAAO,EAAE,iBAAiB,SAAS,CAAC,KAAK,IAAI,mBAAmB,OAAO,SAAS,CAAC,MAAM,EAAE;oBACzF,QAAQ,EAAE,SAAS,CAAC,QAAQ;iBAC7B;aACF,CAAC;YACF,YAAY,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;YAChC,kBAAkB,CAAC,GAAG,CAAC,GAAG;gBACxB,IAAI,EAAE,WAAW;gBACjB,aAAa,EAAE,SAAS,CAAC,KAAK;gBAC9B,YAAY,EAAE,IAAI;gBAClB,gBAAgB,EAAE,SAAS,CAAC,MAAM;aACnC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,oEAAoE;YACpE,MAAM,WAAW,GAAiB;gBAChC,GAAG,YAAY,CAAC,GAAG,CAAC;gBACpB,KAAK,EAAE;oBACL,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK;oBAC1B,OAAO,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,SAAS,CAAC,MAAM,EAAE;oBAC/E,QAAQ,EAAE,SAAS,CAAC,QAAQ;iBAC7B;aACF,CAAC;YACF,YAAY,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;YAChC,kBAAkB,CAAC,GAAG,CAAC,GAAG;gBACxB,GAAG,kBAAkB,CAAC,GAAG,CAAC;gBAC1B,IAAI,EAAE,WAAW;gBACjB,gBAAgB,EAAE,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,gBAAgB,kBAAkB,SAAS,CAAC,MAAM,EAAE;aAClG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,oEAAoE;IACpE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,GAAG,wBAAwB,CACzE,iBAAiB,EACjB,kBAAkB,CACnB,CAAC;IAEF,+BAA+B;IAC/B,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC;IAClF,MAAM,YAAY,GAAe;QAC/B,GAAG,MAAM,CAAC,KAAK;QACf,YAAY,EAAE,iBAAiB;QAC/B,SAAS,EAAE,kBAAkB,CAAC,MAAM,GAAG,iBAAiB;QACxD,MAAM,EAAE,EAA0B;KACnC,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAC7E,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,iDAAiD;QACjD,OAAO;YACL,GAAG,MAAM;YACT,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,kBAAkB;YAC/B,KAAK,EAAE,YAAY;YACnB,aAAa,EAAE,IAAI;SACpB,CAAC;IACJ,CAAC;IAED,wDAAwD;IACxD,MAAM,UAAU,GAAG,qBAAqB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAErE,qDAAqD;IACrD,IAAI,OAAO,CAAC,eAAe,KAAK,KAAK,EAAE,CAAC;QACtC,MAAM,cAAc,GAAG,MAAM,mBAAmB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;QAE7F,IAAI,cAAc,KAAK,KAAK,EAAE,CAAC;YAC7B,8DAA8D;YAC9D,MAAM,oBAAoB,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACxD,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAClD,CAAC;YACF,OAAO;gBACL,GAAG,MAAM;gBACT,KAAK,EAAE,YAAY;gBACnB,WAAW,EAAE,oBAAoB;gBACjC,KAAK,EAAE,EAAE,GAAG,YAAY,EAAE,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,cAAc,EAAE;gBACnF,aAAa,EAAE,IAAI;gBACnB,UAAU,EAAE,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE;aAC/F,CAAC;QACJ,CAAC;QAED,OAAO;YACL,GAAG,MAAM;YACT,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,kBAAkB;YAC/B,KAAK,EAAE,YAAY;YACnB,aAAa,EAAE,gBAAgB;YAC/B,UAAU,EAAE,EAAE,GAAG,UAAU,EAAE,cAAc,EAAE,kBAAkB,EAAE,IAAI,EAAE;SACxE,CAAC;IACJ,CAAC;IAED,OAAO;QACL,GAAG,MAAM;QACT,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,kBAAkB;QAC/B,KAAK,EAAE,YAAY;QACnB,aAAa,EAAE,gBAAgB;QAC/B,UAAU,EAAE,EAAE,GAAG,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;KAC9E,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/resolver/policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,YAAY,EAClB,MAAM,cAAc,CAAC;AAEtB,0BAA0B;AAC1B,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,cAAc,CAWpD,CAAC;AAEF,2CAA2C;AAC3C,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAKvD,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC,GAChC;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,GAAG,EAAE,YAAY,CAAA;CAAE,CAO5C;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,YAAY,EACvB,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC,GAChC,UAAU,CAIZ;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,YAAY,EAClB,iBAAiB,EAAE,MAAM,GACxB,YAAY,CAiCd"}
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/resolver/policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,YAAY,EAClB,MAAM,cAAc,CAAC;AAEtB,0BAA0B;AAC1B,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,cAAc,CAgBpD,CAAC;AAEF,2CAA2C;AAC3C,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAKvD,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC,GAChC;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,GAAG,EAAE,YAAY,CAAA;CAAE,CAO5C;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,YAAY,EACvB,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC,GAChC,UAAU,CAIZ;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,YAAY,EAClB,iBAAiB,EAAE,MAAM,GACxB,YAAY,CAiCd"}
@@ -26,6 +26,11 @@ export const DEFAULT_OPTIONS = {
26
26
  generatedFiles: [],
27
27
  // v2.2 — profils de format actifs par défaut
28
28
  disableFormatProfiles: false,
29
+ // v2.4 — validation post-merge
30
+ validationLevel: "balanced",
31
+ validationTools: ["tsc"],
32
+ // v2.5 — LLM fallback (désactivé par défaut)
33
+ llmFallback: { enabled: false },
29
34
  };
30
35
  /** Ordre de confiance pour comparaison. */
31
36
  export const CONFIDENCE_ORDER = {
@@ -1 +1 @@
1
- {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/resolver/policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/resolver/policy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * @gitwand/core v2.4 — Parse-tree validation
3
+ *
4
+ * Vérifie si le contenu fusionné produit un arbre syntaxique sans erreurs
5
+ * via web-tree-sitter. Utilisé comme couche de filet de sécurité après
6
+ * la résolution automatique : si le merge produit du code syntaxiquement
7
+ * cassé, les résolutions sont rétractées pour revenir aux marqueurs de conflit.
8
+ *
9
+ * Contrainte : cette fonction est async (tree-sitter est lazy-loaded).
10
+ * Elle retourne `null` (graceful) si :
11
+ * - web-tree-sitter n'est pas installé
12
+ * - Le fichier n'est pas d'un langage supporté (TS/JS/Python/Go/Rust)
13
+ * - Le chargement de la grammaire échoue
14
+ *
15
+ * Elle ne lève jamais d'exception — les erreurs sont silencieusement absorbées.
16
+ */
17
+ import type { LoaderOptions } from "../structural/parsers/loader.js";
18
+ /**
19
+ * Vérifie si le contenu fourni parse sans erreur syntaxique pour le langage
20
+ * du fichier cible.
21
+ *
22
+ * @param content - Contenu à valider (après résolution des conflits)
23
+ * @param filePath - Chemin du fichier (sélection de la grammaire tree-sitter)
24
+ * @param opts - Options de chargement (WASM paths, custom loader)
25
+ * @returns
26
+ * - `true` : l'arbre syntaxique est valide (pas de nœuds ERROR)
27
+ * - `false` : des erreurs syntaxiques ont été détectées
28
+ * - `null` : tree-sitter indisponible ou langage non supporté
29
+ */
30
+ export declare function checkParseTreeValid(content: string, filePath: string, opts?: LoaderOptions): Promise<boolean | null>;
31
+ /**
32
+ * Construit un objet `HunkResolution` mis à jour avec la pénalité `postMergeRisk`
33
+ * pour signaler qu'une résolution a été rétractée suite à une invalidation parse-tree.
34
+ *
35
+ * Le score de confiance est mis à 0 et le label à "low" pour communiquer clairement
36
+ * à l'UI que ce hunk requiert une intervention manuelle.
37
+ */
38
+ export declare function applyPostMergeRiskPenalty<T extends {
39
+ autoResolved: boolean;
40
+ resolvedLines: string[] | null;
41
+ resolutionReason: string;
42
+ hunk: {
43
+ confidence: {
44
+ score: number;
45
+ label: string;
46
+ dimensions: Record<string, unknown>;
47
+ boosters: string[];
48
+ penalties: string[];
49
+ };
50
+ };
51
+ }>(resolution: T): T;
52
+ //# sourceMappingURL=validate-parse-tree.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-parse-tree.d.ts","sourceRoot":"","sources":["../../src/resolver/validate-parse-tree.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAMH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAErE;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE,aAAkB,GACvB,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAsBzB;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,CAAC,SAAS;IACR,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC/B,gBAAgB,EAAE,MAAM,CAAC;IACzB,IAAI,EAAE;QACJ,UAAU,EAAE;YACV,KAAK,EAAE,MAAM,CAAC;YACd,KAAK,EAAE,MAAM,CAAC;YACd,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACpC,QAAQ,EAAE,MAAM,EAAE,CAAC;YACnB,SAAS,EAAE,MAAM,EAAE,CAAC;SACrB,CAAC;KACH,CAAC;CACH,EACD,UAAU,EAAE,CAAC,GAAG,CAAC,CAwBlB"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * @gitwand/core v2.4 — Parse-tree validation
3
+ *
4
+ * Vérifie si le contenu fusionné produit un arbre syntaxique sans erreurs
5
+ * via web-tree-sitter. Utilisé comme couche de filet de sécurité après
6
+ * la résolution automatique : si le merge produit du code syntaxiquement
7
+ * cassé, les résolutions sont rétractées pour revenir aux marqueurs de conflit.
8
+ *
9
+ * Contrainte : cette fonction est async (tree-sitter est lazy-loaded).
10
+ * Elle retourne `null` (graceful) si :
11
+ * - web-tree-sitter n'est pas installé
12
+ * - Le fichier n'est pas d'un langage supporté (TS/JS/Python/Go/Rust)
13
+ * - Le chargement de la grammaire échoue
14
+ *
15
+ * Elle ne lève jamais d'exception — les erreurs sont silencieusement absorbées.
16
+ */
17
+ import { isStructuralLanguage } from "../structural/parsers/grammars/languages.js";
18
+ import { loadGrammarForFile } from "../structural/parsers/grammars/ts.js";
19
+ import { createParser } from "../structural/parsers/loader.js";
20
+ import { hasParseErrors } from "../structural/entities.js";
21
+ /**
22
+ * Vérifie si le contenu fourni parse sans erreur syntaxique pour le langage
23
+ * du fichier cible.
24
+ *
25
+ * @param content - Contenu à valider (après résolution des conflits)
26
+ * @param filePath - Chemin du fichier (sélection de la grammaire tree-sitter)
27
+ * @param opts - Options de chargement (WASM paths, custom loader)
28
+ * @returns
29
+ * - `true` : l'arbre syntaxique est valide (pas de nœuds ERROR)
30
+ * - `false` : des erreurs syntaxiques ont été détectées
31
+ * - `null` : tree-sitter indisponible ou langage non supporté
32
+ */
33
+ export async function checkParseTreeValid(content, filePath, opts = {}) {
34
+ // Vérification rapide : langage supporté ?
35
+ if (!isStructuralLanguage(filePath))
36
+ return null;
37
+ try {
38
+ // Chargement lazy de la grammaire (retourne null si non disponible)
39
+ const language = await loadGrammarForFile(filePath, opts);
40
+ if (!language)
41
+ return null;
42
+ const parser = await createParser(language, opts);
43
+ if (!parser)
44
+ return null;
45
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
46
+ const p = parser;
47
+ const tree = p.parse(content);
48
+ // hasParseErrors() vérifie récursivement la présence de nœuds ERROR
49
+ return !hasParseErrors(tree);
50
+ }
51
+ catch {
52
+ // Graceful degradation — ne jamais bloquer la résolution pour un échec tree-sitter
53
+ return null;
54
+ }
55
+ }
56
+ /**
57
+ * Construit un objet `HunkResolution` mis à jour avec la pénalité `postMergeRisk`
58
+ * pour signaler qu'une résolution a été rétractée suite à une invalidation parse-tree.
59
+ *
60
+ * Le score de confiance est mis à 0 et le label à "low" pour communiquer clairement
61
+ * à l'UI que ce hunk requiert une intervention manuelle.
62
+ */
63
+ export function applyPostMergeRiskPenalty(resolution) {
64
+ return {
65
+ ...resolution,
66
+ autoResolved: false,
67
+ resolvedLines: null,
68
+ resolutionReason: "Rétracté : le contenu fusionné contient des erreurs syntaxiques (parse-tree tree-sitter). Intervention manuelle requise.",
69
+ hunk: {
70
+ ...resolution.hunk,
71
+ confidence: {
72
+ ...resolution.hunk.confidence,
73
+ score: 0,
74
+ label: "low",
75
+ dimensions: {
76
+ ...resolution.hunk.confidence.dimensions,
77
+ postMergeRisk: 100,
78
+ },
79
+ penalties: [
80
+ ...resolution.hunk.confidence.penalties,
81
+ "v2.4 — Parse-tree invalide après résolution automatique",
82
+ ],
83
+ },
84
+ },
85
+ };
86
+ }
87
+ //# sourceMappingURL=validate-parse-tree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-parse-tree.js","sourceRoot":"","sources":["../../src/resolver/validate-parse-tree.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3D;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAe,EACf,QAAgB,EAChB,OAAsB,EAAE;IAExB,2CAA2C;IAC3C,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IAEjD,IAAI,CAAC;QACH,oEAAoE;QACpE,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAE3B,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAEzB,8DAA8D;QAC9D,MAAM,CAAC,GAAG,MAAa,CAAC;QACxB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAE9B,oEAAoE;QACpE,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,mFAAmF;QACnF,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CAevC,UAAa;IACb,OAAO;QACL,GAAG,UAAU;QACb,YAAY,EAAE,KAAK;QACnB,aAAa,EAAE,IAAI;QACnB,gBAAgB,EACd,0HAA0H;QAC5H,IAAI,EAAE;YACJ,GAAG,UAAU,CAAC,IAAI;YAClB,UAAU,EAAE;gBACV,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU;gBAC7B,KAAK,EAAE,CAAC;gBACR,KAAK,EAAE,KAAc;gBACrB,UAAU,EAAE;oBACV,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU;oBACxC,aAAa,EAAE,GAAG;iBACnB;gBACD,SAAS,EAAE;oBACT,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS;oBACvC,yDAAyD;iBAC1D;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @gitwand/core v2.4 — Strict validation dispatcher
3
+ *
4
+ * Point d'entrée pour la validation opt-in via outils externes (tsc, eslint).
5
+ * Le chargement de l'implémentation Node.js est gardé derrière un import
6
+ * dynamique avec `/* @vite-ignore *\/` pour éviter son inclusion dans les
7
+ * bundles browser/Tauri où child_process n'est pas disponible.
8
+ *
9
+ * Retourne toujours `[]` (aucune erreur) en environnement browser ou Tauri.
10
+ */
11
+ export interface StrictValidationResult {
12
+ errors: string[];
13
+ toolsRun: string[];
14
+ toolsFailed: string[];
15
+ }
16
+ /**
17
+ * Exécute la validation stricte sur le contenu fusionné.
18
+ *
19
+ * Disponible uniquement en environnement Node.js — retourne un résultat vide
20
+ * en browser ou Tauri sans lever d'exception.
21
+ *
22
+ * @param content - Contenu fusionné à valider
23
+ * @param filePath - Chemin du fichier (pour l'extension et les messages d'erreur)
24
+ * @param tools - Outils à exécuter (`["tsc"]` par défaut)
25
+ */
26
+ export declare function runStrictValidation(content: string, filePath: string, tools?: Array<"tsc" | "eslint">): Promise<StrictValidationResult>;
27
+ //# sourceMappingURL=validate-strict.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-strict.d.ts","sourceRoot":"","sources":["../../src/resolver/validate-strict.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAID;;;;;;;;;GASG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,KAAK,GAAE,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAW,GACvC,OAAO,CAAC,sBAAsB,CAAC,CAgBjC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * @gitwand/core v2.4 — Strict validation dispatcher
3
+ *
4
+ * Point d'entrée pour la validation opt-in via outils externes (tsc, eslint).
5
+ * Le chargement de l'implémentation Node.js est gardé derrière un import
6
+ * dynamique avec `/* @vite-ignore *\/` pour éviter son inclusion dans les
7
+ * bundles browser/Tauri où child_process n'est pas disponible.
8
+ *
9
+ * Retourne toujours `[]` (aucune erreur) en environnement browser ou Tauri.
10
+ */
11
+ import { detectEnvironment } from "../structural/parsers/loader.js";
12
+ const EMPTY_RESULT = { errors: [], toolsRun: [], toolsFailed: [] };
13
+ /**
14
+ * Exécute la validation stricte sur le contenu fusionné.
15
+ *
16
+ * Disponible uniquement en environnement Node.js — retourne un résultat vide
17
+ * en browser ou Tauri sans lever d'exception.
18
+ *
19
+ * @param content - Contenu fusionné à valider
20
+ * @param filePath - Chemin du fichier (pour l'extension et les messages d'erreur)
21
+ * @param tools - Outils à exécuter (`["tsc"]` par défaut)
22
+ */
23
+ export async function runStrictValidation(content, filePath, tools = ["tsc"]) {
24
+ const env = detectEnvironment();
25
+ if (env !== "node")
26
+ return EMPTY_RESULT;
27
+ // Seulement les langages que tsc et eslint comprennent
28
+ const strictLangs = /\.(ts|tsx|js|jsx|mjs|cjs|mts|cts)$/i;
29
+ if (!strictLangs.test(filePath))
30
+ return EMPTY_RESULT;
31
+ try {
32
+ // vite-ignore: Node.js adapter — jamais bundlé pour browser/Tauri
33
+ const { runStrictValidationNode } = await import(/* @vite-ignore */ "./adapters/strict-node.js");
34
+ return await runStrictValidationNode(content, filePath, tools);
35
+ }
36
+ catch {
37
+ // L'adapter n'a pas pu être chargé — dégradation gracieuse
38
+ return EMPTY_RESULT;
39
+ }
40
+ }
41
+ //# sourceMappingURL=validate-strict.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-strict.js","sourceRoot":"","sources":["../../src/resolver/validate-strict.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAQpE,MAAM,YAAY,GAA2B,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;AAE3F;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAe,EACf,QAAgB,EAChB,QAAiC,CAAC,KAAK,CAAC;IAExC,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;IAChC,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,YAAY,CAAC;IAExC,uDAAuD;IACvD,MAAM,WAAW,GAAG,qCAAqC,CAAC;IAC1D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC;QAAE,OAAO,YAAY,CAAC;IAErD,IAAI,CAAC;QACH,kEAAkE;QAClE,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,2BAA2B,CAAC,CAAC;QACjG,OAAO,MAAM,uBAAuB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;IAAC,MAAM,CAAC;QACP,2DAA2D;QAC3D,OAAO,YAAY,CAAC;IACtB,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/resolver/validation.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,kDAAkD;AAClD,eAAO,MAAM,wBAAwB,UAKpC,CAAC;AA8CF;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAqBzF;AAED,8EAA8E;AAC9E,eAAO,MAAM,gBAAgB,EAAE,gBAK9B,CAAC"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/resolver/validation.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,kDAAkD;AAClD,eAAO,MAAM,wBAAwB,UAKpC,CAAC;AA8CF;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAgCzF;AAED,8EAA8E;AAC9E,eAAO,MAAM,gBAAgB,EAAE,gBAQ9B,CAAC"}
@@ -84,7 +84,18 @@ export function validateMergedContent(content, filePath) {
84
84
  const format = detectFormat(filePath);
85
85
  const syntaxError = tryParse(content, format);
86
86
  const isValid = !hasResidualMarkers && syntaxError === null;
87
- return { hasResidualMarkers, residualMarkerLines, syntaxError, isValid };
87
+ // parseTreeValid est null ici car validateMergedContent est synchrone.
88
+ // La validation parse-tree (tree-sitter, async) est effectuée séparément
89
+ // dans resolveAsync() via checkParseTreeValid().
90
+ return {
91
+ hasResidualMarkers,
92
+ residualMarkerLines,
93
+ syntaxError,
94
+ isValid,
95
+ parseTreeValid: null,
96
+ parseTreeErrors: 0,
97
+ parseTreeErrorRanges: [],
98
+ };
88
99
  }
89
100
  /** Validation vide (pour les cas où le contenu n'est pas encore fusionné). */
90
101
  export const EMPTY_VALIDATION = {
@@ -92,5 +103,8 @@ export const EMPTY_VALIDATION = {
92
103
  residualMarkerLines: [],
93
104
  syntaxError: null,
94
105
  isValid: true,
106
+ parseTreeValid: null,
107
+ parseTreeErrors: 0,
108
+ parseTreeErrorRanges: [],
95
109
  };
96
110
  //# sourceMappingURL=validation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/resolver/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/resolver/validation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../src/resolvers/dispatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAgBhD,8CAA8C;AAC9C,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,yCAAyC;AACzC,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,qCAAqC;AACrC,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,wDAAwD;AACxD,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,qDAAqD;AACrD,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED,kDAAkD;AAClD,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED,oEAAoE;AACpE,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,6DAA6D;AAC7D,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,kEAAkE;AAClE,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,uDAAuD;AACvD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,4DAA4D;AAC5D,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAErD;AAED,0DAA0D;AAC1D,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED,8CAA8C;AAC9C,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEtD;AAID,MAAM,WAAW,mBAAmB;IAClC,mEAAmE;IACnE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACvB;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,YAAY,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,cAAc,GAAG,eAAe,GAAG,eAAe,GAAG,OAAO,GAAG,QAAQ,GAAG,YAAY,GAAG,YAAY,GAAG,MAAM,CAAC;IACxL;;;;;;;;;OASG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAID;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE;IAAE,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAE,GACzC,mBAAmB,CAoRrB"}
1
+ {"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../src/resolvers/dispatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAgBhD,8CAA8C;AAC9C,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,yCAAyC;AACzC,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,qCAAqC;AACrC,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,wDAAwD;AACxD,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,qDAAqD;AACrD,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED,kDAAkD;AAClD,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED,oEAAoE;AACpE,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,6DAA6D;AAC7D,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,kEAAkE;AAClE,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,uDAAuD;AACvD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,4DAA4D;AAC5D,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAErD;AAED,0DAA0D;AAC1D,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED,8CAA8C;AAC9C,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEtD;AAID,MAAM,WAAW,mBAAmB;IAClC,mEAAmE;IACnE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACvB;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IACf,wCAAwC;IAIxC,YAAY,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,cAAc,GAAG,eAAe,GAAG,eAAe,GAAG,OAAO,GAAG,QAAQ,GAAG,YAAY,GAAG,YAAY,GAAG,MAAM,CAAC;IACxL;;;;;;;;;OASG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAID;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE;IAAE,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAE,GACzC,mBAAmB,CAoRrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/resolvers/dispatcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/resolvers/dispatcher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * v2.5 — LLM fallback resolver.
3
+ *
4
+ * Sérialise un hunk de conflit + son contexte, envoie le prompt à l'endpoint
5
+ * LLM injecté par le consommateur, valide le résultat proposé, et retourne
6
+ * la résolution avec une trace d'audit complète.
7
+ *
8
+ * ### Contrainte browser
9
+ * Ce module n'utilise aucun module Node.js natif (`fs`, `crypto`, `child_process`…).
10
+ * Le hash SHA-256 est calculé via l'API Web Crypto (`globalThis.crypto.subtle`),
11
+ * disponible en browser, Node.js ≥ 18, et Tauri.
12
+ */
13
+ import type { ConflictHunk, LlmFallbackConfig, LlmTrace } from "../types.js";
14
+ /** Résultat de la tentative de résolution LLM d'un hunk. */
15
+ export interface LlmResolveResult {
16
+ /** Lignes résolues (null = résolution refusée) */
17
+ lines: string[] | null;
18
+ /** Raison lisible de l'acceptation ou du refus */
19
+ reason: string;
20
+ /** Trace d'audit complète (toujours présente, même en cas de refus) */
21
+ llmTrace: LlmTrace;
22
+ }
23
+ /**
24
+ * Tente de résoudre un hunk de conflit via le fallback LLM.
25
+ *
26
+ * Pipeline :
27
+ * 1. Construit le prompt (sérialisation hunk + contexte + trace partielle)
28
+ * 2. Calcule le hash SHA-256 du prompt (audit de reproductibilité)
29
+ * 3. Appelle `config.endpoint.call(prompt)` (fourni par le consommateur)
30
+ * 4. Parse la réponse (extrait les lignes résolues)
31
+ * 5. Valide le résultat (`validateMergedContent`)
32
+ * 6. Accepte si `score ≥ minPostMergeScore`, refuse sinon
33
+ * 7. Retourne `LlmResolveResult` avec la trace complète
34
+ *
35
+ * @param hunk - Hunk de conflit à résoudre
36
+ * @param filePath - Chemin du fichier (pour validation post-merge)
37
+ * @param fileContext - ±N lignes autour du hunk (fournies par l'appelant)
38
+ * @param config - Configuration LLM fallback (avec endpoint injecté)
39
+ */
40
+ export declare function tryLlmFallbackResolve(hunk: ConflictHunk, filePath: string, fileContext: string, config: LlmFallbackConfig): Promise<LlmResolveResult>;
41
+ //# sourceMappingURL=llm-fallback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm-fallback.d.ts","sourceRoot":"","sources":["../../src/resolvers/llm-fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAK7E,4DAA4D;AAC5D,MAAM,WAAW,gBAAgB;IAC/B,kDAAkD;IAClD,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACvB,kDAAkD;IAClD,MAAM,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,QAAQ,EAAE,QAAQ,CAAC;CACpB;AA+HD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,gBAAgB,CAAC,CAsG3B"}