v3.32.38
ruvnet/ruflov3.32.38Jul 29, 2026by ruvnet
AI Summary
Fixes background process leak by restricting daemon auto-start to projects containing actual Ruflo markers, preventing accumulation in unrelated directories.
Key Highlights
- Daemon auto-start now requires a Ruflo project marker (`.claude-flow/`, config, or initialized memory db).
- Prevents accumulation of daemons in unrelated Claude Code projects.
- Explicit `ruflo daemon start` remains available everywhere.
New Features
- Restriction of daemon lifecycle to Ruflo projects.
- 30-minute abandoned-daemon idle timeout.
Full Release Notes
# Ruflo v3.32.38: Daemons Start Only for Ruflo Projects Ruflo v3.32.38 fixes a background-process leak discovered during the post-release audit: a read-only command in a directory containing only a Claude Code `.claude/` folder could start a detached Ruflo daemon. The trigger was subtle. Signed-champion startup migration created a `.claude-flow/` state directory, and daemon auto-start then mistook that startup-created directory for prior user initialization. Repeated commands in unrelated Claude projects could therefore accumulate one daemon per directory. ## Install or upgrade ```bash npm install --global ruflo@3.32.38 ruflo --version ``` ## What changed Daemon auto-start now requires a durable Ruflo project marker: - a Ruflo runtime config under `.claude-flow/`; - a legacy `claude-flow.config.json`; - an initialized `.swarm/memory.db`; - a Ruflo-specific Claude settings section; or - a Ruflo/Claude Flow MCP server entry. A generic `.claude/` directory, an empty `.claude-flow/` directory, or policy state created during the current startup no longer authorizes a detached process. Explicit `ruflo daemon start` remains available everywhere, and initialized Ruflo projects retain automatic background workers. ## Validation - The exact issue reproduction was run against 3.32.37 and produced a daemon. - The same reproduction against the patched build produced no process and no daemon PID file, even though signed-champion and policy state were applied. - Daemon auto-start regression suite: 13/13. - CLI TypeScript build passes. - The stable release pipeline builds immutable archives, smoke-installs all three public packages, publishes those same bytes, and verifies a fresh registry installation. This release resolves [#2852](https://github.com/ruvnet/ruflo/issues/2852).