If a rule keeps re-firing the underlying condition, the dedup query suppresses duplicate inserts but `inserted_at` of the live row stays old — so a real 6-month-old issue and a one-off blip both linger forever. Auto-resolving any active insight older than 7 days clears the dashboard. Still-real issues will be re-created by the next rule pass (dedup only checks `status: "active"`), so the operator sees fresh evidence rather than stale text. - Towerops.Workers.InsightExpiryWorker (queue: :maintenance) flips `status` to "resolved" on rows where `inserted_at < now - 7d`. - Window is configurable via `:max_age_days` for ops who want a different cadence per env. - Oban cron: 04:00 UTC nightly, after the 02:00 rule pass and 03:00 LLM enrichment. |
||
|---|---|---|
| .. | ||
| config.exs | ||
| dev.exs | ||
| prod.exs | ||
| runtime.exs | ||
| test.exs | ||