@featurevisor/core 2.14.0 → 2.16.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 (101) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/coverage/clover.xml +774 -652
  3. package/coverage/coverage-final.json +19 -18
  4. package/coverage/lcov-report/builder/allocator.ts.html +1 -1
  5. package/coverage/lcov-report/builder/buildScopedConditions.ts.html +1 -1
  6. package/coverage/lcov-report/builder/buildScopedDatafile.ts.html +1 -1
  7. package/coverage/lcov-report/builder/buildScopedSegments.ts.html +1 -1
  8. package/coverage/lcov-report/builder/index.html +1 -1
  9. package/coverage/lcov-report/builder/mutateVariables.ts.html +1 -1
  10. package/coverage/lcov-report/builder/mutator.ts.html +1 -1
  11. package/coverage/lcov-report/builder/revision.ts.html +1 -1
  12. package/coverage/lcov-report/builder/traffic.ts.html +1 -1
  13. package/coverage/lcov-report/config/index.html +30 -15
  14. package/coverage/lcov-report/config/index.ts.html +88 -0
  15. package/coverage/lcov-report/config/projectConfig.ts.html +79 -46
  16. package/coverage/lcov-report/datasource/adapter.ts.html +74 -11
  17. package/coverage/lcov-report/datasource/datasource.ts.html +76 -25
  18. package/coverage/lcov-report/datasource/filesystemAdapter.ts.html +690 -66
  19. package/coverage/lcov-report/datasource/index.html +35 -35
  20. package/coverage/lcov-report/datasource/index.ts.html +1 -1
  21. package/coverage/lcov-report/index.html +43 -43
  22. package/coverage/lcov-report/linter/attributeSchema.ts.html +4 -4
  23. package/coverage/lcov-report/linter/checkCircularDependency.ts.html +1 -1
  24. package/coverage/lcov-report/linter/checkPercentageExceedingSlot.ts.html +1 -1
  25. package/coverage/lcov-report/linter/conditionSchema.ts.html +7 -7
  26. package/coverage/lcov-report/linter/featureSchema.ts.html +152 -164
  27. package/coverage/lcov-report/linter/groupSchema.ts.html +3 -3
  28. package/coverage/lcov-report/linter/index.html +34 -34
  29. package/coverage/lcov-report/linter/lintProject.ts.html +428 -83
  30. package/coverage/lcov-report/linter/mutationNotation.ts.html +3 -3
  31. package/coverage/lcov-report/linter/printError.ts.html +9 -9
  32. package/coverage/lcov-report/linter/schema.ts.html +4 -4
  33. package/coverage/lcov-report/linter/segmentSchema.ts.html +3 -3
  34. package/coverage/lcov-report/linter/testSchema.ts.html +6 -6
  35. package/coverage/lcov-report/list/index.html +1 -1
  36. package/coverage/lcov-report/list/matrix.ts.html +1 -1
  37. package/coverage/lcov-report/parsers/index.html +1 -1
  38. package/coverage/lcov-report/parsers/index.ts.html +4 -4
  39. package/coverage/lcov-report/parsers/json.ts.html +2 -2
  40. package/coverage/lcov-report/parsers/yml.ts.html +6 -6
  41. package/coverage/lcov-report/tester/cliFormat.ts.html +1 -1
  42. package/coverage/lcov-report/tester/helpers.ts.html +1 -1
  43. package/coverage/lcov-report/tester/index.html +1 -1
  44. package/coverage/lcov-report/utils/git.ts.html +118 -16
  45. package/coverage/lcov-report/utils/index.html +14 -14
  46. package/coverage/lcov.info +1374 -1107
  47. package/lib/config/projectConfig.d.ts +3 -0
  48. package/lib/config/projectConfig.js +7 -1
  49. package/lib/config/projectConfig.js.map +1 -1
  50. package/lib/config/projectConfig.spec.d.ts +1 -0
  51. package/lib/config/projectConfig.spec.js +24 -0
  52. package/lib/config/projectConfig.spec.js.map +1 -0
  53. package/lib/datasource/adapter.d.ts +7 -0
  54. package/lib/datasource/adapter.js +7 -0
  55. package/lib/datasource/adapter.js.map +1 -1
  56. package/lib/datasource/datasource.d.ts +3 -1
  57. package/lib/datasource/datasource.js +6 -0
  58. package/lib/datasource/datasource.js.map +1 -1
  59. package/lib/datasource/filesystemAdapter.d.ts +8 -0
  60. package/lib/datasource/filesystemAdapter.js +134 -7
  61. package/lib/datasource/filesystemAdapter.js.map +1 -1
  62. package/lib/datasource/filesystemAdapter.spec.d.ts +1 -0
  63. package/lib/datasource/filesystemAdapter.spec.js +88 -0
  64. package/lib/datasource/filesystemAdapter.spec.js.map +1 -0
  65. package/lib/generate-code/index.d.ts +3 -0
  66. package/lib/generate-code/index.js +16 -1
  67. package/lib/generate-code/index.js.map +1 -1
  68. package/lib/generate-code/typescript.d.ts +6 -1
  69. package/lib/generate-code/typescript.js +193 -42
  70. package/lib/generate-code/typescript.js.map +1 -1
  71. package/lib/linter/conditionSchema.spec.js +2 -0
  72. package/lib/linter/conditionSchema.spec.js.map +1 -1
  73. package/lib/linter/featureSchema.js +46 -49
  74. package/lib/linter/featureSchema.js.map +1 -1
  75. package/lib/linter/featureSchema.spec.js +17 -0
  76. package/lib/linter/featureSchema.spec.js.map +1 -1
  77. package/lib/linter/lintProject.d.ts +2 -0
  78. package/lib/linter/lintProject.js +85 -8
  79. package/lib/linter/lintProject.js.map +1 -1
  80. package/lib/linter/lintProject.spec.js +37 -0
  81. package/lib/linter/lintProject.spec.js.map +1 -1
  82. package/lib/linter/segmentSchema.spec.js +2 -0
  83. package/lib/linter/segmentSchema.spec.js.map +1 -1
  84. package/lib/utils/git.js +32 -7
  85. package/lib/utils/git.js.map +1 -1
  86. package/package.json +2 -2
  87. package/src/config/projectConfig.spec.ts +31 -0
  88. package/src/config/projectConfig.ts +11 -0
  89. package/src/datasource/adapter.ts +21 -0
  90. package/src/datasource/datasource.ts +18 -1
  91. package/src/datasource/filesystemAdapter.spec.ts +153 -0
  92. package/src/datasource/filesystemAdapter.ts +216 -8
  93. package/src/generate-code/index.ts +20 -1
  94. package/src/generate-code/typescript.ts +266 -64
  95. package/src/linter/conditionSchema.spec.ts +2 -0
  96. package/src/linter/featureSchema.spec.ts +21 -0
  97. package/src/linter/featureSchema.ts +84 -88
  98. package/src/linter/lintProject.spec.ts +74 -0
  99. package/src/linter/lintProject.ts +123 -8
  100. package/src/linter/segmentSchema.spec.ts +2 -0
  101. package/src/utils/git.ts +41 -7
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">32.54% </span>
26
+ <span class="strong">38.27% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>83/255</span>
28
+ <span class='fraction'>124/324</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">17.72% </span>
33
+ <span class="strong">27.27% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>14/79</span>
35
+ <span class='fraction'>33/121</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">36.98% </span>
40
+ <span class="strong">40% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>27/73</span>
42
+ <span class='fraction'>34/85</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">32.66% </span>
47
+ <span class="strong">38.24% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>82/251</span>
49
+ <span class='fraction'>122/319</span>
50
50
  </div>
