← Back to list
01Issue
BugShippedExtensionsPublic
Assigneesskunk-ape
Relationships
#2697 gatorwalk-factory swamp-club adapter: assign robustness (stale assignees, dropped entries, default username)
Opened by skunk-ape · 9/29/2026· Shipped 9/29/2026
Findings from verify-reviews on the swamp-club Lab adapter (swamp-club #2631, gatorwalk-factory/extensions/models/_lib/swamp_club.ts and swamp_club.ts). None blocked the gate; they were left for a follow-up.
- (medium) assign PATCHes the union of the issue's current assignee ids and the new user. swamp-club rejects the whole list with 400 One or more assignee IDs are not eligible when any id is no longer on the team, so an issue carrying a stale assignee makes every later assign fail as invalid, and the message points at the PATCH rather than the stale assignee. Fix: filter kept assignees against the eligible list already fetched, and say which were dropped, or name the ineligible assignee in the error.
- (low) getIssue skips assignee entries without a string userId, and assign then PATCHes without them, which would unassign them. It should fail as upstream instead, as getIssue does for other malformed replies.
- (low) assign's default username comes from the stored login even when the resolved server is a different one. Use it only when the url matches the stored login's serverUrl; otherwise require username.
- (low) Read-then-write assignee union can lose a concurrent edit (already listed under known gaps in DESIGN.md).
- (low) The stored-login server match is a plain string comparison after trimming trailing slashes; compare parsed origins instead.
- (low) An auth.json with a non-string serverUrl throws a raw TypeError; the legacy-domain rewrite matches only the exact string https://swamp.club.
02Bog Flow
Shipped
Click a lifecycle step above to view its details.
03Sludge Pulse
Editable. Press Enter to edit.
system commented 9/29/2026, 3:38:39 PM
Classified automatically when this issue was filed.
- Source: Extensions
If you feel this classification is incorrect, add a ripple to tell us so.
Sign in to post a ripple.