Skip to content

FLUJO workers: a later message reaches the model; release 0.7.1 - #23

Merged
flujo-app merged 1 commit into
mainfrom
fix/flujo-follow-up-turns
Nov 4, 2026
Merged

flujo-app merged 1 commit into
mainfrom
fix/flujo-follow-up-turns

Conversation

@flujo-app

Copy link
Copy Markdown
Owner

A FLUJO worker could silently ignore its next job. Ships as 0.7.1.

Fixes #22

What went wrong

FACTORY's worker flows had a finish step. When a model handed off to it, the conversation stayed there. FLUJO kept every later message, did not show it to the model, and still reported the turn as completed. So a second job looked successful although nothing was done. The handoff could also end a turn with no written report, which left an earlier progress note as the worker's last words.

It only showed on a real model: a scripted one never chose the handoff. A live company run found it, when the lead's closing turn ended in seconds with no output.

The fix

  • buildFactoryTeamSpecs takes finishStep (default true, so templates used elsewhere are unchanged).
  • FlujoSessionDriver builds its flows with finishStep: false. A model can then only end its turn by writing its report, and the prompt says so.

Checked on the real FLUJO 3.48.3, with a scripted model

Case Later message reaches the model
Model hands off to a finish step no (the bug)
Plain answer on a flow with a finish step yes
Flow with no finish step yes, and the message after that too
The exact lead flow with finishStep: false: starts a child, the child ends on plain text, the lead gets the child's result yes

Not changed: a conversation already sitting on a finish step under 0.7.0 stays there. 0.7.0 shipped hours ago, and no known fleet runs on it.

Local CI (AGENTS.md)

Same steps as .github/workflows/public-sdk.yml (focused list read from the workflow file), on a clean git archive export of 5601cb8 with fresh npm ci. Linux ran in disposable containers.

Platform Node / npm prod audit (high) Focused tests Python settings tests Packed install + verify-public-sdk CLI help + factory-selfhost profiles Installed MCP stdio Evidence regressions Left in temp
Windows 10, portable Node, Python 3.14 22.17.0 / 10.9.2 0 vulnerabilities 254/254 ok ok ok 1/1 7/7 0
Windows 10, portable Node, Python 3.14 24.22.2 / 11.19.1 0 vulnerabilities 254/254 ok ok ok 1/1 7/7 0
Linux, Docker node:22.17.0-bookworm-slim, Python 3.11 22.17.0 / 10.9.2 0 vulnerabilities 254/254 ok ok ok 1/1 7/7 0
Linux, Docker node:24.22.2-bookworm-slim, Python 3.11 24.22.2 / 11.19.1 0 vulnerabilities 254/254 ok ok ok 1/1 7/7 0

Live: the real-model recheck runs with Seagulled's move onto FACTORY, against this release, and its result goes on flujo-app/seagulled#11.

A model that handed off to the flow's finish step left the conversation there.
FLUJO kept every later message but never showed it to the model, and still
reported the turn as completed. The handoff could also end a turn with no
written report. Worker flows now have no finish step, so a model ends its
turn by writing its report and the conversation can take another message.
@flujo-app
flujo-app merged commit e0114f9 into main Nov 4, 2026
2 checks passed
@flujo-app
flujo-app deleted the fix/flujo-follow-up-turns branch November 4, 2026 05:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

FLUJO workers: a later message never reaches the model after a finish handoff

1 participant