You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Feast UI does not show which Feast package version the running service is using. The UI server health endpoint returns status only, so operators need container or cluster access to verify a deployed release.
Proposed behavior
Add an authenticated GET /api/v1/version endpoint to the shared registry REST API and show its result in the UI sidebar. The response should be derived from feast.version.get_version() in the running process, for example:
{"feast_version": "0.66.0"}
The UI should hide the label without disrupting navigation when the endpoint is unavailable, preserving compatibility with older or custom backends. The existing health endpoint should remain unchanged.
Why use the shared REST API?
Both the UI-mounted API and standalone registry REST server register the same router set and apply authentication at the application level. A shared route provides one contract without duplicating authentication or server-specific code.
Acceptance criteria
The value comes from installed package metadata in the running Python process.
Existing REST authentication applies to the endpoint.
The UI displays the version in its sidebar when available.
Add a typed /version router to the shared registry REST route set. It will call feast.version.get_version() at request time, inherit each server's existing application-level authentication dependency, and leave /health unchanged.
Add a small React Query hook and sidebar component. The UI will display Feast vX.Y.Z, show an explicit unknown value, and render nothing when the endpoint is missing or fails.
Cover the response contract, inherited authentication, UI mount path, successful rendering, unknown versions, malformed responses, and endpoint failures. Then run the Python and UI test/lint/build gates and verify the layout visually.
Activity
larrysingleton007 commentedon Sep 17, 2026
Implementation plan:
/versionrouter to the shared registry REST route set. It will callfeast.version.get_version()at request time, inherit each server's existing application-level authentication dependency, and leave/healthunchanged.Feast vX.Y.Z, show an explicit unknown value, and render nothing when the endpoint is missing or fails.