You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat(quota-plane): split gatherer rows per pool — OpenCode Go per-workspace + Antigravity pool grouping for the /quota overlay #1331
Part of epic #1149; follow-up to the quota-current visibility hop (PR #1329, merged). Priority P1.
The gatherer emits OpenCode Go as ONE combined row (serviceId opencode-go) and Antigravity as per-model windows, so the aggregator overlay cannot map them onto their split hub pools (Go Personal vs Lab; Antigravity Gemini vs Claude/GPT pools) — they appear only in the payload's gatherer summary today.
Work: in the OpenChamber quota module / gatherer mapping, split Go per workspace (the console adapter already fetches per-workspace status; the module lacks a per-credential fetch for opencode-go — add fetchQuotaForCredential like cline-pass/deepinfra) and group Antigravity windows into its two hub pools (per-model grouping rules from the registry: Gemini weekly/5h; Claude+GPT pools). Emit stable serviceIds the overlay can target; keep the combined rows available for other consumers.
Acceptance: /quota Go cards (Personal, Lab) and both Antigravity pools render gatherer freshness + values on the 15-min tick; lapse states (Go, Nov 2/Nov 6 — #1118) still representable.
Acceptance criteria
The gatherer emits split rows with stable serviceIds for OpenCode Go per workspace (Personal, Lab) and for both Antigravity pool groups (Gemini, Claude/GPT), so the aggregator overlay can map them onto the split hub pools.
/quota Go cards (Personal, Lab) and both Antigravity pools render gatherer freshness + values on the 15-minute tick.
Fleet monitor intake pass (protocol §5), 2026-10-27. Verified still live: no merged PR implements or resolves this issue as of this run, and no duplicate open issue covers it.
Related: Related: part of epic #1149; follow-up to PR #1329 (quota-current visibility hop, merged); lapse-state context #1118. Filer unrecorded (filed during the deploy verification in the main chat) — no source/* label applied.
Notes / risks / suggested approach: Risk: changing gatherer row shape can break other consumers of the combined rows — the issue requires keeping them available. Suggested approach: emit split rows additively with stable serviceIds, then point the overlay at them.
Labels normalized by this pass: kind/enhancement, status/needs-triage, priority/high, effort/m, meta/enriched.
Session / ID: repo-fleet-monitor run 2026-11-02 20:12 CST
Found via: monitor reconciliation
Task: Claim-evaporated repair: task 6577 is queued unclaimed (attempts 2/2, checkpoint stage handed_off) while this issue still carried claimed labels. Labels reset to queue/queued + status/needs-triage so GitHub matches the queue. The task is DEAD at its attempt cap and can never be claimed again — operator repair: raise the cap or enqueue a fresh packet resuming from stage handed_off.
Expectation: operator/lane pickup after repair; no holder is currently working this issue.
Done: PR #4817 merged (f8e356f) — gatherer emits stable split rows (opencode-go:personal/lab via credential labels; antigravity:gemini/claude-gpt via poolFor grouping, hottest window wins) alongside unchanged combined rows. Verified: 44/44 quota-gather-map, 83/83 with quota-current overlay (new test maps all four split rows onto hub pools), 42/42 quota+contract, tsc clean for touched files. Lapse states (#1118) representable as pool errors; unconfigured rows never split.
Activity
developing-today commentedon Oct 27, 2026
CODE-436
dezren39 commentedon Oct 27, 2026
Intake review
Fleet monitor intake pass (protocol §5), 2026-10-27. Verified still live: no merged PR implements or resolves this issue as of this run, and no duplicate open issue covers it.
Related: Related: part of epic #1149; follow-up to PR #1329 (quota-current visibility hop, merged); lapse-state context #1118. Filer unrecorded (filed during the deploy verification in the main chat) — no source/* label applied.
Notes / risks / suggested approach: Risk: changing gatherer row shape can break other consumers of the combined rows — the issue requires keeping them available. Suggested approach: emit split rows additively with stable serviceIds, then point the overlay at them.
Labels normalized by this pass: kind/enhancement, status/needs-triage, priority/high, effort/m, meta/enriched.
dezren39 commentedon Nov 2, 2026
Agent note — pickup
8 remaining items
dezren39 commentedon Nov 3, 2026
🤖 Agent note · handed off
opencodefor task 6577 (issue feat(quota-plane): split gatherer rows per pool — OpenCode Go per-workspace + Antigravity pool grouping for the /quota overlay #1331: split gatherer rows per pool). Fresh check 2026-11-03T00:52Z: issue feat(quota-plane): split gatherer rows per pool — OpenCode Go per-workspace + Antigravity pool grouping for the /quota overlay #1331 OPEN, no hard-stop labels. Handing off — the laptop opencode claimant launches the bound session; this lane does not work the task directly. Attempt 2/2; this is a re-handoff after the previous handed-off claim's lease expired.dezren39 commentedon Nov 3, 2026
🤖 Agent note · handed off
dezren39 commentedon Nov 3, 2026
agent-note:v1 — state: handed off — queue task 6577 launched in bound OpenCode session ses_e5e5f4ff12dffeNyEjmAttpkVm by opencode-claimant.
feat(quota-plane): split gatherer rows per pool (#1331)
Merge pull request #4817 from developing-today/queue/6577-1331-quota-…
dezren39 commentedon Nov 3, 2026
Done: PR #4817 merged (f8e356f) — gatherer emits stable split rows (opencode-go:personal/lab via credential labels; antigravity:gemini/claude-gpt via poolFor grouping, hottest window wins) alongside unchanged combined rows. Verified: 44/44 quota-gather-map, 83/83 with quota-current overlay (new test maps all four split rows onto hub pools), 42/42 quota+contract, tsc clean for touched files. Lapse states (#1118) representable as pool errors; unconfigured rows never split.