Repository navigation
Commit c817b2b
committed
Judge only the conformance loop on failures that are merely consecutive
The consecutive-failure arm was applied to both loops on one threshold, and the
threshold was calibrated on conformance data because no unit-loop equivalent
existed: the highest failure count on a functionality that then recovered was four,
so six looked safe. It was not. On the unit side it fired on loops that were
working.
Two renders showed the same signature -- unit=7 unit_failed=7 unit_max_repeat=1,
seven failures with none of them alike -- and in both the arm restarted the
functionality and the render scored 0/10. One of them burned its whole restart
budget and gave up in under five minutes. Every render without a unit restart
scored 2 or 3. Seven different failures is a loop working through issues one at a
time; restarting throws all of it away, which is a far worse trade than the one
the conformance side makes by discarding a single test file.
In both harmful cases unit_max_repeat was 1, so the streak arm would never have
fired. That arm stays: across three renders every healthy functionality finished
with unit_max_repeat=1, and nothing was observed between that and the 17 reached by
the one that wedged, so a streak of three is a state healthy renders do not enter.
The conformance loop keeps both arms. There the consecutive arm is what catches a
loop failing 40 times out of 40 with a longest identical run of two, which no
streak threshold reaches, and its remedy costs one regenerated test rather than a
functionality's implementation.
Removing it does not make such a unit loop run forever; it stops where it always
did, at the attempt limit.1 parent f27465f commit c817b2b
2 files changed
Lines changed: 55 additions & 14 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
168 | 168 | | |
169 | 169 | | |
170 | 170 | | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
171 | 186 | | |
172 | 187 | | |
173 | 188 | | |
174 | | - | |
175 | | - | |
176 | | - | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
177 | 192 | | |
178 | 193 | | |
179 | 194 | | |
180 | 195 | | |
181 | 196 | | |
182 | | - | |
183 | | - | |
184 | | - | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
185 | 201 | | |
186 | 202 | | |
187 | 203 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
6 | | - | |
7 | | - | |
8 | | - | |
9 | | - | |
10 | | - | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
11 | 15 | | |
12 | 16 | | |
13 | 17 | | |
| |||
62 | 66 | | |
63 | 67 | | |
64 | 68 | | |
65 | | - | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
66 | 79 | | |
67 | | - | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
68 | 93 | | |
69 | 94 | | |
70 | 95 | | |
| |||
0 commit comments