Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 7 additions & 4 deletions internal/api/antigravity_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -324,15 +324,18 @@ type AntigravityQuotaSummaryResponse struct {

// agyBucketMeta provides stable display ordering and colors for known buckets.
// Unknown bucket IDs still render via parser fallbacks.
//
// Order prefers 5h buckets before weekly: the shorter window is usually hit
// first, so it leads each family on the dashboard card strip.
var agyBucketMeta = map[string]struct {
short string
color string
order int
}{
"gemini-weekly": {"Gemini Weekly", "#10B981", 0},
"gemini-5h": {"Gemini 5h", "#34D399", 1},
"3p-weekly": {"Claude + GPT Weekly", "#D97757", 2},
"3p-5h": {"Claude + GPT 5h", "#E8A38C", 3},
"gemini-5h": {"Gemini 5h", "#34D399", 0},
"gemini-weekly": {"Gemini Weekly", "#10B981", 1},
"3p-5h": {"Claude + GPT 5h", "#E8A38C", 2},
"3p-weekly": {"Claude + GPT Weekly", "#D97757", 3},
}

// AgyBucketColor returns a stable card color for a bucket ID.
Expand Down
19 changes: 19 additions & 0 deletions internal/api/antigravity_types_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,25 @@ func TestAntigravityDisplayName(t *testing.T) {
}
}

func TestAgyBucketOrder_5hBeforeWeekly(t *testing.T) {
if AgyBucketOrder("gemini-5h") >= AgyBucketOrder("gemini-weekly") {
t.Fatalf("gemini-5h order=%d should be before gemini-weekly order=%d",
AgyBucketOrder("gemini-5h"), AgyBucketOrder("gemini-weekly"))
}
if AgyBucketOrder("3p-5h") >= AgyBucketOrder("3p-weekly") {
t.Fatalf("3p-5h order=%d should be before 3p-weekly order=%d",
AgyBucketOrder("3p-5h"), AgyBucketOrder("3p-weekly"))
}
// Families stay grouped: both Gemini buckets before both Claude+GPT buckets.
if AgyBucketOrder("gemini-weekly") >= AgyBucketOrder("3p-5h") {
t.Fatalf("gemini-weekly order=%d should be before 3p-5h order=%d",
AgyBucketOrder("gemini-weekly"), AgyBucketOrder("3p-5h"))
}
if AgyBucketOrder("unknown-bucket") != 1000 {
t.Fatalf("unknown bucket order = %d, want 1000", AgyBucketOrder("unknown-bucket"))
}
}

func TestAntigravityUserStatusResponse_ActiveModelIDs(t *testing.T) {
resp := AntigravityUserStatusResponse{
UserStatus: &AntigravityUserStatus{
Expand Down