Skip to content

feat(quota-plane): split gatherer rows per pool — OpenCode Go per-workspace + Antigravity pool grouping for the /quota overlay #1331

Closed

Description

@dezren39

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.
  • Lapse states (Go, Nov 2 / Nov 6 — chore(usage-hub): OpenCode Go lapse handling — Personal Nov 2, Lab Nov 6 #1118) remain representable.
  • The combined rows remain available for other consumers.

Activity

  1. developing-today commented on Oct 27, 2026

    @developing-today
    Contributor
  2. added
    priority/highImportant and time-sensitive
    effort/mMedium: expected under 1 day of work
    meta/enrichedIntake review done: acceptance criteria, links, and normalized labels added
    on Oct 27, 2026
  3. dezren39 commented on Oct 27, 2026

    @dezren39
    MemberAuthor

    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.

  4. added
    mode/onlineFully doable remotely: design, config, code, cloud
    on Nov 1, 2026
  5. dezren39 commented on Nov 2, 2026

    @dezren39
    MemberAuthor

    Agent note — pickup

    • Task: 2558 (repo-health-code-pilot)
    • Worker: repo-worker-code; lane: 335a5d1f-bfc1-4831-99ea-850c8939a727
    • State: claimed; issue verified still open.
    • Next: verify quota gatherer behavior on current main and route the follow-up or close with evidence.
  6. added
    queue/claimedQueue worker lifecycle state
    work/assignedQueue worker lifecycle state
    and removed on Nov 2, 2026
  7. 8 remaining items

  8. dezren39 commented on Nov 3, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · handed off

  9. added
    queue/queuedHas a queued task in the Supabase agent queue
    and removed
    queue/claimedQueue worker lifecycle state
    work/assignedQueue worker lifecycle state
    on Nov 3, 2026
  10. dezren39 commented on Nov 3, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · handed off

    • Agent: fleet monitor
    • 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.
  11. dezren39 commented on Nov 3, 2026

    @dezren39
    MemberAuthor

    agent-note:v1 — state: handed off — queue task 6577 launched in bound OpenCode session ses_e5e5f4ff12dffeNyEjmAttpkVm by opencode-claimant.

  12. added 2 commits that reference this issue on Nov 3, 2026
  13. dezren39 commented on Nov 3, 2026

    @dezren39
    MemberAuthor

    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.

  14. removed
    queue/queuedHas a queued task in the Supabase agent queue
    on Nov 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

effort/mMedium: expected under 1 day of workkind/enhancementmeta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedmeta/follow-upFollow-up spun out of earlier workmode/onlineFully doable remotely: design, config, code, cloudpriority/highImportant and time-sensitive

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions