Commit e99beb6
authored
fix(release): verified, gated mirroring — the pipeline proves its own completeness (A4) (#201)
Root fixes for the 0.0.85 publish incident (one stuck gh upload → >1h hang
→ silently incomplete mirror → downstream install 404s):
- publish-ecosystem: timeout-minutes 20 (was unbounded, 6h ceiling).
- mirror_res.sh GH section gets the SAME protection its GitCode section
always had: per-file timeout 300, post-upload download-200 verification,
delete-and-reupload retry <=5 (the observed bad asset state cleared on
re-upload). Both sections now skip assets already serving 200, so
incident-recovery re-runs are seconds, not a full re-mirror.
- Completeness gate verifies every asset on every ENABLED host and its
non-zero exit is now BLOCKING in release.yml — the old
'|| echo non-blocking' swallowed exactly this signal on 0.0.85. The
index bump step is blocking for the same reason.
- ci-fresh-install: new wait-index gate job — post-release runs poll
xim-pkgindex's mcpp.lua for the released version (<=15min) instead of
racing the bump-PR merge (0.0.85: failed 55s after merge).
Verified: bash -n + YAML parse; positive run against the complete 0.0.85
mirror (16/16 assets 200 on both hosts, gate exit 0, skip path exercised);
negative run with an injected missing asset exits 1 naming it.
Design: .agents/docs/2026-07-08-root-cause-remediation-design.md A4.1 parent 401c13f commit e99beb6
3 files changed
Lines changed: 80 additions & 11 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
52 | | - | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
53 | 58 | | |
| 59 | + | |
54 | 60 | | |
55 | 61 | | |
56 | 62 | | |
57 | 63 | | |
58 | | - | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
59 | 78 | | |
60 | 79 | | |
61 | 80 | | |
62 | 81 | | |
63 | 82 | | |
64 | 83 | | |
| 84 | + | |
65 | 85 | | |
| 86 | + | |
66 | 87 | | |
67 | 88 | | |
68 | 89 | | |
69 | 90 | | |
70 | 91 | | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
71 | 96 | | |
72 | | - | |
| 97 | + | |
73 | 98 | | |
74 | 99 | | |
75 | 100 | | |
| |||
80 | 105 | | |
81 | 106 | | |
82 | 107 | | |
83 | | - | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
84 | 112 | | |
85 | 113 | | |
86 | | - | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
87 | 118 | | |
88 | 119 | | |
89 | 120 | | |
90 | | - | |
| 121 | + | |
91 | 122 | | |
92 | 123 | | |
93 | | - | |
| 124 | + | |
94 | 125 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
38 | 66 | | |
| 67 | + | |
39 | 68 | | |
40 | 69 | | |
41 | 70 | | |
| |||
142 | 171 | | |
143 | 172 | | |
144 | 173 | | |
| 174 | + | |
145 | 175 | | |
146 | 176 | | |
147 | 177 | | |
| |||
228 | 258 | | |
229 | 259 | | |
230 | 260 | | |
| 261 | + | |
231 | 262 | | |
232 | 263 | | |
233 | 264 | | |
| |||
289 | 320 | | |
290 | 321 | | |
291 | 322 | | |
| 323 | + | |
292 | 324 | | |
293 | 325 | | |
294 | 326 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
707 | 707 | | |
708 | 708 | | |
709 | 709 | | |
| 710 | + | |
| 711 | + | |
| 712 | + | |
710 | 713 | | |
711 | 714 | | |
712 | 715 | | |
| |||
725 | 728 | | |
726 | 729 | | |
727 | 730 | | |
728 | | - | |
729 | | - | |
| 731 | + | |
| 732 | + | |
| 733 | + | |
| 734 | + | |
730 | 735 | | |
731 | 736 | | |
732 | 737 | | |
| |||
735 | 740 | | |
736 | 741 | | |
737 | 742 | | |
738 | | - | |
739 | | - | |
| 743 | + | |
| 744 | + | |
| 745 | + | |
740 | 746 | | |
741 | 747 | | |
742 | 748 | | |
| |||
0 commit comments