#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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
feat(web): the calendar of one habit — Held. The factory asked a question in a comment.
Answer in a comment. Then remove the label.
fix(web): the installed app is unchecked on a real device — Held. main and the branch changed the same file.
Merge main into the branch, resolve the conflict, and push. The hold then clears itself.
| State | Chain | Family | Blended — comparable | Raw total — not comparable | Cache reads |
|---|---|---|---|---|---|
| build | #66 | codex 5 runs |
1.388.382 | codex does not report it | — |
| build | #79 | codex 5 runs |
1.226.405 | codex does not report it | — |
| review-change | #66 | codex 5 runs |
1.062.864 | codex does not report it | — |
| review-change | #79 | codex 4 runs |
955.942 | codex does not report it | — |
| review-plan | #66 | codex 9 runs |
871.367 | codex does not report it | — |
| plan | #66 | codex 5 runs |
760.092 | codex does not report it | — |
| review-change | #64 | codex 4 runs |
746.459 | codex does not report it | — |
| document | #66 | codex 4 runs |
585.830 | codex does not report it | — |
| plan | #79 | codex 3 runs |
568.650 | codex does not report it | — |
| review-plan | #64 | codex 5 runs |
536.273 | codex does not report it | — |
| review-plan | #79 | codex 6 runs |
524.760 | codex does not report it | — |
| build | #64 | codex 2 runs |
414.174 | codex does not report it | — |
| document | #79 | codex 4 runs |
409.726 | codex does not report it | — |
| architecture | #66 | codex 3 runs |
372.652 | codex does not report it | — |
| plan | #64 | codex 1 run |
371.398 | codex does not report it | — |
| specify | #66 | codex 2 runs |
312.706 | codex does not report it | — |
| document | #64 | codex 2 runs |
265.742 | codex does not report it | — |
| review-plan | #70 | codex 1 run |
231.193 | codex does not report it | — |
| review-spec | #66 | codex 2 runs |
225.120 | codex does not report it | — |
| specify | #79 | codex 2 runs |
201.176 | codex does not report it | — |
| … and 8 more states. The full list is in python3 .factory/bin/factory.py flow. | |||||
10 states, 4 with reviews: · measured: 27 data points, 13.034.022 blended
factory: die Bereitschaftsprüfung ist rot — has no label, last touched 2 h 59 min ago
A person sets a state label. The factory then picks it up. No run starts before that.
| Commit | Time | Subject | Scope |
|---|---|---|---|
| de38c06 | 16:27 | chore(specs): record QA handoff |
1 file · +4/−3 · Refs #100 |
| 3dcf999 | 16:23 | chore(specs): record clean change review |
2 files · +52/−0 · Refs #100 |
| 106edc9 | 16:13 | docs(web): record Task 07 documentation impact |
2 files · +11/−2 · Refs #100 |
| b26ab19 | 16:07 | test(web): replace nested Nx probes |
3 files · +46/−26 · Refs #100 |
| 0561676 | 13:53 | chore(specs): approve rewritten coverage task |
1 file · +1/−0 · Refs #100 |
| 53dd2dd | 13:51 | chore(specs): rewrite affected coverage task |
3 files · +47/−16 · Refs #100 |
| ea9ae01 | 12:07 | chore(specs): record QA handoff |
1 file · +1/−0 · Refs #80 |
| eae68ff | 11:57 | chore(specs): record clean change review |
2 files · +7/−8 · Refs #80 |
| f70b1fa | 11:51 | chore(specs): record incomplete review retry |
2 files · +47/−0 · Refs #80 |
| 3502868 | 11:12 | docs(events): record format-only repair |
2 files · +5/−2 · Refs #80 |
| a329865 | 10:52 | refactor(events): format streak files |
4 files · +23/−15 · Refs #80 |
| 0a09a8c | 10:44 | chore(specs): record the QA handoff |
1 file · +1/−0 · Refs #69 |
| 91fd34a | 10:39 | chore(specs): approve the format task |
1 file · +1/−0 · Refs #80 |
| 98d7fdb | 10:37 | chore(specs): route format repair |
2 files · +14/−0 · Refs #80 |
| 5d80498 | 10:37 | docs(factory): correct the readiness incident |
2 files · +13/−1 · Refs #107 |
| 361a41a | 10:35 | docs(factory): record the bootstrap recovery |
2 files · +39/−1 · Refs #69 |
| 7c9225b | 10:34 | test(web): record exhausted graph fixes |
2 files · +6/−2 · Refs #100 |
| 2c4b235 | 10:31 | test(web): record graph builder failure |
1 file · +3/−1 · Refs #100 |
| d153469 | 10:29 | test(web): record graph test failure |
1 file · +3/−1 · Refs #100 |
| c305901 | 10:26 | fix(factory): bound the Python bootstrap |
14 files · +274/−31 · Refs #69 |
| 757b11b | 10:13 | chore(specs): approve affected coverage task |
1 file · +1/−0 · Refs #100 |
| 94bd452 | 10:11 | chore(specs): open affected coverage task |
3 files · +2/−6 · Refs #100 |
| 8e3fc96 | 10:02 | chore(specs): hand back invalid task status |
2 files · +6/−0 · Refs #100 |
| 6df17b7 | 10:00 | chore(specs): plan affected coverage repair |
4 files · +84/−5 · Refs #100 |
| 68c2590 | 09:59 | chore(specs): record QA handover |
1 file · +9/−0 · Refs #73 |
| 47408c9 | 09:49 | chore(specs): record clean theme review |
2 files · +72/−0 · Refs #73 |
| fe4b2c1 | 09:40 | chore(specs): record failed CI gate |
2 files · +6/−0 · Refs #100 |
| 0971214 | 09:38 | docs(architecture): update theme part inventories |
4 files · +54/−9 · Refs #73 |
| 04895a2 | 09:34 | chore(specs): record settings row CI setup failure |
1 file · +1/−0 · Refs #69 |
| 57094af | 09:30 | chore(specs): approve architecture inventory task |
1 file · +1/−0 · Refs #73 |
| ba441e3 | 09:28 | chore(specs): record second theme review |
4 files · +115/−3 · Refs #73 |
| 97bad56 | 09:16 | docs(product): add the browser theme choice |
4 files · +46/−5 · Refs #73 |
| 6a18280 | 03:16 | refactor(web): keep one theme cycle |
4 files · +39/−14 · Refs #73 |
| 6df50e7 | 03:14 | chore(specs): prepare settings row QA handoff |
2 files · +8/−0 · Refs #69 |
| 22364ff | 03:14 | chore(specs): record QA handoff |
1 file · +9/−0 · Refs #100 |
| 5e86edf | 03:13 | fix(web): restore the app shell width |
2 files · +45/−1 · Refs #73 |
| 4ae677f | 03:07 | chore(specs): accept tightened theme cycle criterion |
1 file · +1/−0 · Refs #73 |
| c935bc8 | 03:06 | chore(specs): tighten theme cycle criterion |
3 files · +3/−8 · Refs #73 |
| 606236b | 03:05 | chore(specs): record clean settings row review |
2 files · +46/−0 · Refs #69 |
| f19cd01 | 03:04 | chore(specs): record clean review |
2 files · +54/−0 · Refs #100 |
| … and 75 more commits today. The full list is in git log origin/main --since=today. | |||
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…
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 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 — …
Fixed at the source 2026-08-25; the gate is what remains.
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.
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.
2 holds wait for a person · 0 pull requests ready, and §8.6 leaves the merge with the owner · 1 issue without a state label. A person decides what comes next.