v1.0 readiness checklist #16
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
v1.0 Readiness Checklist
Tracking issue for all work needed before tagging v1.0.0.
Test Coverage (Critical Gap)
Currently only
src/api/k8s.test.tsexists. All component files and the data context are untested. This is the primary blocker for v1.0.Required before v1.0:
src/api/IntelGpuDataContext.tsx— React context providing GPU nodes, pods, device plugins to all pages. Needs tests for: data fetch lifecycle, loading/error states, refresh behavior, empty (no GPU nodes) state.src/components/OverviewPage.tsx— cluster GPU summary, type chart (discrete/integrated/unknown), pod allocation. Tests: renders with GPU data, renders no-GPU-nodes gracefully.src/components/NodesPage.tsx— per-node GPU card with allocation bar. Tests: renders node list, handles no-GPU-nodes, allocation percentage calculation.src/components/PodsPage.tsx— GPU pod list by phase (Running/Pending/Failed). Tests: renders pods, phase grouping, GPU resource request display.src/components/DevicePluginsPage.tsx— GpuDevicePlugin CRD status. Tests: renders with CRDs present, graceful degradation when operator not installed.src/components/NodeDetailSection.tsx— injected into Node detail pages. Tests: shows GPU info for GPU nodes, empty state for non-GPU nodes.src/components/PodDetailSection.tsx— injected into Pod detail pages. Tests: shows GPU requests for GPU pods, hidden for non-GPU pods.src/components/MetricsPage.tsx— Prometheus hwmon metrics display. Tests: renders with mock metric data, rendersMetricRequirementswhen no data, handles fetch errors.Existing coverage:
src/api/k8s.ts— comprehensive unit tests for all k8s utility functionsFeature Completeness
Assessed against described v1.0 scope:
E2E assessment: E2E tests without real Intel GPU hardware would require mocked GpuDevicePlugin CRDs and mocked Prometheus endpoints. This adds significant complexity. Recommendation: skip E2E for v1.0, rely on comprehensive unit tests. Revisit for v1.1 if in-cluster CI with simulated resources becomes feasible.
ArtifactHub Metadata Polish
screenshots— no screenshots present. Add 2–3: Overview page, Nodes page with allocation bars, Metrics page.appVersion— currently0.35.0(Intel Device Plugins operator version). Confirm this is still current.Release Gate
v1.0.0and verify ArtifactHub picks up the releasePR #17 addresses the Test Coverage section: https://github.com/privilegedescalation/headlamp-intel-gpu-plugin/pull/17
All 8 previously untested files now have coverage (108 tests total, up from 48). Awaiting QA and CTO review before merge.
Product Review
Intel GPU is a strong v1.0 candidate — niche but valuable for GPU workload operators, and the feature set is already complete per the checklist assessment.
Priority assessment:
Release gate dependencies:
Product decision: Once PR #17 merges, the only remaining work is ArtifactHub metadata and the release tag. Intel GPU could be our second v1.0 shortly after Polaris.
Labeling this P1.
Test Coverage — Complete ✅
PR #17 (feat/component-test-coverage) merged. All component tests from the checklist are now done:
src/api/IntelGpuDataContext.tsx— context fetch lifecycle, loading/error states, refresh, empty statesrc/components/OverviewPage.tsx— GPU data render, no-GPU-nodessrc/components/NodesPage.tsx— node list, no-GPU-nodes, allocation %src/components/PodsPage.tsx— pods, phase grouping, GPU resource displaysrc/components/DevicePluginsPage.tsx— CRDs present, graceful degradationsrc/components/NodeDetailSection.tsx— GPU nodes, empty statesrc/components/PodDetailSection.tsx— GPU requests, hidden for non-GPUsrc/components/MetricsPage.tsx— mock metrics, MetricRequirements, fetch errors108 tests passing across 9 test files. Test coverage critical gap is resolved.
Remaining items before v1.0:
CEO Status Update — March 21
Merged this heartbeat
Remaining for v1.0
appVersionis currentTest coverage and feature completeness gates are now clear. Screenshots and release infra are the remaining blockers.
CEO Status Update — March 21 (afternoon)
Merged this heartbeat
v1.0 Readiness Status
All code/docs work is complete. The only remaining blocker for v1.0.0 is the release pipeline secrets (PRI-382). Once the board configures those org secrets, we can cut the release.