51
51
 
52
52
 
@@ -79,48 +79,48 @@
79
79
  </tr>
80
80
  </thead>
81
81
  <tbody><tr>
82
- <td class="file high" data-value="adapter.ts"><a href="adapter.ts.html">adapter.ts</a></td>
83
- <td data-value="100" class="pic high">
84
- <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
82
+ <td class="file low" data-value="adapter.ts"><a href="adapter.ts.html">adapter.ts</a></td>
83
+ <td data-value="33.33" class="pic low">
84
+ <div class="chart"><div class="cover-fill" style="width: 33%"></div><div class="cover-empty" style="width: 67%"></div></div>
85
85
  </td>
86
- <td data-value="100" class="pct high">100%</td>
87
- <td data-value="1" class="abs high">1/1</td>
86
+ <td data-value="33.33" class="pct low">33.33%</td>
87
+ <td data-value="3" class="abs low">1/3</td>
88
88
  <td data-value="100" class="pct high">100%</td>
89
89
  <td data-value="0" class="abs high">0/0</td>
90
- <td data-value="100" class="pct high">100%</td>
91
- <td data-value="0" class="abs high">0/0</td>
92
- <td data-value="100" class="pct high">100%</td>
93
- <td data-value="1" class="abs high">1/1</td>
90
+ <td data-value="0" class="pct low">0%</td>
91
+ <td data-value="2" class="abs low">0/2</td>
92
+ <td data-value="33.33" class="pct low">33.33%</td>
93
+ <td data-value="3" class="abs low">1/3</td>
94
94
  </tr>
