hephaestus/crates/heph-core/tests
Erich Blume 70d5af5bdc
Some checks failed
Build / validate (pull_request) Has been cancelled
feat(core): task.set_schedule — reschedule do-date/late-on/recurrence
There was no way to change a task's do-date, late-on, or recurrence after
creation (only attention/state had setters) — a real reschedule gap. Add a
single patch method covering the three schedule scalars with no setter.

- model: SchedulePatch with double-option fields (absent=leave, null=clear,
  value=set), serde-skips absent fields so the distinction round-trips
- Store::set_task_schedule + LocalStore/RemoteStore impls; sqlite set_schedule
  overlays present fields then records the LWW task.set op (sync-correct)
- rpc dispatch: task.set_schedule (id + flattened patch)
- tests: core set/clear/leave + missing-task; rpc_socket round-trip asserting
  the absent/null/value semantics over the wire

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 19:26:25 -07:00
..
convergence.rs hephd: OIDC hub authentication — verification side (auth 10a) 2026-06-01 15:58:20 -07:00
export.rs heph CLI + export 2026-05-31 20:33:59 -07:00
hlc_stamping.rs heph-core: real HLC + persistent device origin (sync 8a) 2026-05-31 21:13:55 -07:00
next_ranking.rs
query_surface.rs heph.nvim: task views — next/list/capture/attention/state/log (slice 11b) 2026-06-01 21:12:56 -07:00
recurrence.rs heph-core: recurrence (roll-forward in place) + per-task logs 2026-05-31 19:14:22 -07:00
search.rs heph-core: full-text search (FTS5) 2026-05-31 20:43:05 -07:00
tasks_and_links.rs feat(core): task.set_schedule — reschedule do-date/late-on/recurrence 2026-06-02 19:26:25 -07:00