Files
minabot/docs/LAUNCH-VERIFICATION.md

2.8 KiB

Launch feature verification — September 4, 2026

Feature Implementation and verification
Historical check-ins Calendar selection and date picker open dated count, checkbox, and task controls. Integration coverage changes a habit's method and corrects yesterday without changing today. Browser verified a saved historical count and refreshed calendar.
Account settings Timezone changes refresh the dashboard; JSON exports include owned records without session credentials. Typed-confirmation deletion removes dependent records and revokes sessions. API tests cover ownership, Origin checks, confirmation, foreign keys, and another account remaining intact. Browser verified timezone persistence.
Discord sharing controls SQLite reservations enforce one new post per user per minute and ten per channel per minute; duplicate checks remain safe. Tests cover cooldowns, channel quotas, allowlists, and rejected/uncertain delivery behavior.
Backup and recovery Production snapshots, pre-migration snapshot, retention, optional replica directory, and fresh-path recovery. Tests restore committed WAL progress, revoke sessions, disable recovered reminders, verify replicas and retention, reject unavailable storage and existing destinations, and execute both CLIs.
Monitoring Request IDs and sanitized structured error events; database/backup-aware health; independent monitor with sustained-failure and recovery transitions. Tests exercise a closed database and live HTTP probes; one-shot CLI passed against the disposable server.
Archive and restore Dashboard archive action, history view, and restore. Integration and browser checks confirm a restored habit returns to today's dashboard while earlier completion remains intact.
Daily reminders Opt-in settings, timezone/quiet hours, unfinished-only private messages, persistent daily reservations, rate-limit deferral, and delivery status. Tests cover concurrent workers, DST fall-back, opt-out during channel creation, uncertain sends, ownership, export, and deletion. Browser saved the selected time, delivered one message through the local stub, showed Delivered, and saved opt-out.

Validation commands: bun run typecheck, bun test, bun run test:smoke, and git diff --check. Browser checks used the in-memory preview on port 3107 and verified desktop and narrow layouts (480px minimum layout viewport available in the in-app browser), with no page-level horizontal overflow in settings.

Live Discord messages, production account deletion, and deployment were not performed. Set the production origin, bot credentials/permissions, any sharing allowlist, durable backup volume/replica, and independent monitor/log collection when deploying. Off-machine storage and an external alert destination must be provided by the deployment environment; their provisioning is outside the app.