Skip to content

v3.54.0 — console 0.35.0, measured control plane, recall log

Choose a tag to compare

@ruvnet ruvnet released this 07 Oct 03:29
· 169 commits to main since this release
70a9d5e

Ruflo 3.54.0

Console 0.35.0

  • Layout fixes on the Workflows page: breadcrumbs, a clipped run id, button rows and the tab row.
  • Replay now plays on its own clock.
  • The control plane is now measured (Claude Code 2.1.289), not assumed:
    • Stopping a workflow run works with the Workflow tool's task id, read from the launching session's transcript. The earlier version used the wrong id: the wf_ run id and the agent ids inside a run are refused by the engine.
    • A message to a running workflow agent is delivered in about 28 ms and acted on in about 1.6 s. To a named Agent-tool agent it lands at its next turn.
    • Permission dialogs are never bypassed. A mod cannot launch a workflow through $.tool.call.
  • The mission autopilot is complete and was run live in a throwaway repo: envelope editor, bounded parallel hand-over, an honest spend estimate, and a band segment. The live run cost $0.356 on haiku and confirmed that Start asks first, verification runs, an out-of-envelope task is parked and never run, Stop takes 0.2 s, and a kill -9 resume does not double-execute. Seven defects found live were fixed. Not exercised live: parallel hand-over, spend ceilings and the Anatole gate.
  • Incremental transcript parsing: appending 50 lines to a 3 MB transcript went from about 38 ms to about 0.4 ms.

npm packages carry new behaviour

  • Recall log, ON by default. The intelligence hook now records which memories it surfaced (ids, scores, ranks and a 16-hex digest of the prompt, never the prompt text) in .claude-flow/data/recall-log.jsonl. It rotates at 1 MiB and stays local. Opt out with RUFLO_RECALL_LOG=0 or recallLog.enabled=false in claude-flow.config.json.
    • Caveat: ids embed slugified memory headings.
    • Caveat: a short, predictable prompt can be confirmed by guessing against its digest.
  • memory list --embeddings (read-only, 500 rows, int8) feeds the console's memory map.

How the console reaches you

Through the git marketplace, not the npm tarballs:

claude plugin marketplace update ruflo
claude plugin update ruflo-console@ruflo

Then restart Claude Code.

Known limits

  • About 190 ms of extra plugin load per start.
  • Running all 25 kit tests at once under heavy load makes tests 3-8 time out at their own 5 s limits. The sequential runner plugins/ruflo-console/scripts/kit-seq.sh passes 216/216.
  • The recall log appears only after helpers refresh to this release.
  • Federation peer dispatch and OpenRouter itself were never called for real.
  • 6 type errors remain in files other lanes own.