Add ignore and stop-ignoring actions

Merged
RO
3mo ago
+573-61

Summary

  • use HEY’s web UI terminology with bulk hey ignore <id>... and hey stop-ignoring <id>... commands
  • back both commands with the SDK’s typed posting mute/unmute operations while keeping internal API terminology out of user-facing help
  • align the TUI with HEY’s - Ignore and + Stop Ignoring shortcuts
  • keep ignored threads visible, label them [Ignored], and offer the context-appropriate reversal action
  • skip redundant TUI requests for threads already in the requested state
  • replace action-label string coupling with explicit posting action effects for remove, seen, ignore, and stop-ignoring transitions
  • update root help, command metadata, README, embedded skill, API coverage, smoke coverage, and the public surface baseline

Validation

  • make check
  • make race-test
  • smoke test package compilation
  • local build and rendered CLI help/command metadata
  • authenticated CLI ignore/stop-ignoring validation on a hey-cli PR notification; verified muted changed to true and then returned to false
  • authenticated TUI validation with - and +; verified the row stayed visible, [Ignored] and contextual help rendered, and the account state was restored

The HEY web UI labels these actions “Ignore” and “Stop Ignoring”; mute/unmute remains only the underlying SDK/API terminology.


Summary by cubic

Add ignore and stop-ignoring actions in CLI and TUI to match HEY’s web UI. Previously “-” muted a thread and removed it; now “-” ignores the thread but keeps it visible with “[Ignored]”, and “+” stops ignoring.

  • CLI: adds hey ignore <id>... and hey stop-ignoring <id>... backed by SDK mute/unmute; requires at least one box item ID; returns concise JSON summaries; curated help, README, .surface, and skills/hey updated.
  • TUI: introduces explicit posting action effects (remove, seen, ignore, stop-ignoring); keeps ignored threads visible and prefixes subjects with “[Ignored]”; shows “- ignore” or “+ stop ignoring” contextually; skips redundant requests when the thread is already in the requested state.
  • API/tests: documents /postings/mutings.json POST/DELETE coverage; adds command unit tests and TUI tests for effects; adds a smoke test that asserts ignored threads remain visible and verifies summaries and state transitions.