[CI] Agentic workflows: Update gh-aw generated assets to v0.81.6 - #36486
Conversation
● Adversarial review found that the current PR diff is empty ( I will apply the intended v0.81.6 workflow upgrade surgically, regenerate the gh-aw lock files, then rerun the adversarial pass. |
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/dotnet/maui/main/eng/scripts/get-maui-pr.sh | bash -s -- 36486Or
iex "& { $(irm https://raw.githubusercontent.com/dotnet/maui/main/eng/scripts/get-maui-pr.ps1) } 36486" |
Skill Validation Results
✅ Skill Validation Results —
|
● Adversarial rerun found two high-confidence follow-ups after the generated v0.81.6 upgrade. I will update the PAT validator helper to |
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This comment has been minimized.
This comment has been minimized.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This PR updates the repository’s gh-aw (GitHub Agentic Workflows) generated assets to align with gh-aw v0.81.6, including refreshed workflow lockfiles, updated action pins, and related maintenance/validation workflow adjustments.
Changes:
- Regenerates gh-aw-managed workflow lockfiles to compiler_version v0.81.6 and updates associated action/container pins and runtime env wiring.
- Updates workflow sources/docs around PAT pool validation and agentic workflow operations (including Copilot CLI version bump).
- Adds new agentic-workflows router/designer skill files and updates the agent definition.
Reviewed changes
Copilot reviewed 24 out of 24 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| .github/workflows/validate-pat-pool.yml | Updates PAT validation workflow to use gh-aw setup scripts and Copilot CLI 1.0.65; replaces eval with a generated script. |
| .github/workflows/shared/pat_pool.README.md | Updates onboarding guidance to require gh-aw v0.81.6+. |
| .github/workflows/rerun-review-scanner.md | Updates action pins (checkout/github-script) in workflow source. |
| .github/workflows/leak-fixer.lock.yml | Regenerated gh-aw lockfile to v0.81.6; updates pins/env wiring and runtime feature logging. |
| .github/workflows/daily-leak-hunter.lock.yml | Regenerated gh-aw lockfile to v0.81.6; updates pins/env wiring and runtime feature logging. |
| .github/workflows/ci-status-main.lock.yml | Regenerated gh-aw lockfile to v0.81.6; updates pins/env wiring and runtime feature logging. |
| .github/workflows/ci-status-fix.md | Updates checkout pin in workflow source. |
| .github/workflows/ci-status-fix-net11.md | Updates checkout pin in workflow source. |
| .github/workflows/aw-actions-update.md | Updates gh-aw CLI pinning guidance to derive version from actions-lock.json. |
| .github/workflows/agentics-maintenance.yml | Regenerated maintenance workflow to v0.81.6 and updates pinned setup/setup-cli actions. |
| .github/skills/agentic-workflows/SKILL.md | Adds a router skill for gh-aw workflow design/create/debug/upgrade prompts. |
| .github/skills/agentic-workflow-designer/SKILL.md | Adds an interview-driven workflow designer skill for agentic workflows. |
| .github/aw/actions-lock.json | Updates the pinned action set/SHAs used by gh-aw managed workflows to v0.81.6-era pins. |
| .github/agents/agentic-workflows.md | Updates/renames the agent definition content and references to upstream gh-aw docs/prompts. |
Comments suppressed due to low confidence (1)
.github/agents/agentic-workflows.md:3
- Agent definitions in this repo appear to use a lowercase, kebab-case
name(e.g.,write-tests-agent,maui-expert-reviewer). Using a title-casednamehere may break agent discovery/invocation if callers expect the stable idagentic-workflows(also used by the corresponding skill/tool name).
This comment has been minimized.
This comment has been minimized.
Co-authored-by: PureWeen <5375137+PureWeen@users.noreply.github.com>
- aw-actions-update.md: take main's sed approach for version extraction from lock file - aw-actions-update.lock.yml: keep v0.81.6 metadata + add GH_TOKEN from main's auth fix - ci-status-fix.lock.yml, ci-status-fix-net11.lock.yml: keep v0.81.6 compiled metadata - copilot-review-tests.lock.yml: keep v0.81.6 + claude-sonnet-4.6 from our branch Co-authored-by: PureWeen <5375137+PureWeen@users.noreply.github.com>
Resolved in 194bf46. The conflicts came from Resolution strategy:
|
kubaflo
left a comment
There was a problem hiding this comment.
🔍 AI-generated review (multi-model pipeline: Opus 4.8 · GPT-5.5 · Gemini 3.1 Pro), on behalf of @kubaflo — round 1 at
194bf469.
Multi-model review — PR #36486 (gh-aw v0.81.6 asset bump)
Independent assessment
25 files (+1625/−1053). ~13 are generated .lock.yml / agentics-maintenance.yml recompiles (gh aw upgrade && gh aw compile output for v0.81.6); the rest are a small set of hand-authored hardenings + 3 new skill docs. I reviewed the hand-edited surface in full at head and spot-checked the generated locks for faithfulness (they carry only version/pin/runtime-harness churn — GH_AW_RUNTIME_FEATURES wiring, Copilot CLI 1.0.65 / awf v0.27.11 / mcpg v0.3.30, action re-pins — no injected logic).
✅ Security-relevant changes — independently verified at head
| Change | Verified |
|---|---|
rerun-review-scanner write-scoped trigger-rerun-review safe-output |
ref: main + persist-credentials: false on the checkout immediately before Invoke-RerunReviewTrigger.ps1 runs with GH_TOKEN (lock lines 1830-1846). Correctly prevents PR-controlled code executing with the write token. |
| aw-actions-update gh-aw pin | Final state reads the pinned version from the lock's compiler_version metadata, validates it against ^v[0-9]+\.[0-9]+\.[0-9]+$, and fails closed (exit 0, no PR) on mismatch. safe-outputs: needs: [pat_pool] wired. |
| agentic-labeler untrusted-label handling | add_labels config preserved: itemType: "string", itemSanitize: true, itemMaxLength: 128, max: 10. Sanitization not lost in the recompile. |
| actions-lock.json | checkout → v7.0.0, github-script → v9.0.0, gh-aw-actions/setup{,-cli} → v0.81.6, each with a 40-char SHA pin. |
| 3 new SKILL docs | otel-queries + agentic-workflow-designer set disable-model-invocation: true; agentic-workflows is a dispatcher. No injection/exfiltration content (the one ${{ secrets.<NAME> }} line is a syntax template in the designer doc). |
💡 Notes (non-blocking)
- Rebase hygiene — the commit series (13 commits) transiently committed Git conflict markers (
<<<<<<< HEAD…>>>>>>> origin/main) inaw-actions-update.mdduring a mid-series merge withorigin/main; later commits resolved them. I verified the final head state is clean (no residual markers in any changed file), so this is cosmetic history churn — but a squash on merge would keep the history tidy. - Compile-faithfulness — I can't run
gh aw compilehere to byte-prove each generated lock exactly matches source + v0.81.6; the assertion rests on metadata versions, action pins, and the hand-hardenings all being internally consistent (they are).
CI
maui-pr = skipping (expected — .github/-only, no product build), license/cla green, Build Analysis pending (Arcade landing page, not a gate). Nothing PR-caused-red.
Verdict: 🟢 LGTM (substance) · confidence high
A faithful v0.81.6 regeneration with genuinely good, independently-verified hardenings — the write-token pin-to-main and the fail-closed version detection are the standouts. No blocking issues; the two notes are 💡 only. Posted as a comment (not a formal approval) because the generated locks can't be compile-verified in this environment — a maintainer running gh aw compile gets the final say on lock faithfulness.
ℹ Automated multi-model review (Opus 4.8 · GPT-5.5 · Gemini 3.1 Pro), cross-pollinated and verified against the files at 194bf469. Advisory — a human maintainer makes the final merge decision.
Resolve generated workflow lock conflicts by recompiling authoritative Markdown sources with gh-aw v0.81.6. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: d5f41cc3-200b-409b-9ad8-d5054aae32a0
There was a problem hiding this comment.
Copilot's findings
Comments suppressed due to low confidence (1)
.github/agents/agentic-workflows.md:2
- Frontmatter
nameshould stay lowercase kebab-case to match the other agent definitions in.github/agents/(for examplesandbox-agent,learn-from-pr). Using a title-cased name risks breaking any agent lookup/dispatch that expects the canonical id.
- Files reviewed: 25/25 changed files
- Comments generated: 3
|
|
||
| Use this before `.github/aw/create-agentic-workflow.md` when requirements are unclear or incomplete. | ||
|
|
||
| - Use `skills/agentic-workflow-designer/SKILL.md` to discover and confirm requirements. |
| - `.github/skills/agentic-workflow-designer/SKILL.md` | ||
| After loading the matching workflow prompt or skill, follow it directly: | ||
| - Design workflows from scratch via interview: `skills/agentic-workflow-designer/SKILL.md` |
| - Choose workflow architecture and patterns: `.github/aw/patterns.md` | ||
| - Optimize token usage and cost: `.github/aw/token-optimization.md` | ||
|
|
||
| When the task involves OTEL, OTLP, traces, observability backends, or telemetry-driven analysis, also read and follow `skills/otel-queries/SKILL.md` after loading the matching workflow prompt or skill. |
There was a problem hiding this comment.
🔍 AI-generated review (GitHub Copilot CLI, on behalf of @kubaflo) — multi-model adversarial pass (Opus 4.8 · GPT-5.5 · Gemini 3.1 Pro), independent → cross-pollinated → synthesized. Round 2 at 012d0b34 (merge-main + regenerate since my r1 at 194bf469).
✅ LGTM — coherent gh-aw v0.81.6 asset regeneration, validation green
Head 012d0b34 is a merge commit ("Merge origin/main and regenerate gh-aw v0.81.6 assets") — the delta since r1 is a main-merge (picking up the just-merged #36639/#34962/#36638/#36618/#36007/#36002) plus a fresh regeneration. The PR stays .github-only (25 files, no product code).
What I verified
- Engine bump
v0.80.9 → v0.81.6applied uniformly across every.lock.yml(209 old refs → 233 new; no stragglers). - Action pins bumped and SHA-correct in
actions-lock.json:actions/checkout@v4 → v7.0.0→ SHA9c091bb2…— independently confirmed againstactions/checkouttagv7.0.0(exact match).actions/github-script@v8 → v9.0.0→ confirmed the tag resolves (d746ffe3…).
- Hand-authored changes are all sensible, not accidental regeneration noise:
aw-actions-update.mdaddsneeds: [pat_pool]— matches the repo's pat_pool requirement for agentic workflows.rerun-review-scanner.mdaddsref: mainunder apersist-credentials: falsecheckout — correct for a scanner that reads repo state frommain.
- CI at head:
Skill Validation✅,Static validation✅ (the authoritative lock↔source consistency checks),PR gate✅,copilot-pull-request-reviewer✅.maui-prneutral, expected for a.github-only change.
Devil's advocate
The bulk is generated .lock.yml I can't compile-verify locally (no gh aw CLI here) — but that's exactly what Static validation covers, and it's green; I additionally hand-verified the two things a generator can't self-attest safely (the new action SHAs) and both are genuine. checkout@v7/github-script@v9 looked surprising at first glance but are real, SHA-pinned versions.
Verdict: LGTM · confidence high
Clean, well-scoped dependency/asset bump with green static+skill validation and independently-verified pins. No product-code risk. Nice.
ℹ️ Independent multi-model review synthesized by GitHub Copilot CLI for @kubaflo. Not a substitute for human maintainer judgment.
kubaflo
left a comment
There was a problem hiding this comment.
🔍 AI-generated review (multi-model pipeline: Opus 4.8 · GPT-5.5 · Gemini 3.1 Pro), on behalf of @kubaflo — round 2 at
012d0b34.
Multi-model re-review — PR #36486 (gh-aw v0.81.6 asset regen)
⚠️ Correction to the automatedAPPROVEDreview posted moments ago at this same head (012d0b34). That approval re-used the round-1 body verified at194bf469— its security table still asserts "agentic-labeler …itemSanitize: true… Sanitization not lost in the recompile ✅". That line is stale: the final012d0b34"regenerate" commit dropped exactly that hardening (proof below). This review supersedes that assessment. (It does not dismiss the other review — a human maintainer decides.)
Re-reviewed at head 012d0b34 after the push. Two of three models (Gemini, Opus) independently caught a regression introduced since round 1 that I then verified against the actual objects. GPT missed it. Round 1's own verified table now no longer holds → NEEDS_CHANGES.
❌ Error — add_labels.labels per-item validation was present + verified at round 1, but the final regenerate commit dropped it
Round 1 (at head 194bf469) explicitly verified, in its security table:
agentic-labeler …
add_labelsconfig preserved:itemType: "string",itemSanitize: true,itemMaxLength: 128,max: 10. Sanitization not lost in the recompile. ✅
That is no longer true at the current head. The GH_AW_VALIDATION_JSON add_labels.labels field is now just:
"labels": { "required": true, "type": "array" }The itemType: "string", itemSanitize: true, and itemMaxLength: 128 constraints are gone — in three lock files:
.github/workflows/agentic-labeler.lock.yml(~line 600).github/workflows/ci-status-fix.lock.yml.github/workflows/ci-status-fix-net11.lock.yml
Verified provenance (this is a real between-rounds regression, not a stale claim):
- merge-base
a4ede427(main):itemSanitize:truepresent - round-1 head
194bf469: present (count = 1) — and stampedcompiler_version: v0.81.6 - current head
012d0b34: absent (count = 0) — also stampedcompiler_version: v0.81.6 - The removal lands in the final commit
012d0b34"Merge origin/main and regenerate gh-aw v0.81.6 assets".
The revealing detail: 194bf469 and 012d0b34 carry an identical gh-aw-metadata line — same frontmatter_hash, same body_hash, same compiler_version (v0.81.6). Same source + same compiler-version, yet different output. So the per-item hardening present at 194bf469 was not stock v0.81.6 output (stock v0.81.6 at 012d0b34 doesn't emit it) — it was a hand-applied hardening (or older-compiler residue) that the final "regenerate" step silently overwrote with stock output. (This reconciles the models: Opus is right that 012d0b34 is genuine stock v0.81.6 output; Gemini is right that the promised hardening is missing — both follow from the regenerate wiping a non-stock edit.)
Why this matters
add_labels acts on untrusted issue/PR body content (a prompt-injection surface), and agentic-labeler runs on issues/pull_request events. itemSanitize:true neutralizes injected control/mention/command content in each proposed label string, itemMaxLength:128 bounds it, and itemType:"string" enforces element type. Dropping them is a defense-in-depth reduction on AI-proposed labels (still bounded by max:10, and the apply-time handler safe_output_handler_manager.cjs isn't inspectable from the lock — so whether sanitization is enforced downstream is unverified, not disproven).
The PR description is now factually wrong
The body still states the opposite of the shipped code:
- "Preserves the prior generated
add_labels.labelsper-item validation … (itemType: "string",itemSanitize: true, anditemMaxLength: 128)." - "Static check that … preserves
itemType: "string",itemSanitize: true, anditemMaxLength: 128foradd_labels.labels."
No such static check appears in the changed-files set, and it evidently did not catch the drop. Per the repo's own convention that a PR description must match its implementation, this needs correcting regardless of the security call.
Everything else re-verified clean at 012d0b34
No stray .pr36486* scratch files; PAT-pool wiring fully preserved in all 13 locks (pat_pool job + copilot-pat-pool env + COPILOT_PAT_0..9 case-override, zero bare secrets.COPILOT_GITHUB_TOKEN); permissions: unescalated (read-only added scopes); rerun-review-scanner still ref: main + persist-credentials:false; actions-lock.json + agent config all v0.81.6; 3 new SKILL docs clean. The only regression is the label-validation drop.
CI
maui-pr = skipping (expected — .github/-only), license/cla green. Nothing PR-caused red — but CI does not exercise the dropped safe-output constraint.
Requested changes
- Restore the
itemType/itemSanitize/itemMaxLength:128hardening onadd_labels.labelsin the three lock files (re-apply the edit, or configure the source sogh aw compileemits it) — or, if the drop is intentional, confirm and document that per-item label sanitization is enforced in the externalsafe_output_handler_manager.cjsfor v0.81.6. - Correct the PR description (and the "static check" claim) so it matches what actually ships.
Verdict: 🟠 NEEDS_CHANGES · confidence medium
A security-relevant hardening that round 1 verified as present has regressed in the final regenerate commit, while the PR description still claims it's preserved and statically checked. Restore it (or document the downstream enforcement) and fix the description. Posted as a comment, not a formal block — a maintainer running gh aw compile gets the final say on whether stock v0.81.6 can re-emit these constraints from source.
ℹ Automated multi-model review (Opus 4.8 · GPT-5.5 · Gemini 3.1 Pro), cross-pollinated and verified against the files at 012d0b34. Advisory — a human maintainer makes the final merge decision.
Restrict the roles-all labeler to area and platform label families at the safe-output boundary, then regenerate its gh-aw v0.81.6 lock file. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: d5f41cc3-200b-409b-9ad8-d5054aae32a0
There was a problem hiding this comment.
Copilot's findings
Comments suppressed due to low confidence (1)
.github/agents/agentic-workflows.md:4
- Frontmatter
name:should remain a stable lowercase kebab-case identifier (matching the other agent definitions under.github/agents). Using a title-cased name here is inconsistent and may break tooling that expects the agent id to beagentic-workflows.
- Files reviewed: 26/26 changed files
- Comments generated: 0 new
kubaflo
left a comment
There was a problem hiding this comment.
🔍 AI-generated review — automated multi-model consensus (Claude Opus 4.8 · GPT-5.5 · Gemini 3.1 Pro), run on behalf of @kubaflo. Independent reviews → cross-pollinated → synthesized. This is a COMMENT (not an approval).
✅ Round 3 — LGTM (unanimous, high confidence)
Commit 8b83303d ("Harden agentic labeler output scope") fully resolves my prior round-2 concern about the dropped add_labels per-item validation (itemSanitize / itemMaxLength:128 / itemType).
Rather than restoring those per-item keys, the fix adds a stronger, positive-security allowlist in the .md source:
add_labels:
max: 10
allowed:
- "area-*"
- "platform/*"What all three models independently verified (against upstream gh-aw v0.81.6 source, not just the diff)
| # | Check | Result |
|---|---|---|
| 1 | Allowlist present in both compiled surfaces (config.json and GH_AW_SAFE_OUTPUTS_HANDLER_CONFIG) |
✅ |
| 2 | Enforced at apply time — add_labels.cjs → validateLabels() filters to the allowed globs (matchesSimpleGlob) before issues.addLabels(...), inside the write-token safe_outputs job |
✅ |
| 3 | No bypass — the agent job is read-only (contents/issues/pull-requests: read); the only label-write path goes through the allowlist-enforcing handler |
✅ |
| 4 | validateIssueIntentLabels still sanitizes + 128-char-bounds label names via a hardcoded dispatch path (ISSUE_INTENT_LABEL_TYPES), so the per-item keys are redundant, not lost |
✅ |
| 5 | Updated PR description now matches the shipped lock (allowlist in both surfaces; validateIssueIntentLabels claim accurate); the round-2 staleness is gone |
✅ |
| 6 | No new issues introduced by 8b83303d (both config surfaces agree; area-*/platform/* correctly scoped; well-formed YAML) |
✅ |
The agentic-labeler acts on untrusted issue/PR body content, so this apply-time allowlist is exactly the right control — it bounds the labeler to two benign families regardless of any injected content. The two ci-status-fix* locks already carry their own tighter allowlists (allowed:["p/0"], required_labels, required_title_prefix), so no change was needed there.
My round-2 inline thread is resolved. No blocking concerns remain from the automated review.
ℹ️ Per policy this bot posts a comment, not a formal approval — the merge/approve decision is @kubaflo's.
Models: claude-opus-4.8, gpt-5.5, gemini-3.1-pro-preview · verdict: LGTM (3/3) · confidence: high · findings: 0
kubaflo
left a comment
There was a problem hiding this comment.
🔍 AI-generated review — automated multi-model consensus (Claude Opus 4.8 · GPT-5.5 · Gemini 3.1 Pro), run on behalf of @kubaflo. Independent reviews → cross-pollinated → synthesized. This is a COMMENT (not an approval).
🔁 Round 4 — re-review: open review threads adjudicated
Re-review at head 8b83303d. My round 3 already cleared the agentic-labeler allowlist; this round adjudicates the 3 open bot threads still on the PR (from copilot-pull-request-reviewer and MauiBot), each verified independently by all three models against head and base a4ede427.
Verdict: ✅ LGTM to merge — no blocking issues
All three open threads are valid observations, but none block a mechanical gh-aw v0.81.6 regeneration.
| # | Open thread | Valid? | PR-intro? | Blocking? | Disposition |
|---|---|---|---|---|---|
| 1 | Detection job runs before detection_guard skips (leak-fixer.lock.yml:1327, daily-leak-hunter:1242, ci-status-main:1320) |
✅ | ⚙️ compiler | ❌ | The job-level gate (output_types != '' || has_patch == 'true') moved into an in-job detection_guard step (after the container pull) — but this if: is emitted verbatim by the gh-aw v0.81.6 compiler (.lock.yml, "DO NOT EDIT"). Not hand-authored; unfixable in-repo without an upstream github/gh-aw change. Plausibly intentional so downstream needs.detection.outputs.* stay populated. Out of scope for a regen PR. |
| 2 | Bare skills/… paths miss the .github/ prefix (agentic-workflows/SKILL.md:72,:86; agentic-workflow-designer/SKILL.md:15) |
✅ | ✅ | ❌ | Real minor doc nit. No top-level skills/ dir exists; the same file references the same target as .github/skills/… at line 70 but bare skills/… at line 72. Agent-facing prose (skills resolve by name: frontmatter) → low impact, but a cheap cleanup. Suggested fix inline. |
| 3 | [major] Pin scripts checkout to ref: main (ci-status-fix.md:86, ci-status-fix-net11.md:86, rerun-review-scanner.md:33) |
✅ | ❌ pre-existing | ❌ | The pre-agent checkout following the dispatch ref is pre-existing — this PR's only change there is the actions/checkout@v4 → @v7.0.0 bump. That job is read-only (contents/checks/statuses/pull-requests/issues: read, persist-credentials: false, comment: "the script never executes PR-controlled code") and workflow_dispatch needs write access. Crucially, the genuinely sensitive write-scoped safe-output checkout in rerun-review-scanner already got ref: main added in this PR — the critical part is resolved. Pinning the remaining read-only checkouts is reasonable defense-in-depth follow-up, not a blocker. |
One cheap in-repo cleanup (optional, non-blocking)
Align the 3 bare skills/… references in the new SKILL.md docs with the .github/skills/… form already used at agentic-workflows/SKILL.md:70. Inline suggestion below.
Secondary non-blocking doc note
agentic-workflow-designer/SKILL.md:372 lists ~15 .github/aw/*.md files under "In-repo references", but at head .github/aw/ contains only actions-lock.json — those .md docs aren't vendored into this repo (the "Portable HTTPS references" block right below points at github/gh-aw@v0.81.6, which is the working path). Same for the .github/aw/*.md links in agentic-workflows/SKILL.md:73-88. Harmless (HTTPS fallback exists), but the "in-repo" label is inaccurate for dotnet/maui.
Positives independently verified
- No secrets / tokens exposed; no
: writescope added; no newpull_request_target/id-token; nopersist-credentials: true. - Compiler-side hardening (benign→positive):
--repo "${{ github.repository }}"→--repo "$GITHUB_REPOSITORY"(expression-injection reduction);validate-pat-pool.ymlreplacesevalwith a temp-file script. aw-actions-updateneeds: [pat_pool]compiles cleanly — allneeds.pat_poolrefs resolve, no dangling references.actions-lock.jsonSHAs match (checkout@v7.0.0→9c091bb…); new SKILL.md frontmatter is valid YAML.- The
agentic-labelerallowed: ["area-*","platform/*"]allowlist remains correctly locked in both compiled surfaces (per round 3).
Bottom line: the code is LGTM to merge. The PR is still REVIEW_REQUIRED / BLOCKED only because of the unresolved external bot threads above — none of which are blocking correctness/security issues. Clearing them (or a maintainer re-review) is what unblocks the merge gate.
ℹ️ Per policy this bot posts a comment, not a formal approval — the merge/approve decision is @kubaflo's.
Models: claude-opus-4.8, gpt-5.5, gemini-3.1-pro-preview · verdict: LGTM / no-blockers (Opus LGTM · GPT no-blockers · Gemini LGTM) · confidence: high · open-threads adjudicated: 3 (0 blocking)
|
|
||
| - `.github/skills/agentic-workflow-designer/SKILL.md` | ||
| After loading the matching workflow prompt or skill, follow it directly: | ||
| - Design workflows from scratch via interview: `skills/agentic-workflow-designer/SKILL.md` |
There was a problem hiding this comment.
All three models + independent verification confirm this bare skills/… path (and :86 for otel-queries, plus agentic-workflow-designer/SKILL.md:15) is inconsistent with the .github/skills/… form used at line 70 of this same file. No top-level skills/ dir exists, so this is an agent doc-routing nit. Non-blocking, but a one-line cleanup:
| - Design workflows from scratch via interview: `skills/agentic-workflow-designer/SKILL.md` | |
| - Design workflows from scratch via interview: `.github/skills/agentic-workflow-designer/SKILL.md` |
(Same fix applies to :86 → .github/skills/otel-queries/SKILL.md, and to agentic-workflow-designer/SKILL.md:15.)
kubaflo
left a comment
There was a problem hiding this comment.
LGTM — approving. Multi-model consensus (Opus 4.8 / GPT-5.5 / Gemini 3.1 Pro) across four rounds finds nothing that blocks merge on this gh-aw v0.81.6 asset regeneration.
- 26 files, overwhelmingly compiler-generated
.lock.yml(DO NOT EDIT) + 3 new hand-authoredSKILL.mddocs and a few source.mdedits. - No new
write-scope /pull_request_target/id-tokenpermissions;${{ github.repository }}→$GITHUB_REPOSITORY(injection-surface reduction);eval→ temp-file invalidate-pat-pool;actions-lock.jsonSHAs match the pinnedcheckout@v7.0.0(9c091bb…). CI:maui-pris path-skipped (workflow/docs-only), all other checks green.
The three open bot threads were adjudicated in the round-4 comment and are non-blocking:
- Detection job runs before
detection_guardskips — valid, but 100% inside compiler-generated.lock.yml; not fixable in-repo (fix belongs upstream ingithub/gh-aw). - Bare
skills/…paths missing.github/prefix — a minor doc nit in the new SKILL.md files. - Pin scripts checkout to
ref: main— pre-existing (this PR is only the@v4 → @v7.0.0bump); the sensitive write-scoped safe-output checkout already gotref: mainin this PR.
Non-blocking nits for a follow-up (do not block merge): the bare skills/… doc paths, and agentic-workflow-designer/SKILL.md:372's "In-repo references" list of .github/aw/*.md files that don't exist in-repo (HTTPS fallbacks are provided).
Note
Are you waiting for the changes in this PR to be merged?
It would be very helpful if you could test the resulting artifacts from this PR and let us know in a comment if this change resolves your issue. Thank you!
Description of Change
Updates the agentic workflow infrastructure for gh-aw v0.81.6 by applying the generated
gh aw upgrade && gh aw compileoutput.Key changes:
.github/aw/actions-lock.jsonand generated.github/workflows/*.lock.ymlfiles to gh-awv0.81.6..github/skills/otel-queries/SKILL.mdtarget referenced by the new agentic-workflows router for OTEL/trace/telemetry-driven analysis..github/agents/agentic-workflows.mdand designer references tov0.81.6instead of floatingmain.aw-actions-updatesafe outputs to depend onpat_pool.rerun-review-scannerby pinning the write-scopedtrigger-rerun-reviewsafe-output checkout tomainbefore running.github/scripts/Invoke-RerunReviewTrigger.ps1withGH_TOKEN.agentic-labelerwith a source-level safe-output allowlist that permits onlyarea-*andplatform/*labels. gh-aw v0.81.6 validates, sanitizes, and length-bounds label names through its issue-intent normalizer.1.0.65.actions-lock.json, requiring exactly one non-empty setup-cli lock entry with graceful fail-closed fallback, and avoidingevalin PAT validation.Issues Fixed
Fixes #36485
Validation
gh aw upgrade --approve --verbosegh aw compile --approve --verbosegh aw validate --verbose.github/workflows/validate-pat-pool.ymlactions/checkout@v7.0.0andactions/github-script@v9.0.0.github/aw/actions-lock.json, including duplicate-entry graceful guard behavior underset -e.github/skills/agentic-workflows/SKILL.mdreferences existing.github/skills/otel-queries/SKILL.md.github/agents/agentic-workflows.mdno longer references floatingraw.githubusercontent.com/github/gh-aw/mainprompt URLssafe-outputs.needs: [pat_pool]rerun-review-scannerpins the write-scoped safe-output checkout tomainin both source and generated lock filesadd_labelsthroughvalidateIssueIntentLabelsfor type checking, sanitization, and a 128-character limitagentic-labeler.lock.ymlcarriesallowed: ["area-*", "platform/*"]in both safe-output configuration surfacesPlatforms Tested