Agent Armies · labs

The labs dashboard

Every lab and every harness, read from its sources of record at build time and never from a hand-kept list. Built from labs 559201a. Static HTML: no scripts, no fonts, no credentials.

Edition of 2026-09-03, frozen; the live page is the labs dashboard root.

Labs on the ledger

6

3 open, 2 waiting on rails, 1 killed

Sources healthy

20 of 20

1 answered with a warning, see Sources

GPU lock

no lock

no active lab1-* unit reported

Negative controls

3 passed · 3 not run · 0 failed

negative controls only; oracle integrity checks are separate

GPU waiters

0

nobody waiting

Labs

One row per lab: its card, its hypothesis in one line, the date it dies and the bar it must clear, the latest row it measured and the row it must beat, the any-coordinate row beside the home row where one exists, and its ledger status. A lab's own rows diagnose; only eval's blind verdict gates.

LabCardHypothesisKill date and criterionLatest measured rowMust beatAny-coordinate rowLedger status

LAB-1

lab-earth-compiler

LAB-1 In Progress

Diffusion models post-trained on our own data: the generative Earth compiler v0 over…

A conditional generative pass over imperfect Earth sources emits the layers the tile compiler wants (ortho, materials, heights, tree instances, facade classes) with `authored` provenance and a confidence…

2026-09-30

Keep only if all three hold on `input=real-s2`: 1. LPIPS on the Travis strip at most 0.85 × the best of `bicubic`, `classical` and `sr-small`. 2. FID on the Travis strip below every baseline's. 3.…

sdxl-control-lora · LPIPS 0.5263 · FID 61.87 clean tree

receipt 07:16 UTC · 24e2f24

Leader sdxl-control-lora: LPIPS 0.5263 · FID 61.87 · KID 0.016 · n=1018 · real-s2

receipt 07:16 UTC · 24e2f24 clean tree

Newest receipt 07:19 UTC (negative-control): 24e2f24 clean tree

LPIPS ≤ 0.5343 and FID < 233.66

0.85 × sr-small LPIPS 0.6286; FID under sr-small 233.66

on input=real-s2; eval's blind swipe at two to one over classical gates

sdxl-control-lora on anycoord.v1: LPIPS 0.6096 · FID — clean tree

sdxl-control-lora on anycoord.v2: LPIPS 0.6146 · FID — clean tree

classical-worldcover-mean on anycoord.v2: LPIPS 0.7151 · FID — clean tree

bicubic on anycoord.v2: LPIPS 0.7247 · FID — clean tree

classical-lanczos-unsharp on anycoord.v2: LPIPS 0.7272 · FID — clean tree

classical-worldcover-colour on anycoord.v2: LPIPS 0.7314 · FID — clean tree

classical-worldcover-colour on anycoord.v1: LPIPS 0.7453 · FID — clean tree

classical-worldcover-mean on anycoord.v1: LPIPS 0.7496 · FID — clean tree

bicubic on anycoord.v1: LPIPS 0.7610 · FID — clean tree

classical-lanczos-unsharp on anycoord.v1: LPIPS 0.7645 · FID — clean tree

anycoord.v1: 256 world cells, 14 with truth, frozen 2026-09-02

anycoord.v2: 2,000 world cells, 112 with truth, frozen 2026-09-02

open

the row at target is in, the lab's claim and a diagnostic until eval judges it (EVAL-11): sdxl-control-lora (rank-64 LoRA + a 98 M control network…

