feat: manual VACUUM button in Settings and version in sidebar#79
Merged
Conversation
405083f to
142412f
Compare
- Bump version to 0.2.3-alpha. - Settings → Database Maintenance → 'Run VACUUM' button. POST /api/admin/vacuum runs VACUUM and a truncating WAL checkpoint, returning size_before, size_after, and elapsed_ms. Admin-only, audit-logged as settings.vacuum. New Db::vacuum() helper next to the existing purge_old_* methods in src/db/settings.rs. - Controller version surfaced on /api/health via a new 'version' field from CARGO_PKG_VERSION, and rendered as 'vX.Y.Z' in the sidebar footer under the health dot. - Pipelines page no longer stuck on 'Loading…' under auto-refresh. fetchGroupsPage wiped the grid and rendered the loader on every auto-refresh tick (every 5s), and the per-group pipeline-schedule lookups were sequential. Three layered fixes: only show the loader on initial load; skip a tick if the previous fetch is still in flight via a groupsFetchInFlight flag; parallelize per-group schedule fetches with Promise.all. - CI security job: replace EmbarkStudios/cargo-deny-action@v2 with a direct 'cargo deny check' invocation. The action built its own Docker image on every run and was failing with 'Docker build failed with exit code 1'. Install cargo-deny via taiki-e/install-action and run directly. - CI security job: replace rustsec/audit-check@v2 with a direct 'cargo audit' invocation. The action was failing after ~2m50s with 'Error: Unexpected end of JSON input' parsing cargo-audit output. Same fix pattern as cargo-deny — install via taiki-e/install-action and run cargo audit directly.
142412f to
7ca7dfa
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a 'Database Maintenance' card to Settings with a 'Run VACUUM' button (admin only) that calls a new POST /api/admin/vacuum endpoint. The handler runs VACUUM and a truncating WAL checkpoint, returning size_before, size_after, and elapsed_ms so the UI can show how much space was reclaimed. Audit-logged as settings.vacuum.
Also exposes the controller version on /api/health as a new 'version' field, populated from CARGO_PKG_VERSION, and renders it as 'vX.Y.Z' in the sidebar footer under the existing health dot. Confirms at a glance which version is actually running — needed it to verify the 0.2.2-alpha redeploy on the demo and figured the UI should just show it.
Bumps version to 0.2.3-alpha.