Spec 094: Assignment ops observability hardening #113

Merged
ahmido merged 7 commits from 094-assignment-ops-observability-hardening into dev 2026-02-15 14:08:15 +00:00
Owner

Implements spec 094 (assignment fetch/restore observability hardening):

  • Adds OperationRun tracking for assignment fetch (during backup) and assignment restore (during restore execution)
  • Normalizes failure codes/reason_code and sanitizes failure messages
  • Ensures exactly one audit log entry per assignment restore execution
  • Enforces correct guard/membership vs capability semantics on affected admin surfaces
  • Switches assignment Graph services to depend on GraphClientInterface

Also includes Postgres-only FK defense-in-depth check and a discoverable composer test:pgsql runner (scoped to the FK constraint test).

Tests:

  • vendor/bin/sail artisan test --compact (passed)
  • vendor/bin/sail composer test:pgsql (passed)
Implements spec 094 (assignment fetch/restore observability hardening): - Adds OperationRun tracking for assignment fetch (during backup) and assignment restore (during restore execution) - Normalizes failure codes/reason_code and sanitizes failure messages - Ensures exactly one audit log entry per assignment restore execution - Enforces correct guard/membership vs capability semantics on affected admin surfaces - Switches assignment Graph services to depend on GraphClientInterface Also includes Postgres-only FK defense-in-depth check and a discoverable `composer test:pgsql` runner (scoped to the FK constraint test). Tests: - `vendor/bin/sail artisan test --compact` (passed) - `vendor/bin/sail composer test:pgsql` (passed)
ahmido added 7 commits 2026-02-15 14:07:38 +00:00
ahmido merged commit bda1d90fc4 into dev 2026-02-15 14:08:15 +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#113
No description provided.