max / makenotwork
- Co-Authored-By
- Claude Opus 5 (1M context) <noreply@anthropic.com>
1 file changed,
+23 insertions,
-0 deletions
| @@ -58,6 +58,29 @@ | |||
| 58 | 58 | # rejected: it would turn "this file was replaced" into a line in a log nobody | |
| 59 | 59 | # reads, on a box whose whole job is to be looked at. | |
| 60 | 60 | # | |
| 61 | + | # STEP 2 IS NOT AUTOMATIC, AND 2026-08-19 IS WHY. Sando build 60 failed | |
| 62 | + | # code_smoke with seventeen digest mismatches at once, every one of them a | |
| 63 | + | # metmuseum.org URL. Following step 1 cleared all seventeen: the API still | |
| 64 | + | # reports isPublicDomain true for each object, each object's title and artist | |
| 65 | + | # still match this file, and each `url` is still the object's own | |
| 66 | + | # `primaryImage`. Then step 2 refused to apply. Re-fetching from fw13 returned | |
| 67 | + | # the digest ALREADY PINNED HERE, for all seventeen, twice over with two HTTP | |
| 68 | + | # clients, and six consecutive GETs of one asset were byte-identical with a | |
| 69 | + | # stable etag whose `last-modified` is 2023-05-03. Nothing had changed at the | |
| 70 | + | # source and there was nothing to repin. | |
| 71 | + | # | |
| 72 | + | # So a mismatch does NOT imply the pin is stale. It can also mean the fetch got | |
| 73 | + | # a variant, and pasting that variant's digest in would pin the wrong bytes and | |
| 74 | + | # fail the next build that gets the canonical ones. One oddity worth knowing | |
| 75 | + | # while diagnosing: HEAD on that asset reports content-length 1238267 while GET | |
| 76 | + | # consistently returns 1222008 bytes, so the origin does describe more than one | |
| 77 | + | # encoding of the same object. | |
| 78 | + | # | |
| 79 | + | # BEFORE REPINNING ANYTHING, re-fetch by hand and confirm the digest you are | |
| 80 | + | # about to paste is one you can reproduce twice. If it matches what is already | |
| 81 | + | # here, the pin is right and the build is what went wrong: rebuild rather than | |
| 82 | + | # edit this file. | |
| 83 | + | # | |
| 61 | 84 | # Two sources, both chosen because the licence is machine-readable at the | |
| 62 | 85 | # source rather than asserted by a human reading a page: | |
| 63 | 86 | # |