mirror of
https://github.com/multica-ai/multica.git
synced 2026-06-17 03:38:32 +02:00
`multica issue assign --to <name>` matched agent/member names with a plain `strings.Contains` check, so an exact match on `reviewer` became ambiguous whenever a longer agent like `peer-reviewer` also existed. There was also no way to disambiguate by ID. Rework `resolveAssignee` to bucket candidates by priority: 1. Full UUID or 8-char ShortID (matches `truncateID` output) — case-insensitive. 2. Case-insensitive exact name (with surrounding whitespace trimmed). 3. Substring fallback — preserves the existing partial-name UX. The first non-empty bucket wins. Ambiguity inside a higher-priority bucket still errors and short-circuits lower-priority matching. All six call sites (`issue assign/update/create/list`, `issue subscriber`, `project`) are fixed by this single change. Fixes #1620