feat: bake version into binary and display in UI sidebar

- Inject VERSION via ldflags (-X main=web.Version=) and git short SHA
- Add /api/version endpoint returning {version, commit}
- Display version in Layout sidebar footer (v0.1.6 · 8cfd405)
- Add AGENTS.md section documenting SemVer policy and bump-before-push rule
- Bump VERSION 0.1.5 -> 0.1.6 in Makefile
This commit is contained in:
2026-07-05 23:07:20 -04:00
parent 8cfd405ffc
commit ac07499e8d
8 changed files with 65 additions and 4 deletions
+6
View File
@@ -65,6 +65,11 @@ export interface SystemStatus {
services: ServiceStatus[];
}
export interface VersionInfo {
version: string;
commit: string;
}
export class ApiError extends Error {
status: number;
constructor(status: number, message: string) {
@@ -104,6 +109,7 @@ export const api = {
apply: () => request<{ results: { module: string; applied: boolean; error?: string }[] }>("POST", "/apply"),
applyLog: () => request<{ entries: ApplyLogEntry[] }>("GET", "/apply/log"),
systemStatus: () => request<SystemStatus>("GET", "/system/status"),
version: () => request<VersionInfo>("GET", "/version"),
// samba
listShares: () => request<{ shares: SambaShare[] | null }>("GET", "/samba/shares/"),