|
|
SHEET 1/1 · REV v1.2.24 · DATE 2026-09 · DRAWN BY Alex
|
|
View online →
|
Hi,
v1.2.24 has no new feature, on purpose. It fixes what broke in production this week, most of it on my own machine first.
The worst was the cockpit. Every open cockpit killed and restarted the background daemon every few seconds, printed each kill over its own screen, and never cleaned up what it killed — until 5,242 dead processes filled the machine's process table. That loop is gone, and so is a second one: opening ACE's inspection window quietly started a second ACE, and the two ran side by side for hours.
After you update, quit and relaunch every open cockpit — an old one keeps the old behaviour until it restarts. If something here still breaks for you, reply and tell me. I read every one.
All the best, Alex
|
|
|
This release, in numbers
|
|
15 pull requests
merged.
|
|
17,557 lines added
— code 2,827 · tests 3,882 · docs 10,848.
|
|
Delivery mix
— bug 73% · unclassified 20% · docs 7%.
|
|
|
Nearly three in four of these pull requests fix something that was already shipped, and there is more test than code in them. That is what a stability release should look like.
|
|
The daemon stops killing itself
Each cockpit checked the shared daemon against its own build — but a restart always runs the binary on disk, so a cockpit opened before an update could never be satisfied, and two cockpits on two builds took turns killing each other's daemon. It now checks against the installed build, and an out-of-date cockpit shows a banner telling you to relaunch instead of killing anything. One slow reply no longer counts as a dead daemon, every stopped daemon is cleaned up, and flowforge doctor has a daemon-zombies row that names any cockpit leaving dead processes behind.
|
|
|
|
|
One ACE, never two
|
|
The cockpit's ACE inspection window used to resume ACE's conversation in a fresh Claude — which does not attach to the ACE that is running, it starts another one. Now, while ACE runs, the window shows a read-only view that follows ACE live and says plainly that nothing typed there reaches it; resuming is refused. flowforge doctor names any conversation with two live processes. And the window finally has its own lit ACE tab you can click and cycle to, so you can always find your way back.
|
|
|
|
Signals that stop crying wolf
|
|
A binary promoted minutes earlier no longer reads "commits behind" when the only new commits are merges that changed no file. A site deploy no longer reports checkout as dead because a metrics read was denied — it says it cannot verify, and still fails on a real outage. A GitHub hiccup during a merge is retried, re-checking the pull request's head before every attempt, instead of showing up as a refusal you had to clear by hand. And finished tickets stop drawing in the War Room as empty epics at 0%.
|
|
|
|
One fixed recipient list
|
|
A Supabase recipient source for Release Letters called a database function nobody had created, so a send found no one while the settings still read "ready". The function now ships as a migration: no parameters, callable only by the service role, and it never returns an address that declined or unsubscribed. A custom query is refused rather than run, and a result cut short by the server is refused rather than sent short.
|
|
|
|
Colado
|
|
Colado is a jiu-jitsu term for a position with no gaps — justo, perfectly adjusted, full pressure. It's the name we gave the FlowForge gates that leave no space between the rule and your work. This release closes four more: opening ACE's inspection window can no longer start a second ACE, a merge retry can no longer land a commit nobody re-checked, the recipient read can no longer run a query someone configured, and a single slow reply can no longer get a daemon killed.
|
|
|
|
Small things that change everything
|
|
Not every change earns a headline. These fit in a line each, and you feel them every day.
The ACE tab lights while you are on the inspection window, and one click takes you back. A binary you just installed stops telling you to cut a release. And six finished tickets stop pretending to be empty epics waiting for work.
|
|
|
|
One setup step
|
|
Quit and relaunch every open cockpit after you update: a cockpit started on an older binary keeps the old daemon guard until it restarts, and the STALE COCKPIT banner points at any that still need it. If you send Release Letters from a Supabase recipient source, apply the recipient migration to that project and remove any supabase.query setting; flowforge marketing test recipients then confirms the count.
|
|
|
|
Not yet
|
|
The site deploy's checkout gate still cannot read its metric until a permission is applied to the deploy role, so that half reports "cannot verify" and the verdict rests on the checkout handler's own answers. And the new doctor row can miss a second ACE created after ACE clears its conversation — the inspection window itself still refuses to create one.
|
|
|
HOW THIS LETTER REACHES YOU
|
|
How this letter reaches you
|
|
This letter comes out of FlowForge's own release pack — the same tooling that keeps the release notes, the release page and this letter derived from one committed source. The same pipeline — render, export to .eml, send at promote — is in your own Settings, opt-in and off by default.
|
|
Made with FlowForge — 15 PRs · 17,557 lines · 2 days.
Alex — FlowForge · alex@flowforgesoft.com
2810 N Church St STE 88527, Wilmington, DE 19802
FlowForgeSoft, LLC
You are receiving this because you have a FlowForge account and opted in to release letters.
FlowForge never asks for your password, token or card details by email.
Update: flowforge update → see how
|
FlowForge · v1.2.24 · sheet 1/1
|
|
|