feat: add durable schedule management and multi-node crash recovery

This commit is contained in:
2026-09-17 16:28:58 +08:00
parent d65cf96ea7
commit 6805506450
43 changed files with 2952 additions and 29 deletions

View File

@@ -19,11 +19,11 @@ type Occurrence struct {
ScheduledAt time.Time `db:"scheduled_at"`
// Decision 触发处理决定:已触发、已跳过或已合并。
Decision string `db:"decision"`
// TaskID 关联的 Pulse 任务标识;可为空,表示尚未设置该关联或值。
// TaskID 已触发或合并生成的 Pulse 任务标识;跳过时为空。
TaskID *core.ID `db:"task_id"`
// CoveredUntil 合并触发覆盖的结束边界;没有合并范围时为空。
// CoveredUntil 合并或跳过范围的排除边界;单点处理时为空。
CoveredUntil *time.Time `db:"covered_until"`
// Reason 操作原因或处理说明,需要保留审计信息;可为空,表示尚未设置该关联或值。
// Reason 稳定处理分类;新调度器始终写入,旧人工记录可为空。
Reason *string `db:"reason"`
}