Skip to content

Fix gh-aw v0.86.2 safe-output base parsing - #19445

Open
David Pine (IEvangelist) wants to merge 3 commits into
mainfrom
dapine/fix-gh-aw-v0862-output
Open

Fix gh-aw v0.86.2 safe-output base parsing#19445
David Pine (IEvangelist) wants to merge 3 commits into
mainfrom
dapine/fix-gh-aw-v0862-output

Conversation

@IEvangelist

@IEvangelist David Pine (IEvangelist) commented Aug 17, 2026

Copy link
Copy Markdown
Member

Description

Fixes the PR documentation recovery workflow regression proven by run 32057063327. gh-aw v0.86.2 keeps agent_output.json as an { "items": [...] } envelope, but its create_pull_request item now carries the compiler-supported target override in base; older canonical outputs carry the normalized target in base_branch. The apply-time resolver and the shared validator used later by notify_source_pr and validate-docs-outcome must support both shapes without weakening target validation.

This branch now includes live main at f9c0e57d27ff5c6f8381054aaaef77f7837e2f20 through a normal merge commit after #19446. It preserves #19446's current base handling while restoring strict compatibility with legacy base_branch in both guarded consumers. Exactly one create_pull_request item is required; every present target field must be a string matching main or numeric release/X.Y[.Z]; both fields must agree when present together; and missing, invalid, wrong-type, disagreeing, or duplicate items fail without falling back to main. The notification target and actual created PR base must also match the canonical target.

The generated lock workflow was recompiled from the resolved source with gh-aw v0.86.2. The merged behavioral tests retain current-base coverage from #19446 and add legacy-only success, agreement, disagreement, missing/invalid/wrong-type fields, invalid mixed fields, duplicate create items, notification mismatch, and actual-base mismatch coverage.

Post-merge validation:

  • gh aw compile pr-docs-check --no-check-update (compiled 1 workflow successfully with gh-aw v0.86.2)
  • gh aw compile pr-docs-check --no-check-update --no-emit --validate (1 workflow succeeded, 0 warnings)
  • python -m unittest discover -s .github\workflows\pr-docs-check -p test_validate_outcome.py -v (42 passed)
  • dotnet format tests\Infrastructure.Tests\Infrastructure.Tests.csproj --no-restore --include tests\Infrastructure.Tests\WorkflowScripts\PrDocsCheckWorkflowTests.cs --verbosity minimal (completed successfully)
  • dotnet test --project tests\Infrastructure.Tests\Infrastructure.Tests.csproj --no-launch-profile -- --filter-class "*.PrDocsCheckWorkflowTests" --filter-not-trait "quarantined=true" --filter-not-trait "outerloop=true" (6 passed)
  • git diff --check and git diff --cached --check (passed)

Checklist

  • Is this feature complete?
    • Yes. Ready to ship.
    • No. Follow-up changes expected.
  • Are you including unit tests for the changes and scenario tests if relevant?
    • Yes
    • No
  • Did you add public API?
    • Yes
      • If yes, did you have an API Review for it?
        • Yes
        • No
      • Did you add <remarks /> and <code /> elements on your triple slash comments?
        • Yes
        • No
    • No
  • Does the change make any security assumptions or guarantees?
    • Yes
      • If yes, have you done a threat model and had a security review?
        • Yes
        • No
    • No

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 32c349b4-907d-42e9-aad8-2f0edc267779
Copilot AI balanced review requested due to automatic review settings August 17, 2026 19:16
@github-actions

Copy link
Copy Markdown
Contributor

🚀 Dogfood this PR with:

⚠️ WARNING: Do not do this without first carefully reviewing the code of this PR to satisfy yourself it is safe.

curl -fsSL https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 19445

Or

  • Run remotely in PowerShell:
iex "& { $(irm https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 19445"

@github-actions

This comment has been minimized.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Fixes gh-aw v0.86.2 parsing of documentation PR target branches while retaining legacy compatibility.

Changes:

  • Accepts base and legacy base_branch, rejecting conflicts.
  • Regenerates the compiled workflow and updates structural tests.

Reviewed changes

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

File Description
.github/workflows/pr-docs-check.md Updates target-branch resolution.
.github/workflows/pr-docs-check.lock.yml Regenerates the compiled workflow.
tests/Infrastructure.Tests/WorkflowScripts/PrDocsCheckWorkflowTests.cs Updates workflow assertions.

Comment thread .github/workflows/pr-docs-check.md
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 32c349b4-907d-42e9-aad8-2f0edc267779
Copilot AI review requested due to automatic review settings August 17, 2026 19:29

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.

@github-actions

This comment has been minimized.

@github-actions

Copy link
Copy Markdown
Contributor

Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt.

Preserve strict support for current base and legacy base_branch target fields after #19446.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 32c349b4-907d-42e9-aad8-2f0edc267779
Copilot AI review requested due to automatic review settings August 17, 2026 21:51

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.

@github-actions

Copy link
Copy Markdown
Contributor

Tests selector (audit mode)

The full test matrix and all jobs still run in audit mode. The tests and jobs below are what selective CI would run under enforcement.

1 / 101 test projects · 0 jobs, from 5 changed files.

Selected test projects (1 / 101)

Infrastructure.Tests

Selected jobs (0)

none


How these were chosen — grouped by what changed

📄 .github/workflows/pr-docs-check.lock.yml (changed)
1 directly: Infrastructure.Tests

📄 .github/workflows/pr-docs-check.md (changed)
1 directly: Infrastructure.Tests

📄 .github/workflows/pr-docs-check/test_validate_outcome.py (changed)
1 directly: Infrastructure.Tests

📄 .github/workflows/pr-docs-check/validate_outcome.py (changed)
1 directly: Infrastructure.Tests

🧪 tests/Infrastructure.Tests/WorkflowScripts/PrDocsCheckWorkflowTests.cs (changed test)
1 directly: Infrastructure.Tests

Job reasons

none


Selection computed for commit b8a29e7.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-engineering-systems infrastructure helix infra engineering repo stuff

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants