@gitwand/core 3.7.3 → 3.9.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 (192) hide show
  1. package/dist/__tests__/accuracy-lot1.test.d.ts +14 -0
  2. package/dist/__tests__/accuracy-lot1.test.d.ts.map +1 -0
  3. package/dist/__tests__/accuracy-lot1.test.js +154 -0
  4. package/dist/__tests__/accuracy-lot1.test.js.map +1 -0
  5. package/dist/__tests__/confidence-v14.test.js +2 -2
  6. package/dist/__tests__/confidence-v14.test.js.map +1 -1
  7. package/dist/__tests__/conventions.test.d.ts +10 -0
  8. package/dist/__tests__/conventions.test.d.ts.map +1 -0
  9. package/dist/__tests__/conventions.test.js +121 -0
  10. package/dist/__tests__/conventions.test.js.map +1 -0
  11. package/dist/__tests__/corpus.d.ts.map +1 -1
  12. package/dist/__tests__/corpus.js +44 -5
  13. package/dist/__tests__/corpus.js.map +1 -1
  14. package/dist/__tests__/english-output.test.d.ts +2 -0
  15. package/dist/__tests__/english-output.test.d.ts.map +1 -0
  16. package/dist/__tests__/english-output.test.js +56 -0
  17. package/dist/__tests__/english-output.test.js.map +1 -0
  18. package/dist/__tests__/format-resolvers.test.js +2 -2
  19. package/dist/__tests__/format-resolvers.test.js.map +1 -1
  20. package/dist/__tests__/llm-refactoring-coupling.test.d.ts +1 -1
  21. package/dist/__tests__/llm-refactoring-coupling.test.js +1 -1
  22. package/dist/__tests__/merge-context.test.d.ts +15 -0
  23. package/dist/__tests__/merge-context.test.d.ts.map +1 -0
  24. package/dist/__tests__/merge-context.test.js +78 -0
  25. package/dist/__tests__/merge-context.test.js.map +1 -0
  26. package/dist/__tests__/patterns/insertion-at-boundary.test.js +1 -1
  27. package/dist/__tests__/patterns/insertion-at-boundary.test.js.map +1 -1
  28. package/dist/__tests__/patterns/llm-proposed.test.js +1 -1
  29. package/dist/__tests__/patterns/llm-proposed.test.js.map +1 -1
  30. package/dist/__tests__/patterns/reorder-only.test.js +2 -2
  31. package/dist/__tests__/patterns/reorder-only.test.js.map +1 -1
  32. package/dist/__tests__/patterns/token-level-merge.test.js +4 -4
  33. package/dist/__tests__/patterns/token-level-merge.test.js.map +1 -1
  34. package/dist/__tests__/patterns/value-only-change.test.js +11 -9
  35. package/dist/__tests__/patterns/value-only-change.test.js.map +1 -1
  36. package/dist/__tests__/regenerate/plan.test.d.ts +12 -0
  37. package/dist/__tests__/regenerate/plan.test.d.ts.map +1 -0
  38. package/dist/__tests__/regenerate/plan.test.js +126 -0
  39. package/dist/__tests__/regenerate/plan.test.js.map +1 -0
  40. package/dist/__tests__/regenerate/registry.test.d.ts +8 -0
  41. package/dist/__tests__/regenerate/registry.test.d.ts.map +1 -0
  42. package/dist/__tests__/regenerate/registry.test.js +60 -0
  43. package/dist/__tests__/regenerate/registry.test.js.map +1 -0
  44. package/dist/__tests__/regenerate-integration.test.d.ts +31 -0
  45. package/dist/__tests__/regenerate-integration.test.d.ts.map +1 -0
  46. package/dist/__tests__/regenerate-integration.test.js +199 -0
  47. package/dist/__tests__/regenerate-integration.test.js.map +1 -0
  48. package/dist/__tests__/regression-guard-tiers.test.d.ts +1 -1
  49. package/dist/__tests__/regression-guard-tiers.test.js +2 -2
  50. package/dist/__tests__/resolver.test.js +14 -6
  51. package/dist/__tests__/resolver.test.js.map +1 -1
  52. package/dist/__tests__/resolvers/cargo.test.js +6 -4
  53. package/dist/__tests__/resolvers/cargo.test.js.map +1 -1
  54. package/dist/__tests__/resolvers/json-fragment.test.d.ts +10 -0
  55. package/dist/__tests__/resolvers/json-fragment.test.d.ts.map +1 -0
  56. package/dist/__tests__/resolvers/json-fragment.test.js +96 -0
  57. package/dist/__tests__/resolvers/json-fragment.test.js.map +1 -0
  58. package/dist/__tests__/resolvers/json.test.js +1 -1
  59. package/dist/__tests__/resolvers/lockfile-npm.test.js +14 -12
  60. package/dist/__tests__/resolvers/lockfile-npm.test.js.map +1 -1
  61. package/dist/__tests__/resolvers/lockfile-pnpm.test.js +14 -12
  62. package/dist/__tests__/resolvers/lockfile-pnpm.test.js.map +1 -1
  63. package/dist/__tests__/resolvers/lockfile-yarn.test.js +14 -12
  64. package/dist/__tests__/resolvers/lockfile-yarn.test.js.map +1 -1
  65. package/dist/__tests__/stats/tiers.test.d.ts +1 -1
  66. package/dist/__tests__/stats/tiers.test.js +4 -3
  67. package/dist/__tests__/stats/tiers.test.js.map +1 -1
  68. package/dist/__tests__/with-base-availability.test.js +2 -2
  69. package/dist/__tests__/with-base-availability.test.js.map +1 -1
  70. package/dist/classifier.js +18 -18
  71. package/dist/classifier.js.map +1 -1
  72. package/dist/config.d.ts +7 -0
  73. package/dist/config.d.ts.map +1 -1
  74. package/dist/config.js +4 -0
  75. package/dist/config.js.map +1 -1
  76. package/dist/conventions/derive.d.ts +21 -0
  77. package/dist/conventions/derive.d.ts.map +1 -0
  78. package/dist/conventions/derive.js +116 -0
  79. package/dist/conventions/derive.js.map +1 -0
  80. package/dist/conventions/types.d.ts +80 -0
  81. package/dist/conventions/types.d.ts.map +1 -0
  82. package/dist/conventions/types.js +21 -0
  83. package/dist/conventions/types.js.map +1 -0
  84. package/dist/index.d.ts +7 -1
  85. package/dist/index.d.ts.map +1 -1
  86. package/dist/index.js +9 -1
  87. package/dist/index.js.map +1 -1
  88. package/dist/parser.js +1 -1
  89. package/dist/parser.js.map +1 -1
  90. package/dist/patterns/complex.js +4 -4
  91. package/dist/patterns/complex.js.map +1 -1
  92. package/dist/patterns/delete-no-change.js +13 -13
  93. package/dist/patterns/delete-no-change.js.map +1 -1
  94. package/dist/patterns/insertion-at-boundary.js +7 -7
  95. package/dist/patterns/insertion-at-boundary.js.map +1 -1
  96. package/dist/patterns/llm-proposed.js +5 -5
  97. package/dist/patterns/llm-proposed.js.map +1 -1
  98. package/dist/patterns/non-overlapping.js +4 -4
  99. package/dist/patterns/non-overlapping.js.map +1 -1
  100. package/dist/patterns/one-side-change.js +6 -6
  101. package/dist/patterns/one-side-change.js.map +1 -1
  102. package/dist/patterns/refactoring-aware-merge.js +11 -11
  103. package/dist/patterns/refactoring-aware-merge.js.map +1 -1
  104. package/dist/patterns/reorder-only.js +6 -6
  105. package/dist/patterns/reorder-only.js.map +1 -1
  106. package/dist/patterns/same-change.js +4 -4
  107. package/dist/patterns/same-change.js.map +1 -1
  108. package/dist/patterns/token-level-merge.js +6 -6
  109. package/dist/patterns/token-level-merge.js.map +1 -1
  110. package/dist/patterns/utils.d.ts +1 -10
  111. package/dist/patterns/utils.d.ts.map +1 -1
  112. package/dist/patterns/utils.js +46 -7
  113. package/dist/patterns/utils.js.map +1 -1
  114. package/dist/patterns/value-only-change.js +6 -6
  115. package/dist/patterns/value-only-change.js.map +1 -1
  116. package/dist/patterns/whitespace-only.js +6 -6
  117. package/dist/patterns/whitespace-only.js.map +1 -1
  118. package/dist/refactoring/orchestration.js +3 -3
  119. package/dist/refactoring/orchestration.js.map +1 -1
  120. package/dist/regenerate/plan.d.ts +58 -0
  121. package/dist/regenerate/plan.d.ts.map +1 -0
  122. package/dist/regenerate/plan.js +55 -0
  123. package/dist/regenerate/plan.js.map +1 -0
  124. package/dist/regenerate/registry.d.ts +44 -0
  125. package/dist/regenerate/registry.d.ts.map +1 -0
  126. package/dist/regenerate/registry.js +81 -0
  127. package/dist/regenerate/registry.js.map +1 -0
  128. package/dist/resolver/assemble.d.ts.map +1 -1
  129. package/dist/resolver/assemble.js +71 -32
  130. package/dist/resolver/assemble.js.map +1 -1
  131. package/dist/resolver/format-dispatch.d.ts +1 -0
  132. package/dist/resolver/format-dispatch.d.ts.map +1 -1
  133. package/dist/resolver/format-dispatch.js +3 -3
  134. package/dist/resolver/format-dispatch.js.map +1 -1
  135. package/dist/resolver/generated-detection.js +9 -9
  136. package/dist/resolver/generated-detection.js.map +1 -1
  137. package/dist/resolver/index.d.ts.map +1 -1
  138. package/dist/resolver/index.js +228 -18
  139. package/dist/resolver/index.js.map +1 -1
  140. package/dist/resolver/llm-pipeline.js +2 -2
  141. package/dist/resolver/llm-pipeline.js.map +1 -1
  142. package/dist/resolver/policy.d.ts.map +1 -1
  143. package/dist/resolver/policy.js +9 -1
  144. package/dist/resolver/policy.js.map +1 -1
  145. package/dist/resolver/validate-parse-tree.js +2 -2
  146. package/dist/resolver/validate-parse-tree.js.map +1 -1
  147. package/dist/resolver/validation.d.ts +14 -0
  148. package/dist/resolver/validation.d.ts.map +1 -1
  149. package/dist/resolver/validation.js +101 -1
  150. package/dist/resolver/validation.js.map +1 -1
  151. package/dist/resolvers/cargo.js +3 -3
  152. package/dist/resolvers/cargo.js.map +1 -1
  153. package/dist/resolvers/css.js +7 -7
  154. package/dist/resolvers/css.js.map +1 -1
  155. package/dist/resolvers/dispatcher.d.ts.map +1 -1
  156. package/dist/resolvers/dispatcher.js +13 -1
  157. package/dist/resolvers/dispatcher.js.map +1 -1
  158. package/dist/resolvers/dockerfile.js +2 -2
  159. package/dist/resolvers/dockerfile.js.map +1 -1
  160. package/dist/resolvers/dotenv.js +2 -2
  161. package/dist/resolvers/dotenv.js.map +1 -1
  162. package/dist/resolvers/imports.js +11 -11
  163. package/dist/resolvers/imports.js.map +1 -1
  164. package/dist/resolvers/json-fragment.d.ts +48 -0
  165. package/dist/resolvers/json-fragment.d.ts.map +1 -0
  166. package/dist/resolvers/json-fragment.js +196 -0
  167. package/dist/resolvers/json-fragment.js.map +1 -0
  168. package/dist/resolvers/json.js +7 -7
  169. package/dist/resolvers/json.js.map +1 -1
  170. package/dist/resolvers/llm-fallback.js +5 -5
  171. package/dist/resolvers/llm-fallback.js.map +1 -1
  172. package/dist/resolvers/lockfile-npm.js +3 -3
  173. package/dist/resolvers/lockfile-npm.js.map +1 -1
  174. package/dist/resolvers/lockfile-pnpm.js +2 -2
  175. package/dist/resolvers/lockfile-pnpm.js.map +1 -1
  176. package/dist/resolvers/lockfile-yarn.js +3 -3
  177. package/dist/resolvers/lockfile-yarn.js.map +1 -1
  178. package/dist/resolvers/markdown.js +4 -4
  179. package/dist/resolvers/markdown.js.map +1 -1
  180. package/dist/resolvers/vue.js +5 -5
  181. package/dist/resolvers/vue.js.map +1 -1
  182. package/dist/resolvers/yaml.js +6 -6
  183. package/dist/resolvers/yaml.js.map +1 -1
  184. package/dist/stats/tiers.d.ts +1 -1
  185. package/dist/stats/tiers.d.ts.map +1 -1
  186. package/dist/stats/tiers.js +5 -2
  187. package/dist/stats/tiers.js.map +1 -1
  188. package/dist/structural/index.js +3 -3
  189. package/dist/structural/index.js.map +1 -1
  190. package/dist/types.d.ts +83 -2
  191. package/dist/types.d.ts.map +1 -1
  192. package/package.json +1 -1
