Repository navigation
Releases
Releases · ravinald/drover
v0.2.0
What's Changed
- fix: a drive's status render links pull requests again by @ravinald in #2
- docs: release, Go version and license badges in the README by @ravinald in #6
- chore: ignore JetBrains .idea files by @ravinald in #7
- docs: operating modes and cost pages by @ravinald in #10
- E66: record each session's token usage in the ledger, headless and interactive, with a backfill from run logs by @ravinald in #11
- E67: status and the built-in dashboards show token usage per item and a 7-day total by @ravinald in #12
- B89: drive cannot wait out Claude's weekly limit: RetryAt does not parse its reset sentence by @ravinald in #13
- E71: attach shows what an in-flight session is doing, not only which stage it is in by @ravinald in #14
- B91: a check the merge gate blames on the diff is recorded without its failure: the reason, detail and sent-back body never say what failed by @ravinald in #15
- F14: drover sends needs_operator events to an ntfy server natively, configured per project or per user by @ravinald in #16
- E72: drive pauses and notifies before Claude's weekly allotment or the purchased extra credits run out by @ravinald in #17
- F15: notifications route per destination and per event, cover the whole drive, and say what was left undone by @ravinald in #18
- E73: an unanswered needs_operator notification repeats until the item moves by @ravinald in #19
- B82: split always makes the original item wait on the split one, which deadlocks when the split's fix needs the original's unmerged code by @ravinald in #20
- E64: an accepted item's requirements can only change by hand, and the hand edit parks the next clean review by @ravinald in #21
- E69: a drive never says the config changed under it, so an edit made mid-drive silently does not apply by @ravinald in #22
- E65: accept takes a body that still carries placeholders or a hold line, and a passing mention of a top-level directory serializes the item by @ravinald in #23
- B83: drive --resume onto a new binary deadlocks when an item waits for its trunk turn behind a held item by @ravinald in #24
- B84: drive skips the dependent of a dep parked for a manual merge, with no event and no chance to wait for the merge by @ravinald in #25
- B95: a usage hold names only the first of the holds a reading crosses, so --resume looks like it failed by @ravinald in #27
- F16: a session marker in the worktree seals sessions drover did not launch itself by @ravinald in #26
- E78: drover's terminal output carries color only in the status table, so a drive's stream, show and check read as undifferentiated text by @ravinald in #28
- E79: a project cannot switch off a usage level the per-user config sets, so a project meant to run on purchased credit still holds every week by @ravinald in #29
- B85: a refused --pause in a test leaves drivePause set for every later drive test by @ravinald in #30
- B98: a session's scratch project resolves to the live checkout, because DROVER_ROOT outranks the working directory by @ravinald in #31
- E77: Fence detection closes a nested or mismatched fence early by @ravinald in #32
- B87: usage --sync misses transcripts when the project root path crosses a symlink by @ravinald in #33
- B90: automation.md attach --session sample shows log= on the stage line, which attach never prints by @ravinald in #34
- B93: config --diff prints unset usage levels as 0, which pastes as a live hold or a load error by @ravinald in #36
- B92: a standard-library govulncheck finding reruns against the cached toolchain, which a rerun does not change by @ravinald in #37
- B96: a requeued item's earlier park stays in the drive's outcomes, so the exit summary reports a merged item as parked by @ravinald in #38
- B94: a drive snapshots .drover.toml after reconcile, so an edit made before the queue read is neither applied nor reported by @ravinald in #39
- B88: a drive session rewrites the checkout's AGENTS.md through worktree_links before its branch merges by @ravinald in #40
- E70: drive parks an item whose reviews name the same unmet requirement twice in a row, however the evidence is worded by @ravinald in #45
- B86: config --diff never mentions [supervise], so a project that predates it never learns its defaults apply by @ravinald in #46
- B99: config --diff prints a top-level key under the previous section's [table] header by @ravinald in #47
- E80: dashboard sections collapse under a contents line, and long sessions say whether they ended by @ravinald in #48
- F17: drover t3 is a runner that drives a T3 Code thread over MCP and speaks stream-json back by @ravinald in #49
- E74: a needs_operator event opens a T3 Code thread ready to answer it by @ravinald in #51
- E81: codex sessions write usage rows from turn.completed by @ravinald in #52
- B103: a merge-gate refusal for a branch behind main is blamed on the diff and sent back by @ravinald in #53
- B102: trunk_conflict park records detail unknown and the review log as evidence by @ravinald in #54
- B100: watch --until refuses needs_supervisor by @ravinald in #55
- E82: intake: opt-in setting to write the intake issue into closes by @ravinald in #56
- F18: the ledger records who created each item and who last edited it by @ravinald in #57
- F19: status shows each item's origin, created and last edited on a second line by @ravinald in #58
- B105: accept refuses a code span naming one HTML element or component as an unfilled placeholder by @ravinald in #59
- B108: drive parks an item repeating when each review found a different defect under the same requirement by @ravinald in #60
- B104: trunk check reads a stale main run and stops the drive while main is green by @ravinald in #61
- B109: usage rows count only the last result event of a Claude log that holds several by @ravinald in #62
- E85: a review can hand a requirement the code cannot meet as written to the operator instead of the implementer by @ravinald in #63
- B106: a ledger append joins a hand-written last line that lacks a newline by @ravinald in #64
- E86: commands that write an item's merge state refuse while a drive is running that item by @ravinald in #65
- B101: drive reports a queued auto-merge as merged by @ravinald in #66
- E91: review findings on an unmerged item go back to its branch or to the operator, never to the backlog by @ravinald in #69
- E92: drover refuses to file a finding against an unmerged item, and the review cap parks for a decision instead of filing by @ravinald in #70
- E89: an amend leaves a settled disposition settled, so the next review takes the old answer as fact by @ravinald in #71
- fix: drive merges synchronously and records the merge in the same drive by @ravinald in #72
- fix: a review round is spent only on the contract or a branch regression by @ravinald in #73
- fix: LIVE REQUIREMENT stops at the prose after the numbered list by @ravinald in #74
- docs: describe the synchronous merge and retire the --auto wording by @ravinald in #75
- docs: rewrite the playbook's item-writing half and add a design page by @ravinald in #76
- fix: a diff-caused gate refusal goes back to the implementer in the same drive by @ravinald in #77
- docs: list the playbook's four sections in the README by @ravinald in #78
- feat: status names its columns, keys its markers and shows each item's branch by @ravinald in #79
- feat: layer [prompts] overrides on the built-in templates by named block by @ravinald in https://github.com/ravinald/drover/pull/...
v0.1.1
v0.1.0
Full Changelog: https://github.com/ravinald/drover/commits/v0.1.0