hephaestus/crates/heph-core/tests
Erich Blume df7f43788b feat(core): task.set_project — move-to-project with OR-set link semantics (§8.1)
Add `Store::set_task_project` (heph-core + RemoteStore) and the
`task.set_project` RPC: tombstone the task's existing `in-project` link(s)
and add a new one (or none, to unfile). A given project id must name a
live project-kind node, else InvalidArg/NodeNotFound.

Route `heph edit --project` through it, fixing a duplicate-link bug (the
old path added an in-project link without removing the prior one);
`--project none` now unfiles. Factor a `links::tombstone` helper out of
`sync_wiki_links`.

Tests: core move/unfile/reject + a duplicate-link regression; a socket
dispatch test. The TUI `m` gesture follows in the next commit.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-03 10:35:16 -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 heph-core: "what is next?" ranking (tech-spec §7) 2026-05-31 19:07:16 -07:00
query_surface.rs feat(views): filter views (§8.2) — saved agenda slices 2026-06-03 06:39:07 -07:00
recurrence.rs heph-core: recurrence (roll-forward in place) + per-task logs 2026-05-31 19:14:22 -07:00
search.rs feat(cli): heph project list (+ node.list RPC) 2026-06-02 19:50:19 -07:00
tasks_and_links.rs feat(core): task.set_project — move-to-project with OR-set link semantics (§8.1) 2026-06-03 10:35:16 -07:00
views.rs feat(views): filter views (§8.2) — saved agenda slices 2026-06-03 06:39:07 -07:00