Skip to content

fix: correct firewall issue dispatcher tracking issue link format#2161

Open
Copilot wants to merge 2 commits intomainfrom
copilot/fix-firewall-issue-dispatcher
Open

fix: correct firewall issue dispatcher tracking issue link format#2161
Copilot wants to merge 2 commits intomainfrom
copilot/fix-firewall-issue-dispatcher

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 23, 2026

Summary

  • fixed the firewall issue dispatcher workflow prompt to require extracting only the numeric tracking issue ID before posting the gh-aw comment link
  • added explicit valid/invalid URL examples to prevent malformed links like /issues/github/gh-aw-firewall#2159
  • removed duplicate wording in the comment-format instructions

Validation

  • npm run lint && npm run build
  • npm test ⚠️ 1 pre-existing failure in src/docker-manager.test.ts (should create missing .copilot directory and mount it when using non-standard HOME path)
  • parallel_validation ✅ (Code Review + CodeQL)

@pelikhan pelikhan marked this pull request as ready for review April 23, 2026 03:14
@pelikhan pelikhan requested a review from Mossaka as a code owner April 23, 2026 03:14
Copilot AI review requested due to automatic review settings April 23, 2026 03:14
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

Updates the Firewall Issue Dispatcher agentic workflow prompt to prevent malformed cross-repo tracking-issue links by explicitly requiring extraction of the numeric issue ID from create_issue outputs.

Changes:

  • Clarifies that create_issue references like github/gh-aw-firewall#2159 must be converted to a numeric ID before building the URL.
  • Adds explicit valid/invalid URL examples to prevent malformed /issues/... links.
  • Removes duplicated wording in the comment-format instructions.
Show a summary per file
File Description
.github/workflows/firewall-issue-dispatcher.md Tightens the prompt instructions for composing tracking-issue links and adds examples to avoid malformed URLs.

Copilot's findings

Tip

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

  • Files reviewed: 1/1 changed files
  • Comments generated: 1

Comment on lines +85 to +90
`create_issue` may return a reference like `github/gh-aw-firewall#2159`. Extract only the trailing digits before composing the URL.
- Valid: `https://github.com/github/gh-aw-firewall/issues/2159`
- Invalid: `https://github.com/github/gh-aw-firewall/issues/github/gh-aw-firewall#2159`
- Invalid: `https://github.com/github/gh-aw-firewall/issues/#2159`

where `{NUMBER}` is replaced with **only the numeric issue number** (e.g., `1896`). Do NOT include the repository name, hash symbols, or any other text — just the number in the URL path. Use the `add_comment` safe output tool with `repo: "github/gh-aw"` and the original issue number.
Use the `add_comment` safe output tool with `repo: "github/gh-aw"` and the original issue number.
Copy link

Copilot AI Apr 23, 2026

Choose a reason for hiding this comment

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

This workflow has a compiled companion .lock.yml and the compiled job includes a lock staleness check; updating the .md without regenerating firewall-issue-dispatcher.lock.yml will cause the workflow to report a stale lock file (and may keep the runtime prompt out of sync). Please run gh aw compile and commit the updated .github/workflows/firewall-issue-dispatcher.lock.yml in this PR.

Copilot uses AI. Check for mistakes.
@lpcox
Copy link
Copy Markdown
Collaborator

lpcox commented Apr 23, 2026

@copilot address this review feedback #2161 (review)

@github-actions
Copy link
Copy Markdown
Contributor

Smoke Test Results

✅ GitHub MCP Testing
✅ Playwright Testing
✅ File Writing Testing
✅ Bash Tool Testing

Status: PASS

💥 [THE END] — Illustrated by Smoke Claude

@github-actions
Copy link
Copy Markdown
Contributor

🔥 Smoke Test Results

