Skip to content

Add Phase 3 advanced commands#3

Merged
robzolkos merged 1 commit intomasterfrom
phase-3-advanced-commands
Dec 10, 2025
Merged

Add Phase 3 advanced commands#3
robzolkos merged 1 commit intomasterfrom
phase-3-advanced-commands

Conversation

@robzolkos
Copy link
Copy Markdown
Collaborator

Summary

  • Implements all Phase 3 commands from CLI-PLAN.md
  • Adds comment, reaction, step, and notification command groups
  • Adds card action commands (close, reopen, postpone, column, assign, tag, watch)
  • Full test coverage with 96 tests, 188 assertions

New Commands

Comment commands

fizzy comment list --card <number>
fizzy comment show <id> --card <number>
fizzy comment create --card <number> --body <text>
fizzy comment update <id> --card <number> --body <text>
fizzy comment delete <id> --card <number>

Reaction commands

fizzy reaction list --card <number> --comment <id>
fizzy reaction create --card <number> --comment <id> --content <emoji>
fizzy reaction delete <id> --card <number> --comment <id>

Step commands (to-do items)

fizzy step show <id> --card <number>
fizzy step create --card <number> --content <text> [--completed]
fizzy step update <id> --card <number> [--content <text>] [--completed|--not-completed]
fizzy step delete <id> --card <number>

Notification commands

fizzy notification list [--page <n>] [--all]
fizzy notification read <id>
fizzy notification unread <id>
fizzy notification read-all

Card action commands

fizzy card close <number>
fizzy card reopen <number>
fizzy card postpone <number>
fizzy card column <number> --column <id>
fizzy card untriage <number>
fizzy card assign <number> --user <id>
fizzy card tag <number> --tag <title>
fizzy card watch <number>
fizzy card unwatch <number>

Test plan

  • All 96 tests pass
  • Verified against live Fizzy API:
    • fizzy card tag works correctly (uses tag_title param)
    • fizzy card assign works correctly (uses assignee_id param)
    • fizzy card watch works correctly
    • fizzy comment create/list works correctly
    • fizzy reaction create/list works correctly

Comment commands (lib/fizzy/commands/comment.rb):
- list: List comments on a card with pagination support
- show: Show a specific comment by ID
- create: Create comment with --body or --body-file options
- update: Update comment body
- delete: Delete a comment

Reaction commands (lib/fizzy/commands/reaction.rb):
- list: List reactions on a comment
- create: Add emoji reaction to a comment
- delete: Remove a reaction

Step commands (lib/fizzy/commands/step.rb):
- show: Show a specific to-do item
- create: Create step with --content and optional --completed flag
- update: Update content or toggle completed state
- delete: Delete a step

Notification commands (lib/fizzy/commands/notification.rb):
- list: List notifications with pagination support
- read: Mark notification as read
- unread: Mark notification as unread
- read-all: Mark all notifications as read

Card action commands (added to lib/fizzy/commands/card.rb):
- close/reopen: Close or reopen a card
- postpone: Mark card as "not now"
- column: Move card into a column (triage)
- untriage: Send card back to triage
- assign: Toggle user assignment (uses assignee_id param)
- tag: Toggle tag on card (uses tag_title param)
- watch/unwatch: Toggle watching a card

Test coverage:
- 96 tests, 188 assertions, all passing
- New test files for each command group
@robzolkos robzolkos merged commit 5376f54 into master Dec 10, 2025
1 check passed
@robzolkos robzolkos deleted the phase-3-advanced-commands branch December 10, 2025 16:49
waynemsmith added a commit to Concurrent-Systems/fizzy-cli that referenced this pull request Mar 28, 2026
- Convert literal \n sequences to actual newlines in markdownToHtml()
  so CLI comments render line breaks instead of showing literal \n text
- Use <pre><code> for fenced code blocks instead of inline <code> spans
- Extract code blocks before inline formatting to protect their content
- Added tests for literal newlines and code block rendering

Closes basecamp#5
Closes basecamp#3

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant