You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Add playwright, terraform, linux-distros, etc to network firewall #373
Add elastic domains to network firewall #209 — it addresses the same network firewall allowlist surface, and its discussion/implementation context is useful for this issue’s broader allowlist expansion.
TL;DR: I recommend adding the full GH-AW recommended ecosystem identifiers to workflow network.allowed defaults (including playwright, terraform, and linux-distros) because this repo currently only allows go/node/python/ruby and has zero occurrences of the requested identifiers.
Recommendation
Update the standard workflow firewall allowlist to include the complete ecosystem-identifier recommendation from GH-AW docs (containers, linux-distros, dotnet, dart, go, haskell, java, node, perl, php, python, ruby, rust, swift, terraform, playwright, plus existing defaults/github).
Findings
Current workflow defaults are narrower than GH-AW recommendations.
I ran repository checks to verify current coverage:
$ python - <<'PY'from pathlib import Pathimport refrom collections import Counterrecommended=['defaults','github','containers','linux-distros','dotnet','dart','go','haskell','java','node','perl','php','python','ruby','rust','swift','terraform','playwright']vals=[]files=sorted(Path('.github/workflows').glob('gh-aw-*.md'))for p in files: t=p.read_text() m=re.search(r'network:\n\s+allowed:\n((?:\s+- .+\n)+)',t) if not m: continue items=[re.sub(r'^\s+-\s*','',ln).strip().strip('"\'') for ln in m.group(1).splitlines()] vals.extend(items)cnt=Counter(vals)print('workflow_files_with_network',len([p for p in files if 'network:\n allowed:' in p.read_text()]))print('recommended_presence')for k in recommended: print(f'{k}:{cnt.get(k,0)}')PY
workflow_files_with_network 38
recommended_presence
defaults:38
github:38
containers:0
linux-distros:0
dotnet:0
dart:0
go:33
haskell:0
java:0
node:33
perl:0
php:0
python:33
ruby:33
rust:0
swift:0
terraform:0
playwright:0
And a direct search confirms requested identifiers are absent in workflow sources:
$ rg -n "playwright|terraform|linux-distros" .github/workflows
No matches found.
Detailed Action Plan
Decide scope for default allowlist
Apply to the baseline set used by most workflows (currently defaults/github/go/node/python/ruby).
Edit .github/workflows/gh-aw-*.md files that currently have the baseline block like:
.github/workflows/gh-aw-issue-triage.md:65-73
.github/workflows/gh-aw-pr-review.md:77-85
Add missing recommended identifiers under network.allowed.
Regenerate compiled workflows
Run make compile to refresh .github/workflows/gh-aw-*.lock.yml.
Validate
Run make lint (or at minimum make lint-workflows if that is the repo’s targeted workflow validation).
Spot-check one lock file (e.g., .github/workflows/gh-aw-issue-triage.lock.yml) to confirm the AWF --allow-domains expansion includes the newly enabled ecosystems.
Optional hardening follow-up
If maintainers want tighter least-privilege, follow with per-workflow pruning once real usage data is collected (instead of broad defaults everywhere).
Activity
github-actions commentedon Feb 22, 2026
1 related issue
What is this? | From workflow: Duplicate Issue Detector
Give us feedback! React with 🚀 if perfect, 👍 if helpful, 👎 if not.
github-actions commentedon Feb 22, 2026
TL;DR: I recommend adding the full GH-AW recommended ecosystem identifiers to workflow
network.alloweddefaults (includingplaywright,terraform, andlinux-distros) because this repo currently only allowsgo/node/python/rubyand has zero occurrences of the requested identifiers.Recommendation
Update the standard workflow firewall allowlist to include the complete ecosystem-identifier recommendation from GH-AW docs (
containers,linux-distros,dotnet,dart,go,haskell,java,node,perl,php,python,ruby,rust,swift,terraform,playwright, plus existingdefaults/github).Findings
linux-distros,terraform,playwright, etc.).#209and merged PR#214added Elastic domains via fragment.Verification
I ran repository checks to verify current coverage:
And a direct search confirms requested identifiers are absent in workflow sources:
Detailed Action Plan
Decide scope for default allowlist
defaults/github/go/node/python/ruby).Update workflow source files
.github/workflows/gh-aw-*.mdfiles that currently have the baseline block like:.github/workflows/gh-aw-issue-triage.md:65-73.github/workflows/gh-aw-pr-review.md:77-85network.allowed.Regenerate compiled workflows
make compileto refresh.github/workflows/gh-aw-*.lock.yml.Validate
make lint(or at minimummake lint-workflowsif that is the repo’s targeted workflow validation)..github/workflows/gh-aw-issue-triage.lock.yml) to confirm the AWF--allow-domainsexpansion includes the newly enabled ecosystems.Optional hardening follow-up
Related Items
.github/workflows/gh-aw-issue-triage.md:65-73network.allowedblock.github/workflows/gh-aw-pr-review.md:77-85.github/workflows/gh-aw-fragments/elastic-tools.md:12-20github/gh-aw/docs/src/content/docs/reference/network.mdWhat is this? | From workflow: Issue Triage
Give us feedback! React with 🚀 if perfect, 👍 if helpful, 👎 if not.