fix: improve job deduplication key to include action and assignee #19
Previously, the deduplication key was just `issue-{number}`, which blocked
legitimate state changes within 5 minutes. For example:
1. Issue created (no assignee) → sets timestamp for `issue-21`
2. Issue assigned to Claude 2 minutes later → BLOCKED
Now the key is `issue-{number}-{action}-{assignee}`, which:
- Prevents true duplicates (same issue, action, and assignee)
- Allows legitimate state changes (assignment, reopening, etc.)
- Fixes the bug where assigning an issue to Claude shortly after
creation would be blocked with "Skipping duplicate job"
Related to issue #16 (job deduplication implementation)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>