Builds on the foundation (PR #4; this PR contains its commits, rebases cleanly once #4 merges). Fixes the NPE in BackupsHomeData.plansNeedingAttention (null slaStatus, null plan ids); full-width plan rows with derived lateness; working links in the Next UI (new config tablePathPrefix, default /app); the app attaches itself to its parent app so Admin > Backups shows in the nav; nav lists main tables only (file objects no longer in nav); record screens in sections with child lists (scope rules, runs, artifacts, verifications, restores, per-table results) instead of one long list; test-scope BackupsDemoServer (memory backend, real engine runs incl. a failed one); screenshots in docs/screenshots. Tests: BackupsHomeTest, mvn verify green. Not merged: #5/#6/#7 (restore/verification screenshots come from a scratch merge, in docs/screenshots/with-restore-verify).
Builds on the foundation (PR #4; this PR contains its commits, rebases cleanly once #4 merges). Fixes the NPE in BackupsHomeData.plansNeedingAttention (null slaStatus, null plan ids); full-width plan rows with derived lateness; working links in the Next UI (new config tablePathPrefix, default /app); the app attaches itself to its parent app so Admin > Backups shows in the nav; nav lists main tables only (file objects no longer in nav); record screens in sections with child lists (scope rules, runs, artifacts, verifications, restores, per-table results) instead of one long list; test-scope BackupsDemoServer (memory backend, real engine runs incl. a failed one); screenshots in docs/screenshots. Tests: BackupsHomeTest, mvn verify green. Not merged: #5/#6/#7 (restore/verification screenshots come from a scratch merge, in docs/screenshots/with-restore-verify).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Builds on the foundation (PR #4; this PR contains its commits, rebases cleanly once #4 merges). Fixes the NPE in BackupsHomeData.plansNeedingAttention (null slaStatus, null plan ids); full-width plan rows with derived lateness; working links in the Next UI (new config tablePathPrefix, default /app); the app attaches itself to its parent app so Admin > Backups shows in the nav; nav lists main tables only (file objects no longer in nav); record screens in sections with child lists (scope rules, runs, artifacts, verifications, restores, per-table results) instead of one long list; test-scope BackupsDemoServer (memory backend, real engine runs incl. a failed one); screenshots in docs/screenshots. Tests: BackupsHomeTest, mvn verify green. Not merged: #5/#6/#7 (restore/verification screenshots come from a scratch merge, in docs/screenshots/with-restore-verify).
🤖 Generated with Claude Code