Gain: the criterion as HYPOTHESIS.md wrote it before any row, LPIPS ≤ 0.5343 and FID < 233.66 on real-s2 (sr-small…

Detail: scoreboard, receipts, registries, criterion

Scoreboard: the newest row per model, lowest LPIPS first

ModelRoleInputSetnLPIPSFIDKIDTreeCommitReceipt
vae-ceilingceilingreal-s2travis10180.05909.820.001 clean tree24e2f2407:16 UTC
sdxl-control-loracandidatereal-s2travis10180.526361.870.016 clean tree24e2f2407:16 UTC
sdxl-control-loracandidatereal-s2anycoord.v1140.6096—— clean tree24e2f2407:18 UTC
sdxl-control-loracandidatereal-s2anycoord.v21120.6146—— clean tree24e2f2407:19 UTC
sr-smallbaselinereal-s2travis10180.6286233.660.180 clean treef7a0cf618:40 UTC
classical-worldcover-meanbaselinereal-s2travis10180.6635404.310.423 clean tree24e2f2407:16 UTC
classical-worldcover-colourbaselinereal-s2travis10180.6713363.400.359 clean tree24e2f2407:16 UTC
bicubicbaselinereal-s2travis10180.6854416.790.445 clean tree24e2f2407:16 UTC
classical-lanczos-unsharpbaselinereal-s2travis10180.6886397.980.424 clean tree24e2f2407:16 UTC
classical-worldcover-meanbaselinereal-s2anycoord.v21120.7151—— clean tree24e2f2407:19 UTC
bicubicbaselinereal-s2anycoord.v21120.7247—— clean tree24e2f2407:19 UTC
classical-lanczos-unsharpbaselinereal-s2anycoord.v21120.7272—— clean tree24e2f2407:19 UTC
classical-worldcover-colourbaselinereal-s2anycoord.v21120.7314—— clean tree24e2f2407:19 UTC
classical-worldcover-colourbaselinereal-s2anycoord.v1140.7453—— clean tree24e2f2407:18 UTC
classical-worldcover-meanbaselinereal-s2anycoord.v1140.7496—— clean tree24e2f2407:18 UTC
bicubicbaselinereal-s2anycoord.v1140.7610—— clean tree24e2f2407:18 UTC
classical-lanczos-unsharpbaselinereal-s2anycoord.v1140.7645—— clean tree24e2f2407:18 UTC

Negative control 07:19 UTC: nc-noise-bicubic LPIPS 0.9216, beats bicubic: False; nc-noise-white LPIPS 0.7437, beats bicubic: False; nc-shuffled LPIPS 0.7953, beats bicubic: False. Held-out registry SHA-256 e3743f08605f2f11….

Receipts fetched by URL at build time: measure-20260902T172415Z-77645bc8ec58.json · measure-20260902T173233Z-fdb97b77c83f.json · measure-20260902T184007Z-f7a0cf643988.json · measure-20260902T192013Z-d22b86cf9397.json · measure-20260902T235003Z-77d7f458c8c5.json · measure-20260902T235123Z-77d7f458c8c5.json · measure-20260903T004249Z-77d7f458c8c5.json · measure-20260903T023933Z-77d7f458c8c5.json · measure-20260903T024052Z-77d7f458c8c5.json · measure-20260903T024113Z-77d7f458c8c5.json · measure-20260903T065949Z-79833aa5436d.json · measure-20260903T070150Z-79833aa5436d.json · measure-20260903T071659Z-24e2f24f7d8e.json · measure-20260903T071859Z-24e2f24f7d8e.json · measure-20260903T071934Z-24e2f24f7d8e.json · negative-control-20260902T172258Z-77645bc8ec58.json · negative-control-20260902T173148Z-fdb97b77c83f.json · negative-control-20260902T235115Z-77d7f458c8c5.json · negative-control-20260902T235129Z-77d7f458c8c5.json · negative-control-20260903T004301Z-77d7f458c8c5.json · negative-control-20260903T024045Z-77d7f458c8c5.json · negative-control-20260903T024059Z-77d7f458c8c5.json · negative-control-20260903T024125Z-77d7f458c8c5.json · negative-control-20260903T070138Z-79833aa5436d.json · negative-control-20260903T070200Z-79833aa5436d.json · negative-control-20260903T071847Z-24e2f24f7d8e.json · negative-control-20260903T071909Z-24e2f24f7d8e.json · negative-control-20260903T071951Z-24e2f24f7d8e.json

Any-coordinate registries, frozen before scoring and excluded from training

RegistryCellsWith truthFrozenSHA-256Read from
anycoord.v1256142026-09-02d1862cc26ba75f32…fixtures/anycoord.v1.json at origin/task/LAB-1-grind-v0 · on the grind branch (PR #2), not on main yet
anycoord.v22,0001122026-09-02711a673177620fc1…gpu-node:work/lab-earth-compiler/grind/fixtures/anycoord.v2.json · frozen in the grind's work tree, not pushed yet

Kill criterion (2026-09-30, or earlier if the metric moves)

Keep only if all three hold on input=real-s2:

  • LPIPS on the Travis strip at most 0.85 × the best of bicubic, classical and sr-small.
  • FID on the Travis strip below every baseline's.
  • Eval's blind swipe on the Austin block prefers the model over classical at two to one or better. Only eval's verdict gates; the rows diagnose. A model given noise in place of conditioning must not beat bicubic; if it does, the metric is broken and no row counts until it is fixed.

Ledger receipts: setup PR #1, merged · grind PR #2 · scoreboard row, 18:44 UTC · criterion decision, 19:05 UTC · anycoord.v2 frozen, 20:3x UTC · first generative row, 23:52 UTC · the control failure is the metric, 00:06 UTC · lead's re-derivation and decisions, 00:3x UTC · PRs #5, #6, #7 merged: Overpass, 512 px control, the pin survives the pruner · final row at target, re-derived from six receipts, 2026-09-03 02:47 UTC · Travis measure receipt · Travis control receipt · EVAL-11's answer, 2026-09-03 01:37 UTC

Full hypothesis

A conditional generative pass over imperfect Earth sources emits the layers the tile compiler wants (ortho, materials, heights, tree instances, facade classes) with `authored` provenance and a confidence, trained without labels by degrading places that have good data (RESEARCH.md §4). v0 tests the load-bearing half of that claim: that a generative model conditioned on coarse public sources produces an ortho that is clearly closer to reality than interpolation plus classical processing of the same inputs.

Full ledger status

open — the row at target is in, the lab's claim and a diagnostic until eval judges it (EVAL-11): sdxl-control-lora (rank-64 LoRA + a 98 M control network, 29-channel conditioning) trained to 14,404 GPU s on the frozen Travis strip, one pinned checkpoint step-00002642.pt, clean tree at 77d7f458, six receipts of 2026-09-03 02:39 to 02:41 UTC fetched through the public host and equal by SHA-256 to the rig's. Travis, input=real-s2, n=1018: LPIPS 0.5263 / FID 61.87 / KID 0.0164 (from 0.5331 / 73.64 / 0.0235 at 7,061 GPU s on 2026-09-02); the bar (LPIPS ≤ 0.5343 and FID < 233.66) holds, LPIPS by 0.0080; VAE ceiling 0.0590 / 9.82; baselines reproduced to the digit in the same receipt (worldcover-mean 0.6635 / 404.31, worldcover-colour 0.6713 / 363.40, bicubic 0.6854 / 416.79, lanczos-unsharp 0.6886 / 397.98; sr-small's 0.6286 / 233.66 stands from its earlier receipt); negative control passed, margin 0.054 (nc-shuffled 0.7394 the nearest to bicubic). anycoord.v2 (112 truth cells): 0.6146 against bicubic 0.7247 and worldcover-mean 0.7151, its own control passed by 0.019 (white noise 0.7437), so it counts as the lab's claim with its sentence on every worldwide row: on wild high-frequency content noise beats bicubic on about 46 % of cells against Travis's 12 % and LPIPS-VGG stops discriminating there (EVAL-11 999df8c2: a measured fact about the metric, never a gate; DISTS and the per-cell control pass rate go beside it); from 0.6133 at 7,061 GPU s the worldwide row did not move while every Travis number improved: the model learns Travis, not the world, so the next iteration changes what the model sees rather than training longer. anycoord.v1 (14 cells): 0.6096, its own control failed (white noise 0.7427 beats bicubic 0.7610), a diagnostic

LAB-2

lab-satellite-vision

LAB-2 In Progress

Classic machine vision classifying satellite and aerial data into compiler layers

Segmentation and classification models over NAIP (0.3 to 0.6 m) and Sentinel-2 (10 m), helped by lidar where it exists, produce compiler-grade layers (land cover, roofs and roof material, tree crowns…

2026-09-30

unless the metric moves first

Kill on 2026-09-30 unless the metric moves first. Kill earlier if, by 2026-09-16, no v0 class beats its baseline IoU on Austin…

no IoU row yet

labels.v1 frozen: 20 tiles (austin), 60 files, digest 2b683c32…

two-pass agreement 66.9 % pixels, class IoU 29.8 % (a sample of one tile) ceiling

digest not yet committed to the lab's fixture (held until the blind second pass)

the current layers, blind

none registered

open

setup merged; labels.v1 (Austin, 20 tiles, 1,084 land-cover polygons, 250 roofs, 827 tree points) frozen on R2 at labs/lab-satellite-vision/labels.v1/, digest 2b683c32……

Gain: no judged result yet; any IoU against labels.v1 carries the agreement ceiling in the same row

Detail: the frozen set, its ceiling, the pilot images, criterion

labels.v1: 20 tiles over austin, 60 files, 1,709,929 bytes; freeze digest 2b683c32303641ad5ea165230392c262952d838c4e5cbda4b3072abc52160aef; evidence copy gpu-node:evidence/lab-satellite-vision/labels.v1.freeze.json.

The oracle's ceiling, measured on a sample of one tile labelled twice: pixel agreement 66.9 %, mean class IoU 29.8 % (LAB-2 comment 20:56 UTC). Any IoU against labels.v1 carries this ceiling in the same row; shrub has no polygons in the set.

Spend recorded in docs/spend.md: 0 USD.

Labeller pilot overview for Austin
Austin pilot overview · NAIP-derived imagery, USDA public domain.
Labeller pilot overview for Santa Barbara
Santa Barbara pilot overview · NAIP-derived imagery, USDA public domain.
Labelled land-cover tile 8644b4d35-00
Tile 8644b4d35-00 · land-cover mask from labels.v1, drawn on 2022-06-08 NAIP imagery (USDA public domain) with 2017 USGS 3DEP lidar height above ground. Map services and data available from U.S. Geological Survey, National Geospatial Program.

Kill criterion

Kill on 2026-09-30 unless the metric moves first. Kill earlier if, by 2026-09-16, no v0 class beats its baseline IoU on Austin, or if eval's blind swipe of the compiled block with our layers does not beat the block with the current layers. A negative result is a result; the card's Result section gets it.

Ledger receipts: setup and pull PR #1, merged · pilot checkpoint and decisions, 18:20 UTC · labels.v1 frozen, 20:56 UTC

Full hypothesis

Segmentation and classification models over NAIP (0.3 to 0.6 m) and Sentinel-2 (10 m), helped by lidar where it exists, produce compiler-grade layers (land cover, roofs and roof material, tree crowns; later species and road surface) for the seventeen portal places faster and cheaper than generation. This is the proven path beside the dark horse (LAB-1, `lab-earth-compiler`); our classical layers are also LAB-1's kill baseline ("bicubic plus classical"), so they must exist before LAB-1 can be judged.

Full ledger status

open — setup merged; labels.v1 (Austin, 20 tiles, 1,084 land-cover polygons, 250 roofs, 827 tree points) frozen on R2 at labs/lab-satellite-vision/labels.v1/, digest 2b683c32…, verified by a fresh client; NOT committed to the lab's fixture until a blind second labeller re-labels 3 to 5 tiles and the per-class agreement is published beside it (one-tile sample: 66.9 % pixel agreement, mean class IoU 29.8 %; no shrub polygons); Santa Barbara unlabelled; labelling cost measured at 9 to 15 minutes per canvas block

LAB-3

lab-llm-authored

LAB-3 Done

Existing models chained together with LLMs authoring data…

Chains of existing models (a frontier vision-language model over ortho, street imagery and tags; open detectors and captioners; a reasoning pass that reconciles sources) can author the semantic fields real data lacks (what a building is…

2026-09-30

unless the metric moves first

The precision bar passes when at least one arm beats both baselines on at least four building fields on both places. A row whose `control` is `failed` or `none` is a diagnostic and is outside this table…

112 precision rows

austin-barton-hills v1: 1,156 records over 197 units private; local digest recorded

seattle-pike-place v1: 1,082 records over 217 units private; local digest recorded

B0 receipts named on the card: 2, answering by URL: 2 all answer

the compiled block without authored layers

none registered

killed

2026-09-03

Gain: none on the card's metric: the hypothesis is falsified on two providers (Claude…

Detail: ground truth, B0 receipts, rows, criterion

Frozen ground truth (groundtruth/frozen.json at origin/main, f19ae04)

PlaceVersionUnitsRecordsUnknown everywherePrivate truth
austin-barton-hillsv11971,156facade_material, furniture8ef6982099f8… private (public URL 404)
seattle-pike-placev12171,082facade_material, furniture0e82ca4fc5e0… private (public URL 404)

Frozen ground truth per place: R2 key under labs/lab-llm-authored/groundtruth/, SHA-256, the labeller's run id and date. Regenerated whole, never edited; a correction is a new version with a new digest. facade_material and furniture are unknown for every unit in v1: no cleared source sees facades or street furniture (assessor records carry no exterior wall; no street imagery is cleared)…

B0 tags-only runs and their shuffled controls, as named on the card

RunReceiptBy URL
20260903T065418Z-A2-vlm-gpt-N-austinreceipt.json answers
20260903T064638Z-A2-vlm-gpt-austinreceipt.json answers

measure/rows.csv at origin/main: 112 rows.

Kill and graduation

The precision bar passes when at least one arm beats both baselines on at least four building fields on both places. A row whose control is failed or none is a diagnostic and is outside this table: it is never counted towards beating a baseline (docs/adr/0003). The blind-margin bar passes when eval's blind margin with the authored layers is above the margin without them. This is the complete decision table on 2026-09-30:

precision barblind-margin bardecision
passpassgraduate
passfailkill
failpasskill
failfailkill

At the kill date, failure of either bar kills the lab. Before the kill date, continue while both bars remain attainable and have not both passed; graduate as soon as both pass, and kill early only when the remaining planned evidence cannot make a failed bar pass. Graduation is a port into earth-data as an enrichment pass (NORMALIZE stage three), schema and confidence intact.

Ledger receipts: https://linear.app/agentarmies/issue/LAB-3/existing-models-chained-together-with-llms-authoring-data-semantic#comment-a03adbb6

Full hypothesis

Chains of existing models (a frontier vision-language model over ortho, street imagery and tags; open detectors and captioners; a reasoning pass that reconciles sources) can author the semantic fields real data lacks (what a building is, what a street feels like, which props belong) as `authored` fields with a calibrated confidence, at a precision that beats the tags alone and a single zero-shot pass, and eval's blind swipe can tell that authoring from noise. Both the precision bar and the blind-margin bar defined in the decision table must pass; failure of either at the kill date falsifies the hypothesis.

Full ledger status

killed 2026-09-03

LAB-4

lab-geometry-solves

LAB-4 In Progress

Geometry solves under constraints: the tile's one solved plan

A constraint solver over footprints, heights, roads, terrain and water produces one consistent plan per level-16 block whose failures are honest and local.

2026-09-30

or earlier, if the total violation count on the seventeen places has not fallen week over…

Kill on 2026-09-30, or earlier, if the total violation count on the seventeen places has not fallen week over week for two consecutive weeks against the raw baseline…

Austin: 351 raw → 116 → 90 located violations clean tree

9 cells · 20:10 UTC · f4ef229 · quarry column absent

comparison receipt

Summary 17:54 UTC: 351 raw → 116 after v0 on 9 cells

summary receipt · 8924a5d clean tree

Raw baseline 351 must fall week over week; quarry column absent

kill if counts only fall by raising terrain_edit_excess; eval's blind swipe gates

7 → 2 located applicable violations on 32 world cells clean tree

20:12 UTC · d6ba8fb · not evaluated: river_flows_uphill, body_solved_twice

any-coordinate receipt

anycoord.v1: 32 cells, seed 20260902, frozen before scoring

open

first result on the card's metric, diagnostic: the seventeen places (153 level-16 cells, one recipe: OSM via Overpass, pinned Overture 2026-08-19.0 footprints…

Gain: none yet; first week-over-week comparison due 2026-09-09 against raw 3300 on the seventeen places (and 351 on the…

Detail: classes, any-coordinate row, negative control, criterion

Austin, 9 cells: violations by class before and after iteration 2

ClassToleranceRawv0 beforev0 afterΔCells evaluated / n.a. / not evaluated
body_solved_twice0.001 m000+00 / 0 / 9
building_buried1.0 m1405045-59 / 0 / 0
building_floats0.3 m1666241-219 / 0 / 0
footprint_overlap1.0 m2000+09 / 0 / 0
river_flows_uphill0.1 m000+02 / 7 / 0
road_grade_excess35 percent411+09 / 0 / 0
road_grade_kink10 percentage_points4133+09 / 0 / 0
road_hits_building0.5 m2000+09 / 0 / 0
road_junction_step0.05 m000+09 / 0 / 0
terrain_edit_excess3.0 m000+09 / 0 / 0
water_above_bank0.3 m000+00 / 9 / 0
water_not_level0.05 m000+00 / 9 / 0

Any-coordinate v1 (32 world cells drawn with a seeded uniform draw over land, lab4-measure-anycoord-overture.service): footprints on 8, roads on 8, water on 6; quarry column absent; fixture SHA-256 420fdc628405b361….

Negative control on real data (austin-negative-control-20260902T1753Z.log): every applicable class must fire

ClassStateBeforeAfter
building_floatsfired330331
building_buriedfired261262
terrain_edit_excessfired01
road_junction_stepfired810
road_grade_kinkfired8182
road_grade_excessfired1617
road_hits_buildingfired46
water_not_levelnot_applicable00
water_above_banknot_applicable00
river_flows_uphillfired610
footprint_overlapfired01
body_solved_twicefired09

Receipts copied from the evidence store into this edition: lab-geometry-solves-austin-20260902T175400Z-summary.json · lab-geometry-solves-anycoord-20260902T201216Z-summary.json · lab-geometry-solves-austin-iter2-comparison-20260902T201016Z.json. The lab has no store token yet, so these copies are the public receipts.

Kill criterion

Kill on 2026-09-30, or earlier, if the total violation count on the seventeen places has not fallen week over week for two consecutive weeks against the raw baseline, or if eval's blind swipe does not prefer the solved Austin block over the quarry's by then. Kill also if the solver only lowers counts by raising terrain_edit_excess: that is flattening, not solving.

Ledger receipts: setup PR #1, merged · Austin rows, 17:59 UTC · iteration 2 and the any-coordinate row, PR #3 merged · rows and digests, 20:18 UTC · exact containment and the seventeen-place row, PR #4 merged as 1d83154 · seventeen-place row, 22:29 UTC · lead's reading, 22:4x UTC · iteration 3: terrain edits to zero, PR #5 merged as ae5c05f5 · scoreboard row, 23:33 UTC · lead's re-derivation, 23:3x UTC

Full hypothesis

A constraint solver over footprints, heights, roads, terrain and water, run once per S2 level-16 block (a cell and its 3×3 halo) in one local tangent frame, produces a single consistent plan in which buildings meet the ground, roads meet each other and buildings, and water is level; the compiler projects that plan to render and sim products; and every failure the solver cannot resolve is reported as a named, located violation rather than shipped silently. Corollary under test: solving bodies once by feature id removes the cross-cell steps that per-cell solving produces.

Full ledger status

open — first result on the card's metric, diagnostic: the seventeen places (153 level-16 cells, one recipe: OSM via Overpass, pinned Overture 2026-08-19.0 footprints, Copernicus GLO-30) 3300 raw → 2169 after v0 on 2026-09-02 (iteration 3, PR #5 merged as ae5c05f5): terrain_edit_excess 0, building_floats 568, building_buried 362, road_grade_kink 343, road_grade_excess 177, road_hits_building 664 and footprint_overlap 19 untouched (approach C's), no place worse than its previous v0 row and nine better; the 310 terrain-edit violations of the 22:29 UTC row (2478) were float32 rounding at the solver's own 3.00 m clamp, counted by the checker's strict bound and removed by a 1 cm margin in the solver with no tolerance, metric or checker change, so the earlier reading of them as approach A's flattening limit is withdrawn and the kill clause is not near; Austin lidar home row 351 → 116 → 90 and Austin under the uniform recipe 204 → 99 (separate series); any-coordinate row (32 frozen world cells) 6 raw, 2 v0, terrain edits 0; cell assignment is exact S2 containment since 1d83154 (tile-compiler's CMP-7 ask); negative control passed on real data (16 of 17 places, kilimanjaro not applicable)

LAB-6

lab-forge-props-bakeoff

LAB-6 In Progress

Pilot A, lab-forge-props-bakeoff: ten street-furniture items, five producer arms…

Ten street-furniture items through five producer arms and one blind judge show which arm ties or beats purchased assets at equal or fewer bytes

from the ledger; the card states a question

14 days from EVAL-5's negative controls passing

A1 parametric: loses every pair to A3 at equal bytes; A2 generative: cost per accepted asset above $5, or more than three surgery ops per item on average; A3 purchased: never; it is the baseline; A4 captured…

no judged pair yet

Blender Cycles 5.2.1 LTS: pass 1.9 s · 1,630 MiB

TRELLIS.2: fail before model load 67.8 s · 4 MiB

Hunyuan3D 2.1: pass 139.8 s · 8,340 MiB

Spend 0.0 USD of 300.0 USD cap; 0 paid calls

A3, purchased Megascans

none registered

waiting on rails

setup merged; toolchain proofs on gpu-node: Blender Cycles on the GPU (1.9 s, 1.6 GiB), Hunyuan3D 2.1 image-to-3D fits (140 s, 8.3 GiB, shape only), TRELLIS.2 blocked on a gated DINOv3 download…

Gain: not yet

Detail: proofs and criterion (the pilots panel has the arms, prices and licence question)

Toolchain proofs on gpu-node (docs/arm-toolchains.md)

toolresultfits in 24 GBwall timedevice peakoutput
Blender Cycles 5.2.1 LTSpass: OptiX bound the RTX GPU; forced CPU exited 3 with its PNG still writtenyes1.9 s1,630 MiBPNG, 222,305 bytes; triangles not applicable
TRELLIS.2fail before model load: supplied Hugging Face account lacks access to gated DINOv3 dependency (403)no (unproven)67.8 s4 MiBnone
Hunyuan3D 2.1pass: image-to-shape mesh; optional PBR paint remains out of this proofyes for shape; PBR unproven139.8 s8,340 MiBraw GLB, 666,184 triangles, 11,992,084 bytes

Arms and kill criteria (AST-2 §3)

Every arm produces every item; every output goes through the same validate and the same judge (EVAL-5). Arms interleave in judged windows so host load never confounds a result.

armmethodkill if
A1 parametricheadless Blender 5.2 LTS (Cycles on the GPU) from measurements read off the references; parameters in a JSON spec, geometry from a shared generatorloses every pair to A3 at equal bytes
A2 generativeimage-to-3D from the reference photos: TRELLIS.2 and Hunyuan3D 2.1 self-hosted on gpu-node; Tripo and Meshy by API as controls; then the quarry's Blender surgery rail (scripts/assetgen/surgery, fix-don't-reroll) for named defectscost per accepted asset above $5, or more than three surgery ops per item on average
A3 purchasedthe matching free Megascans asset (docs/a3-baseline-inventory.md), retopologised only by best-in-class tools with tool, version and params recordednever; it is the baseline
A4 capturedphotogrammetry or Gaussian splat from a multi-view photo set of the real object, meshed and cleanedover budget after cleanup, or judge prefers A3
A5 hybridA2 or A4 geometry with A1 measurements as constraints and A3 material responseonly run if two single arms both pass

Ledger receipts: setup PR #2, merged · proof table · state and rail date, 17:52 UTC · legal rows, orchestrator PR 6 · rules and asks, 22:0x UTC

Full ledger status

waiting on rails — setup merged; toolchain proofs on gpu-node: Blender Cycles on the GPU (1.9 s, 1.6 GiB), Hunyuan3D 2.1 image-to-3D fits (140 s, 8.3 GiB, shape only), TRELLIS.2 blocked on a gated DINOv3 download; legal rows logged under Joel's acquire-and-log rule (Hunyuan3D permission-pending: its licence excludes the EU and the node is in Helsinki, question on INB-8; A3's ten free Fab items not yet acquired); Tripo and Meshy callable with a batch estimate; judging waits on EVAL-5 (first blind pair 2026-09-09 at the earliest)

LAB-7

lab-forge-facade-bakeoff

LAB-7 Todo

Pilot B, lab-forge-facade-bakeoff: twenty Austin buildings, four arms, the same judge

Twenty Austin buildings across four classes through four arms (grammar, image-conditioned diffusion, the quarry pipeline ported, generative 3D on the massing) under pilot A's judge

from the ledger; no repository card yet

three weeks from pilot A's judge being proven

from the ledger

no repository, no run yet

B3, the quarry's facade band-line and material-factory pipeline ported with a MIGRATION row

none registered

waiting on rails

behind pilot A

Gain: not yet

Detail: card and ledger row

Ledger row

baseline: B3, the quarry's facade band-line and material-factory pipeline ported with a MIGRATION row

budget: three weeks; no separate spend line on the card

card: LAB-7

hypothesis: Twenty Austin buildings across four classes through four arms (grammar, image-conditioned diffusion, the quarry pipeline ported, generative 3D on the massing) under pilot A's judge

kill date: three weeks from pilot A's judge being proven

metric: Pilot A's metrics and constraints, per class, with one held-out building per class

realised gain: not yet

receipt: pilot-A rail receipt

slug: lab-forge-facade-bakeoff

status: waiting on rails behind pilot A

How fresh

The labs ledger: 9 h old at build time · 559201a

Linear cards (state, labels): 8 h old at build time

LAB-1 hypothesis card: 11 h old at build time · 7904fdb

LAB-2 hypothesis card: 11 h old at build time · a9154a9

LAB-3 hypothesis card: 11 h old at build time · f19ae04

LAB-4 hypothesis card: 13 h old at build time · 64acf83

LAB-6 hypothesis card: 11 h old at build time · 4a52345

LAB-1 measure receipts on the dev store: 16 h old at build time · 24e2f24

LAB-1 any-coordinate registries: 26 h old at build time · ac547d9 anycoord.v1: on the grind branch (PR #2), not on main yet anycoord.v2: frozen in the grind's work tree, not pushed yet

LAB-4 checker receipts (evidence store; the lab has no store token yet): 27 h old at build time · d6ba8fb

LAB-2 frozen labels.v1 and the labeller pilot: 27 h old at build time · a9154a9

LAB-3 frozen ground truth, rows and B0 receipts: 11 h old at build time · f19ae04

LAB-6 arms, toolchain proofs, spend and the licence log: 11 h old at build time · 4a52345

Harnesses

Every harness that produces a number, with its latest run, receipt, commit, dirty flag and the state of its negative control. A lab's own rows diagnose; only eval's blind verdict judges.

HarnessLatest runReceiptCommitNegative control

LAB-1 just measure

LPIPS, FID and KID on the frozen Travis strip (n=1018), baselines on the same cells

2026-09-03 07:19 UTC

24e2f24 clean tree

passed 3 noise rows, none beats bicubic on LPIPS (07:19 UTC)

LAB-4 checker (geosolve measure)

twelve constraint classes with tolerances, counted on raw, v0 and quarry

2026-09-02 20:12 UTC

d6ba8fb clean tree

passed 10 classes fired, 2 not applicable on a broken Austin plan (17:53 UTC)

LAB-2 IoU harness (just measure)

per-class IoU against the frozen labelled set, baseline IoU beside it

no run yet

none yet

a9154a9 origin/main

not run a shuffled-label set must score near chance; runs with the first IoU row

LAB-2 labeller oracle

labels.v1: 20 tiles, 60 files, 1,709,929 bytes on the store under labs/lab-satellite-vision/labels.v1/

2026-09-02 20:49 UTC

freeze digest 2b683c323036…

digest not in the fixture yet

verified ceiling 66.9 % pixel agreement on one tile; the blind second pass is reserved

LAB-3 precision, recall and Brier (just measure)

per field against the frozen ground truth; B0 and B1 baselines, N shuffled control beside every gated row

112 rows in measure/rows.csv

B0 receipts named on LAB-3: 2, answering: 2 answer

f19ae04 origin/main

not run no shuffled score in 2 answering B0 receipts; the near-chance claim lives only in LAB-3 card text

LAB-3 ground-truth oracle

austin-barton-hills v1: 1,156 records, 197 units; seattle-pike-place v1: 1,082 records, 217 units

2026-09-02

austin-barton-hills: private seattle-pike-place: private

frozen.json at f19ae04

verified every truth URL returned 404; local frozen digests recorded

The shared GPU door (scripts/gpu-window.sh)

every GPU job on gpu-node takes the shared rig lock; windows of at most 30 minutes

no lock

the GPU panel below

7904fdb origin/main

passed tests/test_gpu_window.py: a held, unexpired lock must make a job wait (13 tests)

eval's judge

blind swipes and the lineup rail; nothing counts as a verdict until eval judges it

not yet wired EVAL-11 In Progress, EVAL-5 In Progress

—

not run EVAL-5's three negative controls must be red for the right reason first

How fresh

LAB-1 measure receipts on the dev store: 16 h old at build time · 24e2f24

LAB-4 checker receipts (evidence store; the lab has no store token yet): 27 h old at build time · d6ba8fb

LAB-2 frozen labels.v1 and the labeller pilot: 27 h old at build time · a9154a9

LAB-3 frozen ground truth, rows and B0 receipts: 11 h old at build time · f19ae04

The shared GPU door script and its negative-control test: 11 h old at build time · 7904fdb

Linear cards (state, labels): 8 h old at build time

GPU node

Read at build time, ; the lock, the hold note and the waiters directory are read, never written.

no lock No lock file at build time. No active lab1-* unit was reported.

Hold note (PLAT-50), as of

GPU scheduling hold present; operator text is withheld.

Waiters

nobody waiting The waiters directory is empty.

lab1-* user units

No lab1-* unit is loaded.

Forge pilots

Pilot A, lab-forge-props-bakeoff (LAB-6): ten street-furniture items through five producer arms and one blind judge. Judging waits on EVAL-5 (In Progress). Spend 0.0 USD of a 300.0 USD cap, 0 paid calls recorded. Pilot B (LAB-7) waits behind pilot A and has no repository yet.

Licence questions

QuestionStatusWhere
The TRELLIS.2 and Hunyuan3D 2.1 upstream sample images have no separate per-file licence notice. The proof treats each as part of its licensed repository and uses it only as local toolchain input, never as a product byte. recorded recorded; retain pinned source URL and digestdocs/arm-toolchains.md
The Hunyuan3D 2.1 Community License excludes the EU, UK and South Korea and adds terms above one million monthly active users. The physical/legal jurisdiction of gpu-node is not recorded here. Verify territory before any producer run or output publication; this question does not erase the local proof receipt. needs Joel open, lead; legal never blocks measurementHunyuan3D 2.1 licence

Arms and kill criteria (HYPOTHESIS.md)

armmethodkill if
A1 parametricheadless Blender 5.2 LTS (Cycles on the GPU) from measurements read off the references; parameters in a JSON spec, geometry from a shared generatorloses every pair to A3 at equal bytes
A2 generativeimage-to-3D from the reference photos: TRELLIS.2 and Hunyuan3D 2.1 self-hosted on gpu-node; Tripo and Meshy by API as controls; then the quarry's Blender surgery rail (scripts/assetgen/surgery, fix-don't-reroll) for named defectscost per accepted asset above $5, or more than three surgery ops per item on average
A3 purchasedthe matching free Megascans asset (docs/a3-baseline-inventory.md), retopologised only by best-in-class tools with tool, version and params recordednever; it is the baseline
A4 capturedphotogrammetry or Gaussian splat from a multi-view photo set of the real object, meshed and cleanedover budget after cleanup, or judge prefers A3
A5 hybridA2 or A4 geometry with A1 measurements as constraints and A3 material responseonly run if two single arms both pass

Toolchain proofs

toolresultfits in 24 GBwall timedevice peakoutput
Blender Cycles 5.2.1 LTSpass: OptiX bound the RTX GPU; forced CPU exited 3 with its PNG still writtenyes1.9 s1,630 MiBPNG, 222,305 bytes; triangles not applicable
TRELLIS.2fail before model load: supplied Hugging Face account lacks access to gated DINOv3 dependency (403)no (unproven)67.8 s4 MiBnone
Hunyuan3D 2.1pass: image-to-shape mesh; optional PBR paint remains out of this proofyes for shape; PBR unproven139.8 s8,340 MiBraw GLB, 666,184 triangles, 11,992,084 bytes

Prices recorded, no call made

providerimage-to-3D unit priceoutput licence and commercial game use
TripoH2/H3: 20 credits untextured or 30 textured (0.20/0.30 USD); P1: 40/50 credits (0.40/0.50 USD), because 100 credits = 1 USD. PricingPaid users generally receive broad input/output rights and commercial use is allowed; Tripo says paid inputs/outputs are not training data. Free-user rights remain with Tripo. A commercial game may use a paid output subject to cleared input rights and the terms. Terms, updated 2025-07-11
MeshyMeshy-6/7: 20 credits untextured, 30 with texture, 35 with 8K texture; Meshy-7 Ultra adds 5. The API page gives no single USD-per-credit conversion. PricingFree outputs are CC BY 4.0 (commercial with attribution); Meshy says paid customers own outputs. Non-Enterprise inputs/outputs may be used for training. A commercial game may use either tier if attribution and source rights are satisfied. Terms, updated 2026-03-07

How fresh

LAB-6 arms, toolchain proofs, spend and the licence log: 11 h old at build time · 4a52345

Linear cards (state, labels): 8 h old at build time

Sources and freshness

Every source this page read, where, the commit or digest it read, the source's own time, and whether it answered. A red row means the source was unread or one of its declared subobjects was missing; the page never substitutes a blank.

SourceKindWhereCommit or digestAs ofRead atState
Linear cards (state, labels)
cards
linearLinear via aa-linear (a token per call)— answered
LAB-2 comments
comments:LAB-2
linearLinear comments on LAB-2 via aa-linear— answered
LAB-3 comments
comments:LAB-3
linearLinear comments on LAB-3 via aa-linear— answered
The 24-cell patch gallery
gallery
filegpu-node:data/patches/real-s2 (cells from lab1-receipts)— answered
The GPU lock, hold note, waiters and lab1-* units on gpu-node
gpu
nodegpu-node:rig/gpu-lock, gpu-node:rig/gpu-lock.hold, gpu-node:rig/gpu-waiters/, systemctl --user lab1-*— answered
The shared GPU door script and its negative-control test
gpu-door
gitgpu-node:repos/lab-earth-compiler origin/main:scripts/gpu-window.sh7904fdbc8052 answered
LAB-1 hypothesis card
hypothesis:lab-earth-compiler
gitgpu-node:repos/lab-earth-compiler origin/main:HYPOTHESIS.md7904fdbc8052 answered
LAB-6 hypothesis card
hypothesis:lab-forge-props-bakeoff
gitgpu-node:repos/lab-forge-props-bakeoff origin/main:HYPOTHESIS.md4a523451d6bc answered
LAB-4 hypothesis card
hypothesis:lab-geometry-solves
gitgpu-node:repos/lab-geometry-solves origin/main:HYPOTHESIS.md64acf83068cb answered
LAB-3 hypothesis card
hypothesis:lab-llm-authored
gitgpu-node:repos/lab-llm-authored origin/main:HYPOTHESIS.mdf19ae0450708 answered
LAB-2 hypothesis card
hypothesis:lab-satellite-vision
gitgpu-node:repos/lab-satellite-vision origin/main:HYPOTHESIS.mda9154a9682c3 answered
LAB-1 measure receipts on the dev store
lab1-receipts
urlhttps://store-dev.agentarmies.io/labs/lab-earth-compiler/measure/ (names from gpu-node:evidence/lab-earth-compiler/measure)24e2f24f7d8e answered
LAB-1 any-coordinate registries
lab1-registries
gitfixtures/anycoord.v1.json; gpu-node:work/lab-earth-compiler/grind/fixtures/anycoord.v2.jsonac547d903b36 answered anycoord.v1: on the grind branch (PR #2), not on main yet anycoord.v2: frozen in the grind's work tree, not pushed yet
LAB-2 frozen labels.v1 and the labeller pilot
lab2-labels
evidencegpu-node:evidence/lab-satellite-vision/labels.v1.freeze.json; gpu-node:repos/lab-satellite-vision origin/main; LAB-2 commentsa9154a9682c3 answered
LAB-3 frozen ground truth, rows and B0 receipts
lab3-groundtruth
gitgpu-node:repos/lab-llm-authored origin/main:groundtruth/frozen.json; https://store-dev.agentarmies.iof19ae0450708 answered
LAB-4 checker receipts (evidence store; the lab has no store token yet)
lab4-measure
evidencegpu-node:evidence/lab-geometry-solves/measured6ba8fbfb240 answered
LAB-6 arms, toolchain proofs, spend and the licence log
lab6-pilot
gitgpu-node:repos/lab-forge-props-bakeoff origin/main4a523451d6bc answered
The labs ledger
ledger
gitgpu-node:repos/labs origin/main:docs/ledger.md559201a62733 answered
Public-serving permission for gallery imagery
legal
gitgpu-node:repos/orchestrator origin/main:LEGAL-LOG.md4740dbfa4a94 answered
The live root manifest and its prior editions
published-editions
urlhttps://store-dev.agentarmies.io/labs/demo/index.json559201a62733 answered