Test Status
GitHub MCP (latest merged PR: #2155 "Harden api-proxy startup healthcheck...")
GitHub.com connectivity (HTTP 200)
File write/read ⚠️ pre-step vars unsubstituted

Overall: PASS (core tests green)

/cc @pelikhan (assignee) — PR by @copilot-swe-agent

📰 BREAKING: Report filed by Smoke Copilot

@github-actions
Copy link
Copy Markdown
Contributor

🔥 Smoke Test: Copilot BYOK (Offline) Mode

Test Result
GitHub MCP (list merged PRs) ✅ PR #2155 "Harden api-proxy startup healthcheck..."
GitHub.com connectivity ⚠️ Template vars not substituted (pre-step data unavailable)
File write/read /tmp/gh-aw/agent/smoke-test-copilot-byok-24814208316.txt exists
BYOK inference (agent → api-proxy → api.githubcopilot.com)

Running in BYOK offline mode (COPILOT_OFFLINE=true) via api-proxy → api.githubcopilot.com

Overall: PASS (core BYOK path verified)

PR by @app/copilot-swe-agent · Assignees: @pelikhan, @Copilot

🔑 BYOK report filed by Smoke Copilot BYOK

@github-actions
Copy link
Copy Markdown
Contributor

🏗️ Build Test Suite Results

⚠️ ALL ECOSYSTEMS FAILED TO CLONE — The gh repo clone command returned HTTP 403 for all test repositories (Mossaka/gh-aw-firewall-test-*). This appears to be a network/auth restriction in the current sandbox environment.

Ecosystem Project Build/Install Tests Status
Bun elysia N/A ❌ CLONE_FAILED
Bun hono N/A ❌ CLONE_FAILED
C++ fmt N/A ❌ CLONE_FAILED
C++ json N/A ❌ CLONE_FAILED
Deno oak N/A ❌ CLONE_FAILED
Deno std N/A ❌ CLONE_FAILED
.NET hello-world N/A ❌ CLONE_FAILED
.NET json-parse N/A ❌ CLONE_FAILED
Go color N/A ❌ CLONE_FAILED
Go env N/A ❌ CLONE_FAILED
Go uuid N/A ❌ CLONE_FAILED
Java gson N/A ❌ CLONE_FAILED
Java caffeine N/A ❌ CLONE_FAILED
Node.js clsx N/A ❌ CLONE_FAILED
Node.js execa N/A ❌ CLONE_FAILED
Node.js p-limit N/A ❌ CLONE_FAILED
Rust fd N/A ❌ CLONE_FAILED
Rust zoxide N/A ❌ CLONE_FAILED

Overall: 0/8 ecosystems passed — ❌ FAIL

Error details

All repositories failed to clone with the same error:

remote: access denied: unrecognized endpoint
fatal: unable to access '(localhost/redacted) The requested URL returned error: 403

The gh CLI is routing through a local proxy (localhost:18443) which does not have access to the Mossaka organization's repositories.

Generated by Build Test Suite for issue #2161 · ● 143.8K ·

@github-actions
Copy link
Copy Markdown
Contributor

Smoke test results:
PR titles: Harden api-proxy startup healthcheck to reduce early unhealthy flaps | chore: bump Copilot CLI to v1.0.34 in smoke-copilot | [WIP] docs: clarifications and review on token efficieny | fix: correct firewall issue dispatcher tracking issue link format

  1. Merged PR review ✅
  2. PR query (limit 2) ✅
  3. Playwright github.com title contains GitHub ✅
  4. Tavily search returned at least one item ❌ (Tavily MCP tool unavailable)
  5. File write in /tmp/gh-aw/agent ✅
  6. Bash cat verification ✅
  7. Latest discussion query + mystical comment ✅
  8. npm ci && npm run build ✅
    Overall status: FAIL

Warning

⚠️ Firewall blocked 1 domain

The following domain was blocked by the firewall during workflow execution:

  • registry.npmjs.org

To allow these domains, add them to the network.allowed list in your workflow frontmatter:

network:
  allowed:
    - defaults
    - "registry.npmjs.org"

See Network Configuration for more information.

🔮 The oracle has spoken through Smoke Codex

@github-actions
Copy link
Copy Markdown
Contributor

Smoke Test Results: GitHub Actions Services Connectivity

Check Result
Redis ping (host.docker.internal:6379) Failedredis-cli not installed; tool unavailable
PostgreSQL ready (host.docker.internal:5432) Failedno response (pg_isready exit 2)
PostgreSQL SELECT 1 (smoketest db) Failed — skipped due to no response from host

Summary: All 3 checks failed. host.docker.internal is not reachable from this runner environment, and redis-cli is not installed. The smoke-services label was not applied.

🔌 Service connectivity validated by Smoke Services

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Apr 23, 2026

@copilot address this review feedback #2161 (review)

Addressed. I recompiled and committed .github/workflows/firewall-issue-dispatcher.lock.yml so the lock is in sync with the updated workflow source (commit d882803).

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/graphql
    • Triggering command: /usr/bin/gh gh auth status (http block)
  • https://api.github.com/repos/actions/github-script/git/ref/tags/v9
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v9 --jq [.object.sha, .object.type] | @tsv (http block)
  • https://api.github.com/repos/github/gh-aw/releases/latest
    • Triggering command: /usr/bin/gh gh extension install github/gh-aw --pin v0.69.2 (http block)

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

Copilot AI requested a review from lpcox April 23, 2026 15:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants