51:    send_interval_seconds: float = Field(default=1.0, ge=0.5, le=3600)
87:        "send_interval_seconds": c.send_interval_seconds,
95:        "skipped_count": c.skipped_count, "queued_count": c.queued_count,
232:    """Full update (wizard edit). Only allowed while draft/paused/queued."""
234:    if c.status not in ("draft", "paused", "queued", "failed"):
293:    if c.status not in ("draft", "paused", "queued", "failed"):
402:                    {"queued": res.get("queued")})
403:    return {"status": "running", "queued": res.get("queued")}
429:    return {"status": "running", "queued": res.get("queued")}
437:    if c.status not in ("running", "paused", "queued", "draft"):
465:        "pending": counts.get("pending", 0), "queued": counts.get("queued", 0),
774:            si = float(data.get("send_interval_seconds", 1.0))
776:                errors.append("send_interval_seconds must be 0.5-3600")
778:            errors.append("send_interval_seconds must be numeric")
