ci: add automated issue labeling workflow#2359
Conversation
Adds three independent labelers that run in parallel on issue open/edit: - area: classifies by technical subsystem (area-provider, area-mcp, etc.) - type: classifies as bug/enhancement/question/chore - language: identifies python vs typescript Uses the shared issue-labeler action from devtools which validates LLM output against the hardcoded label allowlists in .github/labelers/.
|
Assessment: Comment Clean and well-structured workflow addition that follows existing repo patterns ( Review Themes
Nice work overall—the parallel job design and sparse checkout are thoughtful efficiency choices. |
- Drop edited trigger to avoid redundant re-classification on minor edits - Add comment clarifying max_labels is intentionally omitted for area labels - Add disambiguation hints for commonly confused label pairs (mcp vs tool, provider vs async, hooks vs others) - Add guidance for cross-SDK language issues
|
Assessment: Approve All 4 suggestions from the previous review have been addressed cleanly. The updated PR is well-structured, with appropriate trigger scoping ( Changes Verified
No remaining concerns — ready to merge once the devtools dependency (strands-agents/devtools#55) is merged. |
| Provider-specific async/streaming bugs belong to area-provider, not area-async. | ||
| Issues about hook lifecycle events belong to area-hooks even if they mention tools or agents. | ||
|
|
||
| labels: |
There was a problem hiding this comment.
interventions label is only in TS repo, so i don't think some TS labels got ported over.
| labels: | ||
| python: | ||
| description: "Issue relates to the Python SDK (strands-py/, .py files, pip, pyproject.toml)" | ||
| javascript: |
| # Classifies issues by technical area/subsystem. | ||
|
|
||
| instructions: | | ||
| This is the Strands Agents SDK repository (Python + TypeScript monorepo). |
There was a problem hiding this comment.
should this also add labels for docs?
Description
Adds automated issue labeling using the shared
issue-labeleraction from devtools. Three independent labelers run in parallel on every issue open/edit:Each labeler has its own config in
.github/labelers/defining the valid label set and classification instructions. The LLM output is validated against these configs so it can only apply labels that exist in the allowlist.Related Issues
Depends on strands-agents/devtools#55
Type of Change
New feature
Testing
Checklist
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.