All releases
Release
v1.1.4
What shipped, in numbers
- 71
- PRs merged
- 110,590
- Lines added
- 46,598
- Code lines
- Code
- 46,598
- Tests
- 18,430
- Docs
- 45,562
- Sum · code + tests + docs
- 110,590
of 71 merged
- bug 21 30%
- feature 33 46%
- polish 0 0%
- docs 14 20%
- groundwork 3 4%
- unclassified 0 0%
since v1.1.3 · tagged
What shipped
- fix(desktop): #3816 render SVG/image files in the preview pane — self-contained srcdoc, never a blocked file:// fetch (#3817)
- feat(skill): #3812 flowforge-blueprint-visuals — chart pipeline (two themes, ratify lifecycle) + 32-archetype ffdoc library + ERD/flow-chart doctrine (#3814)
- fix(tui): #3806 merge-failed modal scrolls long refusals — viewport + wrap-never-clip (#3813)
- feat(drawer): #3805 preview_dir navigates + preview_set entry point — close two ADR-0076/0091 seam gaps (#3811)
- feat(agents): #3808 fft-api-designer owns the SHAPE of every boundary — not just wire APIs (#3810)
- feat(agents): #3783 create fft-web-designer — dedicated web visual-design leaf + routing wiring [DRAFT] (#3786)
- feat(tui): #3777 Waiver-Management Settings tab (index 7) — LedgerTable + git-ls-files picker + tier-gated CLI seam (#3789)
- feat(skill): #3779 flowforge-linecap-peace-treaty — ACE proposes/grants per-file cap waivers via the audited CLI door (ADR-0107) (#3788)
- feat(enforcement): #3775 enforce-file-size.sh growth-aware on the shell path (ADR-0107) (#3785)
- feat(linecap): #3776 waiver CLI door — grant/list/revoke per-file overrides + audit ledger (ADR-0107) (#3784)
- feat(linecap): #3774 per-file line-budget override — linecap.ResolveForFile + shell twin + route every tooth (ADR-0107) (#3781)
- fix(infra): #3772 bake Supabase PUBLIC_ env into site build + fail-closed config guard [DRAFT] (#3773)
- refactor(hygiene): #3612 split-debt zero (Rule #24) — 19 files split ≤700; app.go escalated; scripts propose-archive [DRAFT] (#3762)
- fix(voice): #3758 restore TTS — passive boot falls through to provisioned sidecar (#3761)
- feat(desktop): #3719 ship remote admin default + honest in-pane degrade [DRAFT] (#3757)
- feat(tui): #3724 scratch terminals become top-bar citizens + Close-Terminals surface (#3738)
- feat(desktop): #3735 shortcuts-discovery overlay + top-chrome de-clutter (registry-backed) (#3756)
- fix(desktop-preview): #3734 theme-correct doc page background + honest expand glyph (#3739)
- feat(tui): #3733 keyboard-only compose flow — retire dead i/I hints; global i jump-to-compose; Ctrl+Shift+W round-trip with cursor restore (#3736)
- fix(desktop): #3717 drag-and-drop a data-image onto a terminal pane (worker + ACE rail) (#3730)
- feat(enforcement): #3715 deny the commit at the cap-crossing point (do-the-dishes) [DRAFT] (#3728)
- fix(desktop): #3725 dead-session pane self-heal + Ctrl+B tmux-prefix passthrough + input-wedge (#3729)
- feat(linecap): #3714 line cap from Settings is LAW everywhere — one accessor, tier-gated write, TUI read-only (#3727)
- fix(desktop): #3717 paste a clipboard image into the focused cockpit PTY (#3722)
- fix(worker-isolation): #3693 roll back orphan worktree+branch on spawn failure (#3723)
- feat(licensing): #2961 daemon suspend-not-clear lease on unreachable + grace lifecycle producer [DRAFT] (#3721)
- fix(autofire): #3694 exclude epic/umbrella tickets from dispatchable waves (#3720)
- fix(tui): #3711 relocate milestone-as-goals to O — Manual keeps M (unbreak release/1.1.4) (#3713)
- fix(automerge): #3675 honor merge-autonomy END-TO-END across briefing + settings surfaces (#3710)
- fix(pipeline): #3664 fact-anchor worker-done trigger — never a prompt-shape heuristic (#3708)
- feat(fleet): #3662 worker stays WARM through review — StatusInReview lifecycle + reap-only-at-terminal (#3704)
- fix(relay): #3695 active mid-turn submit recovery — staged-not-submitted sends recover without a human Enter (#3712)
- fix(emit): #3692 link po-brief + requirements into the docs trail by construction (#3709)
- fix(tui): #3663 clean stop never renders ERRORED; customer-grade crash copy (#3703)
- fix(reviewverdict): #3702 mechanical gate lists changed files without the diff API (no 20k-line 406) (#3707)
- feat(skill): #3616 extend flowforge-design-brief with orchestrator design-architect-FIRST routing (#3706)
- feat(ticketref): #3514 CG-1 — hoist issueFromBranch → internal/ticketref (one join, two walls) (#3681)
- feat(artifacthome): #3691 plays home their artifacts into version control by construction (#3700)
- fix(desktop): #3686 forward a file drop over a terminal pane to that cockpit's PTY (#3698)
- feat(desktop): #3685 keyboard focus toggle between preview pane and TUI terminal (#3699)
- feat(lane): #3519 LN-1 lane data model — fflane milestone marker + [release] default-lane resolver + Gate-2 mint stamp (#3680)
- fix(tui): #3678 ACE composer re-fixes height from live dims on open; Tab-cycle never clears an unsent draft (#3690)
- feat(tui+desktop): #3550 one-keystroke Manual — cockpit M + palette + desktop Help menu (#3688)
- feat(git-flow): #3493 lane-by-construction seal — git-lane-guard makes a worker UNABLE to cross a stage lane (#3687)
- fix(waves): #3679 wave/autorun state amnesia — three seams, one truth (#3689)
- feat(tui): #2963 ADR-0083 degraded-state cockpit surfaces — grace band + recovery + lock screen (#3669)
- feat(tui): #3316 milestone-as-goals view — umbrella → goal line → tickets → spec link (#3676)
- feat(licensing): #2965 pause in-flight workers + timers at entitlement LOCK, un-pause on resume [DRAFT] (#3670)
- feat(tui): #3315 board ↻N rework badge — INDEPENDENT verdicts only (#3666)
- feat(tui): #2962 never-zombie entitlement overlay — keep tea.Program alive on lease events; route all exits through fireSessionShutdownCleanup (#3668)
- feat(tui): #3674 wire the cockpit autorun chip to live wave/loop state (#3677)
- feat(specdefect): #3309 spec-defect vs impl-defect classifier over NOT-GOLDEN cycles (#3672)
- feat(blueprint): #3313 OQ-7 in-sprint amendment — append-only, base-rev-bound, with-changes disposition (#3671)
- fix(spawn): #3665 kill the .git/config lock race that lost wave workers (#3673)
- feat(billing): #2964 PAUSE-not-bill on the connectivity gap — suspend billable clock, mark interval suspended+NOT BILLED, restart on resumed (#3667)