@@ -19,6 +19,9 @@ import { EMPTY_VALIDATION, validateMergedContent } from "./validation.js";
19
19
  import { checkParseTreeValid, applyPostMergeRiskPenalty } from "./validate-parse-tree.js";
20
20
  import { runStrictValidation } from "./validate-strict.js";
21
21
  import { isGeneratedFile, reclassifyIfGenerated } from "./generated-detection.js";
22
+ import { findEcosystem } from "../regenerate/registry.js";
23
+ import { buildRegenerationPlan } from "../regenerate/plan.js";
24
+ import { isChangelogFile } from "./validation.js";
22
25
  import { CONFIDENCE_ORDER, DEFAULT_OPTIONS, applyFileFrequencyPenalty, computeEffectiveMinConfidence, computeEffectivePolicy, } from "./policy.js";
23
26
  import { dispatchFormatAware } from "./format-dispatch.js";
24
27
  import { assembleResolution } from "./assemble.js";
@@ -33,37 +36,202 @@ import { runLlmFallbackPhase } from "./llm-pipeline.js";
33
36
  * @param options - Options de configuration (complètes, déjà fusionnées avec les défauts)
34
37
  * @returns Les lignes résolues + la raison, ou `null` + raison de refus
35
38
  */
36
- function resolveHunk(hunk, filePath, options) {
39
+ /**
40
+ * accuracy lot 1 — Types de hunk qu'un pattern textuel peut résoudre sans risque même
41
+ * dans un fichier généré : ils ne fabriquent aucun contenu (ils prennent un
42
+ * côté existant ou constatent l'identité des deux).
43
+ */
44
+ const SAFE_TEXTUAL_ON_GENERATED = new Set([
45
+ "same_change",
46
+ "one_side_change",
47
+ "delete_no_change",
48
+ "whitespace_only",
49
+ ]);
50
+ /**
51
+ * accuracy lot 1 — Contrat du classifieur : un hunk `complex` résolu par un résolveur
52
+ * format-aware est reclassifié `format_semantic`, avec une confiance et une
53
+ * trace — plus jamais un hunk affiché « complex » mais appliqué en douce.
54
+ */
55
+ function reclassifyFormatSemantic(hunk, resolverUsed) {
56
+ // On ne remplace pas le score du classifieur, on l'augmente : les dimensions
57
+ // (baseAvailability, dataRisk…) et les boosters existants (zdiff3…) restent —
58
+ // la reclassification ajoute l'information « fusion sémantique validée »,
59
+ // elle n'efface pas ce que la classification savait déjà.
60
+ const confidence = {
61
+ score: Math.max(hunk.confidence.score, 78),
62
+ label: "high",
63
+ dimensions: { ...hunk.confidence.dimensions, typeClassification: 85 },
64
+ boosters: [
65
+ ...hunk.confidence.boosters,
66
+ `Format-aware resolver "${resolverUsed}": semantic merge validated for this format`,
67
+ ],
68
+ penalties: hunk.confidence.penalties,
69
+ };
70
+ return {
71
+ ...hunk,
72
+ type: "format_semantic",
73
+ confidence,
74
+ explanation: `Hunk resolved semantically by the "${resolverUsed}" resolver (merged by the format's structure, not by lines).`,
75
+ trace: {
76
+ ...hunk.trace,
77
+ selected: "format_semantic",
78
+ summary: `Format-aware resolver "${resolverUsed}" — reclassified out of complex.`,
79
+ steps: [
80
+ ...hunk.trace.steps,
81
+ {
82
+ type: "format_semantic",
83
+ passed: true,
84
+ reason: `The "${resolverUsed}" resolver produced a semantic merge; the hunk is no longer "complex".`,
85
+ },
86
+ ],
87
+ },
88
+ };
89
+ }
90
+ /**
91
+ * accuracy lot 1 — Un hunk non-complex résolu par un résolveur format-aware garde son
92
+ * type (la classification textuelle reste vraie) mais sa confiance intègre la
93
+ * validation sémantique du résolveur : c'est elle qui justifie l'application,
94
+ * et elle doit être visible dans la trace au lieu d'un bypass silencieux.
95
+ */
96
+ function boostFormatValidated(hunk, resolverUsed) {
97
+ if (CONFIDENCE_ORDER[hunk.confidence.label] >= CONFIDENCE_ORDER.high)
98
+ return hunk;
99
+ const confidence = {
100
+ score: Math.max(hunk.confidence.score, 75),
101
+ label: "high",
102
+ dimensions: hunk.confidence.dimensions,
103
+ boosters: [
104
+ ...hunk.confidence.boosters,
105
+ `Format-aware resolver "${resolverUsed}": semantically validated merge for this format`,
106
+ ],
107
+ penalties: hunk.confidence.penalties,
108
+ };
109
+ return { ...hunk, confidence };
110
+ }
111
+ /**
112
+ * accuracy lot D — Si `filePath` matche un écosystème connu du registre
113
+ * (lockfiles npm/pnpm/yarn-berry/composer/cargo), calcule le plan de
114
+ * régénération et ajoute l'indice « --regenerate » à la raison de déclin.
115
+ * Sinon, retourne la raison telle quelle sans plan. Centralisé ici : les
116
+ * deux sites de déclin d'un fichier généré (`generatedGate`,
117
+ * `assembleResolution` case "generated_file") appellent ce même helper —
118
+ * `assembleResolution` reste un simple switch lignes-ou-null, il n'a pas
119
+ * connaissance du registre de régénération.
120
+ *
121
+ * (Un troisième site — le seuil `minConfidence` — a été envisagé puis
122
+ * retiré : `computeEffectiveMinConfidence` retourne toujours le PLUS
123
+ * PERMISSIF de la politique et de l'option, et aucun `MergePolicy` ne
124
+ * dépasse "high" ; comme `reclassifyIfGenerated` fixe la confiance d'un
125
+ * hunk `generated_file` à exactement "high", ce seuil ne peut jamais
126
+ * rejeter un tel hunk, quelle que soit l'API publique utilisée. Ce n'était
127
+ * pas un cas rare à couvrir par prudence : c'était du code mort.)
128
+ */
129
+ function attachRegenerationPlan(filePath, options, reason) {
130
+ const ecosystem = findEcosystem(filePath);
131
+ if (!ecosystem)
132
+ return { reason };
133
+ const regenerationPlan = buildRegenerationPlan(filePath, ecosystem, options.regenerationContext);
134
+ return { reason: `${reason} Or re-run with --regenerate.`, regenerationPlan };
135
+ }
136
+ function resolveHunk(hunk, filePath, options, genInfo) {
37
137
  // explainOnly : ne pas appliquer de résolution, juste tracer
38
138
  if (options.explainOnly) {
39
139
  return {
140
+ hunk,
141
+ lines: null,
142
+ reason: `Explain-only mode: no resolution applied (type: ${hunk.type}, confidence: ${hunk.confidence.label} [score: ${hunk.confidence.score}]).`,
143
+ };
144
+ }
145
+ // accuracy lot 1 — Fichier généré : par défaut on ne fusionne pas, on régénère.
146
+ // Les résolveurs format-aware (lockfiles compris) ne sont même pas tentés ;
147
+ // seuls les patterns textuels qui ne fabriquent rien restent autorisés.
148
+ // accuracy lot F — convention mesurée : dans ce dépôt, le changelog est
149
+ // RECONSTRUIT par l'outillage de release, pas fusionné. Aucune fusion
150
+ // textuelle ne le reproduit (mesuré sur l'historique), donc on décline avec
151
+ // la provenance au lieu de produire une union plausible mais jamais livrée.
152
+ const changelogConv = options.conventions?.changelog;
153
+ if (changelogConv?.verdict === "tool-rebuilt" &&
154
+ isChangelogFile(filePath) &&
155
+ !SAFE_TEXTUAL_ON_GENERATED.has(hunk.type)) {
156
+ return {
157
+ hunk,
40
158
  lines: null,
41
- reason: `Mode explain-only : résolution non appliquée (type: ${hunk.type}, confiance: ${hunk.confidence.label} [score: ${hunk.confidence.score}]).`,
159
+ reason: `Changelog rebuilt by this repo's release tooling [convention measured on ${changelogConv.samples} merges, ${Math.round(changelogConv.agreement * 100)}%] — merge declined: resolve the source and re-run the release tool.`,
42
160
  };
43
161
  }
44
- // Phase 7.3 Dispatch format-aware (bypasse le seuil de confiance textuel
45
- // car les résolveurs spécialisés font une validation sémantique).
46
- const dispatch = dispatchFormatAware(hunk, filePath, options);
47
- if (dispatch.status === "resolved") {
48
- return { lines: dispatch.lines, reason: dispatch.reason };
162
+ const generatedGate = genInfo.generated && !options.resolveGeneratedFiles;
163
+ if (generatedGate && hunk.type !== "generated_file" && !SAFE_TEXTUAL_ON_GENERATED.has(hunk.type)) {
164
+ // accuracy lot D Si le chemin matche un écosystème connu (lockfiles
165
+ // npm/pnpm/yarn-berry/composer/cargo), on émet un plan de régénération en
166
+ // plus du déclin : le moteur ne l'exécute jamais, il indique juste ce qui
167
+ // le rendrait sûr (sources de vérité propres). L'appelant (CLI) décide.
168
+ const { reason, regenerationPlan } = attachRegenerationPlan(filePath, options, `Generated file (${genInfo.label}) — not merged, regenerated. Resolve the source file then re-run the tool that produces this one (install/build). Auto-resolution available via resolveGeneratedFiles: true.`);
169
+ return { hunk, lines: null, reason, regenerationPlan };
49
170
  }
50
- if (dispatch.status === "rejected-policy") {
51
- return { lines: null, reason: dispatch.reason };
171
+ // Phase 7.3 Dispatch format-aware. accuracy lot 1 : plus de bypass silencieux —
172
+ // un hunk complex résolu ici est reclassifié `format_semantic` (confiance +
173
+ // trace) puis soumis au même seuil de confiance que les patterns.
174
+ let dispatchNote = "";
175
+ if (!generatedGate) {
176
+ const dispatch = dispatchFormatAware(hunk, filePath, options);
177
+ if (dispatch.status === "resolved") {
178
+ const effective = hunk.type === "complex"
179
+ ? reclassifyFormatSemantic(hunk, dispatch.resolverUsed)
180
+ : boostFormatValidated(hunk, dispatch.resolverUsed);
181
+ const { policy: fmtPolicy, cfg: fmtCfg } = computeEffectivePolicy(filePath, options);
182
+ const fmtMinConfidence = computeEffectiveMinConfidence(fmtCfg, options);
183
+ // Une fusion sémantique combine du contenu des deux côtés — même famille
184
+ // de risque que non_overlapping. Les politiques qui l'excluent (strict,
185
+ // prefer-safety) l'excluent donc aussi, comme pour le résolveur imports.
186
+ if (effective.type === "format_semantic" && !fmtCfg.allowNonOverlapping) {
187
+ return {
188
+ hunk: effective,
189
+ lines: null,
190
+ reason: `Semantic merge (${dispatch.resolverUsed}) disabled by the "${fmtPolicy}" policy — it combines content from both sides.`,
191
+ };
192
+ }
193
+ if (CONFIDENCE_ORDER[effective.confidence.label] < CONFIDENCE_ORDER[fmtMinConfidence]) {
194
+ return {
195
+ hunk: effective,
196
+ lines: null,
197
+ reason: `Confidence ${effective.confidence.label} (score: ${effective.confidence.score}) is insufficient to apply the format-aware resolution (minimum required: ${fmtMinConfidence}, policy: ${fmtPolicy}).`,
198
+ };
199
+ }
200
+ return { hunk: effective, lines: dispatch.lines, reason: dispatch.reason };
201
+ }
202
+ if (dispatch.status === "rejected-policy") {
203
+ return { hunk, lines: null, reason: dispatch.reason };
204
+ }
205
+ // dispatch.status === "not-applicable" → on continue vers le moteur textuel.
206
+ // `dispatch.note` porte la raison d'échec du résolveur spécialisé (pour
207
+ // annotation du refus final si le seuil de confiance bloque aussi).
208
+ dispatchNote = dispatch.note;
52
209
  }
53
- // dispatch.status === "not-applicable" → on continue vers le moteur textuel.
54
- // `dispatch.note` porte la raison d'échec du résolveur spécialisé (pour
55
- // annotation du refus final si le seuil de confiance bloque aussi).
56
210
  // Phase 7.4 — Politique de merge effective pour ce fichier
57
211
  const { policy: effectivePolicy, cfg: policyCfg } = computeEffectivePolicy(filePath, options);
58
212
  const effectiveMinConfidence = computeEffectiveMinConfidence(policyCfg, options);
59
213
  // Vérifier le niveau de confiance minimum
60
214
  if (CONFIDENCE_ORDER[hunk.confidence.label] < CONFIDENCE_ORDER[effectiveMinConfidence]) {
61
215
  return {
216
+ hunk,
62
217
  lines: null,
63
- reason: `Confiance ${hunk.confidence.label} (score: ${hunk.confidence.score}) insuffisante (minimum requis : ${effectiveMinConfidence}, politique : ${effectivePolicy}).${dispatch.note ? ` [${dispatch.note}]` : ""}`,
218
+ reason: `Confidence ${hunk.confidence.label} (score: ${hunk.confidence.score}) is below the ${effectiveMinConfidence} required by the ${effectivePolicy} policy.${dispatchNote ? ` [${dispatchNote}]` : ""}`,
64
219
  };
65
220
  }
66
- return assembleResolution(hunk, options, effectivePolicy, policyCfg);
221
+ const assembled = assembleResolution(hunk, options, effectivePolicy, policyCfg);
222
+ // accuracy lot D — la majorité des lockfiles réellement en conflit (chevauchement
223
+ // sémantique, pas un pattern "safe") sont reclassifiés `generated_file` par
224
+ // `reclassifyIfGenerated` AVANT `resolveHunk` : le generatedGate ci-dessus ne les
225
+ // voit donc jamais (il exclut explicitement `hunk.type === "generated_file"`). Le
226
+ // déclin arrive ici, dans `assembleResolution`'s case "generated_file" —
227
+ // `assembled.lines === null` sauf opt-in `resolveGeneratedFiles: true` (auquel cas
228
+ // ce chemin prend "accepter theirs" et ne décline jamais). C'est le cas majoritaire
229
+ // visé par le spec finding #1 (0 % d'accord sur generated_file).
230
+ if (genInfo.generated && hunk.type === "generated_file" && assembled.lines === null) {
231
+ const { reason, regenerationPlan } = attachRegenerationPlan(filePath, options, assembled.reason);
232
+ return { hunk, lines: null, reason, regenerationPlan };
233
+ }
234
+ return { hunk, ...assembled };
67
235
  }
68
236
  /**
69
237
  * Analyse et résout automatiquement les conflits d'un fichier.
@@ -74,7 +242,15 @@ function resolveHunk(hunk, filePath, options) {
74
242
  * @returns Le résultat de la résolution avec traces et validation
75
243
  */
76
244
  export function resolve(conflictedContent, filePath, userOptions = {}) {
77
- const options = { ...DEFAULT_OPTIONS, ...userOptions };
245
+ let options = { ...DEFAULT_OPTIONS, ...userOptions };
246
+ // accuracy lot F — précédence : option explicite > convention dérivée > défaut.
247
+ // Seule la convention generatedFiles pilote un interrupteur du moteur en v1 ;
248
+ // elle ne s'applique que si l'appelant n'a PAS exprimé de choix.
249
+ const generatedConv = options.conventions?.generatedFiles;
250
+ const generatedByConvention = userOptions.resolveGeneratedFiles === undefined && generatedConv?.verdict === "merge";
251
+ if (generatedByConvention) {
252
+ options = { ...options, resolveGeneratedFiles: true };
253
+ }
78
254
  // v2.6 — RefMerge opt-in : activer le pattern avant classification, désactiver après
79
255
  const refEnabled = !!(options.refactoringAware?.enabled);
80
256
  if (refEnabled) {
@@ -100,14 +276,24 @@ export function resolve(conflictedContent, filePath, userOptions = {}) {
100
276
  hunk = applyFileFrequencyPenalty(hunk, priorComplexHunks);
101
277
  // Si fichier auto-généré et hunk classifié "complex", reclassifier en "generated_file"
102
278
  hunk = reclassifyIfGenerated(hunk, genInfo);
279
+ const { hunk: effectiveHunk, lines: resolvedLines, reason: resolutionReason, regenerationPlan, } = resolveHunk(hunk, filePath, options, genInfo);
280
+ hunk = effectiveHunk;
103
281
  hunks.push(hunk);
104
- const { lines: resolvedLines, reason: resolutionReason } = resolveHunk(hunk, filePath, options);
105
282
  const autoResolved = resolvedLines !== null;
106
283
  // v1.4 — Incrémenter le compteur de hunks complexes non résolus pour fileFrequency
107
284
  if (!autoResolved && hunk.type === "complex") {
108
285
  priorComplexHunks++;
109
286
  }
110
- resolutions.push({ hunk, resolvedLines, autoResolved, resolutionReason });
287
+ // accuracy lot F provenance : toute résolution (ou déclin) d'un fichier
288
+ // généré influencée par une convention mesurée le dit dans sa raison.
289
+ let finalReason = resolutionReason;
290
+ if (genInfo.generated && generatedConv) {
291
+ const prov = `[convention measured on ${generatedConv.samples} merges, ${Math.round(generatedConv.agreement * 100)}%: this repo ${generatedConv.verdict === "merge" ? "merges" : "regenerates"} its generated files]`;
292
+ if ((generatedByConvention && autoResolved) || (generatedConv.verdict === "regenerate" && !autoResolved)) {
293
+ finalReason = `${resolutionReason} ${prov}`;
294
+ }
295
+ }
296
+ resolutions.push({ hunk, resolvedLines, autoResolved, resolutionReason: finalReason, regenerationPlan });
111
297
  if (autoResolved) {
112
298
  outputLines.push(...resolvedLines);
113
299
  if (options.verbose) {
@@ -149,6 +335,30 @@ export function resolve(conflictedContent, filePath, userOptions = {}) {
149
335
  const validation = mergedContent !== null
150
336
  ? validateMergedContent(mergedContent, filePath)
151
337
  : EMPTY_VALIDATION;
338
+ // accuracy lot 1 — Une violation d'invariant de format (deux « Unreleased » dans un
339
+ // changelog, clé JSON dupliquée…) rétracte les résolutions automatiques du
340
+ // fichier, comme la validation parse-tree le fait déjà pour la syntaxe.
341
+ // Une résolution qui casse un invariant n'est pas appliquée, quel que soit
342
+ // le pattern qui l'a produite.
343
+ if (mergedContent !== null && validation.invariantErrors && validation.invariantErrors.length > 0) {
344
+ const why = validation.invariantErrors.join(" ");
345
+ const retractedResolutions = resolutions.map((r) => r.autoResolved
346
+ ? {
347
+ ...r,
348
+ autoResolved: false,
349
+ resolvedLines: null,
350
+ resolutionReason: `Retracted: the merged content violates a format invariant. ${why}`,
351
+ }
352
+ : r);
353
+ return {
354
+ filePath,
355
+ mergedContent: null,
356
+ hunks,
357
+ resolutions: retractedResolutions,
358
+ stats: { ...stats, autoResolved: 0, remaining: stats.totalConflicts },
359
+ validation: { ...validation, isValid: false },
360
+ };
361
+ }
152
362
  return {
153
363
  filePath,
154
364
  mergedContent,
@@ -216,7 +426,7 @@ export async function resolveAsync(conflictedContent, filePath, userOptions = {}
216
426
  // Le flag est réinitialisé immédiatement après `resolve()` — il ne doit pas
217
427
  // persister entre appels (module-level state, potentiellement partagé).
218
428
  const llmEnabled = !!(options.llmFallback?.enabled && options.llmFallback?.endpoint);
219
- // Coupling fix (v2.7) — the LLM path must only be reachable for hunks no
429
+ // Coupling fix (v3.4) — the LLM path must only be reachable for hunks no
220
430
  // enabled deterministic pattern can resolve. Force refactoringAware on
221
431
  // whenever llmFallback is on, so a rename-on-both-sides hunk never skips
222
432
  // the deterministic recoverer just because the user only opted into the LLM.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resolver/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resolver/index.ts"],"names":[],"mappings":"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"}
@@ -145,7 +145,7 @@ export async function runLlmFallbackPhase(conflictedContent, result, filePath, o
145
145
  ...updatedHunks[idx],
146
146
  trace: {
147
147
  ...updatedHunks[idx].trace,
148
- summary: `${updatedHunks[idx].trace.summary} | LLM refusé: ${llmResult.reason}`,
148
+ summary: `${updatedHunks[idx].trace.summary} | LLM rejected: ${llmResult.reason}`,
149
149
  llmTrace: llmResult.llmTrace,
150
150
  },
151
151
  };
@@ -153,7 +153,7 @@ export async function runLlmFallbackPhase(conflictedContent, result, filePath, o
153
153
  updatedResolutions[idx] = {
154
154
  ...updatedResolutions[idx],
155
155
  hunk: updatedHunk,
156
- resolutionReason: `${updatedResolutions[idx].resolutionReason} | LLM refusé: ${llmResult.reason}`,
156
+ resolutionReason: `${updatedResolutions[idx].resolutionReason} | LLM rejected: ${llmResult.reason}`,
157
157
  };
158
158
  }
159
159
  }
@@ -1 +1 @@
1
- {"version":3,"file":"llm-pipeline.js","sourceRoot":"","sources":["../../src/resolver/llm-pipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-pipeline.js","sourceRoot":"","sources":["../../src/resolver/llm-pipeline.ts"],"names":[],"mappings":"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"}
@@ -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,CAkBpD,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,CA0BpD,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"}
@@ -24,6 +24,14 @@ export const DEFAULT_OPTIONS = {
24
24
  policy: DEFAULT_POLICY,
25
25
  patternOverrides: {},
26
26
  generatedFiles: [],
27
+ // accuracy lot 1 — les fichiers générés déclinent par défaut (voir GitWandOptions)
28
+ resolveGeneratedFiles: false,
29
+ // accuracy lot C — contexte de merge inconnu par défaut ; fourni par les appelants
30
+ mergeContext: null,
31
+ // accuracy lot D — pas de contexte de régénération par défaut ; fourni par les appelants
32
+ regenerationContext: null,
33
+ // accuracy lot F — pas de conventions dérivées par défaut
34
+ conventions: null,
27
35
  // v2.2 — profils de format actifs par défaut
28
36
  disableFormatProfiles: false,
29
37
  // v2.4 — validation post-merge
@@ -100,7 +108,7 @@ export function applyFileFrequencyPenalty(hunk, priorComplexHunks) {
100
108
  dimensions: { ...d, fileFrequency: ff },
101
109
  penalties: [
102
110
  ...hunk.confidence.penalties,
103
- `Zone chaude ${priorComplexHunks} hunk${priorComplexHunks > 1 ? "s" : ""} complexe${priorComplexHunks > 1 ? "s" : ""} déjà vus dans ce fichier (−${(ff * 0.10).toFixed(1)} pts)`,
111
+ `Hot spot: ${priorComplexHunks} complex hunk${priorComplexHunks > 1 ? "s" : ""} already seen in this file (−${(ff * 0.10).toFixed(1)} pts)`,
104
112
  ],
105
113
  },
106
114
  };
@@ -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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"}
@@ -65,7 +65,7 @@ export function applyPostMergeRiskPenalty(resolution) {
65
65
  ...resolution,
66
66
  autoResolved: false,
67
67
  resolvedLines: null,
68
- resolutionReason: "Rétracté : le contenu fusionné contient des erreurs syntaxiques (parse-tree tree-sitter). Intervention manuelle requise.",
68
+ resolutionReason: "Retracted: the merged content contains syntax errors (tree-sitter parse-tree). Manual intervention required.",
69
69
  hunk: {
70
70
  ...resolution.hunk,
71
71
  confidence: {
@@ -78,7 +78,7 @@ export function applyPostMergeRiskPenalty(resolution) {
78
78
  },
79
79
  penalties: [
80
80
  ...resolution.hunk.confidence.penalties,
81
- "v2.4 — Parse-tree invalide après résolution automatique",
81
+ "Parse-tree invalid after automatic resolution",
82
82
  ],
83
83
  },
84
84
  },
@@ -1 +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"}
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,8GAA8G;QAChH,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,+CAA+C;iBAChD;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -9,6 +9,20 @@
9
9
  import type { ValidationResult } from "../types.js";
10
10
  /** Patterns de marqueurs de conflit résiduels. */
11
11
  export declare const RESIDUAL_MARKER_PATTERNS: RegExp[];
12
+ /**
13
+ * Détecte les clés dupliquées dans un document JSON, objet par objet.
14
+ * Scanner tolérant : suit l'imbrication et l'état « dans une chaîne »
15
+ * (échappements compris) sans construire d'AST. `.json` strict uniquement —
16
+ * les commentaires JSONC feraient mentir le suivi de chaînes.
17
+ */
18
+ export declare function findDuplicateJsonKeys(content: string): string[];
19
+ /** Un fichier est « de type changelog » si son nom de base commence par changelog/history/releases et finit en .md. */
20
+ export declare function isChangelogFile(filePath: string): boolean;
21
+ /**
22
+ * Vérifie les invariants du format au-delà de la syntaxe.
23
+ * Retourne la liste (possiblement vide) des violations, en clair.
24
+ */
25
+ export declare function checkFormatInvariants(content: string, filePath: string): string[];
12
26
  /**
13
27
  * Valide le contenu fusionné pour détecter les problèmes résiduels.
14
28
  *
@@ -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,CAgCzF;AAED,8EAA8E;AAC9E,eAAO,MAAM,gBAAgB,EAAE,gBAQ9B,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;AAsDF;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAyC/D;AAED,uHAAuH;AACvH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAGzD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAyBjF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAoCzF;AAED,8EAA8E;AAC9E,eAAO,MAAM,gBAAgB,EAAE,gBAS9B,CAAC"}