Give DigitalOcean SKU trend series readable names with the SKU id as secondary text

Đang mở
#271 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
75/100
Loại issue
Tính năng
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
typescript
Lĩnh vực
data, frontend

Hướng nghiên cứu

Start by reading InsightsSchema in src/lib/adapters/digitalocean/schemas.ts:103-115 and adding description/group_description to it, then follow skuSpendMetrics in src/lib/adapters/digitalocean/index.ts:504-536 where the Daily spend on SKU <id> label is built. Check src/lib/dashboard/trends.ts to see how seriesTitle becomes the chart title and where the accessible name is set, so the id can move to secondary text while staying unique. Mirror realistic descriptions in src/lib/adapters/simulated/digitalocean.ts, extend the adapter tests with the one/several/empty/long description cases, and update docs/providers/digitalocean.md:91 and :256. Done means a unit-tested naming rule plus before/after screenshots of the demo workspace.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

area: integrations enhancement priority: P2 size: M

Summary

DigitalOcean's daily SKU trend charts are titled with the raw SKU id, for example "Daily spend on SKU 1-AP-PRO-0002 (DigitalOcean, USD)". Give each SKU series a readable name taken from DigitalOcean's own Billing Insights data, and show the SKU id as secondary text. Split out of #263 (decision B1 there), which leaves SKU titles unchanged.

Evidence

  • skuSpendMetrics (src/lib/adapters/digitalocean/index.ts:504-536) writes the label Daily spend on SKU <id> (:528). The trend chart title is that label (seriesTitle, src/lib/dashboard/trends.ts).
  • A snapshot row has no field besides label that could hold a name (usage_snapshots in src/lib/supabase/database.types.ts).
  • The Billing Insights schema the adapter parses (InsightsSchema, src/lib/adapters/digitalocean/schemas.ts:103-115) keeps only usage_team_urn, start_date, total_amount, and sku.
  • DigitalOcean's API also returns description and group_description per data point (docs/providers/digitalocean.md:91); description is the invoice item text, for example droplet name (c-2-4GiB) (docs/providers/digitalocean.md:256). One SKU billed for several resources has one data point, and one description, per resource.
  • Observed on the demo workspace (ce44e95): five DigitalOcean SKU charts, all titled with ids (1-AP-PRO-0002, 1-DB-PG-0003, 1-DO-DROP-0109, 1-DO-DROP-0112, 1-SP-SUB-0001). After #263 they sit behind the DigitalOcean disclosure on the dashboard.

Scope

  • Parse description (and group_description if it helps) in InsightsSchema.
  • Name each SKU series from its descriptions: the description when there is one, and a stated rule (for example "web-1 (s-1vcpu-1gb) and 2 more") when there are several.
  • Carry the SKU id so the chart shows it as secondary text, not in the title.
  • Update the simulator (src/lib/adapters/simulated/digitalocean.ts) to send realistic descriptions, docs/providers/digitalocean.md, and the adapter tests.
  • Stored labels change on the next sync only; say so in the pull request, and do not rewrite stored rows.

Acceptance criteria

  • A DigitalOcean SKU trend chart's title is a readable name from DigitalOcean data, with the SKU id shown as secondary text.
  • Unit tests: one description, several descriptions for one SKU, an empty description, and a very long one.
  • The accessible name of each SKU chart stays unique.
  • Before and after screenshots of the opened DigitalOcean disclosure on the demo workspace.

Model: anthropic/claude-opus-5-5 | Reasoning effort: unknown

Ngôn ngữ chính
TypeScript
Star
1
Fork
1
Merge trung bình
6 giờ 56 phút
Pull request đã merge (30 ngày)
136

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của eddiejaoude/StackDash

Tất cả issue của eddiejaoude/StackDash

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.