What's Changed
- Implement cyberpunk web dashboard with real-time SDLC cycle visualization by @charneykaye in #14
- Replace BYOK (Bring Your Own Key) authentication with local CLI authentication for both GitHub and Claude by @charneykaye in #15
- Bypass PR merge rules by @charneykaye in #18
- Orchestrator does not repeatedly retry doomed actions every cycle by @charneykaye in #20
- Remove All Force-Pushes in Favor of Safe Merge Strategy by @charneykaye in #27
- Improve branch push reconciliation for non-fast-forward races by @charneykaye in #29
- Hardens branch push handling so local agent work is not lost by @charneykaye in #30
- Creating a pull request for a branch that already has an open PR by @charneykaye in #31
- Check for an existing PR before attempting to create one by @charneykaye in #32
- Fix comment on existing PR to indicate as much by @charneykaye in #33
- PR opening is only comment on this action by @charneykaye in #34
- Implementation workflow reuses existing open PR for the same branch by @charneykaye in #35
- Add screenshot by @charneykaye in #36
- New screenshot by @charneykaye in #40
- New screenshot by @charneykaye in #41
- Use Claude CLI --verbose flag and stream thinking output live by @charneykaye in #37
- Panel C broadcast feed: structured state-change cards with queued animations by @charneykaye in #39
- New screenshot by @charneykaye in #44
- Dashboard Panel B: Issue → PR lifecycle view with two-halved pills by @charneykaye in #38
- Dashboard panels: suppress horizontal scrollbars with overflow-x: hidden by @charneykaye in #48
- Live N-line terminal status board with elapsed timer and thinking preview by @charneykaye in #43
- New screenshot by @charneykaye in #49
- Dashboard: N-cylinder engine as primary visual identity (Panel A/B/C layout) by @charneykaye in #42
- New screenshot by @charneykaye in #50
- New screenshot by @charneykaye in #51
- Handle Claude terms-acceptance API gate gracefully by @charneykaye in #52
- New screenshot by @charneykaye in #56
- Fix no-change merge stale loop by @charneykaye in #57
- SDLC: child issues block parent by @charneykaye in #60
- By default, include Sonnet 4.6 in env by @charneykaye in #61
- Ensure merge-conflict resolution takes priority over all other PR actions by @charneykaye in #67
- Fix dashboard broadcast feed showing duplicate events during idle polling by @charneykaye in #68
- Dashboard: show green working indicator during cycle, yellow timer while waiting by @charneykaye in #66
- Steer working sessions using human PR comments by @charneykaye in #69
- Multi-account Claude Code rotation with rate-limit-aware cycling by @charneykaye in #71
- Dashboard cylinders: show model name and add spinner animation by @charneykaye in #72
- Milestone order determines issue selection order by @charneykaye in #73
- Link dashboard UI elements to GitHub (opens in new tab) by @charneykaye in #76
- Remove github link in header by @charneykaye in #77
- Add Human-in-the-Loop SDLC project mode (Ready/In Progress workflow, no auto-merge) by @charneykaye in #75
- Tiny tweak to header style by @charneykaye in #80
- Tiny tweak to header style by @charneykaye in #81
- Make ISSUE→PR LIFECYCLE panel pills use full width by @charneykaye in #79
- Add dedicated model for commit message generation (CLAUDE_COMMIT_MODEL) by @charneykaye in #78
- Each of N concurrent engines has an independent cycle by @charneykaye in #70
- Remove '# completed' from ISSUE→PR LIFECYCLE panel header by @charneykaye in #82
- Sort lifecycle panel by workability order; show blocked indicator on pills by @charneykaye in #83
- Replay cached state to browser on dashboard reload by @charneykaye in #85
- Fix dashboard syntax error: escape newline in thinkingLines join separator by @charneykaye in #88
- Dashboard: coordinate pill and broadcast event colors with N-cylinder neon palette by @charneykaye in #87
- Apply
manuallabel filter universally (not just in project mode) by @charneykaye in #90 - Press Escape in console to gracefully shutdown engines and quit by @charneykaye in #92
- Dashboard: linkify broadcast feed and blocked-issue badges to GitHub by @charneykaye in #93
- Issue -> PR lifecycle rows have stable order by @charneykaye in #94
- New screenshot by @charneykaye in #95
- Don't show manual issues in dashboard at all by @charneykaye in #98
- Change shutdown language by @charneykaye in #99
- Show explicit idle reason or next-cycle countdown per engine in dashboard by @Copilot in #97
- Prevent blocked issues from being scheduled when dependency syntax uses colons by @Copilot in #102
- Exit process after shutdown completes by @charneykaye in #108
- Dashboard Issue should not appear blocked if its blocking issue(s) are closed! by @charneykaye in #110
- Show commit model in dashboard cylinder label during squash-merge by @charneykaye in #111
- Engine cylinders 4x taller with live Claude thinking stream by @charneykaye in #112
- Prevent dashboard elements from flickering during updates by @charneykaye in #109
- Show elapsed time, next-cycle countdown, and rate-limit countdown in dashboard cylinders by @charneykaye in #113
- Cylinder label shows "Idle" instead of the model name by @charneykaye in #114
- Relax milestone gate: advance once preceding issues are started by @charneykaye in #117
- PRs always start in Draft state until Ready by @charneykaye in #118
- Fix skipping issues with Ready to Review PRs by @charneykaye in #119
- Orchestrator — never work on a manual PR by @charneykaye in #122
- Issues with assigned engine cylinders always displayed on top by @charneykaye in #123
- HITL: read and respond to every PR comment — including reviews — when resuming work by @charneykaye in #124
- HITL: track posted comment ids and react 👀 to comments Vibrator reads by @charneykaye in #125
- Work on indy PR shows as whole pill by @charneykaye in #126
- Fix display of PR implementing in progress by @charneykaye in #127
- Fix concurrent PR work, milestone gating, and repeated comment reads by @charneykaye in #128
- Fix delay in showing implementation right-half of pill by @charneykaye in #129
- Enhance behavior of stale work tree by @charneykaye in #132
- Fix test by @charneykaye in #134
- Add DASHBOARD_TITLE env var to customize dashboard header text by @charneykaye in #135
- Differentiate 'ready for review' PRs from draft 'in progress' PRs in lifecycle pane by @charneykaye in #136
- Enforce proper sentence format for generated PR titles by @charneykaye in #137
- Federate and enhance documentation with Mermaid SDLC diagram by @charneykaye in #139
- Keep in-flight implementations pulsing in the lifecycle pane by @charneykaye in #140
- New Screenshot by @charneykaye in #141
- Pulse "implementing…" only on rows with an active cylinder by @charneykaye in #142
Full Changelog: https://github.com/outrightmental/vibrator/commits/v0.1