@healflow/shared 0.1.1 → 0.1.3

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 (168) hide show
  1. package/README.md +35 -12
  2. package/dist/config-loader.d.ts +2 -1
  3. package/dist/config-loader.d.ts.map +1 -1
  4. package/dist/config-loader.js +15 -0
  5. package/dist/config-loader.js.map +1 -1
  6. package/dist/config.d.ts +13 -0
  7. package/dist/config.d.ts.map +1 -1
  8. package/dist/config.js +14 -0
  9. package/dist/config.js.map +1 -1
  10. package/dist/domain.d.ts +12 -2
  11. package/dist/domain.d.ts.map +1 -1
  12. package/dist/enums.d.ts +77 -2
  13. package/dist/enums.d.ts.map +1 -1
  14. package/dist/enums.js +82 -2
  15. package/dist/enums.js.map +1 -1
  16. package/dist/healing-matrix/entries.d.ts +3 -0
  17. package/dist/healing-matrix/entries.d.ts.map +1 -0
  18. package/dist/healing-matrix/entries.js +52 -0
  19. package/dist/healing-matrix/entries.js.map +1 -0
  20. package/dist/healing-matrix/family-01-locator-selector/ambiguous-match.d.ts +3 -0
  21. package/dist/healing-matrix/family-01-locator-selector/ambiguous-match.d.ts.map +1 -0
  22. package/dist/healing-matrix/family-01-locator-selector/ambiguous-match.js +84 -0
  23. package/dist/healing-matrix/family-01-locator-selector/ambiguous-match.js.map +1 -0
  24. package/dist/healing-matrix/family-01-locator-selector/element-not-found.d.ts +3 -0
  25. package/dist/healing-matrix/family-01-locator-selector/element-not-found.d.ts.map +1 -0
  26. package/dist/healing-matrix/family-01-locator-selector/element-not-found.js +174 -0
  27. package/dist/healing-matrix/family-01-locator-selector/element-not-found.js.map +1 -0
  28. package/dist/healing-matrix/family-01-locator-selector/index.d.ts +3 -0
  29. package/dist/healing-matrix/family-01-locator-selector/index.d.ts.map +1 -0
  30. package/dist/healing-matrix/family-01-locator-selector/index.js +14 -0
  31. package/dist/healing-matrix/family-01-locator-selector/index.js.map +1 -0
  32. package/dist/healing-matrix/family-01-locator-selector/locator-chain.d.ts +3 -0
  33. package/dist/healing-matrix/family-01-locator-selector/locator-chain.d.ts.map +1 -0
  34. package/dist/healing-matrix/family-01-locator-selector/locator-chain.js +80 -0
  35. package/dist/healing-matrix/family-01-locator-selector/locator-chain.js.map +1 -0
  36. package/dist/healing-matrix/family-01-locator-selector/wrong-state.d.ts +3 -0
  37. package/dist/healing-matrix/family-01-locator-selector/wrong-state.d.ts.map +1 -0
  38. package/dist/healing-matrix/family-01-locator-selector/wrong-state.js +96 -0
  39. package/dist/healing-matrix/family-01-locator-selector/wrong-state.js.map +1 -0
  40. package/dist/healing-matrix/family-01-locator-selector.d.ts +3 -0
  41. package/dist/healing-matrix/family-01-locator-selector.d.ts.map +1 -0
  42. package/dist/healing-matrix/family-01-locator-selector.js +413 -0
  43. package/dist/healing-matrix/family-01-locator-selector.js.map +1 -0
  44. package/dist/healing-matrix/family-02-timing-sync.d.ts +3 -0
  45. package/dist/healing-matrix/family-02-timing-sync.d.ts.map +1 -0
  46. package/dist/healing-matrix/family-02-timing-sync.js +150 -0
  47. package/dist/healing-matrix/family-02-timing-sync.js.map +1 -0
  48. package/dist/healing-matrix/family-03-overlay-modal.d.ts +3 -0
  49. package/dist/healing-matrix/family-03-overlay-modal.d.ts.map +1 -0
  50. package/dist/healing-matrix/family-03-overlay-modal.js +141 -0
  51. package/dist/healing-matrix/family-03-overlay-modal.js.map +1 -0
  52. package/dist/healing-matrix/family-04-navigation-routing.d.ts +3 -0
  53. package/dist/healing-matrix/family-04-navigation-routing.d.ts.map +1 -0
  54. package/dist/healing-matrix/family-04-navigation-routing.js +100 -0
  55. package/dist/healing-matrix/family-04-navigation-routing.js.map +1 -0
  56. package/dist/healing-matrix/family-05-frame-iframe.d.ts +3 -0
  57. package/dist/healing-matrix/family-05-frame-iframe.d.ts.map +1 -0
  58. package/dist/healing-matrix/family-05-frame-iframe.js +103 -0
  59. package/dist/healing-matrix/family-05-frame-iframe.js.map +1 -0
  60. package/dist/healing-matrix/family-06-shadow-dom.d.ts +3 -0
  61. package/dist/healing-matrix/family-06-shadow-dom.d.ts.map +1 -0
  62. package/dist/healing-matrix/family-06-shadow-dom.js +78 -0
  63. package/dist/healing-matrix/family-06-shadow-dom.js.map +1 -0
  64. package/dist/healing-matrix/family-07-auth-session.d.ts +3 -0
  65. package/dist/healing-matrix/family-07-auth-session.d.ts.map +1 -0
  66. package/dist/healing-matrix/family-07-auth-session.js +120 -0
  67. package/dist/healing-matrix/family-07-auth-session.js.map +1 -0
  68. package/dist/healing-matrix/family-08-network.d.ts +3 -0
  69. package/dist/healing-matrix/family-08-network.d.ts.map +1 -0
  70. package/dist/healing-matrix/family-08-network.js +128 -0
  71. package/dist/healing-matrix/family-08-network.js.map +1 -0
  72. package/dist/healing-matrix/family-09-api-mocking.d.ts +3 -0
  73. package/dist/healing-matrix/family-09-api-mocking.d.ts.map +1 -0
  74. package/dist/healing-matrix/family-09-api-mocking.js +102 -0
  75. package/dist/healing-matrix/family-09-api-mocking.js.map +1 -0
  76. package/dist/healing-matrix/family-10-test-data.d.ts +3 -0
  77. package/dist/healing-matrix/family-10-test-data.d.ts.map +1 -0
  78. package/dist/healing-matrix/family-10-test-data.js +89 -0
  79. package/dist/healing-matrix/family-10-test-data.js.map +1 -0
  80. package/dist/healing-matrix/family-11-environment-config.d.ts +3 -0
  81. package/dist/healing-matrix/family-11-environment-config.d.ts.map +1 -0
  82. package/dist/healing-matrix/family-11-environment-config.js +97 -0
  83. package/dist/healing-matrix/family-11-environment-config.js.map +1 -0
  84. package/dist/healing-matrix/family-12-browser-infra.d.ts +3 -0
  85. package/dist/healing-matrix/family-12-browser-infra.d.ts.map +1 -0
  86. package/dist/healing-matrix/family-12-browser-infra.js +109 -0
  87. package/dist/healing-matrix/family-12-browser-infra.js.map +1 -0
  88. package/dist/healing-matrix/family-13-upload-download.d.ts +3 -0
  89. package/dist/healing-matrix/family-13-upload-download.d.ts.map +1 -0
  90. package/dist/healing-matrix/family-13-upload-download.js +64 -0
  91. package/dist/healing-matrix/family-13-upload-download.js.map +1 -0
  92. package/dist/healing-matrix/family-14-multi-tab.d.ts +3 -0
  93. package/dist/healing-matrix/family-14-multi-tab.d.ts.map +1 -0
  94. package/dist/healing-matrix/family-14-multi-tab.js +54 -0
  95. package/dist/healing-matrix/family-14-multi-tab.js.map +1 -0
  96. package/dist/healing-matrix/family-15-visual-a11y.d.ts +3 -0
  97. package/dist/healing-matrix/family-15-visual-a11y.d.ts.map +1 -0
  98. package/dist/healing-matrix/family-15-visual-a11y.js +81 -0
  99. package/dist/healing-matrix/family-15-visual-a11y.js.map +1 -0
  100. package/dist/healing-matrix/family-16-i18n.d.ts +3 -0
  101. package/dist/healing-matrix/family-16-i18n.d.ts.map +1 -0
  102. package/dist/healing-matrix/family-16-i18n.js +52 -0
  103. package/dist/healing-matrix/family-16-i18n.js.map +1 -0
  104. package/dist/healing-matrix/family-17-mobile-touch.d.ts +3 -0
  105. package/dist/healing-matrix/family-17-mobile-touch.d.ts.map +1 -0
  106. package/dist/healing-matrix/family-17-mobile-touch.js +52 -0
  107. package/dist/healing-matrix/family-17-mobile-touch.js.map +1 -0
  108. package/dist/healing-matrix/family-18-performance.d.ts +3 -0
  109. package/dist/healing-matrix/family-18-performance.d.ts.map +1 -0
  110. package/dist/healing-matrix/family-18-performance.js +54 -0
  111. package/dist/healing-matrix/family-18-performance.js.map +1 -0
  112. package/dist/healing-matrix/family-19-third-party.d.ts +3 -0
  113. package/dist/healing-matrix/family-19-third-party.d.ts.map +1 -0
  114. package/dist/healing-matrix/family-19-third-party.js +65 -0
  115. package/dist/healing-matrix/family-19-third-party.js.map +1 -0
  116. package/dist/healing-matrix/family-20-test-structure.d.ts +3 -0
  117. package/dist/healing-matrix/family-20-test-structure.d.ts.map +1 -0
  118. package/dist/healing-matrix/family-20-test-structure.js +78 -0
  119. package/dist/healing-matrix/family-20-test-structure.js.map +1 -0
  120. package/dist/healing-matrix/family-21-assertion.d.ts +3 -0
  121. package/dist/healing-matrix/family-21-assertion.d.ts.map +1 -0
  122. package/dist/healing-matrix/family-21-assertion.js +88 -0
  123. package/dist/healing-matrix/family-21-assertion.js.map +1 -0
  124. package/dist/healing-matrix/family-22-product-defect.d.ts +3 -0
  125. package/dist/healing-matrix/family-22-product-defect.d.ts.map +1 -0
  126. package/dist/healing-matrix/family-22-product-defect.js +72 -0
  127. package/dist/healing-matrix/family-22-product-defect.js.map +1 -0
  128. package/dist/healing-matrix/family-23-security-compliance.d.ts +3 -0
  129. package/dist/healing-matrix/family-23-security-compliance.d.ts.map +1 -0
  130. package/dist/healing-matrix/family-23-security-compliance.js +74 -0
  131. package/dist/healing-matrix/family-23-security-compliance.js.map +1 -0
  132. package/dist/healing-matrix/family-summaries.d.ts +3 -0
  133. package/dist/healing-matrix/family-summaries.d.ts.map +1 -0
  134. package/dist/healing-matrix/family-summaries.js +224 -0
  135. package/dist/healing-matrix/family-summaries.js.map +1 -0
  136. package/dist/healing-matrix/global-hard-stops.d.ts +23 -0
  137. package/dist/healing-matrix/global-hard-stops.d.ts.map +1 -0
  138. package/dist/healing-matrix/global-hard-stops.js +19 -0
  139. package/dist/healing-matrix/global-hard-stops.js.map +1 -0
  140. package/dist/healing-matrix/helpers.d.ts +6 -0
  141. package/dist/healing-matrix/helpers.d.ts.map +1 -0
  142. package/dist/healing-matrix/helpers.js +16 -0
  143. package/dist/healing-matrix/helpers.js.map +1 -0
  144. package/dist/healing-matrix/index.d.ts +5 -0
  145. package/dist/healing-matrix/index.d.ts.map +1 -0
  146. package/dist/healing-matrix/index.js +14 -0
  147. package/dist/healing-matrix/index.js.map +1 -0
  148. package/dist/healing-matrix-types.d.ts +40 -0
  149. package/dist/healing-matrix-types.d.ts.map +1 -0
  150. package/dist/healing-matrix-types.js +3 -0
  151. package/dist/healing-matrix-types.js.map +1 -0
  152. package/dist/healing-matrix.d.ts +2 -0
  153. package/dist/healing-matrix.d.ts.map +1 -0
  154. package/dist/healing-matrix.js +11 -0
  155. package/dist/healing-matrix.js.map +1 -0
  156. package/dist/index.d.ts +3 -0
  157. package/dist/index.d.ts.map +1 -1
  158. package/dist/index.js +3 -0
  159. package/dist/index.js.map +1 -1
  160. package/dist/matrix-policy.d.ts +30 -0
  161. package/dist/matrix-policy.d.ts.map +1 -0
  162. package/dist/matrix-policy.js +168 -0
  163. package/dist/matrix-policy.js.map +1 -0
  164. package/dist/policy.d.ts +2 -2
  165. package/dist/policy.d.ts.map +1 -1
  166. package/dist/policy.js +19 -2
  167. package/dist/policy.js.map +1 -1
  168. package/package.json +6 -3
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FAMILY_13_ENTRIES = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ exports.FAMILY_13_ENTRIES = [
6
+ {
7
+ id: 'upload.missing_path',
8
+ family: enums_js_1.FailureFamily.UPLOAD_DOWNLOAD,
9
+ familyNumber: 13,
10
+ group: '13 Upload & download',
11
+ name: 'Missing upload file path',
12
+ category: enums_js_1.FailureCategory.UPLOAD,
13
+ canHeal: enums_js_1.MatrixHealability.YES,
14
+ healPath: enums_js_1.HealPath.BOTH,
15
+ techniqueStack: [enums_js_1.HealingTechnique.T0_RETRY, enums_js_1.HealingTechnique.T6_AST],
16
+ },
17
+ {
18
+ id: 'upload.drag_drop',
19
+ family: enums_js_1.FailureFamily.UPLOAD_DOWNLOAD,
20
+ familyNumber: 13,
21
+ group: '13 Upload & download',
22
+ name: 'File input replaced by drag-drop',
23
+ category: enums_js_1.FailureCategory.UPLOAD,
24
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
25
+ healPath: enums_js_1.HealPath.PERMANENT,
26
+ techniqueStack: [enums_js_1.HealingTechnique.T4_TRACE, enums_js_1.HealingTechnique.T6_AST, enums_js_1.HealingTechnique.T7_AI],
27
+ },
28
+ {
29
+ id: 'upload.not_triggered',
30
+ family: enums_js_1.FailureFamily.UPLOAD_DOWNLOAD,
31
+ familyNumber: 13,
32
+ group: '13 Upload & download',
33
+ name: 'Download not triggered',
34
+ category: enums_js_1.FailureCategory.UPLOAD,
35
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
36
+ healPath: enums_js_1.HealPath.BOTH,
37
+ techniqueStack: [enums_js_1.HealingTechnique.T0_RETRY, enums_js_1.HealingTechnique.T6_AST],
38
+ notHealedReason: 'Feature broken',
39
+ },
40
+ {
41
+ id: 'upload.name_changed',
42
+ family: enums_js_1.FailureFamily.UPLOAD_DOWNLOAD,
43
+ familyNumber: 13,
44
+ group: '13 Upload & download',
45
+ name: 'Download name changed',
46
+ category: enums_js_1.FailureCategory.UPLOAD,
47
+ canHeal: enums_js_1.MatrixHealability.YES,
48
+ healPath: enums_js_1.HealPath.PERMANENT,
49
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
50
+ },
51
+ {
52
+ id: 'upload.clipboard',
53
+ family: enums_js_1.FailureFamily.UPLOAD_DOWNLOAD,
54
+ familyNumber: 13,
55
+ group: '13 Upload & download',
56
+ name: 'Clipboard API denied',
57
+ category: enums_js_1.FailureCategory.UPLOAD,
58
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
59
+ healPath: enums_js_1.HealPath.PERMANENT,
60
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
61
+ notHealedReason: 'Browser policy',
62
+ },
63
+ ];
64
+ //# sourceMappingURL=family-13-upload-download.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-13-upload-download.js","sourceRoot":"","sources":["../../src/healing-matrix/family-13-upload-download.ts"],"names":[],"mappings":";;;AAAA,0CAMqB;AAGR,QAAA,iBAAiB,GAAyB;IACrD;QACE,EAAE,EAAE,qBAAqB;QACzB,MAAM,EAAE,wBAAa,CAAC,eAAe;QACrC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,sBAAsB;QAC7B,IAAI,EAAE,0BAA0B;QAChC,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,GAAG;QAC9B,QAAQ,EAAE,mBAAQ,CAAC,IAAI;QACvB,cAAc,EAAE,CAAC,2BAAgB,CAAC,QAAQ,EAAE,2BAAgB,CAAC,MAAM,CAAC;KACrE;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,MAAM,EAAE,wBAAa,CAAC,eAAe;QACrC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,sBAAsB;QAC7B,IAAI,EAAE,kCAAkC;QACxC,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,QAAQ,EAAE,2BAAgB,CAAC,MAAM,EAAE,2BAAgB,CAAC,KAAK,CAAC;KAC7F;IACD;QACE,EAAE,EAAE,sBAAsB;QAC1B,MAAM,EAAE,wBAAa,CAAC,eAAe;QACrC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,sBAAsB;QAC7B,IAAI,EAAE,wBAAwB;QAC9B,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,IAAI;QACvB,cAAc,EAAE,CAAC,2BAAgB,CAAC,QAAQ,EAAE,2BAAgB,CAAC,MAAM,CAAC;QACpE,eAAe,EAAE,gBAAgB;KAClC;IACD;QACE,EAAE,EAAE,qBAAqB;QACzB,MAAM,EAAE,wBAAa,CAAC,eAAe;QACrC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,sBAAsB;QAC7B,IAAI,EAAE,uBAAuB;QAC7B,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,GAAG;QAC9B,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;KAC1C;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,MAAM,EAAE,wBAAa,CAAC,eAAe;QACrC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,sBAAsB;QAC7B,IAAI,EAAE,sBAAsB;QAC5B,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;QACzC,eAAe,EAAE,gBAAgB;KAClC;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { HealingMatrixEntry } from '../healing-matrix-types.js';
2
+ export declare const FAMILY_14_ENTRIES: HealingMatrixEntry[];
3
+ //# sourceMappingURL=family-14-multi-tab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-14-multi-tab.d.ts","sourceRoot":"","sources":["../../src/healing-matrix/family-14-multi-tab.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,EAgDjD,CAAC"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FAMILY_14_ENTRIES = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ exports.FAMILY_14_ENTRIES = [
6
+ {
7
+ id: 'tab.popup_blocked',
8
+ family: enums_js_1.FailureFamily.MULTI_TAB,
9
+ familyNumber: 14,
10
+ group: '14 Multi-tab & popup',
11
+ name: 'Popup blocked',
12
+ category: enums_js_1.FailureCategory.MULTI_TAB,
13
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
14
+ healPath: enums_js_1.HealPath.PERMANENT,
15
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
16
+ notHealedReason: 'Browser policy',
17
+ },
18
+ {
19
+ id: 'tab.wrong_page',
20
+ family: enums_js_1.FailureFamily.MULTI_TAB,
21
+ familyNumber: 14,
22
+ group: '14 Multi-tab & popup',
23
+ name: 'Wrong page in context',
24
+ category: enums_js_1.FailureCategory.MULTI_TAB,
25
+ canHeal: enums_js_1.MatrixHealability.YES,
26
+ healPath: enums_js_1.HealPath.BOTH,
27
+ techniqueStack: [enums_js_1.HealingTechnique.T4_TRACE, enums_js_1.HealingTechnique.T6_AST],
28
+ detectionPatterns: ['popup', 'waitForEvent'],
29
+ },
30
+ {
31
+ id: 'tab.closed_early',
32
+ family: enums_js_1.FailureFamily.MULTI_TAB,
33
+ familyNumber: 14,
34
+ group: '14 Multi-tab & popup',
35
+ name: 'Tab closed early',
36
+ category: enums_js_1.FailureCategory.MULTI_TAB,
37
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
38
+ healPath: enums_js_1.HealPath.BOTH,
39
+ techniqueStack: [enums_js_1.HealingTechnique.T0_RETRY, enums_js_1.HealingTechnique.T6_AST],
40
+ notHealedReason: 'Crash',
41
+ },
42
+ {
43
+ id: 'tab.multiple_race',
44
+ family: enums_js_1.FailureFamily.MULTI_TAB,
45
+ familyNumber: 14,
46
+ group: '14 Multi-tab & popup',
47
+ name: 'Multiple tabs race',
48
+ category: enums_js_1.FailureCategory.MULTI_TAB,
49
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
50
+ healPath: enums_js_1.HealPath.PERMANENT,
51
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
52
+ },
53
+ ];
54
+ //# sourceMappingURL=family-14-multi-tab.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-14-multi-tab.js","sourceRoot":"","sources":["../../src/healing-matrix/family-14-multi-tab.ts"],"names":[],"mappings":";;;AAAA,0CAMqB;AAGR,QAAA,iBAAiB,GAAyB;IACrD;QACE,EAAE,EAAE,mBAAmB;QACvB,MAAM,EAAE,wBAAa,CAAC,SAAS;QAC/B,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,sBAAsB;QAC7B,IAAI,EAAE,eAAe;QACrB,QAAQ,EAAE,0BAAe,CAAC,SAAS;QACnC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;QACzC,eAAe,EAAE,gBAAgB;KAClC;IACD;QACE,EAAE,EAAE,gBAAgB;QACpB,MAAM,EAAE,wBAAa,CAAC,SAAS;QAC/B,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,sBAAsB;QAC7B,IAAI,EAAE,uBAAuB;QAC7B,QAAQ,EAAE,0BAAe,CAAC,SAAS;QACnC,OAAO,EAAE,4BAAiB,CAAC,GAAG;QAC9B,QAAQ,EAAE,mBAAQ,CAAC,IAAI;QACvB,cAAc,EAAE,CAAC,2BAAgB,CAAC,QAAQ,EAAE,2BAAgB,CAAC,MAAM,CAAC;QACpE,iBAAiB,EAAE,CAAC,OAAO,EAAE,cAAc,CAAC;KAC7C;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,MAAM,EAAE,wBAAa,CAAC,SAAS;QAC/B,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,sBAAsB;QAC7B,IAAI,EAAE,kBAAkB;QACxB,QAAQ,EAAE,0BAAe,CAAC,SAAS;QACnC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,IAAI;QACvB,cAAc,EAAE,CAAC,2BAAgB,CAAC,QAAQ,EAAE,2BAAgB,CAAC,MAAM,CAAC;QACpE,eAAe,EAAE,OAAO;KACzB;IACD;QACE,EAAE,EAAE,mBAAmB;QACvB,MAAM,EAAE,wBAAa,CAAC,SAAS;QAC/B,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,sBAAsB;QAC7B,IAAI,EAAE,oBAAoB;QAC1B,QAAQ,EAAE,0BAAe,CAAC,SAAS;QACnC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;KAC1C;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { HealingMatrixEntry } from '../healing-matrix-types.js';
2
+ export declare const FAMILY_15_ENTRIES: HealingMatrixEntry[];
3
+ //# sourceMappingURL=family-15-visual-a11y.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-15-visual-a11y.d.ts","sourceRoot":"","sources":["../../src/healing-matrix/family-15-visual-a11y.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,EA2EjD,CAAC"}
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FAMILY_15_ENTRIES = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ exports.FAMILY_15_ENTRIES = [
6
+ {
7
+ id: 'visual.screenshot_diff',
8
+ family: enums_js_1.FailureFamily.VISUAL_A11Y,
9
+ familyNumber: 15,
10
+ group: '15 Visual & a11y',
11
+ name: 'toHaveScreenshot pixel diff',
12
+ category: enums_js_1.FailureCategory.VISUAL,
13
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
14
+ healPath: enums_js_1.HealPath.PERMANENT,
15
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
16
+ notHealedReason: 'Intentional visual change = product decision',
17
+ skippedReason: 'Skipped auto-apply',
18
+ detectionPatterns: ['toHaveScreenshot'],
19
+ },
20
+ {
21
+ id: 'visual.animation_flake',
22
+ family: enums_js_1.FailureFamily.VISUAL_A11Y,
23
+ familyNumber: 15,
24
+ group: '15 Visual & a11y',
25
+ name: 'Animation flake in screenshot',
26
+ category: enums_js_1.FailureCategory.VISUAL,
27
+ canHeal: enums_js_1.MatrixHealability.YES,
28
+ healPath: enums_js_1.HealPath.BOTH,
29
+ techniqueStack: [enums_js_1.HealingTechnique.T0_RETRY, enums_js_1.HealingTechnique.T6_AST],
30
+ },
31
+ {
32
+ id: 'visual.font_aa',
33
+ family: enums_js_1.FailureFamily.VISUAL_A11Y,
34
+ familyNumber: 15,
35
+ group: '15 Visual & a11y',
36
+ name: 'Font anti-aliasing diff',
37
+ category: enums_js_1.FailureCategory.VISUAL,
38
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
39
+ healPath: enums_js_1.HealPath.PERMANENT,
40
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
41
+ },
42
+ {
43
+ id: 'visual.aria_snapshot',
44
+ family: enums_js_1.FailureFamily.VISUAL_A11Y,
45
+ familyNumber: 15,
46
+ group: '15 Visual & a11y',
47
+ name: 'toMatchAriaSnapshot drift',
48
+ category: enums_js_1.FailureCategory.VISUAL,
49
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
50
+ healPath: enums_js_1.HealPath.PERMANENT,
51
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
52
+ notHealedReason: 'Real a11y regression',
53
+ skippedReason: 'Skipped auto if score drops',
54
+ detectionPatterns: ['toMatchAriaSnapshot'],
55
+ },
56
+ {
57
+ id: 'visual.contrast',
58
+ family: enums_js_1.FailureFamily.VISUAL_A11Y,
59
+ familyNumber: 15,
60
+ group: '15 Visual & a11y',
61
+ name: 'Color contrast failure',
62
+ category: enums_js_1.FailureCategory.VISUAL,
63
+ canHeal: enums_js_1.MatrixHealability.NO,
64
+ healPath: null,
65
+ techniqueStack: [],
66
+ notHealedReason: 'Product a11y bug',
67
+ },
68
+ {
69
+ id: 'visual.missing_name',
70
+ family: enums_js_1.FailureFamily.VISUAL_A11Y,
71
+ familyNumber: 15,
72
+ group: '15 Visual & a11y',
73
+ name: 'Missing accessible name',
74
+ category: enums_js_1.FailureCategory.VISUAL,
75
+ canHeal: enums_js_1.MatrixHealability.NO,
76
+ healPath: null,
77
+ techniqueStack: [],
78
+ notHealedReason: 'Product a11y bug',
79
+ },
80
+ ];
81
+ //# sourceMappingURL=family-15-visual-a11y.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-15-visual-a11y.js","sourceRoot":"","sources":["../../src/healing-matrix/family-15-visual-a11y.ts"],"names":[],"mappings":";;;AAAA,0CAMqB;AAGR,QAAA,iBAAiB,GAAyB;IACrD;QACE,EAAE,EAAE,wBAAwB;QAC5B,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,6BAA6B;QACnC,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;QACzC,eAAe,EAAE,8CAA8C;QAC/D,aAAa,EAAE,oBAAoB;QACnC,iBAAiB,EAAE,CAAC,kBAAkB,CAAC;KACxC;IACD;QACE,EAAE,EAAE,wBAAwB;QAC5B,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,+BAA+B;QACrC,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,GAAG;QAC9B,QAAQ,EAAE,mBAAQ,CAAC,IAAI;QACvB,cAAc,EAAE,CAAC,2BAAgB,CAAC,QAAQ,EAAE,2BAAgB,CAAC,MAAM,CAAC;KACrE;IACD;QACE,EAAE,EAAE,gBAAgB;QACpB,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,yBAAyB;QAC/B,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;KAC1C;IACD;QACE,EAAE,EAAE,sBAAsB;QAC1B,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,2BAA2B;QACjC,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;QACzC,eAAe,EAAE,sBAAsB;QACvC,aAAa,EAAE,6BAA6B;QAC5C,iBAAiB,EAAE,CAAC,qBAAqB,CAAC;KAC3C;IACD;QACE,EAAE,EAAE,iBAAiB;QACrB,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,wBAAwB;QAC9B,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,EAAE;QAC7B,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,EAAE;QAClB,eAAe,EAAE,kBAAkB;KACpC;IACD;QACE,EAAE,EAAE,qBAAqB;QACzB,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,yBAAyB;QAC/B,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,EAAE;QAC7B,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,EAAE;QAClB,eAAe,EAAE,kBAAkB;KACpC;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { HealingMatrixEntry } from '../healing-matrix-types.js';
2
+ export declare const FAMILY_16_ENTRIES: HealingMatrixEntry[];
3
+ //# sourceMappingURL=family-16-i18n.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-16-i18n.d.ts","sourceRoot":"","sources":["../../src/healing-matrix/family-16-i18n.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,EA8CjD,CAAC"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FAMILY_16_ENTRIES = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ exports.FAMILY_16_ENTRIES = [
6
+ {
7
+ id: 'i18n.translated_string',
8
+ family: enums_js_1.FailureFamily.I18N,
9
+ familyNumber: 16,
10
+ group: '16 Localization',
11
+ name: 'Translated string changed',
12
+ category: enums_js_1.FailureCategory.I18N,
13
+ canHeal: enums_js_1.MatrixHealability.YES,
14
+ healPath: enums_js_1.HealPath.BOTH,
15
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST, enums_js_1.HealingTechnique.T7_AI],
16
+ },
17
+ {
18
+ id: 'i18n.wrong_locale',
19
+ family: enums_js_1.FailureFamily.I18N,
20
+ familyNumber: 16,
21
+ group: '16 Localization',
22
+ name: 'Wrong locale loaded',
23
+ category: enums_js_1.FailureCategory.I18N,
24
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
25
+ healPath: enums_js_1.HealPath.PERMANENT,
26
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
27
+ notHealedReason: 'App ignores locale',
28
+ },
29
+ {
30
+ id: 'i18n.rtl_layout',
31
+ family: enums_js_1.FailureFamily.I18N,
32
+ familyNumber: 16,
33
+ group: '16 Localization',
34
+ name: 'RTL layout breaks locator',
35
+ category: enums_js_1.FailureCategory.I18N,
36
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
37
+ healPath: enums_js_1.HealPath.PERMANENT,
38
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
39
+ },
40
+ {
41
+ id: 'i18n.date_format',
42
+ family: enums_js_1.FailureFamily.I18N,
43
+ familyNumber: 16,
44
+ group: '16 Localization',
45
+ name: 'Date/number format mismatch',
46
+ category: enums_js_1.FailureCategory.I18N,
47
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
48
+ healPath: enums_js_1.HealPath.PERMANENT,
49
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
50
+ },
51
+ ];
52
+ //# sourceMappingURL=family-16-i18n.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-16-i18n.js","sourceRoot":"","sources":["../../src/healing-matrix/family-16-i18n.ts"],"names":[],"mappings":";;;AAAA,0CAMqB;AAGR,QAAA,iBAAiB,GAAyB;IACrD;QACE,EAAE,EAAE,wBAAwB;QAC5B,MAAM,EAAE,wBAAa,CAAC,IAAI;QAC1B,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,iBAAiB;QACxB,IAAI,EAAE,2BAA2B;QACjC,QAAQ,EAAE,0BAAe,CAAC,IAAI;QAC9B,OAAO,EAAE,4BAAiB,CAAC,GAAG;QAC9B,QAAQ,EAAE,mBAAQ,CAAC,IAAI;QACvB,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,EAAE,2BAAgB,CAAC,KAAK,CAAC;KAClE;IACD;QACE,EAAE,EAAE,mBAAmB;QACvB,MAAM,EAAE,wBAAa,CAAC,IAAI;QAC1B,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,iBAAiB;QACxB,IAAI,EAAE,qBAAqB;QAC3B,QAAQ,EAAE,0BAAe,CAAC,IAAI;QAC9B,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;QACzC,eAAe,EAAE,oBAAoB;KACtC;IACD;QACE,EAAE,EAAE,iBAAiB;QACrB,MAAM,EAAE,wBAAa,CAAC,IAAI;QAC1B,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,iBAAiB;QACxB,IAAI,EAAE,2BAA2B;QACjC,QAAQ,EAAE,0BAAe,CAAC,IAAI;QAC9B,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;KAC1C;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,MAAM,EAAE,wBAAa,CAAC,IAAI;QAC1B,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,iBAAiB;QACxB,IAAI,EAAE,6BAA6B;QACnC,QAAQ,EAAE,0BAAe,CAAC,IAAI;QAC9B,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;KAC1C;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { HealingMatrixEntry } from '../healing-matrix-types.js';
2
+ export declare const FAMILY_17_ENTRIES: HealingMatrixEntry[];
3
+ //# sourceMappingURL=family-17-mobile-touch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-17-mobile-touch.d.ts","sourceRoot":"","sources":["../../src/healing-matrix/family-17-mobile-touch.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,EA8CjD,CAAC"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FAMILY_17_ENTRIES = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ exports.FAMILY_17_ENTRIES = [
6
+ {
7
+ id: 'mobile.tap_vs_click',
8
+ family: enums_js_1.FailureFamily.MOBILE_TOUCH,
9
+ familyNumber: 17,
10
+ group: '17 Mobile & touch',
11
+ name: 'Tap vs click needed',
12
+ category: enums_js_1.FailureCategory.MOBILE,
13
+ canHeal: enums_js_1.MatrixHealability.YES,
14
+ healPath: enums_js_1.HealPath.BOTH,
15
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
16
+ },
17
+ {
18
+ id: 'mobile.swipe',
19
+ family: enums_js_1.FailureFamily.MOBILE_TOUCH,
20
+ familyNumber: 17,
21
+ group: '17 Mobile & touch',
22
+ name: 'Swipe / scroll gesture',
23
+ category: enums_js_1.FailureCategory.MOBILE,
24
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
25
+ healPath: enums_js_1.HealPath.PERMANENT,
26
+ techniqueStack: [enums_js_1.HealingTechnique.T4_TRACE, enums_js_1.HealingTechnique.T6_AST],
27
+ },
28
+ {
29
+ id: 'mobile.viewport_only',
30
+ family: enums_js_1.FailureFamily.MOBILE_TOUCH,
31
+ familyNumber: 17,
32
+ group: '17 Mobile & touch',
33
+ name: 'Mobile viewport-only element',
34
+ category: enums_js_1.FailureCategory.MOBILE,
35
+ canHeal: enums_js_1.MatrixHealability.YES,
36
+ healPath: enums_js_1.HealPath.BOTH,
37
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
38
+ },
39
+ {
40
+ id: 'mobile.permission',
41
+ family: enums_js_1.FailureFamily.MOBILE_TOUCH,
42
+ familyNumber: 17,
43
+ group: '17 Mobile & touch',
44
+ name: 'Device permission (camera/mic)',
45
+ category: enums_js_1.FailureCategory.MOBILE,
46
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
47
+ healPath: enums_js_1.HealPath.PERMANENT,
48
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
49
+ notHealedReason: 'OS dialog',
50
+ },
51
+ ];
52
+ //# sourceMappingURL=family-17-mobile-touch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-17-mobile-touch.js","sourceRoot":"","sources":["../../src/healing-matrix/family-17-mobile-touch.ts"],"names":[],"mappings":";;;AAAA,0CAMqB;AAGR,QAAA,iBAAiB,GAAyB;IACrD;QACE,EAAE,EAAE,qBAAqB;QACzB,MAAM,EAAE,wBAAa,CAAC,YAAY;QAClC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,qBAAqB;QAC3B,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,GAAG;QAC9B,QAAQ,EAAE,mBAAQ,CAAC,IAAI;QACvB,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;KAC1C;IACD;QACE,EAAE,EAAE,cAAc;QAClB,MAAM,EAAE,wBAAa,CAAC,YAAY;QAClC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,wBAAwB;QAC9B,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,QAAQ,EAAE,2BAAgB,CAAC,MAAM,CAAC;KACrE;IACD;QACE,EAAE,EAAE,sBAAsB;QAC1B,MAAM,EAAE,wBAAa,CAAC,YAAY;QAClC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,8BAA8B;QACpC,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,GAAG;QAC9B,QAAQ,EAAE,mBAAQ,CAAC,IAAI;QACvB,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;KAC1C;IACD;QACE,EAAE,EAAE,mBAAmB;QACvB,MAAM,EAAE,wBAAa,CAAC,YAAY;QAClC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,gCAAgC;QACtC,QAAQ,EAAE,0BAAe,CAAC,MAAM;QAChC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;QACzC,eAAe,EAAE,WAAW;KAC7B;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { HealingMatrixEntry } from '../healing-matrix-types.js';
2
+ export declare const FAMILY_18_ENTRIES: HealingMatrixEntry[];
3
+ //# sourceMappingURL=family-18-performance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-18-performance.d.ts","sourceRoot":"","sources":["../../src/healing-matrix/family-18-performance.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,EAgDjD,CAAC"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FAMILY_18_ENTRIES = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ exports.FAMILY_18_ENTRIES = [
6
+ {
7
+ id: 'perf.test_timeout',
8
+ family: enums_js_1.FailureFamily.PERFORMANCE,
9
+ familyNumber: 18,
10
+ group: '18 Performance',
11
+ name: 'Test timeout (too slow page)',
12
+ category: enums_js_1.FailureCategory.PERFORMANCE,
13
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
14
+ healPath: enums_js_1.HealPath.BOTH,
15
+ techniqueStack: [enums_js_1.HealingTechnique.T0_RETRY, enums_js_1.HealingTechnique.T6_AST],
16
+ notHealedReason: 'Page genuinely too slow — perf bug',
17
+ },
18
+ {
19
+ id: 'perf.memory_leak',
20
+ family: enums_js_1.FailureFamily.PERFORMANCE,
21
+ familyNumber: 18,
22
+ group: '18 Performance',
23
+ name: 'Memory leak causes later step fail',
24
+ category: enums_js_1.FailureCategory.PERFORMANCE,
25
+ canHeal: enums_js_1.MatrixHealability.NO,
26
+ healPath: null,
27
+ techniqueStack: [],
28
+ notHealedReason: 'Product perf',
29
+ },
30
+ {
31
+ id: 'perf.infinite_scroll',
32
+ family: enums_js_1.FailureFamily.PERFORMANCE,
33
+ familyNumber: 18,
34
+ group: '18 Performance',
35
+ name: 'Infinite scroll load',
36
+ category: enums_js_1.FailureCategory.PERFORMANCE,
37
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
38
+ healPath: enums_js_1.HealPath.BOTH,
39
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
40
+ },
41
+ {
42
+ id: 'perf.large_payload',
43
+ family: enums_js_1.FailureFamily.PERFORMANCE,
44
+ familyNumber: 18,
45
+ group: '18 Performance',
46
+ name: 'Large payload blocks UI',
47
+ category: enums_js_1.FailureCategory.PERFORMANCE,
48
+ canHeal: enums_js_1.MatrixHealability.NO,
49
+ healPath: null,
50
+ techniqueStack: [],
51
+ notHealedReason: 'Product perf',
52
+ },
53
+ ];
54
+ //# sourceMappingURL=family-18-performance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-18-performance.js","sourceRoot":"","sources":["../../src/healing-matrix/family-18-performance.ts"],"names":[],"mappings":";;;AAAA,0CAMqB;AAGR,QAAA,iBAAiB,GAAyB;IACrD;QACE,EAAE,EAAE,mBAAmB;QACvB,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,gBAAgB;QACvB,IAAI,EAAE,8BAA8B;QACpC,QAAQ,EAAE,0BAAe,CAAC,WAAW;QACrC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,IAAI;QACvB,cAAc,EAAE,CAAC,2BAAgB,CAAC,QAAQ,EAAE,2BAAgB,CAAC,MAAM,CAAC;QACpE,eAAe,EAAE,oCAAoC;KACtD;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,gBAAgB;QACvB,IAAI,EAAE,oCAAoC;QAC1C,QAAQ,EAAE,0BAAe,CAAC,WAAW;QACrC,OAAO,EAAE,4BAAiB,CAAC,EAAE;QAC7B,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,EAAE;QAClB,eAAe,EAAE,cAAc;KAChC;IACD;QACE,EAAE,EAAE,sBAAsB;QAC1B,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,gBAAgB;QACvB,IAAI,EAAE,sBAAsB;QAC5B,QAAQ,EAAE,0BAAe,CAAC,WAAW;QACrC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,IAAI;QACvB,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;KAC1C;IACD;QACE,EAAE,EAAE,oBAAoB;QACxB,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,gBAAgB;QACvB,IAAI,EAAE,yBAAyB;QAC/B,QAAQ,EAAE,0BAAe,CAAC,WAAW;QACrC,OAAO,EAAE,4BAAiB,CAAC,EAAE;QAC7B,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,EAAE;QAClB,eAAe,EAAE,cAAc;KAChC;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { HealingMatrixEntry } from '../healing-matrix-types.js';
2
+ export declare const FAMILY_19_ENTRIES: HealingMatrixEntry[];
3
+ //# sourceMappingURL=family-19-third-party.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-19-third-party.d.ts","sourceRoot":"","sources":["../../src/healing-matrix/family-19-third-party.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,EA2DjD,CAAC"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FAMILY_19_ENTRIES = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ exports.FAMILY_19_ENTRIES = [
6
+ {
7
+ id: 'third.stripe',
8
+ family: enums_js_1.FailureFamily.THIRD_PARTY,
9
+ familyNumber: 19,
10
+ group: '19 Third-party embeds',
11
+ name: 'Stripe/payment iframe',
12
+ category: enums_js_1.FailureCategory.THIRD_PARTY,
13
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
14
+ healPath: enums_js_1.HealPath.BOTH,
15
+ techniqueStack: [enums_js_1.HealingTechnique.T5_HISTORY, enums_js_1.HealingTechnique.T6_AST],
16
+ },
17
+ {
18
+ id: 'third.maps',
19
+ family: enums_js_1.FailureFamily.THIRD_PARTY,
20
+ familyNumber: 19,
21
+ group: '19 Third-party embeds',
22
+ name: 'Maps widget',
23
+ category: enums_js_1.FailureCategory.THIRD_PARTY,
24
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
25
+ healPath: enums_js_1.HealPath.BOTH,
26
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
27
+ },
28
+ {
29
+ id: 'third.chat_widget',
30
+ family: enums_js_1.FailureFamily.THIRD_PARTY,
31
+ familyNumber: 19,
32
+ group: '19 Third-party embeds',
33
+ name: 'Chat widget shadow DOM',
34
+ category: enums_js_1.FailureCategory.THIRD_PARTY,
35
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
36
+ healPath: enums_js_1.HealPath.BOTH,
37
+ techniqueStack: [enums_js_1.HealingTechnique.T1_SCOPE, enums_js_1.HealingTechnique.T6_AST],
38
+ notHealedReason: 'Closed shadow',
39
+ },
40
+ {
41
+ id: 'third.ad_blocked',
42
+ family: enums_js_1.FailureFamily.THIRD_PARTY,
43
+ familyNumber: 19,
44
+ group: '19 Third-party embeds',
45
+ name: 'Ad / analytics script blocked',
46
+ category: enums_js_1.FailureCategory.THIRD_PARTY,
47
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
48
+ healPath: enums_js_1.HealPath.PERMANENT,
49
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
50
+ },
51
+ {
52
+ id: 'third.social_login',
53
+ family: enums_js_1.FailureFamily.THIRD_PARTY,
54
+ familyNumber: 19,
55
+ group: '19 Third-party embeds',
56
+ name: 'Social login widget',
57
+ category: enums_js_1.FailureCategory.THIRD_PARTY,
58
+ canHeal: enums_js_1.MatrixHealability.NO,
59
+ healPath: null,
60
+ techniqueStack: [],
61
+ notHealedReason: 'OAuth',
62
+ skippedReason: 'Skipped',
63
+ },
64
+ ];
65
+ //# sourceMappingURL=family-19-third-party.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-19-third-party.js","sourceRoot":"","sources":["../../src/healing-matrix/family-19-third-party.ts"],"names":[],"mappings":";;;AAAA,0CAMqB;AAGR,QAAA,iBAAiB,GAAyB;IACrD;QACE,EAAE,EAAE,cAAc;QAClB,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,uBAAuB;QAC9B,IAAI,EAAE,uBAAuB;QAC7B,QAAQ,EAAE,0BAAe,CAAC,WAAW;QACrC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,IAAI;QACvB,cAAc,EAAE,CAAC,2BAAgB,CAAC,UAAU,EAAE,2BAAgB,CAAC,MAAM,CAAC;KACvE;IACD;QACE,EAAE,EAAE,YAAY;QAChB,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,uBAAuB;QAC9B,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,0BAAe,CAAC,WAAW;QACrC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,IAAI;QACvB,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;KAC1C;IACD;QACE,EAAE,EAAE,mBAAmB;QACvB,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,uBAAuB;QAC9B,IAAI,EAAE,wBAAwB;QAC9B,QAAQ,EAAE,0BAAe,CAAC,WAAW;QACrC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,IAAI;QACvB,cAAc,EAAE,CAAC,2BAAgB,CAAC,QAAQ,EAAE,2BAAgB,CAAC,MAAM,CAAC;QACpE,eAAe,EAAE,eAAe;KACjC;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,uBAAuB;QAC9B,IAAI,EAAE,+BAA+B;QACrC,QAAQ,EAAE,0BAAe,CAAC,WAAW;QACrC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;KAC1C;IACD;QACE,EAAE,EAAE,oBAAoB;QACxB,MAAM,EAAE,wBAAa,CAAC,WAAW;QACjC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,uBAAuB;QAC9B,IAAI,EAAE,qBAAqB;QAC3B,QAAQ,EAAE,0BAAe,CAAC,WAAW;QACrC,OAAO,EAAE,4BAAiB,CAAC,EAAE;QAC7B,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,EAAE;QAClB,eAAe,EAAE,OAAO;QACxB,aAAa,EAAE,SAAS;KACzB;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { HealingMatrixEntry } from '../healing-matrix-types.js';
2
+ export declare const FAMILY_20_ENTRIES: HealingMatrixEntry[];
3
+ //# sourceMappingURL=family-20-test-structure.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-20-test-structure.d.ts","sourceRoot":"","sources":["../../src/healing-matrix/family-20-test-structure.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,EAwEjD,CAAC"}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FAMILY_20_ENTRIES = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ exports.FAMILY_20_ENTRIES = [
6
+ {
7
+ id: 'struct.wrong_import',
8
+ family: enums_js_1.FailureFamily.TEST_STRUCTURE,
9
+ familyNumber: 20,
10
+ group: '20 Test structure',
11
+ name: 'Import wrong fixture',
12
+ category: enums_js_1.FailureCategory.TEST_STRUCTURE,
13
+ canHeal: enums_js_1.MatrixHealability.YES,
14
+ healPath: enums_js_1.HealPath.PERMANENT,
15
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
16
+ },
17
+ {
18
+ id: 'struct.shared_state',
19
+ family: enums_js_1.FailureFamily.TEST_STRUCTURE,
20
+ familyNumber: 20,
21
+ group: '20 Test structure',
22
+ name: 'Shared mutable state',
23
+ category: enums_js_1.FailureCategory.TEST_STRUCTURE,
24
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
25
+ healPath: enums_js_1.HealPath.PERMANENT,
26
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
27
+ notHealedReason: 'Architectural',
28
+ },
29
+ {
30
+ id: 'struct.order_dependent',
31
+ family: enums_js_1.FailureFamily.TEST_STRUCTURE,
32
+ familyNumber: 20,
33
+ group: '20 Test structure',
34
+ name: 'Order-dependent test',
35
+ category: enums_js_1.FailureCategory.TEST_STRUCTURE,
36
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
37
+ healPath: enums_js_1.HealPath.PERMANENT,
38
+ techniqueStack: [enums_js_1.HealingTechnique.T6_AST],
39
+ notHealedReason: 'Needs human redesign',
40
+ },
41
+ {
42
+ id: 'struct.flaky_helper',
43
+ family: enums_js_1.FailureFamily.TEST_STRUCTURE,
44
+ familyNumber: 20,
45
+ group: '20 Test structure',
46
+ name: 'Flaky custom helper',
47
+ category: enums_js_1.FailureCategory.TEST_STRUCTURE,
48
+ canHeal: enums_js_1.MatrixHealability.PARTIAL,
49
+ healPath: enums_js_1.HealPath.PERMANENT,
50
+ techniqueStack: [enums_js_1.HealingTechnique.T5_HISTORY, enums_js_1.HealingTechnique.T6_AST],
51
+ },
52
+ {
53
+ id: 'struct.syntax_error',
54
+ family: enums_js_1.FailureFamily.TEST_STRUCTURE,
55
+ familyNumber: 20,
56
+ group: '20 Test structure',
57
+ name: 'Syntax / TypeScript error',
58
+ category: enums_js_1.FailureCategory.TEST_STRUCTURE,
59
+ canHeal: enums_js_1.MatrixHealability.NO,
60
+ healPath: null,
61
+ techniqueStack: [],
62
+ notHealedReason: 'Compile-time, not runtime heal',
63
+ skippedReason: 'Skipped',
64
+ },
65
+ {
66
+ id: 'struct.infinite_loop',
67
+ family: enums_js_1.FailureFamily.TEST_STRUCTURE,
68
+ familyNumber: 20,
69
+ group: '20 Test structure',
70
+ name: 'Infinite loop in test',
71
+ category: enums_js_1.FailureCategory.TEST_STRUCTURE,
72
+ canHeal: enums_js_1.MatrixHealability.NO,
73
+ healPath: null,
74
+ techniqueStack: [],
75
+ notHealedReason: 'Developer bug',
76
+ },
77
+ ];
78
+ //# sourceMappingURL=family-20-test-structure.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-20-test-structure.js","sourceRoot":"","sources":["../../src/healing-matrix/family-20-test-structure.ts"],"names":[],"mappings":";;;AAAA,0CAMqB;AAGR,QAAA,iBAAiB,GAAyB;IACrD;QACE,EAAE,EAAE,qBAAqB;QACzB,MAAM,EAAE,wBAAa,CAAC,cAAc;QACpC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,sBAAsB;QAC5B,QAAQ,EAAE,0BAAe,CAAC,cAAc;QACxC,OAAO,EAAE,4BAAiB,CAAC,GAAG;QAC9B,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;KAC1C;IACD;QACE,EAAE,EAAE,qBAAqB;QACzB,MAAM,EAAE,wBAAa,CAAC,cAAc;QACpC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,sBAAsB;QAC5B,QAAQ,EAAE,0BAAe,CAAC,cAAc;QACxC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;QACzC,eAAe,EAAE,eAAe;KACjC;IACD;QACE,EAAE,EAAE,wBAAwB;QAC5B,MAAM,EAAE,wBAAa,CAAC,cAAc;QACpC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,sBAAsB;QAC5B,QAAQ,EAAE,0BAAe,CAAC,cAAc;QACxC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,MAAM,CAAC;QACzC,eAAe,EAAE,sBAAsB;KACxC;IACD;QACE,EAAE,EAAE,qBAAqB;QACzB,MAAM,EAAE,wBAAa,CAAC,cAAc;QACpC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,qBAAqB;QAC3B,QAAQ,EAAE,0BAAe,CAAC,cAAc;QACxC,OAAO,EAAE,4BAAiB,CAAC,OAAO;QAClC,QAAQ,EAAE,mBAAQ,CAAC,SAAS;QAC5B,cAAc,EAAE,CAAC,2BAAgB,CAAC,UAAU,EAAE,2BAAgB,CAAC,MAAM,CAAC;KACvE;IACD;QACE,EAAE,EAAE,qBAAqB;QACzB,MAAM,EAAE,wBAAa,CAAC,cAAc;QACpC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,2BAA2B;QACjC,QAAQ,EAAE,0BAAe,CAAC,cAAc;QACxC,OAAO,EAAE,4BAAiB,CAAC,EAAE;QAC7B,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,EAAE;QAClB,eAAe,EAAE,gCAAgC;QACjD,aAAa,EAAE,SAAS;KACzB;IACD;QACE,EAAE,EAAE,sBAAsB;QAC1B,MAAM,EAAE,wBAAa,CAAC,cAAc;QACpC,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,uBAAuB;QAC7B,QAAQ,EAAE,0BAAe,CAAC,cAAc;QACxC,OAAO,EAAE,4BAAiB,CAAC,EAAE;QAC7B,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,EAAE;QAClB,eAAe,EAAE,eAAe;KACjC;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { HealingMatrixEntry } from '../healing-matrix-types.js';
2
+ export declare const FAMILY_21_ENTRIES: HealingMatrixEntry[];
3
+ //# sourceMappingURL=family-21-assertion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-21-assertion.d.ts","sourceRoot":"","sources":["../../src/healing-matrix/family-21-assertion.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,EAkFjD,CAAC"}