Description
Independent deployments need reusable operational dashboards without identity collisions or silently selecting another deployment’s telemetry. The process self-observability artifact currently has fixed resource and datasource identities; its process picker does not constrain every signal. This is distinct from synthetic-telemetry dashboard generation and control/action dashboards. Provide a documented supported offline export contract; no dashboard publication, credentials, alerting or access-control changes are requested. Dashboard filtering is not datasource authorization.
Acceptance Criteria
- #1 A documented supported entrypoint exports operational dashboard resources with explicit resource-identity namespace, folder placement, datasource bindings and deployment scope; identical inputs are deterministic and distinct namespaces cannot collide, preserving compatible defaults
- #2 Every enabled panel and variable query is constrained to the requested deployment across metrics, logs, traces, profiles and spanmetrics; unsupported dimensions refuse export or explicitly omit affected panels with machine-readable diagnostics, never global fallback
- #3 The documented identity contract distinguishes stable deployment grouping from process/session selection, explains backend projection and preserves grouping across process replacement without invented labels; malformed or unrepresentable scope refuses without partial output
- #4 Actual export-entrypoint tests cover two deployments, multiple processes, supported signal families, unsupported dimensions and malformed bindings; complete query inventory and receiver fixtures prove neither deployment selects the other
- #5 Documentation states coverage, omissions, telemetry/backend prerequisites and filtering versus authorization; export is network-free and requires no tenant credential
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/