multica-ai/multica · error
unresolve comment: %w
Error message
unresolve comment: %w
What it means
`multica issue comment unresolve <comment-id>` sends DELETE to /api/comments/{id}/resolve. This error wraps that call failing: unknown comment, comment not currently resolved, permission denied, or network/server errors.
Source
Thrown at server/cmd/multica/cmd_issue.go:2070
func runIssueCommentResolution(cmd *cobra.Command, commentID string, resolve bool) error {
client, err := newAPIClient(cmd)
if err != nil {
return err
}
ctx, cancel := cli.APIContext(context.Background())
defer cancel()
path := "/api/comments/" + url.PathEscape(commentID) + "/resolve"
var result map[string]any
if resolve {
if err := client.PostJSON(ctx, path, nil, &result); err != nil {
return fmt.Errorf("resolve comment: %w", err)
}
fmt.Fprintf(os.Stderr, "Comment %s resolved.\n", commentID)
} else {
if err := client.DeleteJSONResponse(ctx, path, &result); err != nil {
return fmt.Errorf("unresolve comment: %w", err)
}
fmt.Fprintf(os.Stderr, "Comment %s unresolved.\n", commentID)
}
output, _ := cmd.Flags().GetString("output")
if output == "table" {
return nil
}
return cli.PrintJSON(os.Stdout, result)
}
// ---------------------------------------------------------------------------
// Execution history commands
// ---------------------------------------------------------------------------
func runIssueRuns(cmd *cobra.Command, args []string) error {
client, err := newAPIClient(cmd)
if err != nil {View on GitHub (pinned to 2c0912b6ec)
Solutions
- Confirm the comment is currently resolved via `multica issue comment list`.
- Treat 'not resolved' outcomes as idempotent success in automation.
- Fix auth/permissions for 401/403; retry transient failures.
Defensive patterns
Strategy: try-catch
Validate before calling
# bash: only unresolve comments that are resolved
state=$(multica issue comment list "$ISSUE" --output json | jq -r --arg c "$CID" '.[] | select(.id == $c) | .resolved')
[[ "$state" == "true" ]] || { echo "comment $CID is not resolved" >&2; exit 2; } Try / catch
# bash: idempotent unresolve
multica issue comment unresolve "$CID" 2>/tmp/err || {
grep -qE '404|not (resolved|found)' /tmp/err && exit 0
cat /tmp/err >&2; exit 1;
} Prevention
- Sync resolved state before unresolve batches.
- Treat state-mismatch failures as no-ops in automation.
When it happens
Trigger: Unresolving a comment that is not resolved; mistyped ID; missing rights; API unreachable. The comment ID is URL-escaped into the path, so odd characters are safe but wrong IDs still 404.
Common situations: Batch scripts unresolving already-unresolved comments; copied IDs from a different workspace.
Related errors
AI-assisted analysis of multica-ai/multica@2c0912b6ec (2026-08-15).
Data as JSON: /api/errors/53db1f9661f253ba.
Report an issue: GitHub.