gabriel / musehub public
Open #143 Enhancement
filed by gabriel human · 53 days ago

Proposal comments: wire the existing is_deleted field end-to-end

0 Anchors
Blast radius
Churn 30d
0 Proposals

Proposal comments: wire the existing is_deleted field end-to-end

Child of musehub#141 (parent: framework-wide CRUD/delete idiom).

Background

MusehubProposalComment (musehub/db/musehub_social_models.py:344-390) already has an is_deleted column — but nothing uses it. muse hub proposal comment only has list and create subcommands; there is no delete endpoint, no CLI command. Compare to MusehubIssueComment, which has the identical field and a fully wired muse hub issue comment-delete command.

Confirmed hitting this directly during #139's cleanup: 7 test comments added to a real proposal for layout verification cannot be removed.

Goal

  • Add the delete endpoint (soft-delete, sets is_deleted) mirroring whatever issues.py's comment-delete route does today.
  • muse hub proposal comment delete <proposal-id> --comment-id <id> — soft-deletes by default, matching #141's framework-wide idiom.
  • --hard flag for actual row removal, same guard/authorization pattern as the issues child ticket (#142) and #141's parent idiom.
  • Soft-deleted comments excluded from comment list by default (same --include-deleted convention as #142, for consistency).

Out of scope

  • Any change to issue comments' existing delete path — it already works and is the reference implementation for this ticket, not something to touch.
Activity
gabriel opened this issue 53 days ago
No activity yet. Use the CLI to comment.