Description
Loop48 narrows the delivery to captured H100 SXM HGX. This follow-up records unsupported other-product profiles, NVSwitch exporter exposition and Grace/MIG extension, not admitted in loop48. Original broad criteria are retained verbatim below; accepted H100 behavior is not undone. Resume with pinned product framebuffer/thermal/profile support and switch/Grace exporter evidence, without inventing names or treating dcgmi as exporter exposition.
Acceptance Criteria
- #1 A dcgm construct emits the stock counter set by default, with blueprint-selectable counter profiles (stock, fault-detection additions, DCP profiling fields) and P2P status off by default; series per GPU in just dump matches the documented count for each profile
- #2 Host mode and Kubernetes mode are both supported; in Kubernetes mode pod, namespace and container labels exist only while a workload pod is bound to the GPU and join to kube-state-metrics pod series and to the GPU fixture
- #3 NVL72 nodes emit the NVSwitch and Grace CPU entity families the way dcgm-exporter does on that platform, or the gap is PENDING in cantfind.md; MIG is supported or explicitly deferred
- #4 Values are physically consistent: utilisation follows scheduler allocation when a scheduler construct is present, power and temperature stay inside the GPU model’s envelope, counters are cumulative
Definition of Done
- #1 just check (fmt-check, lint, gen-check, env-check, docs-check, test, race, hygiene, ui-check, compose-check, helm-test, lab-check, signal-fidelity)
- #2 just gen (only if a blueprint field, construct/workload config struct, or a skill under plugins/synthkit/skills/ changed)
- #3 just dump — inventory diffed against signals/