feat(spec-087): remove legacy runs #106

Merged
ahmido merged 1 commits from 087-legacy-runs-removal into dev 2026-02-12 12:40:52 +00:00
Owner

Implements Spec 087: Legacy Runs Removal (rigorous).

What changed

  • Canonicalized run history: operation_runs is the only run system for inventory sync, Entra group sync, backup schedule execution/retention/purge.
  • Removed legacy UI surfaces (Filament Resources / relation managers) for legacy run models.
  • Legacy run URLs now return 404 (no redirects), with RBAC semantics preserved (404 vs 403 as specified).
  • Canonicalized affected operation_runs.type values (dotted → underscore) via migration.
  • Drift + inventory references now point to canonical operation runs; includes backfills and then drops legacy FK columns.
  • Drops legacy run tables after cutover.
  • Added regression guards to prevent reintroducing legacy run tokens or “backfilling” canonical runs from legacy tables.

Migrations

  • 2026_02_12_000001..000006_* canonicalize types, add/backfill operation_run_id references, drop legacy columns, and drop legacy run tables.

Tests

Focused pack for this spec passed:

  • tests/Feature/Guards/NoLegacyRunsTest.php
  • tests/Feature/Guards/NoLegacyRunBackfillTest.php
  • tests/Feature/Operations/LegacyRunRoutesNotFoundTest.php
  • tests/Feature/Monitoring/MonitoringOperationsTest.php
  • tests/Feature/Jobs/RunInventorySyncJobTest.php

Notes / impact

  • Destructive cleanup is handled via migrations (drops legacy tables) after code cutover; deploy should run migrations in the same release.
Implements Spec 087: Legacy Runs Removal (rigorous). ### What changed - Canonicalized run history: **`operation_runs` is the only run system** for inventory sync, Entra group sync, backup schedule execution/retention/purge. - Removed legacy UI surfaces (Filament Resources / relation managers) for legacy run models. - Legacy run URLs now return **404** (no redirects), with RBAC semantics preserved (404 vs 403 as specified). - Canonicalized affected `operation_runs.type` values (dotted → underscore) via migration. - Drift + inventory references now point to canonical operation runs; includes backfills and then drops legacy FK columns. - Drops legacy run tables after cutover. - Added regression guards to prevent reintroducing legacy run tokens or “backfilling” canonical runs from legacy tables. ### Migrations - `2026_02_12_000001..000006_*` canonicalize types, add/backfill operation_run_id references, drop legacy columns, and drop legacy run tables. ### Tests Focused pack for this spec passed: - `tests/Feature/Guards/NoLegacyRunsTest.php` - `tests/Feature/Guards/NoLegacyRunBackfillTest.php` - `tests/Feature/Operations/LegacyRunRoutesNotFoundTest.php` - `tests/Feature/Monitoring/MonitoringOperationsTest.php` - `tests/Feature/Jobs/RunInventorySyncJobTest.php` ### Notes / impact - Destructive cleanup is handled via migrations (drops legacy tables) after code cutover; deploy should run migrations in the same release.
ahmido added 1 commit 2026-02-12 12:39:57 +00:00
ahmido merged commit d6e7de597a into dev 2026-02-12 12:40:52 +00:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: ahmido/TenantAtlas#106
No description provided.