95
95
 
96
96
  <tr>
97
97
  <td class="file low" data-value="datasource.ts"><a href="datasource.ts.html">datasource.ts</a></td>
98
- <td data-value="43.07" class="pic low">
98
+ <td data-value="43.28" class="pic low">
99
99
  <div class="chart"><div class="cover-fill" style="width: 43%"></div><div class="cover-empty" style="width: 57%"></div></div>
100
100
  </td>
101
- <td data-value="43.07" class="pct low">43.07%</td>
102
- <td data-value="65" class="abs low">28/65</td>
101
+ <td data-value="43.28" class="pct low">43.28%</td>
102
+ <td data-value="67" class="abs low">29/67</td>
103
103
  <td data-value="22.22" class="pct low">22.22%</td>
104
104
  <td data-value="9" class="abs low">2/9</td>
105
- <td data-value="38.09" class="pct low">38.09%</td>
106
- <td data-value="42" class="abs low">16/42</td>
107
- <td data-value="43.07" class="pct low">43.07%</td>
108
- <td data-value="65" class="abs low">28/65</td>
105
+ <td data-value="38.63" class="pct low">38.63%</td>
106
+ <td data-value="44" class="abs low">17/44</td>
107
+ <td data-value="43.28" class="pct low">43.28%</td>
108
+ <td data-value="67" class="abs low">29/67</td>
109
109
  </tr>
110
110
 
111
111
  <tr>
112
112
  <td class="file low" data-value="filesystemAdapter.ts"><a href="filesystemAdapter.ts.html">filesystemAdapter.ts</a></td>
113
- <td data-value="27.41" class="pic low">
114
- <div class="chart"><div class="cover-fill" style="width: 27%"></div><div class="cover-empty" style="width: 73%"></div></div>
113
+ <td data-value="36.25" class="pic low">
114
+ <div class="chart"><div class="cover-fill" style="width: 36%"></div><div class="cover-empty" style="width: 64%"></div></div>
115
115
  </td>
116
- <td data-value="27.41" class="pct low">27.41%</td>
117
- <td data-value="186" class="abs low">51/186</td>
118
- <td data-value="17.14" class="pct low">17.14%</td>
119
- <td data-value="70" class="abs low">12/70</td>
120
- <td data-value="35.48" class="pct low">35.48%</td>
121
- <td data-value="31" class="abs low">11/31</td>
122
- <td data-value="27.47" class="pct low">27.47%</td>
123
- <td data-value="182" class="abs low">50/182</td>
116
+ <td data-value="36.25" class="pct low">36.25%</td>
117
+ <td data-value="251" class="abs low">91/251</td>
118
+ <td data-value="27.67" class="pct low">27.67%</td>
119
+ <td data-value="112" class="abs low">31/112</td>
120
+ <td data-value="43.58" class="pct low">43.58%</td>
121
+ <td data-value="39" class="abs low">17/39</td>
122
+ <td data-value="36.17" class="pct low">36.17%</td>
123
+ <td data-value="246" class="abs low">89/246</td>
124
124
  </tr>
125
125
 
126
126
  <tr>
@@ -146,7 +146,7 @@
146
146
  <div class='footer quiet pad2 space-top1 center small'>
147
147
  Code coverage generated by
148
148
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
149
- at 2026-02-24T19:50:30.107Z
149
+ at 2026-02-26T22:05:09.172Z
150
150
  </div>
151
151
  <script src="../prettify.js"></script>
152
152
  <script>
@@ -79,7 +79,7 @@ export * from "./filesystemAdapter";
79
79
  <div class='footer quiet pad2 space-top1 center small'>
80
80
  Code coverage generated by
81
81
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
82
- at 2026-02-24T19:50:30.107Z
82
+ at 2026-02-26T22:05:09.172Z
83
83
  </div>
