FACTORY DASHBOARD

As of 2026-08-27 21:13 CEST · 19:13 UTC · measured from /issues, /actions/runs, /pulls, factory:usage: markers, git log origin/main, .factory/config.yaml, .factory/proposals/not-built, .factory/observations
25
Open chains
0
Running
0
Queued
25
Holds
55
State runs
49 %
Review loop
3.1 M
Tokens blended
1
WIP PRs
145
Landed today
4
Shipped today
Bottleneck #93 waits on factory/status/escalated and no other chain can run: 33 min against the 90 min missing-run threshold.
1 of 25 holds wait for a person · bar ends at 6 h line at 90 min · left is within one run · right is longer than one run can last
Holds · factory clears 24 holds the factory clears itself. Every other hold waits for a person to remove a label.
blocked · sweep-blocked clears 25 holds total
Runs · in flight 0 of 25 chains have a run on a runner; 0 wait in the queue. The rest wait for a tick or a person.
A run queued for more than 45 min does not count here /actions/runs, in_progress + queued + waiting

Chains

25 chains · 0 on a runner · 0 in the queue · 25 holds · 0 stalled for more than 90 min
review-change · status/escalated in review-change since 20:27 · 46 min
2 comments from people
2
spec
3
r-spec
1
arch
1
plan
6
r-plan
4
build
3
doc
4
r-chg
0
qa
0
rwk
14 of 24 runs in review states · 6 runs refused · never reached: qa, rwk
24Runs
5Holds
1Escalations
2.5 MTokens
specify · status/blocked in specify since 22:48 · 46 h 25 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 2 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
1Holds
0Escalations
Tokens
specify · status/blocked in specify since 22:48 · 46 h 25 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 2 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
1Holds
0Escalations
Tokens
specify · status/blocked in specify since 22:48 · 46 h 25 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 2 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
1Holds
0Escalations
Tokens
specify · status/blocked in specify since 22:48 · 46 h 25 min
0 comments from people
1
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
0 of 1 runs in review states · 4 runs refused · never reached: r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
1Runs
1Holds
0Escalations
Tokens
specify · status/blocked in specify since 22:48 · 46 h 25 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 2 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
1Holds
0Escalations
Tokens
specify · status/blocked in specify since 22:48 · 46 h 25 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 2 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
1Holds
0Escalations
Tokens
specify · status/blocked in specify since 22:48 · 46 h 25 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 2 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
1Holds
0Escalations
Tokens
specify · status/blocked in specify since 22:54 · 46 h 19 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 2 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
1Holds
0Escalations
Tokens
specify · status/blocked in specify since 08:28 · 36 h 45 min
0 comments from people
3
spec
2
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
2 of 5 runs in review states · 7 runs refused · never reached: arch, plan, r-plan, build, doc, r-chg, qa, rwk
5Runs
2Holds
0Escalations
Tokens
specify · status/blocked in specify since 08:28 · 36 h 45 min
0 comments from people
1
spec
1
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
1 of 2 runs in review states · 8 runs refused · never reached: arch, plan, r-plan, build, doc, r-chg, qa, rwk
2Runs
2Holds
0Escalations
Tokens
specify · status/blocked in specify since 08:28 · 36 h 45 min
0 comments from people
2
spec
2
r-spec
0
arch
1
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
2 of 5 runs in review states · 7 runs refused · never reached: arch, r-plan, build, doc, r-chg, qa, rwk
5Runs
3Holds
0Escalations
Tokens
specify · status/blocked in specify since 08:28 · 36 h 44 min
0 comments from people
2
spec
2
r-spec
0
arch
1
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
2 of 5 runs in review states · 6 runs refused · never reached: arch, r-plan, build, doc, r-chg, qa, rwk
5Runs
2Holds
0Escalations
Tokens
specify · status/blocked in specify since 10:13 · 35 h 0 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 2 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
1Holds
0Escalations
Tokens
specify · status/blocked in specify since 10:18 · 34 h 54 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 2 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
1Holds
0Escalations
Tokens
specify · status/blocked in specify since 13:20 · 31 h 53 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 1 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
0Holds
0Escalations
Tokens
specify · status/blocked in specify since 13:39 · 31 h 34 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 1 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
0Holds
0Escalations
Tokens
specify · status/blocked in specify since 13:39 · 31 h 34 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 1 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
0Holds
0Escalations
Tokens
specify · status/blocked in specify since 13:39 · 31 h 34 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 1 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
0Holds
0Escalations
Tokens
specify · status/blocked in specify since 13:39 · 31 h 34 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 1 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
0Holds
0Escalations
Tokens
specify · status/blocked in specify since 13:39 · 31 h 34 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 1 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
0Holds
0Escalations
Tokens
specify · status/blocked in specify since 10:19 · 10 h 54 min
0 comments from people
0
spec
0
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
no work yet · 3 runs refused · never reached: spec, r-spec, arch, plan, r-plan, build, doc, r-chg, qa, rwk
0Runs
1Holds
0Escalations
Tokens
specify · status/blocked in specify since 10:27 · 10 h 46 min
0 comments from people · 3.75 USD list price
1
spec
1
r-spec
0
arch
1
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
1 of 3 runs in review states · 7 runs refused · never reached: arch, r-plan, build, doc, r-chg, qa, rwk
3Runs
2Holds
0Escalations
49 kTokens
specify · status/blocked in specify since 10:28 · 10 h 45 min
0 comments from people
2
spec
2
r-spec
0
arch
1
plan
1
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
3 of 6 runs in review states · 7 runs refused · never reached: arch, build, doc, r-chg, qa, rwk
6Runs
2Holds
0Escalations
231 kTokens
specify · status/blocked in specify since 16:25 · 4 h 48 min
1 comment from a person · 1.25 USD list price
2
spec
2
r-spec
0
arch
0
plan
0
r-plan
0
build
0
doc
0
r-chg
0
qa
0
rwk
2 of 4 runs in review states · 7 runs refused · never reached: arch, plan, r-plan, build, doc, r-chg, qa, rwk
4Runs
4Holds
1Escalations
376 kTokens
running held or stalled escalated waiting Column height = runs per state, relative to this chain · outline = current state

