Download Latest Version flow-next v2.15.0 source code.zip (10.5 MB)
Email in envelope

Get an email when there's a new version of Flow-Next

Home / flow-next-v2.12.4
Name Modified Size InfoDownloads / Week
Parent folder
flow-next v2.12.4 source code.tar.gz 2026-07-12 8.7 MB
flow-next v2.12.4 source code.zip 2026-07-12 10.1 MB
README.md 2026-07-12 3.8 kB
Totals: 3 Items   18.8 MB 0

Added

  • Surface setup-version mismatch: once-per-version blocking ack (interactive) + loud verdict line (autonomous) (fn-95). Every lifecycle skill already ran a fail-open version pre-check comparing .flow/meta.json setup_version against the plugin manifest, but the on-mismatch signal was a one-line echo the host agent routinely buried (this repo ran 2.6.0-era local files against a 2.12.x plugin for weeks unnoticed). This spec changes only what happens on mismatch; detection, its cost, and its fail-open posture are byte-for-byte unchanged.
  • Interactive skills (interview, plan, work, capture, tracker-sync, sync, make-pr, resolve-pr, qa, prime, map, audit, memory-migrate, ralph-init, prospect, strategy) now escalate a mismatch to a blocking AskUserQuestion with a frozen three-option set (Refresh now / Remind me next version / Skip this run), asked at most once per plugin version. A new optional .flow/meta.json field version_ack (a plugin semver, written skill-side via jq + same-dir tmp + atomic mv, no new flowctl subcommand) records "asked about version X, chose not to refresh" so users are never re-nagged for a version they dismissed; a later plugin version re-arms the question. The question is suppressed under the autonomy-marker family setup already honors (FLOW_RALPH=1, REVIEW_RECEIPT_PATH set, FLOW_AUTONOMOUS=1, ARGUMENTS contains mode:autonomous), falling back to the one-line echo. All reads/writes fail open. (task .1)
  • Autonomous skills (/flow-next:pilot, /flow-next:land) never block and never ask; on mismatch they stash and emit a grep-able SETUP_STALE: local v<X>, plugin v<Y>, run /flow-next:setup line immediately before the terminal PILOT_VERDICT / LAND_VERDICT line (co-located so it survives into transcript-blind driver logs). version_ack does NOT suppress it (logs are cheap). Emitted at every terminal verdict site including the hard-guard exits; fail-opens to nothing. (task .2)
  • No detection change, no receipts-schema change, no non-interactive setup-refresh mode, no auto-running setup from another skill. flowctl init / doctor tolerate version_ack (unknown keys already ignored). Codex mirror regenerated (the sync script rewrites AskUserQuestion to the numbered-prompt instruction; the SETUP_STALE lines carry verbatim).

Fixed

  • tracker-sync: merge base must snapshot the STORED tracker body, never the sent render (fetch-back rule). Trackers rewrite markdown on save - Linear (confirmed live 2026-07-11) auto-linkifies slash-joined filenames (CLAUDE.md/AGENTS.md -> [..](<http://...>)), inserts blank lines before list blocks, and turns >-leading list items into blockquotes; Jira Cloud round-trips ADF (lossy by design). A merge base seeded from the renderFlowToTracker output that was SENT therefore false-diverges on the next reconcile (observed: 149 diff lines, zero human edits, echo-fence reported a conflict). body-merge.md Step 5 gains the transport-blind Fetch-back rule (re-fetchIssue after every writeIssue on every base-snapshotting path - Step 5 write-back, flow-first bootstrap, Phase 2a link, create-if-unlinked; GitHub/GitLab store verbatim but the one extra bounded read keeps the rule uniform), plus renderer-hygiene notes; steps.md call sites updated; Linear normalization documented in both rung gotchas (linear-graphql.md, linear-mcp.md). Codex mirror regenerated. Docs/prompt-level only - no flowctl change.
Source: README.md, updated 2026-07-12