Skip to content

Fix issue-triage workflow to add labels via add-labels safe-output#6

Merged
friggeri merged 2 commits intomainfrom
copilot/fix-issue-triage-labels
Jan 14, 2026
Merged

Fix issue-triage workflow to add labels via add-labels safe-output#6
friggeri merged 2 commits intomainfrom
copilot/fix-issue-triage-labels

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Jan 14, 2026

The issue-triage workflow claimed to add labels in comments but labels were never applied to issues.

Root Cause

Workflow configured update-issue safe-output, which only supports status/title/body updates—not labels.

Changes

  • Added add-labels safe-output configuration with all 14 labels from the workflow prompt
  • Set max: 10 and target: triggering to allow multiple labels per triggering issue
  • Recompiled workflow to include add-labels handler in safe_outputs job
safe-outputs:
  add-labels:
    allowed: [bug, enhancement, question, documentation, sdk/dotnet, sdk/go, sdk/nodejs, sdk/python, priority/high, priority/low, testing, security, needs-info, duplicate]
    max: 10
    target: triggering

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com/repos/github/copilot-sdk/labels
    • Triggering command: /usr/bin/curl curl -s -H Accept: application/vnd.github+json REDACTED (http block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

The issue triage didn't add labels, fix that

Custom agent used: debug-agentic-workflow
Debug and refine agentic workflows using gh-aw CLI tools - analyze logs, audit runs, and improve workflow performance


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Co-authored-by: friggeri <106686+friggeri@users.noreply.github.com>
@friggeri friggeri marked this pull request as ready for review January 14, 2026 22:22
@friggeri friggeri requested a review from a team as a code owner January 14, 2026 22:22
Copilot AI review requested due to automatic review settings January 14, 2026 22:22
Copilot AI changed the title [WIP] Fix issue triage to add missing labels Fix issue-triage workflow to add labels via add-labels safe-output Jan 14, 2026
Copilot AI requested a review from friggeri January 14, 2026 22:22
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR fixes the issue triage workflow to enable label addition functionality by adding the add-labels safe-output configuration, which was missing from the original workflow setup.

Changes:

  • Added add-labels safe-output configuration to the issue triage workflow with 14 allowed labels
  • Updated compiled lock file to reflect the new safe-output configuration
  • Enabled the AI agent to add labels to issues during triage

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
.github/workflows/issue-triage.md Added add-labels safe-output configuration with allowed labels list and max/target settings
.github/workflows/issue-triage.lock.yml Compiled workflow file reflecting the new add-labels configuration in multiple locations (config.json, tools.json, validation.json, and handler config)
Comments suppressed due to low confidence (1)

.github/workflows/issue-triage.md:15

  • While the workflow-level permissions are correctly set (they don't need issues: write since the safe_outputs job handles that), it would be helpful to add a comment explaining why issues: write is not included here. This would prevent future confusion about how labels can be added without write permissions. Consider adding a comment like: # Note: issues:write not needed - handled by safe_outputs job.
permissions:
  contents: read
  issues: read
  pull-requests: read

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/issue-triage.md
@friggeri friggeri added this pull request to the merge queue Jan 14, 2026
Merged via the queue into main with commit ea35173 Jan 14, 2026
28 checks passed
jmoseley pushed a commit that referenced this pull request Jan 21, 2026
tclem added a commit that referenced this pull request Apr 30, 2026
Closes RFD-400 review finding #6 (per-method cancel-safety
documentation). Doc-only follow-up to commits A/B/C; no behavioral
change. RFD 400 § "Marking APIs as cancel-unsafe" calls for explicit
documentation; with the underlying behavior now correct after A/B/C,
documenting the contract makes it inspectable from rustdoc rather
than requiring callers to read the implementation.

Added `# Cancel safety` rustdoc sections to:

- `Session::send` — cancel-safe (writer-actor); message lands on
  the wire even if the await is cancelled.
- `Session::send_and_wait` — cancel-safe (WaiterGuard RAII);
  outer-cancellation distinct from internal-timeout, both clear the
  slot.
- `Session::abort` — cancel-safe (single RPC via writer-actor).
- `Client::call` — cancel-safe at the wire level; documents the
  caveat that the CLI may still process the request even if the
  caller doesn't see the response (idempotent vs non-idempotent
  methods).
- `Client::stop` — cancel-unsafe-but-recoverable; the body
  sequentially destroys sessions (each individually cancel-safe)
  before killing the child. The existing `tokio::time::timeout`
  example with `force_stop` fallback is the documented recovery
  path.
- `Client::force_stop` — synchronous, cannot be cancelled. Designed
  as the recovery path for `stop`'s timeout case.
- `Subscription::recv` — cancel-safe by virtue of
  `tokio::sync::broadcast` + `BroadcastStream`.

Validation: cargo doc -D warnings clean, cargo test (215 pass), cargo
+nightly fmt --check clean, cargo clippy clean.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants