mit einem Klick
shared-resource-model
// Work on Luxury Yacht canonical Kubernetes resource identity, status presentation, facts, ResourceLink relationships, DTO projection, table/detail/object-map parity, and shared resource model tests
// Work on Luxury Yacht canonical Kubernetes resource identity, status presentation, facts, ResourceLink relationships, DTO projection, table/detail/object-map parity, and shared resource model tests
Add support for a Kubernetes resource type by choosing the required catalog, refresh, detail, object-map, permission, frontend, docs, and test surfaces
Work on Luxury Yacht object-panel details, YAML, actions, logs, shell/debug tabs, docked panels, related objects, and tests
Work on Luxury Yacht RBAC permission checks, capability descriptors, permission-denied diagnostics, object action availability, YAML/edit/delete/scale/restart gating, and capability tests
Guide for safely modifying the refresh/streaming subsystem — covers the full domain lifecycle, registration points, and known fragility areas
Work on Luxury Yacht kubeconfig selection, multi-cluster client lifecycle, auth failure/recovery, selected/background clusters, cluster tabs, refresh subsystem rebuilds, and object catalog lifecycle
Work on logs, shell exec, debug containers, port-forward, node drain/maintenance, long-running operations, permissions, lifecycle, and cleanup tests
| name | shared-resource-model |
| description | Work on Luxury Yacht canonical Kubernetes resource identity, status presentation, facts, ResourceLink relationships, DTO projection, table/detail/object-map parity, and shared resource model tests |
Use this when touching canonical object identity, resource status,
statusPresentation, lifecycle, facts, owner/relationship links,
ResourceLink, event involved-object identity, DTO projection, or parity across
refresh rows, streams, object panel details, and object map nodes/edges.
AGENTS.mdbackend/AGENTS.mdfrontend/AGENTS.md for frontend consumersdocs/architecture/shared-resource-model.mddocs/architecture/catalog.md when identity/existence is involveddocs/architecture/refresh-system.md when rows, streams, events, or object
details consume the modelbackend/resourcemodelbackend/refresh/snapshotbackend/resourcesbackend/resources/typesbackend/object_detail_provider.gofrontend/src/shared/utils/backendStatusPresentation.tsfrontend/src/shared/utils/resourceLinkIdentity.tsfrontend/src/modules/object-panelfrontend/src/modules/object-mapfrontend/src/modules/* and
frontend/src/core/refresh/types.tsclusterId, group, version, kind,
and namespace/name for concrete objects.ResourceResolver.
Built-ins use their real group/version from the catalog seed; CRDs
preserve group/version from discovery, catalog, owner refs, HPA targets,
events, or manifests.status, statusState, statusPresentation, and optional
statusReason.ResourceLink; incomplete source refs become
display-only refs rather than unsafe navigation links.mage qc:prerelease.Use focused checks while iterating:
go test ./backend/resourcemodel ./backend/refresh/snapshot ./backend/resources/... ./backend
npm run typecheck --prefix frontend
npm run test --prefix frontend -- backendStatusPresentation resourceLinkIdentity object-map object-panel
Then run mage qc:prerelease for non-documentation changes.