Skip to content

Tags: tuxtof/radar

Tags

v1.5.10

Toggle v1.5.10's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix(prometheus): dedupe memory scrape series (skyhook-io#654)

v1.5.9

Toggle v1.5.9's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix: server-side apply, idempotent Helm install, RBAC pre-flight (SKY…

…-843) (skyhook-io#605)

v1.5.8

Toggle v1.5.8's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
cache: patience-window + minimal-set first paint (skyhook-io#544)

radar-app-v1.0.0

Toggle radar-app-v1.0.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
cache: patience-window + minimal-set first paint (skyhook-io#544)

pkg/v1.5.6

Toggle pkg/v1.5.6's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
cache: patience-window + minimal-set first paint (skyhook-io#544)

k8s-ui-v1.5.11

Toggle k8s-ui-v1.5.11's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
cache: patience-window + minimal-set first paint (skyhook-io#544)

radar-app-v0.2.2

Toggle radar-app-v0.2.2's commit message
docs(claude): forbid ticket/PR refs in code comments

k8s-ui-v1.5.10

Toggle k8s-ui-v1.5.10's commit message
docs(claude): forbid ticket/PR refs in code comments

v1.5.7

Toggle v1.5.7's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix(drawer): populate Recent Events and bias toward K8s events (skyho…

…ok-io#547) (skyhook-io#556)

* fix(drawer): Recent Events section now populates and stays signal-rich (skyhook-io#547)

The Recent Events section in the resource detail drawer was always empty.
Three independent bugs combined to cause this; once they were fixed, a
fourth UX issue was addressed: K8s events were being drowned out by
high-frequency informer status flips on flapping resources.

Root causes fixed:

1. useResourceEvents queried /api/changes with kind="pods" (URL form), but
   the timeline store keys events by K8s Kind ("Pod") and did not pass
   include_managed=true, so the default preset's IsManaged() filter dropped
   Pod/Event/ReplicaSet entries entirely.
2. pluralToKind("pods") was returning "PodMetrics" because initNavigationMap
   let the metrics.k8s.io API resource (also named "pods") overwrite the
   canonical Pod mapping. Fixed to be first-wins for builtins. This was a
   broader bug that likely affected other kind-based lookups too.
3. The package's WorkloadView never plumbed the events array into
   ResourceRendererDispatch (in either drawer or expanded mode), so even a
   correct query never reached EventsSection. Added resourceFocusedK8sEvents
   and resourceFocusedUpdates props through the chain.

UX improvements on top:

- K8s events and informer/historical updates are now fetched in two separate
  React Query calls with separate limits (500 vs 50). On a flapping pod the
  k8s_event stream cannot be starved out by an unbounded update stream.
- EventsSection shows K8s events by default with a "Show N changes" toggle
  to fold in resource updates, with a tooltip explaining the distinction.
  Default is K8s-only because for most users those are the actionable
  signals (Pulling, Failed, BackOff, Killing, etc.).
- Backend /api/changes now accepts a sources= query param (already supported
  internally by the timeline store, just wasn't exposed).

Also removes web/src/components/shared/ResourceRendererDispatch.tsx, a
wrapper that nothing imported.

* review fixes: surface query errors, validate sources, tighten types

- useResourceEvents now returns k8sError/updatesError; EventsSection
  renders them inline so a partial query failure doesn't render as
  "no events" (same silent-failure class as the original skyhook-io#547 bug).
- /api/changes rejects invalid sources= values with 400 instead of
  silently returning [] (typos like "k8sevent" looked like empty).
- ResourceRendererDispatch: events?: any[] -> TimelineEvent[]; same
  for updates. No reason for any[] now that TimelineEvent is in scope.
- Add initNavigationMap regression test for the metrics.k8s.io/Pod
  collision — easy to "clean up" the first-wins guard without realizing.
- Trim a few JSDoc/inline comments that narrated WHAT or referenced
  the calling site.

radar-app-v0.2.1

Toggle radar-app-v0.2.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix(resources): pass basename-relative basePath so kind URL syncs in …

…Cloud (skyhook-io#558)

PR skyhook-io#552 fixed the standalone /resources redirect path but didn't address
the underlying mismatch in embedded mode: basePath was constructed with
the basename ('/c/{cluster}/resources'), while locationPathname comes
from react-router's useLocation which strips the basename
('/resources/deployments'). getInitialKindFromURL's
pathname.startsWith(basePath + '/') check therefore never matched in
Radar Cloud, so every navigation fell through to the default Pod kind —
URL would update to /resources/deployments, but the table kept rendering
Pods.

basePath is now '/resources' regardless of basename. URL writes still go
through handleNavigate, which strips any leading basename before
react-router re-applies it, so Cloud bookmarks and history-rewrites stay
correct.