Repository navigation
Open
Labels
queue/queuedHas a queued task in the Supabase agent queueHas a queued task in the Supabase agent queuesource/creatorFiled by the new-issue-creator jobFiled by the new-issue-creator jobstatus/needs-triageNot yet triaged; needs a first lookNot yet triaged; needs a first looktask/triageQueue packet kind: verify, reproduce, and route this itemQueue packet kind: verify, reproduce, and route this item
Description
Goal
Implement the contract in the #3418 design record so the queue skips work that cannot fit this shift instead of claiming and parking it on an arbitrary delay.
Design: #3418 (comment)
Implementation surface / ordering: #3418 (comment)
Scope
- After the design(queue): durable task data model — blocker links, park revalidation, status reasons + notes, full event history, actor provenance #3424 migration-baseline task 6633 verifies the restored chain/live schema, add the next migration for nullable
tasks.required_budget_minutes, packet/timebox defaulting, and non-negative validation. Do not assume a migration number from the stale local snapshot. - Extend
claim_repo_taskandrepo-queue.py claimto require remaining-budget input and atomically filter on requirement fit without mutating mismatches. Keepnot_beforeas an independent conjunctive gate; no unlimited legacy claim overload. - Extend packet schema/enqueue mapping and the helper park interface for explicit budget requirements; pure capacity park must not invent a future
not_before. - Update
pm-stack/dispatch/src/packet.ts/queue.tsif dispatch-produced packets need to emit the effective requirement. - Add focused SQL/helper/dispatch tests for the acceptance cases below.
Acceptance
- Null legacy requirement behaves as before; explicit requirement uses packet
timebox_minutesonly as its default. - Exact fit can claim; one-minute-short skips without claim, status change, or
not_beforemutation. - Pure capacity park is claimable immediately by a fitting worker; external-wait
not_beforeremains unchanged and blocks until due; after due, budget fit is still enforced. - 5256-shaped 120/10/120 case passes; priority does not bypass fit; impossible-fit is surfaced rather than skipped forever.
- Tests and migration number/schema-baseline evidence are posted here; do not change opencode#1014 itself.
Excludes
- The four-queue lane instruction edits (separate design(queue): budget-aware claiming — parks carry a minimum required time budget, claim matches the claimer's remaining shift budget #3418 follow-up).
- Unrelated design(queue): durable task data model — blocker links, park revalidation, status reasons + notes, full event history, actor provenance #3424 schema work except consuming task 6633's verified baseline and existing waiting-class vocabulary.
Metadata
Metadata
Assignees
Labels
queue/queuedHas a queued task in the Supabase agent queueHas a queued task in the Supabase agent queuesource/creatorFiled by the new-issue-creator jobFiled by the new-issue-creator jobstatus/needs-triageNot yet triaged; needs a first lookNot yet triaged; needs a first looktask/triageQueue packet kind: verify, reproduce, and route this itemQueue packet kind: verify, reproduce, and route this item
Activity
dezren39 commentedon Nov 3, 2026
🤖 Agent note · queued
dezren39 commentedon Nov 3, 2026
🤖 Agent note · picked up
dezren39 commentedon Nov 3, 2026
🤖 Agent note · parked
fix: correct split-issue links in grandfather list (#4715/#4716/#4717,…
256 remaining items
dezren39 commentedon Nov 6, 2026
🤖 Agent note · picked up
dezren39 commentedon Nov 6, 2026
🤖 Agent note · parked
queue/parked+status/parked;work/assignedretained.dezren39 commentedon Nov 6, 2026
🤖 Agent note · handed off