84
84
  <script src="../prettify.js"></script>
85
85
  <script>
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">72.01% </span>
26
+ <span class="strong">71.47% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>1675/2326</span>
28
+ <span class='fraction'>1749/2447</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">66.56% </span>
33
+ <span class="strong">65.69% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>912/1370</span>
35
+ <span class='fraction'>973/1481</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">67.7% </span>
40
+ <span class="strong">67.85% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>218/322</span>
42
+ <span class='fraction'>228/336</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">73.97% </span>
47
+ <span class="strong">73.31% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>1603/2167</span>
49
+ <span class='fraction'>1676/2286</span>
50
50
  </div>
51
51
 
52
52
 
@@ -95,47 +95,47 @@
95
95
 
96
96
  <tr>
97
97
  <td class="file medium" data-value="config"><a href="config/index.html">config</a></td>
98
- <td data-value="70.9" class="pic medium">
99
- <div class="chart"><div class="cover-fill" style="width: 70%"></div><div class="cover-empty" style="width: 30%"></div></div>
98
+ <td data-value="72.88" class="pic medium">
99
+ <div class="chart"><div class="cover-fill" style="width: 72%"></div><div class="cover-empty" style="width: 28%"></div></div>
100
100
  </td>
101
- <td data-value="70.9" class="pct medium">70.9%</td>
102
- <td data-value="55" class="abs medium">39/55</td>
103
- <td data-value="35.71" class="pct low">35.71%</td>
104
- <td data-value="14" class="abs low">5/14</td>
101
+ <td data-value="72.88" class="pct medium">72.88%</td>
102
+ <td data-value="59" class="abs medium">43/59</td>
103
+ <td data-value="47.05" class="pct low">47.05%</td>
104
+ <td data-value="17" class="abs low">8/17</td>
105
105
  <td data-value="40" class="pct low">40%</td>
106
106
  <td data-value="5" class="abs low">2/5</td>
107
- <td data-value="72.22" class="pct medium">72.22%</td>
108
- <td data-value="54" class="abs medium">39/54</td>
107
+ <td data-value="74.13" class="pct medium">74.13%</td>
108
+ <td data-value="58" class="abs medium">43/58</td>
109
109
  </tr>
110
110
 
111
111
  <tr>
112
112
  <td class="file low" data-value="datasource"><a href="datasource/index.html">datasource</a></td>
113
- <td data-value="32.54" class="pic low">
114
- <div class="chart"><div class="cover-fill" style="width: 32%"></div><div class="cover-empty" style="width: 68%"></div></div>
113
+ <td data-value="38.27" class="pic low">
114
+ <div class="chart"><div class="cover-fill" style="width: 38%"></div><div class="cover-empty" style="width: 62%"></div></div>
115
115
  </td>
116
- <td data-value="32.54" class="pct low">32.54%</td>
117
- <td data-value="255" class="abs low">83/255</td>
118
- <td data-value="17.72" class="pct low">17.72%</td>
119
- <td data-value="79" class="abs low">14/79</td>
120
- <td data-value="36.98" class="pct low">36.98%</td>
121
- <td data-value="73" class="abs low">27/73</td>
122
- <td data-value="32.66" class="pct low">32.66%</td>
123
- <td data-value="251" class="abs low">82/251</td>
116
+ <td data-value="38.27" class="pct low">38.27%</td>
117
+ <td data-value="324" class="abs low">124/324</td>
118
+ <td data-value="27.27" class="pct low">27.27%</td>
119
+ <td data-value="121" class="abs low">33/121</td>
120
+ <td data-value="40" class="pct low">40%</td>
121
+ <td data-value="85" class="abs low">34/85</td>
122
+ <td data-value="38.24" class="pct low">38.24%</td>
123
+ <td data-value="319" class="abs low">122/319</td>
124
124
  </tr>
125
125
 
126
126
  <tr>
127
127
  <td class="file medium" data-value="linter"><a href="linter/index.html">linter</a></td>
128
- <td data-value="76.3" class="pic medium">
128
+ <td data-value="76.18" class="pic medium">
129
129
  <div class="chart"><div class="cover-fill" style="width: 76%"></div><div class="cover-empty" style="width: 24%"></div></div>
130
130
  </td>
