fix: address review findings in plugin sync PR

- OpenClaw schedule_cmd: pass project as required positional arg
- OpenClaw schedule_cmd/unschedule_cmd: unpack Tuple[bool, str] return
- OpenClaw schedule_cmd: propagate failure status (return 1 on not ok)
- OpenClaw unschedule_cmd: pass project to avoid silent no-op
- OpenClaw --minute default: 17 (consistent with engine and MCP)
- harvest.py: move datetime import to module level

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
carpedkm
2026-06-20 12:04:07 +00:00
parent 0be780052a
commit 7d36b1d592
2 changed files with 10 additions and 8 deletions
+1 -1
View File
@@ -17,6 +17,7 @@ from __future__ import annotations
import json
import os
from datetime import datetime
from typing import Any, Dict, Iterable, List, Optional
from skillopt_sleep.types import SessionDigest
@@ -150,7 +151,6 @@ def _is_headless_replay(digest: "SessionDigest") -> bool:
# Sub-3-second single-turn sessions are almost certainly programmatic.
if digest.started_at and digest.ended_at:
try:
from datetime import datetime
fmt = "%Y-%m-%dT%H:%M:%S"
start = datetime.strptime(digest.started_at[:19], fmt)
end = datetime.strptime(digest.ended_at[:19], fmt)