Problem
In the Writer tab (profile page), the status badge shows "active" even when the deadline text shows "expired". Same root cause as #804/#808 — the badge checks sunset flag (never set by app code) instead of the actual time-based deadline expiry.
Screenshot shows: "Deadline: expired · active" — contradictory.
Solution
Use the same time-based check from DeadlineCountdown.tsx:
- If
has_deadline && last_plot_time + 168h < now → show "expired" badge (red/error style)
- If
sunset → show "complete" badge
- Otherwise → show "active" badge (green)
Check the profile page Writer tab storyline card rendering in src/app/profile/[address]/page.tsx for the badge logic.
Acceptance Criteria
Branch
task/<issue>-writer-active-badge
Problem
In the Writer tab (profile page), the status badge shows "active" even when the deadline text shows "expired". Same root cause as #804/#808 — the badge checks
sunsetflag (never set by app code) instead of the actual time-based deadline expiry.Screenshot shows: "Deadline: expired · active" — contradictory.
Solution
Use the same time-based check from
DeadlineCountdown.tsx:has_deadline && last_plot_time + 168h < now→ show "expired" badge (red/error style)sunset→ show "complete" badgeCheck the profile page Writer tab storyline card rendering in
src/app/profile/[address]/page.tsxfor the badge logic.Acceptance Criteria
sunset=truehas_deadlineguard (storylines without deadlines are always "active")Branch
task/<issue>-writer-active-badge