feat(vloer): show tasks Ploeg could not start under Needs you #212
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "ryangr0/replace/202-route-refusals"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Replaces #202 (feat: list and show tracker tasks that routing refused) after the Ploeg separation in #206. Its Ploeg part is ploeg-hq/ploeg#51; this PR moves Unfold's pin to that branch and carries the rest.
Commits
e10ee1f2build(ploeg): pin ploeg-hq/ploeg#51 to list routing refusalsff6d4c7efeat(vloer): show tasks Ploeg could not start under Needs you (from3958fc77c7)27582537chore(site): re-record the demo replay with the Could not start group (fromee5446c894)Merge order
build(ploeg)commit to the merge commit on Ploeg'smain, then merge. Until then theploeg-pincheck is red by design: it requires the pinned commit on Ploeg'smain.Verification (local, at
27582537with Ploeg619ddcb6)mise run verifywith the result cache, as a pull request runs it: all gates passed. That includes the Ploeg group (its ownscripts/verify.shat the pin), Vloer, the extension, the demo replay check, integration (managed qualification) and docs.What happened to each commit of #202
3936664d423958fc77c7ff6d4c7eee5446c894mise run demo-recordas27582537The original had no reviews or comments. Its checks were red because
developmentitself failed atmise install --locked; #206 fixes that lock. No earlier check result carries over.Original description of #202
VIK-1632 Ploeg: list recent routing refusals on the operator API
https://vikunja.webgrip.dev/tasks/1632
GET /api/v1/operator/route-refusalsreturns{schemaVersion, generatedAt, windowDays: 14, refusals}. It lists the newest refusal of each task, newest first, at most 50, within the consumer's teams. A task drops out when a laterwork_item.queuedorwork_item.refreshedaudit exists for it, or when its refusal is older than 14 days. Any query parameter answers 400invalid_request.target.Refusalnow carries a stableCode(label_missing, label_not_allowed, label_unregistered, multiple_labels, labels_unread, no_board_rule, target_not_ready) andAllowed, the repo/ labels of the matched board rule. Both are stored in the audit detail. Rows written before this change answerunclassifiedwithallowedLabels: []. The tracker comment is unchanged, and a test pins its exact text.audit_log (at)for this action.operator-api.v1gainsrouteRefusalsResponse. The contracts README androute-a-multi-repo-board.mdname the endpoint.VIK-1633 Vloer: show tasks Ploeg could not start under Needs you
https://vikunja.webgrip.dev/tasks/1633
PloegClient.nowreads route-refusals withadded: true. A 404 from an older Ploeg becomes an empty list with no notice, and any other failure becomeserrors.refused. Rows are filtered to the user's teams. The board name and the task link come from the task connection whose provider and project match (sourceTaskUrl). Without a match the link falls back toploeg.trackerUrl, and without that there is no button.unclassifiedshows Ploeg's reason. The primary button reads Open in Vikunja. A failed read shows an inline notice with Try again.chore(site)commit (ADR-0015).Tests
pkg/target/refusal_test.go,pkg/store/route_refusals_test.goandpkg/httpapi/route_refusals_test.go.go test -count=1 ./...passed andgo vet ./...reported nothing.test/now-view.test.mjsandtest/ploeg.test.ts.npm testpassed all 707 tests, andnpm run checkpassed.mise run verifypassed every gate: vloer, demo-replay, vloer-extension, ploeg, brand, site, site-demo, helm, release, integration and docs.Checks left to CI
None. Every gate ran locally.
🤖 Generated with Claude Code
🤖 Generated with Claude Code
275825379e6210cca3766210cca376501a018f54