Context
grafana/dashboards/resource-hub.json is the existing integrated-services hub dashboard, but it currently has zero mention of the miner or the Autonomous Miner System (AMS) anywhere in its panels. Meanwhile a new miner-usage.json dashboard exists (or is landing) that a dual-role operator -- someone running both ORB and AMS on the same box -- would want surfaced from the hub, the same way the hub already cross-links its other integrated services.
Dependencies
None -- independently shippable. This issue only needs the hub file itself and can reference miner-usage.json by its existing/expected path; it does not require any other issue in this batch to land first (it is not blocked by C38/C39, though it pairs naturally with them).
Requirements
- Add a markdown panel (or a dashboard-link entry, whichever the hub's existing pattern for cross-linking other integrated services uses) to grafana/dashboards/resource-hub.json.
- The panel/link must reference the miner-usage.json dashboard by its correct relative path/UID so clicking through actually navigates to it.
- Include a brief note (1-2 sentences, matching the hub's existing panel tone) that AMS is a separate local CLI a dual-role operator may also be running alongside ORB -- this is context, not a full feature description.
- Match the exact JSON structure/styling of the hub's existing integrated-services panel (same panel type, same grid sizing conventions, same title/description field usage) so the new panel doesn't look visually inconsistent with the rest of the dashboard.
- Do not modify any other panel, datasource, or dashboard variable already in resource-hub.json -- this is an additive change only.
Deliverables / Acceptance Criteria
Test Coverage Requirements
This PR must ship with full test coverage for every changed line and branch -- the repo's Codecov patch gate requires 99%+ coverage and the house standard is to aim for 100%, including both sides of every conditional/nullish-coalescing branch introduced. Since resource-hub.json is a Grafana dashboard JSON file, coverage here means: (1) if the repo has a dashboard-JSON schema/lint test (e.g. validating panel structure, unique panel IDs, valid datasource references), run and/or extend it to cover the new panel, (2) an invariant test asserting the new panel's link target/UID is a well-formed reference to an existing dashboard file (so a typo'd path can't silently ship as a dead link), and (3) no regression test is needed since this is a net-new panel, not a bug fix.
Expected Outcome
An operator viewing the resource hub can discover and jump straight to the miner-usage dashboard, and understands at a glance that AMS is a separate CLI process worth checking if they run both ORB and AMS.
Links & Resources
- grafana/dashboards/resource-hub.json (file to edit)
- grafana/dashboards/miner-usage.json (target dashboard being linked)
- Theme: Dashboard/observability parity
Context
grafana/dashboards/resource-hub.json is the existing integrated-services hub dashboard, but it currently has zero mention of the miner or the Autonomous Miner System (AMS) anywhere in its panels. Meanwhile a new miner-usage.json dashboard exists (or is landing) that a dual-role operator -- someone running both ORB and AMS on the same box -- would want surfaced from the hub, the same way the hub already cross-links its other integrated services.
Dependencies
None -- independently shippable. This issue only needs the hub file itself and can reference miner-usage.json by its existing/expected path; it does not require any other issue in this batch to land first (it is not blocked by C38/C39, though it pairs naturally with them).
Requirements
Deliverables / Acceptance Criteria
Test Coverage Requirements
This PR must ship with full test coverage for every changed line and branch -- the repo's Codecov patch gate requires 99%+ coverage and the house standard is to aim for 100%, including both sides of every conditional/nullish-coalescing branch introduced. Since resource-hub.json is a Grafana dashboard JSON file, coverage here means: (1) if the repo has a dashboard-JSON schema/lint test (e.g. validating panel structure, unique panel IDs, valid datasource references), run and/or extend it to cover the new panel, (2) an invariant test asserting the new panel's link target/UID is a well-formed reference to an existing dashboard file (so a typo'd path can't silently ship as a dead link), and (3) no regression test is needed since this is a net-new panel, not a bug fix.
Expected Outcome
An operator viewing the resource hub can discover and jump straight to the miner-usage dashboard, and understands at a glance that AMS is a separate CLI process worth checking if they run both ORB and AMS.
Links & Resources