131
- <td data-value="76.3" class="pct medium">76.3%</td>
132
- <td data-value="1207" class="abs medium">921/1207</td>
133
- <td data-value="69.13" class="pct medium">69.13%</td>
134
- <td data-value="852" class="abs medium">589/852</td>
135
- <td data-value="73.41" class="pct medium">73.41%</td>
136
- <td data-value="158" class="abs medium">116/158</td>
137
- <td data-value="79.76" class="pct medium">79.76%</td>
138
- <td data-value="1112" class="abs medium">887/1112</td>
131
+ <td data-value="76.18" class="pct medium">76.18%</td>
132
+ <td data-value="1247" class="abs medium">950/1247</td>
133
+ <td data-value="69.46" class="pct medium">69.46%</td>
134
+ <td data-value="904" class="abs medium">628/904</td>
135
+ <td data-value="74.84" class="pct medium">74.84%</td>
136
+ <td data-value="159" class="abs medium">119/159</td>
137
+ <td data-value="79.58" class="pct medium">79.58%</td>
138
+ <td data-value="1151" class="abs medium">916/1151</td>
139
139
  </tr>
140
140
 
141
141
  <tr>
@@ -185,17 +185,17 @@
185
185
 
186
186
  <tr>
187
187
  <td class="file low" data-value="utils"><a href="utils/index.html">utils</a></td>
188
- <td data-value="2.89" class="pic low">
188
+ <td data-value="2.59" class="pic low">
189
189
  <div class="chart"><div class="cover-fill" style="width: 2%"></div><div class="cover-empty" style="width: 98%"></div></div>
190
190
  </td>
191
- <td data-value="2.89" class="pct low">2.89%</td>
192
- <td data-value="69" class="abs low">2/69</td>
191
+ <td data-value="2.59" class="pct low">2.59%</td>
192
+ <td data-value="77" class="abs low">2/77</td>
193
193
  <td data-value="0" class="pct low">0%</td>
194
- <td data-value="34" class="abs low">0/34</td>
194
+ <td data-value="48" class="abs low">0/48</td>
195
195
  <td data-value="0" class="pct low">0%</td>
196
- <td data-value="5" class="abs low">0/5</td>
197
- <td data-value="2.89" class="pct low">2.89%</td>
198
- <td data-value="69" class="abs low">2/69</td>
196
+ <td data-value="6" class="abs low">0/6</td>
197
+ <td data-value="2.59" class="pct low">2.59%</td>
198
+ <td data-value="77" class="abs low">2/77</td>
199
199
  </tr>
200
200
 
201
201
  </tbody>
@@ -206,7 +206,7 @@
206
206
  <div class='footer quiet pad2 space-top1 center small'>
207
207
  Code coverage generated by
208
208
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
209
- at 2026-02-24T19:50:30.107Z
209
+ at 2026-02-26T22:05:09.172Z
210
210
  </div>
211
211
  <script src="prettify.js"></script>
212
212
  <script>
@@ -96,7 +96,7 @@
96
96
  <a name='L31'></a><a href='#L31'>31</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
97
97
  <span class="cline-any cline-neutral">&nbsp;</span>
98
98
  <span class="cline-any cline-yes">1x</span>
99
- <span class="cline-any cline-yes">4x</span>
99
+ <span class="cline-any cline-yes">6x</span>
100
100
  <span class="cline-any cline-neutral">&nbsp;</span>
101
101
  <span class="cline-any cline-neutral">&nbsp;</span>
102
102
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -112,7 +112,7 @@
112
112
  <span class="cline-any cline-neutral">&nbsp;</span>
113
113
  <span class="cline-any cline-neutral">&nbsp;</span>
114
114
  <span class="cline-any cline-neutral">&nbsp;</span>
115
- <span class="cline-any cline-yes">4x</span>
115
+ <span class="cline-any cline-yes">6x</span>
116
116
  <span class="cline-any cline-neutral">&nbsp;</span>
117
117
  <span class="cline-any cline-neutral">&nbsp;</span>
118
118
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -121,7 +121,7 @@
121
121
  <span class="cline-any cline-neutral">&nbsp;</span>
122
122
  <span class="cline-any cline-neutral">&nbsp;</span>
123
123
  <span class="cline-any cline-neutral">&nbsp;</span>
124
- <span class="cline-any cline-yes">4x</span>
124
+ <span class="cline-any cline-yes">6x</span>
125
125
  <span class="cline-any cline-neutral">&nbsp;</span>
