feat(vloer): show when a waiting pull request conflicts with its base #219

Merged
ryangr0 merged 1 commit from ryangr0/feat/vloer-merge-state into development 2026-10-04 10:46:42 +00:00 AGit
Owner

Stacked on #217 and the budget-held PR: merge #217, then budget-held, then this one.

This is the Vloer half of the conflicted-PR display (VIK-1598). Its Ploeg half is ploeg-hq/ploeg#55, released in v0.2.0-rc.2.

What it changes:

  • Rows: a waiting pull request that conflicts with its base shows "PR #N · Conflicts".
  • Decision box: it leads with the merge state.
  • Notifications: Vloer notifies once per head commit when a pull request starts to conflict.
  • Older Ploeg: a Ploeg that reports no merge state shows nothing new.

It was written on 3 October and had been saved uncommitted in a worktree.

Checks: mise run verify (all gates) and mise run docs-check pass on the full stack.

🤖 Generated with Claude Code

**Stacked on #217 and the budget-held PR:** merge #217, then budget-held, then this one. This is the Vloer half of the conflicted-PR display (VIK-1598). Its Ploeg half is ploeg-hq/ploeg#55, released in v0.2.0-rc.2. What it changes: - **Rows:** a waiting pull request that conflicts with its base shows "PR #N · Conflicts". - **Decision box:** it leads with the merge state. - **Notifications:** Vloer notifies once per head commit when a pull request starts to conflict. - **Older Ploeg:** a Ploeg that reports no merge state shows nothing new. It was written on 3 October and had been saved uncommitted in a worktree. Checks: `mise run verify` (all gates) and `mise run docs-check` pass on the full stack. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
build(ploeg): pin Ploeg v0.2.0-rc.2
All checks were successful
[Workflow] On Pull Request / ploeg-pin (pull_request) Successful in 34s
[Workflow] On Pull Request / release-policy (pull_request) Successful in 1m6s
[Workflow] On Pull Request / checks (pull_request) Successful in 9m39s
[Workflow] On Pull Request / warnings (pull_request) Successful in 0s
8ee276497a
v0.2.0-rc.2 adds the pull request merge state (ploeg-hq/ploeg#55), the
changed paths on a card's play (#56), and the settlement patience before
a held pool parks (#59, Ploeg ADR 0048, accepted). Two migrations run on
start; the new operator fields are optional. The decision register picks
up ADR 0048's acceptance.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A Work Item closed with "budget exhausted: pool 8.00, spent 0.00, reserved
8.00" read "Budget ran out" over a 0% meter and told the operator to raise
the budget, while four Runs had failed at the model gateway. A budget stop
with more held than spent now reads "Budget held, not spent", names the
failure that came first, says whether Ploeg released the hold since, and
points the fix at that failure.

- Repeated Runs read "Run 4 of 5 · after 3 infrastructure failures"; the
  header and rows drop the attempt counter for the Shift's Run count.
- A Round cell with several Runs counts them by result and shows the
  newest failure, not the Run Ploeg closed before it started; such a Run
  has no cost to report.
- Cancel shows only when Ploeg would stop something (VIK-1594).
- The page no longer quotes Ploeg's budget sentence, apologises for a
  missing task link, or advertises proposed Ploeg work.
- plan_exhausted reads "Every Round ran, no result"; a group header keeps
  its fix as a tooltip while a Work Item is open beside the list.

VIK-1594

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Ploeg ADR-0048 closes a Shift whose holds never settled with
'budget held by unsettled runs: pool P, spent S, held H'
(ploeg-hq/ploeg#59, Ploeg v0.2.0-rc.2). Vloer shows it as Budget held,
not spent, with the held amount.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
fix(vloer): drop the roadmap note from the VS Code task view too
All checks were successful
[Workflow] On Pull Request / ploeg-pin (pull_request) Successful in 35s
[Workflow] On Pull Request / release-policy (pull_request) Successful in 38s
[Workflow] On Pull Request / checks (pull_request) Successful in 9m53s
[Workflow] On Pull Request / warnings (pull_request) Successful in 0s
70db898714
The budget-held change removed requeueNote, the "Starting again from
Vloer is proposed Ploeg work" line, so no surface advertises the roadmap.
The VS Code task view and the Work Item page started importing it after
that change was written; both stop now.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
feat(vloer): show when a waiting pull request conflicts with its base
All checks were successful
[Workflow] On Pull Request / ploeg-pin (pull_request) Successful in 38s
[Workflow] On Pull Request / release-policy (pull_request) Successful in 50s
[Workflow] On Pull Request / checks (pull_request) Successful in 9m54s
[Workflow] On Pull Request / warnings (pull_request) Successful in 1s
21eb72db68
Ploeg's Work Item list now reports each pull request's merge state (Ploeg
ADR-0040, ploeg-hq/ploeg#55). Vloer passes it through as `pullRequest` on
the Now items, marks a conflicted pull request on its row and in the
Work Item's decision box, and notifies once per head commit when a waiting
pull request starts to conflict. A Ploeg that reports no merge state shows
nothing new.

Written on 2026-10-03 as uncommitted work in a worktree and kept as
"wip vloer"; ported onto development after the Ploeg separation, with the
Now item's type merged with the routing refusals that landed since.

VIK-1598
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ryangr0 merged commit 91448d30de into development 2026-10-04 10:46:42 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
webgrip/unfold!219
No description provided.