The gacha critical path, as a ladder
Gall’s Law rungs, hours calibrated against RFD 1130 and RFD 2133–2135, 2026-08-31
Each rung is a small working system that the next extends: the whole pipeline runs at every point, with fewer steps at the bottom and more at the top. A pull is a gacha item only after rung 6; the pool at rung 7 and the public page at rung 9 are the last two rungs, not parallel tracks.
The ladder
Every rung shows something: rung 1 is a mesh, rung 4 is a moving figure, rung 6 is a VRM you can hand a friend, rung 8 is a page a stranger clicks. A rung is done when its output feeds the next one and a control run on a known-broken input fails.
The rungs, in order
| # | Rung | Output | Negative control |
|---|---|---|---|
| 0 | text → image (OmniGen2) | one reference image per prompt | image dimensions match target |
| 1 | image → mesh (Pixal3D) | one mesh per image on the desk 3090 | image in, mesh out, geometry non-empty |
| 2 | mesh → judged (EditScore) | a number per (prompt, mesh) | planted-good scores above threshold, planted-bad below |
| 3 | judged → repaired (VoxHammer) | passing mesh, or a recorded refusal | a planted broken mesh reaches passing or refuses |
| 4 | passing mesh → skinned (SkinTokens) | rig against canonical ANNY | EditScore on posed frames passes, bent-rig control fails |
| 5 | skinned mesh → tagged (VoxHammer + EditScore recovery) | 23-tag per-vertex primvar | every vertex tagged (RFD 1121); planted mislabeled partition converges to canonical |
| 6 | tagged rig → VRM | one command, portable file | opens in Godot and a third-party VRM viewer |
| 7 | prompt list → pool | ~50 VRMs, seed-reproducible | rerun by seed matches; brokered rents ride RFDs 2133–2135 |
| 8 | pool → roll button | a page dispensing one VRM per pull | two rolls, two distinct VRMs |
| 9 | public | hosted page, sponsor link, disclosure | link resolves, disclosure present |
Ground already laid
- image-to-mesh through the baked USD-to-Godot path
- canonical ANNY body (317 shapes, phenotype clips, character rig)
- MToon materials, OmniGen2 variation + judge, TokenRig forward pass
- spend infrastructure the higher rungs lean on: spot-broker (RFD 2133), mutual-TLS FDB with continuous Tigris backup (RFD 2134), machine checks that watch both (RFD 2135)
The same ladder as a PERT network
The ladder read as a PERT chain, so the schedule shape stays legible next to the demo shape. Estimates are in focused hours, not working days: RFD 1130 measured pipeline stages in MM:SS, RFD 1016 in projected hours, and today’s own arc calibrated the smaller ones against real work — RFD 2133–2135 shipped end to end in roughly 8–10 focused hours across a day. A day of continuous 8-hour focus is not a real unit here; the honest atom is the session. te = (O + 4M + P)/6.
| Rung | O (h) | M (h) | P (h) | te (h) | σ (h) |
|---|---|---|---|---|---|
| 0 text→image (OmniGen2) | 1 | 2 | 4 | 2.2 | 0.50 |
| 1 image→mesh (Pixal3D) | 1 | 2 | 4 | 2.2 | 0.50 |
| 2 EditScore judge | 2 | 4 | 8 | 4.3 | 1.00 |
| 3 repair (VoxHammer) | 3 | 6 | 12 | 6.5 | 1.50 |
| 4 skin-mode (SkinTokens→ANNY) research risk | 6 | 16 | 48 | 19.7 | 7.00 |
| 5 partition recovery (VoxHammer + EditScore) | 3 | 6 | 12 | 6.5 | 1.50 |
| 6 seed→VRM | 2 | 3 | 5 | 3.2 | 0.50 |
| 7 pool ×50 | 2 | 4 | 8 | 4.3 | 1.00 |
| 8 roll button | 3 | 6 | 12 | 6.5 | 1.50 |
| 9 ship | 1 | 1.5 | 3 | 1.7 | 0.33 |
Sum of te: 57.1 hours, σ 7.7 (finish window 49–65 hours). At 5 focused hours a day (RFD 2135’s duty-hours note) that is roughly 10–13 working days wall-clock. Rung 4 dominates the variance — it is the one research risk on the chain and every other rung is integration. The chain is the critical path because it IS the chain; ladder rungs have no non-critical siblings by construction, which is the Gall’s Law property this shape buys.
What is not on this ladder
The 10 absent attachment tags (headwear, tail, wings…) are wave 2 by RFD 1121’s own route: nothing exists to tag until a later ladder generates them, so they are off-chart by design.