126
126
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { z } from "zod";
127
127
  &nbsp;
@@ -160,7 +160,7 @@ export function getAttributeZodSchema() {
160
160
  <div class='footer quiet pad2 space-top1 center small'>
161
161
  Code coverage generated by
162
162
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
163
- at 2026-02-24T19:50:30.107Z
163
+ at 2026-02-26T22:05:09.172Z
164
164
  </div>
165
165
  <script src="../prettify.js"></script>
166
166
  <script>
@@ -205,7 +205,7 @@ export async function checkForCircularDependencyInRequired(
205
205
  <div class='footer quiet pad2 space-top1 center small'>
206
206
  Code coverage generated by
207
207
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
208
- at 2026-02-24T19:50:30.107Z
208
+ at 2026-02-26T22:05:09.172Z
209
209
  </div>
210
210
  <script src="../prettify.js"></script>
211
211
  <script>
@@ -253,7 +253,7 @@ export async function checkForFeatureExceedingGroupSlotPercentage(
253
253
  <div class='footer quiet pad2 space-top1 center small'>
254
254
  Code coverage generated by
255
255
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
256
- at 2026-02-24T19:50:30.107Z
256
+ at 2026-02-26T22:05:09.172Z
257
257
  </div>
258
258
  <script src="../prettify.js"></script>
259
259
  <script>
@@ -330,7 +330,7 @@
330
330
  <span class="cline-any cline-neutral">&nbsp;</span>
331
331
  <span class="cline-any cline-neutral">&nbsp;</span>
332
332
  <span class="cline-any cline-neutral">&nbsp;</span>
333
- <span class="cline-any cline-yes">131x</span>
333
+ <span class="cline-any cline-yes">134x</span>
334
334
  <span class="cline-any cline-neutral">&nbsp;</span>
335
335
  <span class="cline-any cline-neutral">&nbsp;</span>
336
336
  <span class="cline-any cline-yes">121x</span>
@@ -493,7 +493,7 @@
493
493
  <span class="cline-any cline-neutral">&nbsp;</span>
494
494
  <span class="cline-any cline-neutral">&nbsp;</span>
495
495
  <span class="cline-any cline-neutral">&nbsp;</span>
496
- <span class="cline-any cline-yes">131x</span>
496
+ <span class="cline-any cline-yes">134x</span>
497
497
  <span class="cline-any cline-neutral">&nbsp;</span>
498
498
  <span class="cline-any cline-neutral">&nbsp;</span>
499
499
  <span class="cline-any cline-yes">31x</span>
@@ -511,17 +511,17 @@
511
511
  <span class="cline-any cline-neutral">&nbsp;</span>
512
512
  <span class="cline-any cline-neutral">&nbsp;</span>
513
513
  <span class="cline-any cline-neutral">&nbsp;</span>
514
- <span class="cline-any cline-yes">131x</span>
514
+ <span class="cline-any cline-yes">134x</span>
515
515
  <span class="cline-any cline-neutral">&nbsp;</span>
516
- <span class="cline-any cline-yes">131x</span>
516
+ <span class="cline-any cline-yes">134x</span>
517
517
  <span class="cline-any cline-neutral">&nbsp;</span>
518
- <span class="cline-any cline-yes">131x</span>
518
+ <span class="cline-any cline-yes">134x</span>
519
519
  <span class="cline-any cline-neutral">&nbsp;</span>
520
520
  <span class="cline-any cline-neutral">&nbsp;</span>
521
521
  <span class="cline-any cline-neutral">&nbsp;</span>
522
522
  <span class="cline-any cline-neutral">&nbsp;</span>
523
523
  <span class="cline-any cline-neutral">&nbsp;</span>
524
- <span class="cline-any cline-yes">131x</span>
524
+ <span class="cline-any cline-yes">134x</span>
525
525
  <span class="cline-any cline-neutral">&nbsp;</span>
526
526
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { z } from "zod";
527
527
  &nbsp;
@@ -760,7 +760,7 @@ export function getConditionsZodSchema(
760
760
  <div class='footer quiet pad2 space-top1 center small'>
761
761
  Code coverage generated by
762
762
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
763
- at 2026-02-24T19:50:30.107Z
763
+ at 2026-02-26T22:05:09.172Z
764
764
  </div>
765
765
  <script src="../prettify.js"></script>
766
766
  <script>