429e8bd398
The runner updated the rule_runs history but never wrote the rules table's last_run_utc / last_run_result columns, so the rules list showed blank Last Run / Last Result. Add RuleRepository.UpdateLastRun and call it from the runner's finalize and fail paths with the run's completion time and status. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>