{"record":{"id":"6fbe73cfde036efb","repo":"multica-ai/multica","slug":"resolve-assignee-w","errorCode":null,"errorMessage":"resolve assignee: %w","messagePattern":"resolve assignee: %w","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"server/cmd/multica/cmd_issue.go","lineNumber":617,"sourceCode":"\t\tif _, err := requireWorkspaceID(cmd); err != nil {\n\t\t\treturn err\n\t\t}\n\t}\n\n\tparams := url.Values{}\n\tparams.Set(\"workspace_id\", client.WorkspaceID)\n\tif v, _ := cmd.Flags().GetString(\"status\"); v != \"\" {\n\t\tparams.Set(\"status\", v)\n\t}\n\tif v, _ := cmd.Flags().GetString(\"priority\"); v != \"\" {\n\t\tparams.Set(\"priority\", v)\n\t}\n\tif v, _ := cmd.Flags().GetInt(\"limit\"); v > 0 {\n\t\tparams.Set(\"limit\", fmt.Sprintf(\"%d\", v))\n\t}\n\t_, aID, hasAssignee, resolveErr := pickAssigneeFromFlags(ctx, client, cmd, \"assignee\", \"assignee-id\", issueAssigneeKinds)\n\tif resolveErr != nil {\n\t\treturn fmt.Errorf(\"resolve assignee: %w\", resolveErr)\n\t}\n\tif hasAssignee {\n\t\tparams.Set(\"assignee_id\", aID)\n\t}\n\tif v, _ := cmd.Flags().GetInt(\"offset\"); v > 0 {\n\t\tparams.Set(\"offset\", fmt.Sprintf(\"%d\", v))\n\t}\n\tif v, _ := cmd.Flags().GetString(\"project\"); v != \"\" {\n\t\tproject, err := resolveProjectID(ctx, client, v)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tparams.Set(\"project_id\", project.ID)\n\t}\n\tif mdFlags, _ := cmd.Flags().GetStringSlice(\"metadata\"); len(mdFlags) > 0 {\n\t\tfilter, err := buildMetadataFilterQueryParam(mdFlags)\n\t\tif err != nil {\n\t\t\treturn err","sourceCodeStart":599,"sourceCodeEnd":635,"githubUrl":"https://github.com/multica-ai/multica/blob/2c0912b6ec764b373d44eeea1e80f0d9f11ab417/server/cmd/multica/cmd_issue.go#L599-L635","documentation":"While listing issues, the CLI tried to turn the --assignee flag (a human name) into an assignee ID via pickAssigneeFromFlags and that lookup failed. The %w wraps the specific cause: the assignee could not be resolved to exactly one actor (not found, ambiguous across the allowed assignee kinds), or the lookup API call itself failed.","triggerScenarios":"Running `multica issue list --assignee <name>` where <name> matches no user/agent in the workspace, matches several actors so the choice is ambiguous, or the resolution HTTP call errored. Using --assignee-id with a malformed/unknown ID can also surface here.","commonSituations":"Typo'd or display-name-vs-username mismatches; former team members no longer in the workspace; agents and users sharing a display name; transient API failures during the pre-list lookup.","solutions":["Read the wrapped error — it distinguishes 'not found', 'ambiguous', and transport failures.","List the workspace actors first (e.g. `multica` member/agent list command) and use the exact name or switch to --assignee-id with the concrete ID.","For ambiguous names, use --assignee-id to disambiguate.","If the wrapped error is a network/auth failure, verify connectivity and credentials, then retry."],"exampleFix":"# before\nmultica issue list --assignee \"Jon\"\n# after (ambiguous/typo -> use exact ID)\nmultica member list   # find the id\nmultica issue list --assignee-id usr_123456","handlingStrategy":"validation","validationCode":"# verify the assignee exists before the list call\nmultica member list --output json | jq -e --arg n \"$ASSIGNEE\" 'any(.members[]; .name == $n or .id == $n)' >/dev/null \\\n  || { echo \"unknown assignee: $ASSIGNEE\" >&2; exit 1; }","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Prefer --assignee-id over --assignee in scripts — IDs are unambiguous and stable.","Cache the actor list once per run instead of guessing display names.","Read the wrapped error to distinguish not-found/ambiguous from network failure."],"tags":["cli","assignee","resolution","issue-list"],"backgroundTag":null,"analyzedSha":"2c0912b6ec764b373d44eeea1e80f0d9f11ab417","analyzedAt":"2026-08-15T13:25:18.241Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}