7f35297025
Naser confirmed all remaining QA Review / Draft rows (97 subtasks, 16
parent rollups) are done in substance: the site has been in production
for roughly a year. Overrides the conservative QA-Review/Draft mapping
from the prior takeover commit (0f9d12c) at his explicit instruction.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
30 lines
1.4 KiB
Markdown
30 lines
1.4 KiB
Markdown
---
|
|
id: 4-3
|
|
title: 4-3 Timeline Archiving
|
|
status: Done
|
|
date: 2026-09-27
|
|
parent: 4
|
|
---
|
|
|
|
## Description
|
|
|
|
As an admin, I want to archive completed cases and unarchive if needed, So that I can organize active and completed case timelines. Context: Integrates with: timelines table (status field from Story 4.1); Technology: Livewire Volt; Follows pattern: Soft state change pattern. Add these methods to app/Models/Timeline.php:. Full implementation history: docs/stories/story-4.3-timeline-archiving.md
|
|
|
|
## Acceptance Criteria
|
|
|
|
- [ ] Archive button on timeline detail view (admin only)
|
|
- [ ] Confirmation modal before archiving ("Are you sure?")
|
|
- [ ] Status changes to 'archived'
|
|
- [ ] Timeline remains visible to client (read-only as always)
|
|
- [ ] No further updates can be added (show disabled state with tooltip)
|
|
- [ ] Visual indicator shows archived status (badge + muted styling)
|
|
- [ ] Unarchive button on archived timelines
|
|
- [ ] Status returns to 'active'
|
|
- [ ] Updates can be added again
|
|
- [ ] Archiving already-archived timeline: No-op, no error shown
|
|
- [ ] Unarchiving already-active timeline: No-op, no error shown
|
|
- [ ] Adding update to archived timeline: Prevented with error message
|
|
- [ ] Audit log for status changes (action: 'archive' or 'unarchive') - uses AdminLog `action` field
|
|
- [ ] Bilingual labels (AR/EN for buttons, messages)
|
|
- [ ] Feature tests covering all scenarios below
|