# Quickstart — Spec 091 (BackupSchedule Retention & Lifecycle)

## Goal

Verify BackupSchedule lifecycle (Archive/Restore/Force delete) behavior, RBAC semantics, audit logging, and scheduler safety.

## Prerequisites

- Docker/Sail running: `vendor/bin/sail up -d`

## Run focused tests

- Run BackupScheduling tests:
  - `vendor/bin/sail artisan test --compact tests/Feature/BackupScheduling`

- Run RBAC helper tests (guardrails for 404/403 semantics and destructive confirmation):
  - `vendor/bin/sail artisan test --compact tests/Feature/Rbac/UiEnforcementNonMemberHiddenTest.php`
  - `vendor/bin/sail artisan test --compact tests/Feature/Rbac/UiEnforcementMemberDisabledTest.php`

## Manual verification checklist (admin UI)

In tenant panel (`/admin/t/{tenant}`):

- List shows active schedules by default.
- “Archived” filter/view shows archived schedules.
- Archive action:
  - requires confirmation
  - moves schedule to archived view
  - schedule is no longer dispatched/executed
- Restore action:
  - restores schedule to active view
  - does not change `is_enabled`
- Force delete action:
  - visible only when archived
  - requires confirmation
  - blocked if historical runs exist

## Formatting

- `vendor/bin/sail bin pint --dirty`
