Commit ff79ffb
ADFA-4128: qb 09 review fixes — snapshot defense, baseline semantics, d8 + stable-ids surfacing
Review findings (PR #1721, all four Important items):
1. Stale shrunk-snapshot on re-configure -> configure fingerprints the classpath
jars (path+size+CRC) and wipes shrunk-classpath-snapshot.bin plus ic/ when the
bytes changed, keeping them when identical. Covered by IncrementalCompilerTest
"re-configuring over an in-place rewritten classpath jar discards the stale
shrunk snapshot" and its byte-identical keep-warm companion.
2. "Deployed" baseline that no deploy ever acks -> deployedOutputs renamed to
lastGoodOutputs with honest KDoc, and a compile declaring EVERY source changed
now rebaselines: the output diff runs against nothing and reports the whole
tree, giving clients a wire-compatible recovery after a failed dex/deploy.
Covered by IncrementalCompilerTest "declaring every source changed rebaselines
- the whole output tree is reported changed". ROUTED(qb-08 core-orchestration
/ qb-11 app): the orchestrator must still force a full-changed compile
(ChangedFiles.Unknown) after a failed dex/deploy; today it only re-queues the
batch. No protocol-module change.
3. d8 diagnostics not captured -> a DiagnosticsHandler proxy is installed via
D8Command.builder(handler); collected error diagnostics are appended (bounded)
to the Failed message instead of the bare "Compilation failed to complete".
Covered by DexToolEdgeTest "a d8 failure surfaces d8's own error diagnostics,
not only the generic message" (runtime-compiled fake r8, runs untethered).
4. Silent stable-ids degrade -> relink fails a named-but-missing stableIds file
before aapt2 runs; only an explicit null links unpinned. Covered by
Aapt2LinkEdgeTest "a named but missing stable-ids file fails the relink
instead of silently linking unpinned".
Tests are written to fail without their fix but were NOT executed here (no-build
constraint on this fix pass); verify with :quickbuild:daemon:test.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Kj9YeCDHGp9DU8LPtfWJ7W1 parent 2ba0f4a commit ff79ffb
8 files changed
Lines changed: 459 additions & 19 deletions
File tree
- quickbuild/daemon/src
- main/kotlin/org/appdevforall/cotg/quickbuild/daemon
- compile
- dex
- res
- test/kotlin/org/appdevforall/cotg/quickbuild/daemon
- compile
- dex
- res
Lines changed: 5 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
179 | 179 | | |
180 | 180 | | |
181 | 181 | | |
182 | | - | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
183 | 185 | | |
184 | 186 | | |
185 | 187 | | |
| |||
278 | 280 | | |
279 | 281 | | |
280 | 282 | | |
| 283 | + | |
| 284 | + | |
281 | 285 | | |
282 | 286 | | |
283 | 287 | | |
| |||
Lines changed: 86 additions & 10 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
34 | 39 | | |
35 | 40 | | |
36 | 41 | | |
| |||
66 | 71 | | |
67 | 72 | | |
68 | 73 | | |
69 | | - | |
70 | | - | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
71 | 79 | | |
72 | 80 | | |
73 | 81 | | |
| |||
138 | 146 | | |
139 | 147 | | |
140 | 148 | | |
141 | | - | |
142 | | - | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
143 | 154 | | |
144 | 155 | | |
145 | 156 | | |
146 | | - | |
| 157 | + | |
147 | 158 | | |
148 | 159 | | |
149 | 160 | | |
150 | 161 | | |
| 162 | + | |
151 | 163 | | |
152 | 164 | | |
153 | 165 | | |
| |||
165 | 177 | | |
166 | 178 | | |
167 | 179 | | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
168 | 232 | | |
169 | 233 | | |
170 | 234 | | |
171 | 235 | | |
172 | 236 | | |
173 | | - | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
174 | 240 | | |
175 | 241 | | |
176 | 242 | | |
| |||
201 | 267 | | |
202 | 268 | | |
203 | 269 | | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
204 | 276 | | |
205 | | - | |
| 277 | + | |
206 | 278 | | |
207 | 279 | | |
208 | 280 | | |
| |||
267 | 339 | | |
268 | 340 | | |
269 | 341 | | |
270 | | - | |
271 | | - | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
272 | 345 | | |
273 | 346 | | |
274 | 347 | | |
| |||
332 | 405 | | |
333 | 406 | | |
334 | 407 | | |
335 | | - | |
| 408 | + | |
336 | 409 | | |
337 | 410 | | |
338 | 411 | | |
| |||
611 | 684 | | |
612 | 685 | | |
613 | 686 | | |
| 687 | + | |
| 688 | + | |
| 689 | + | |
614 | 690 | | |
615 | 691 | | |
Lines changed: 117 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| 5 | + | |
5 | 6 | | |
| 7 | + | |
| 8 | + | |
6 | 9 | | |
7 | 10 | | |
8 | 11 | | |
| |||
85 | 88 | | |
86 | 89 | | |
87 | 90 | | |
| 91 | + | |
88 | 92 | | |
89 | 93 | | |
90 | | - | |
| 94 | + | |
91 | 95 | | |
92 | 96 | | |
93 | 97 | | |
| |||
102 | 106 | | |
103 | 107 | | |
104 | 108 | | |
105 | | - | |
| 109 | + | |
106 | 110 | | |
107 | 111 | | |
108 | 112 | | |
109 | 113 | | |
110 | 114 | | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
111 | 135 | | |
112 | 136 | | |
113 | 137 | | |
114 | 138 | | |
115 | 139 | | |
| 140 | + | |
| 141 | + | |
116 | 142 | | |
117 | 143 | | |
118 | 144 | | |
119 | 145 | | |
120 | 146 | | |
121 | 147 | | |
| 148 | + | |
122 | 149 | | |
123 | 150 | | |
124 | 151 | | |
| 152 | + | |
125 | 153 | | |
126 | 154 | | |
127 | | - | |
| 155 | + | |
| 156 | + | |
128 | 157 | | |
129 | 158 | | |
130 | 159 | | |
| |||
194 | 223 | | |
195 | 224 | | |
196 | 225 | | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
197 | 308 | | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
198 | 312 | | |
199 | 313 | | |
200 | 314 | | |
| |||
0 commit comments