Finished

4 chains shipped today · 106 runs · 10.5 M blended · since the last merge 4 h 49 min (#103)
#97fix(factory): the end-to-end gate cannot start in a factory container8 h 14 minpull request #103 merged at 16:26 · issue closed at 16:26 by lhilpert · last state qa20 runs · 2.0 M blended · 4.54 USD · 4 holds
#101refactor(web): one folder per component under ui3 h 40 minpull request #102 merged at 14:10 · issue closed at 14:10 by lhilpert · last state qa26 runs · 2.0 M blended · 42.91 USD · 5 holds
#63feat(web): the streak number and its unit35 h 52 minpull request #95 merged at 10:15 · issue closed at 10:15 by lhilpert · last state qa25 runs · 3.1 M blended · 33.76 USD · 6 holds
#62feat(web): the icon set27 h 39 minpull request #94 merged at 02:02 · issue closed at 02:02 by lhilpert · last state qa35 runs · 3.4 M blended · 43.93 USD · 5 holds
merged pull request — the chain reached main This counts a chain whose own pull request merged. It is the same count as Shipped today. A chain closed without a merge appears in grey and does not count. A chain is an issue that carries or carried a factory/<state> label. Removed labels remain in the timeline. Runs and tokens cover the full life of the chain. Tokens are blended from factory:usage: markers. Duration runs from issue creation to closure and includes waits for a person. This page does not judge a number. A comparison needs yesterday, and one render has no memory of another.

Holds

1 wait for a person · 24 the factory clears itself

#67 has factory/status/blocked since 22:50

feat(web): the day count on Today — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

46 h 23 min
FACTORY

#66 has factory/status/blocked since 22:50

feat(web): the day grid and its legend — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

46 h 23 min
FACTORY

#65 has factory/status/blocked since 22:50

feat(web): the habit row — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

46 h 23 min
FACTORY

#60 has factory/status/blocked since 22:51

feat(web): the reminder time, on brain/select — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

46 h 22 min
FACTORY

#59 has factory/status/blocked since 22:51

feat(web): the reminder switch, on brain/toggle — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

46 h 22 min
FACTORY

#72 has factory/status/blocked since 22:52

feat(web): the week starts on Monday or Sunday — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

46 h 21 min
FACTORY

#71 has factory/status/blocked since 22:52

feat(web): the three button variants, on helm button — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

46 h 21 min
FACTORY

#74 has factory/status/blocked since 22:57

feat(web): the calendar of one habit — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

46 h 16 min
FACTORY

#73 has factory/status/blocked since 08:28

feat(web): a theme control, system to dark to light — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

36 h 44 min
FACTORY

#69 has factory/status/blocked since 08:29

feat(web): the settings row — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

36 h 44 min
FACTORY

#64 has factory/status/blocked since 08:29

feat(web): the week strip and its met bar — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

36 h 44 min
FACTORY

#58 has factory/status/blocked since 08:29

feat(web): a habit's colour, on brain/radio-group — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

36 h 44 min
FACTORY

#68 has factory/status/blocked since 08:33

feat(web): the stat block on a habit's history — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

36 h 40 min
FACTORY

#70 has factory/status/blocked since 08:36

feat(web): the target stepper — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

36 h 37 min
FACTORY

#83 has factory/status/blocked since 10:13

feat(web): a privacy notice, reached from settings — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

35 h 0 min
FACTORY

#84 has factory/status/blocked since 10:21

feat(web): the language is a setting — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

34 h 52 min
FACTORY

#87 has factory/status/blocked since 13:20

feat(web): the archived habits, and the way to them — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

31 h 53 min
FACTORY

#92 has factory/status/blocked since 13:39

feat(web): deleting asks twice, and the two questions differ — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

31 h 34 min
FACTORY

#91 has factory/status/blocked since 13:39

feat(web): export hands over the whole record — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

31 h 34 min
FACTORY

#90 has factory/status/blocked since 13:39

feat(web): the reminder actually arrives — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

31 h 34 min
FACTORY

#89 has factory/status/blocked since 13:39

feat(api): the event log reaches the second device — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

31 h 34 min
FACTORY

#88 has factory/status/blocked since 13:39

feat(api): the account, its passkey and its devices — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

31 h 34 min
FACTORY

#100 has factory/status/blocked since 10:20

fix(web): nothing re-checks the committed icons against their tokens — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

10 h 53 min
FACTORY

#80 has factory/status/blocked since 16:25

feat(events): the streak counts weeks against a target — Held. An issue this change depends on is open.

Merge the issue it waits for. The hold then clears itself.

4 h 48 min
FACTORY

#93 has factory/status/escalated since 20:39

feat(events): a profile setting travels as an event — Held. The factory cannot continue by itself.

State the next step in a comment. Then remove the label.

33 min
PERSON
Cleared today · 21 holds · 7 itself · 0 by a manual run · 14 by a person · 12 newest
PERSON#93 factory/status/needs-input · 20:10 · a person removed the label7 min
PERSON#93 factory/status/failed · 19:48 · a person removed the label26 min
PERSON#93 factory/status/failed · 18:42 · a person removed the label20 min
PERSON#93 factory/status/awaiting-approval · 17:30 · a person removed the label8 min
PERSON#93 factory/status/blocked · 16:25 · a person removed the label26 h 36 min
PERSON#80 factory/status/escalated · 16:25 · a person removed the label2 h 1 min
PERSON#97 factory/status/failed · 14:52 · a person removed the label21 min
ITSELF#97 factory/status/failed · 14:30 · the factory removed the label itself14 min
ITSELF#80 factory/status/blocked · 14:10 · the factory removed the label itself3 h 39 min
ITSELF#101 factory/status/conflicted · 14:02 · the factory removed the label itself1 min
PERSON#97 factory/status/failed · 13:34 · a person removed the label1 min
PERSON#97 factory/status/awaiting-approval · 13:04 · a person removed the label92 min

Tokens

12 data points · 3.138.694 blended · 10 without a raw total
StateChainFamilyBlended — comparableRaw total — not comparableCache reads
build#93
codex
4 runs
496.540 codex does not report it
review-change#93
codex
4 runs
481.997 codex does not report it
review-plan#93
codex
6 runs
460.661 codex does not report it
document#93
codex
3 runs
305.528 codex does not report it
specify#80
codex
2 runs
232.814 codex does not report it
review-spec#93
codex
3 runs
232.406 codex does not report it
review-plan#70
codex
1 run
231.193 codex does not report it
plan#93
codex
1 run
204.682 codex does not report it
specify#93
codex
2 runs
183.839 codex does not report it
review-spec#80
claude/codex · claude-opus-5
2 runs
143.432 699.359 616.654 · 88.2 %
architecture#93
codex
1 run
116.300 codex does not report it
plan#68
claude · claude-opus-5
1 run
49.302 3.785.858 3.633.534 · 96.0 %
Blended is uncached input plus output. For codex, source codex-rs/exec/src/event_processor_with_human_output.rs:501 at tag rust-v0.149.1 reads (input_tokens − cached_input_tokens) + output_tokens. For claude, in + out measures the same value. Raw total includes cache reads. It measures how often context was read again. It does not compare families, and codex does not report it. codex reports no raw total, cache reads, or model name. A codex marker before 2026-08-25 has a total field, but that field contains the blended value. The rows come from factory:usage: markers in issue comments. A chain with no usage marker has no row.

Models

10 states · codex 10

codex

gpt-5.6-sol
specify · medium review-spec · medium architecture · low plan · high review-plan · low build · medium document · low review-change · medium qa · low rework · high

10 states, 4 with reviews: · measured: 11 data points, 3.089.392 blended

review-spec · codexreadsspecify · codex31 of 55 runs · 56 %
architecture · codexreadsspecify · codex17 of 55 runs · 31 %
review-plan · codexreadsplan · codex, review-change · codex, rework · codex16 of 55 runs · 29 %
review-change · codexreadsbuild · codex, document · codex11 of 55 runs · 20 %
a state with reviews: reads other states A review is independent when a fresh context reads work it did not write. The model family does not define independence. The family in the token table comes from the marker. A run that used the fallback ran on the other family. The right side counts runs on each edge across open chains. This page does not choose which edge to remove.

Pull requests

1 open · 1 WIP · 0 ready · 0 abandoned
WIP#104
WIP: feat(events): add profile setting event registers
The title starts with WIP:. A red gate set it so CI leaves the pull request alone. It waits for work.
chain #93 · opensince 18:03 · 3 h 10 minmergeable: false
WIP — the title starts with WIP:. A red gate set it so CI leaves the pull request alone. It waits for work. Abandoned — its chain is gone or its issue is closed. It waits for nobody and will not merge. Ready — open, no WIP:, and the issue is open. It waits for the merge that §8.6 leaves with the owner. The branch name factory/<n>-… is checked against field state at /issues/<n>. The title is not used.

Findings

2 issues without a state label · 0 reports from flow

#77 has no state label

docs: three claims the tree has moved past — has factory/finding, last touched 37 h 3 min ago

A person sets a state label. The factory then picks it up. No run starts before that.

37 h 3 min
NOT PICKED UP

#79 has no state label

fix(web): the installed app is unchecked on a real device — has factory/finding, last touched 31 h 6 min ago

A person sets a state label. The factory then picks it up. No run starts before that.

37 h 3 min
NOT PICKED UP

Landed

origin/main · 145 changes since 00:00 · 11 code · 90 product docs · 44 machine · no rule, counted as machine: deploy/pi/README.md, deploy/pi/board.Dockerfile, deploy/pi/board.Dockerfile.dockerignore, deploy/pi/compose.yaml and 1 more · fetch failed; the ref can be old
CommitTimeSubjectScope
715a6d520:46
docs(factory): note the relocated narratives in FACTORY.md
1 file · +13/−0 · no Refs line
8005c5a20:44
docs(factory): record prompt rewrite verification
1 file · +23/−0 · no Refs line
24d130720:42
refactor(factory): relocate prompt incident histories
3 files · +18/−12 · no Refs line
517aa9d20:23
docs(factory): record the prompt contracts
1 file · +62/−7 · no Refs line
9b769be20:17
fix(factory): define the QA body contract
2 files · +62/−22 · no Refs line
944e4ed20:15
refactor(factory): clarify shared prompt boundaries
4 files · +36/−35 · no Refs line
52330d220:12
fix(factory): order change review outcomes
2 files · +108/−100 · no Refs line
1c7e38e20:08
fix(factory): order plan review outcomes
2 files · +61/−15 · no Refs line
3c4bf1b20:03
fix(factory): order spec review outcomes
2 files · +115/−54 · no Refs line
2c7832020:01
perf(factory): narrow the mediator prompt
6 files · +149/−66 · no Refs line
605d7c919:42
fix(factory): distinguish handback kinds
6 files · +193/−25 · Refs #93
b98627619:18
fix(factory): generate the decision index
20 files · +463/−109 · no Refs line
273e8c519:05
fix(factory): recover missing labels
5 files · +89/−3 · Refs #93
d3e807318:38
fix(factory): accept adjacent criterion markers
6 files · +73/−7 · Refs #93
07cefcb17:23
perf(factory): bound reviewer work records
5 files · +254/−5 · no Refs line
d07c99817:23
test(factory): retain reviewer replay corpus
28 files · +5956/−2 · no Refs line
021139817:19
docs(deploy): keep the board at five minutes
3 files · +17/−9 · no Refs line
15df88017:01
feat(deploy): serve the factory board from the Pi
6 files · +304/−9 · no Refs line
6ff586e16:42
docs(factory): file overtaken proposals
4 files · +30/−7 · Refs NONE
9ce13c316:42
fix(factory): mark direct handback comments
5 files · +29/−5 · Refs #21
9e7deb216:40
fix(factory): stop criteria at headings
3 files · +34/−2 · Refs #39
e14315416:40
fix(factory): drop unused mediator output
6 files · +12/−14 · Refs NONE
e9b4a6416:39
docs(factory): index built proposal 59
1 file · +1/−0 · Refs NONE
beffc9b16:39
fix(factory): expire stale hold repeats
5 files · +108/−4 · Refs #63
392c90616:37
docs(factory): record proposal 59 outcome
1 file · +22/−0 · Refs NONE
5902cf816:34
fix(factory): enforce outcome dependencies
5 files · +176/−12 · Refs NONE
39f89a316:05
chore(specs): record QA handover
1 file · +9/−0 · Refs #97
4179e2a16:01
chore(specs): record clean change review
2 files · +59/−0 · Refs #97
58bc4b015:34
docs(e2e): add bare server keywords
4 files · +33/−4 · Refs #97
a6c5a1c15:22
fix(web-e2e): format gate config checks
4 files · +71/−6 · Refs #97
d585fbd15:22
fix(factory): correct architecture review copy
2 files · +2/−1 · Refs NONE
3f131c915:16
docs(factory): describe architecture writer
1 file · +32/−24 · Refs NONE
c40d0c515:16
fix(factory): make architecture fill gaps
6 files · +163/−71 · Refs NONE
6f0832114:55
chore(specs): approve finding task plan
1 file · +1/−0 · Refs #97
44aecf414:52
fix(factory): re-point moved rule citations
19 files · +132/−128 · Refs NONE
0db0ad314:51
fix(factory): keep unsupported uniqueness out of schemas
3 files · +20/−4 · Refs #97
960509f14:43
docs(factory): record architecture state landing
1 file · +41/−0 · Refs NONE
bbaae3a14:38
docs(factory): document architecture state
1 file · +124/−46 · Refs NONE
198275f14:34
fix(factory): keep architecture copy in English
1 file · +1/−1 · Refs NONE
2e36b1a14:22
feat(factory): add architecture state
15 files · +479/−27 · Refs NONE
… and 105 more commits today. The full list is in git log origin/main --since=today.

Proposals

36 open in .factory/proposals/not-built · ordered by last Git change · files with no Git history use file change time · 2 issues with the owner

review-change schreibt die Aufgaben, die den Prüfkreis füttern

Last Git change 16:42 · 4 h 31 min ago
15 Läufe

Korrektur zuerst. Eine frühere Fassung dieses Befunds sagte, build lege die Nachzügleraufgaben an. Das ist falsch. .factory/shared/writing-a-task.md:3: *„Three states write task files: plan, review-change and rework."* build ist nicht dabei.

Der Prüfkreis review-plan ↔ review-change ist ein Drittel der Factory

Last Git change 16:42 · 4 h 31 min ago
208 von 599

Der Fund. Über 12 Ketten mit lokalem Arbeitsdatensatz: 208 von 599 ausgeführten Zustandsläufen (34,7 %) entfallen auf zwei Zustände, die keinen Produktcode schreiben. Über 9 Ketten mit Kantenmarkern sind 78 von 241 Kanten (32 %) der Kreis selbst — …

Prompt investigation, ranked — IN PROGRESS 2026-08-26

Last Git change 22:47 · 22 h 26 min ago
21.1 %

The source prompts contain 21135 words. A rendered pass through all ten states contains 60214 words. The proposals below come from contract, convergence, and prompt-size investigations. Only the counts and past-run costs are evidence. The expected savings rema…

§8.7 has no gate, and the machine broke it at every state transition

Last Git change 21:17 · 23 h 56 min ago
No measurement

Fixed at the source 2026-08-25; the gate is what remains.

split ist für den Fall gebaut, der nie eintritt

Last Git change 21:17 · 23 h 56 min ago
No measurement

Null Aufrufe in 21 Issues. Keines trägt die Signatur, die cmd_split anhängt (factory.py:3433, „Geschnitten aus #%d"); alle 21 sind von Hand eröffnet.

spec_dir wählt genauso willkürlich wie branch_of

Last Git change 21:17 · 23 h 56 min ago
No measurement

branch_of nahm die erste passende branch aus einer paginierten Antwort und entschied damit per Reihenfolge, auf welcher branch eine chain arbeitet. Repariert: bei zwei Treffern hält es an und nennt beide.

With the owner

Current board state
3 open

1 hold wait for a person · 0 pull requests ready, and §8.6 leaves the merge with the owner · 2 issues without a state label. A person decides what comes next.

Observations

last 5 dated entry headings in the newest day file · 2026-08-27
UUIDs can close the review handback loop
architecture is a bounded judge before plan
a marker immediately above a criterion is criterion identity
an incomplete machine contract rollout
prompt rewrite follow-up