Conversation
4 tasks
Agent-Logs-Url: https://github.com/github/gh-aw/sessions/1f058f02-6cb1-47a8-ba83-f28bf5d489c4 Co-authored-by: gh-aw-bot <259018956+gh-aw-bot@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Migrate 6 config parsers to parseConfigScaffold
Migrate 6 config parsers from Apr 26, 2026
unmarshalConfig to parseConfigScaffold
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This was referenced Apr 26, 2026
Closed
This comment has been minimized.
This comment has been minimized.
Contributor
|
Hey One thing worth noting before this is merged:
If you'd like help, here's a prompt you can assign to your coding agent:
|
Contributor
There was a problem hiding this comment.
Pull request overview
Migrates six safe-output config parsers from the legacy unmarshalConfig pattern to the shared generic parseConfigScaffold helper for consistent parsing behavior and logging.
Changes:
- Refactors six
parse*Configfunctions to useparseConfigScaffold(...)with per-handler fallback behavior on unmarshal errors. - Removes redundant “Parsing … configuration” log lines now emitted by the scaffold.
- Aligns
close_entity_helpers.gomissing-key behavior with the scaffold-based style (no extra “No configuration found …” log).
Show a summary per file
| File | Description |
|---|---|
| pkg/workflow/create_pull_request.go | Switches parsePullRequestsConfig to parseConfigScaffold and returns typed pointer directly. |
| pkg/workflow/create_issue.go | Switches parseIssuesConfig to parseConfigScaffold while preserving preprocessing and postprocessing logic. |
| pkg/workflow/create_discussion.go | Switches parseDiscussionsConfig to parseConfigScaffold while preserving defaults/normalization behavior. |
| pkg/workflow/close_entity_helpers.go | Switches parseCloseEntityConfig to parseConfigScaffold and removes redundant logs. |
| pkg/workflow/add_reviewer.go | Switches parseAddReviewerConfig to parseConfigScaffold while preserving preprocessing and defaults. |
| pkg/workflow/add_comment.go | Switches parseCommentsConfig to parseConfigScaffold while preserving preprocessing and defaults. |
Copilot's findings
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 6/6 changed files
- Comments generated: 0
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Six safe-output config parsers were using the old manual
unmarshalConfigpattern instead of theparseConfigScaffoldgeneric scaffold already adopted byassign_to_agent.goandassign_to_user.go.Affected handlers
parseIssuesConfig—create_issue.goparseDiscussionsConfig—create_discussion.goparsePullRequestsConfig—create_pull_request.goparseCommentsConfig—add_comment.goparseAddReviewerConfig—add_reviewer.goparseCloseEntityConfig—close_entity_helpers.goPattern change
All preprocessing steps (
preprocessBoolFieldAsString,preprocessIntFieldAsString, etc.) are unchanged and still run before the scaffold call. The redundant explicit"Parsing … configuration"log lines were removed since the scaffold emits them. Inclose_entity_helpers.go, the"No configuration found for …"log on the absent-key path was also dropped to match the reference style.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/usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw r ode_modules/.bin--show-toplevel git rev-�� --show-toplevel 64/pkg/tool/linux_amd64/vet /usr/bin/git get .cfg ode_modules/.bin--show-toplevel git(http block)https://api.github.com/repos/actions/ai-inference/git/ref/tags/v1/usr/bin/gh gh api /repos/actions/ai-inference/git/ref/tags/v1 --jq [.object.sha, .object.type] | @tsv "prettier" --write '../../../**/*.json' '!../../../pkg/workflow/js/**/*.json' --ignore-path ../.git(http block)https://api.github.com/repos/actions/checkout/git/ref/tags/v3/usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v3 --jq [.object.sha, .object.type] | @tsv pkg/mod/github.com/stretchr/testify@v1.11.1/require/doc.go pkg/mod/github.com/stretchr/testify@v1.11.1/require/forward_requirements.go cal/bin/node(http block)https://api.github.com/repos/actions/checkout/git/ref/tags/v5/usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq [.object.sha, .object.type] | @tsv h ../../../.prettierignore(http block)/usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq [.object.sha, .object.type] | @tsv --show-toplevel x_amd64/vet /usr/bin/git ath ../../../.prtr(http block)/usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq [.object.sha, .object.type] | @tsv --show-toplevel ache/go/1.25.8/x64/pkg/tool/linux_amd64/vet /usr/bin/git '**/*.ts' '**/*.git committer.name .cfg git rev-�� --show-toplevel ache/go/1.25.8/x64/pkg/tool/linux_amd64/vet /usr/bin/git se 2263625/b178/vetrev-parse ache/go/1.25.8/x--show-toplevel git(http block)https://api.github.com/repos/actions/checkout/git/ref/tags/v6/usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq [.object.sha, .object.type] | @tsv(http block)/usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq [.object.sha, .object.type] | @tsv ./../pkg/workflow/js/**/*.json' --ignore-path .cfg x_amd64/vet user.name(http block)/usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq [.object.sha, .object.type] | @tsv '**/*.ts' '**/*.json' --ignore-path ../../../.pr**/*.json 2263625/b030/vet.cfg .cfg(http block)https://api.github.com/repos/actions/github-script/git/ref/tags/v8/usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq [.object.sha, .object.type] | @tsv --show-toplevel x_amd64/vet /usr/bin/git js/**/*.json' --bash(http block)https://api.github.com/repos/actions/github-script/git/ref/tags/v9/usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v9 --jq [.object.sha, .object.type] | @tsv prettier --write /home/REDACTED/.local/bin/node **/*.ts **/*.json --ignore-path node /opt�� run format:pkg-json /home/REDACTED/.dotnet/tools/bash tierignore(http block)/usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v9 --jq [.object.sha, .object.type] | @tsv "prettier" --write '**/*.cjs' '**/*.ts' '**/*.json' --ignore-path ../../../.prettierignore -tests 2527523/b369/vet.cfg(http block)/usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v9 --jq [.object.sha, .object.type] | @tsv "prettier" --write '**/*.cjs' '**/*.ts' '**/*.json' --ignore-path ../../../.pret--log-level=errogit -tests /opt/pipx_bin/sh(http block)https://api.github.com/repos/actions/setup-go/git/ref/tags/v4/usr/bin/gh gh api /repos/actions/setup-go/git/ref/tags/v4 --jq [.object.sha, .object.type] | @tsv "prettier" --write '**/*.cjs' '**/*.ts' '**/*.json' --ignore-path ../../../.prettierignore -tests /home/REDACTED/go/bin/sh(http block)https://api.github.com/repos/actions/setup-node/git/ref/tags/v4/usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v4 --jq [.object.sha, .object.type] | @tsv .js' --ignore-path .prettierignore --log-level=error 2263625/b080/vet.cfg ache/go/1.25.8/x64/pkg/tool/linux_amd64/vet(http block)/usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v4 --jq [.object.sha, .object.type] | @tsv "prettier" --write '**/*.cjs' '**/*.ts' '**/*.json' --ignore-path ../../../.prettierignore -tests 2527523/b123/vet.cfg(http block)https://api.github.com/repos/actions/setup-node/git/ref/tags/v6/usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v6 --jq [.object.sha, .object.type] | @tsv g_.a r node(http block)/usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v6 --jq [.object.sha, .object.type] | @tsv ./../pkg/workflow/js/**/*.json' --ignore-path .cfg x_amd64/compile user.name(http block)/usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v6 --jq [.object.sha, .object.type] | @tsv '**/*.ts' '**/*.json' --ignore-path ../../../.pr**/*.json 2263625/b032/vet.cfg 64/bin/sh(http block)https://api.github.com/repos/actions/upload-artifact/git/ref/tags/v4/usr/bin/gh gh api /repos/actions/upload-artifact/git/ref/tags/v4 --jq [.object.sha, .object.type] | @tsv */*.ts' '**/*.json' --ignore-path ../../../.prettierignore 2263625/b079/vet.cfg .cfg(http block)https://api.github.com/repos/github/gh-aw-actions/git/ref/tags/v0.1.2/usr/bin/gh gh api /repos/github/gh-aw-actions/git/ref/tags/v0.1.2 --jq [.object.sha, .object.type] | @tsv prettier --write /home/REDACTED/work/gh-aw/gh-aw/actions/setup/js/node_modules/.bin/sh **/*.ts **/*.json --ignore-path sh -c npx prettier --write '../../../**/*.json' '!../../../pkg/workflow/js/**/*.json' --ignore-path(http block)https://api.github.com/repos/github/gh-aw-actions/git/ref/tags/v1.0.0/usr/bin/gh gh api /repos/github/gh-aw-actions/git/ref/tags/v1.0.0 --jq [.object.sha, .object.type] | @tsv se 2263625/b061/vet.cfg ache/go/1.25.8/x64/pkg/tool/linux_amd64/vet(http block)https://api.github.com/repos/github/gh-aw-actions/git/ref/tags/v1.2.3/usr/bin/gh gh api /repos/github/gh-aw-actions/git/ref/tags/v1.2.3 --jq [.object.sha, .object.type] | @tsv --local core.hooksPath h(http block)https://api.github.com/repos/github/gh-aw/git/ref/tags/v0.47.4/usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v0.47.4 --jq [.object.sha, .object.type] | @tsv --show-toplevel x_amd64/vet /usr/bin/git(http block)https://api.github.com/repos/github/gh-aw/git/ref/tags/v1.0.0/usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v1.0.0 --jq [.object.sha, .object.type] | @tsv ignore-path ../../../.prettierignore(http block)https://api.github.com/repos/nonexistent/action/git/ref/tags/v999.999.999/usr/bin/gh gh api /repos/nonexistent/action/git/ref/tags/v999.999.999 --jq [.object.sha, .object.type] | @tsv ffold(http block)If you need me to access, download, or install something from one of these locations, you can either: