Repository navigation
Fix Aider command replay and daily Go workflow completion - #71211
Merged
Merged
Conversation
Scope shell suggestions to each response, continue after edits, and correct Go runtime, discovery, validation, and incomplete-work reporting. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
🔵 Needs a closer look
Runtime behavior defects remain unresolved, and end-to-end validation of the native Aider lifecycle and sandboxed Go/TLS integration is incomplete.
2 open issues
What changed in this PR
Improves reliability of gh-aw’s shared Aider driver and daily Go maintenance workflows without changing authentication, model selection, or TLS verification.
Changes:
- Scope shell suggestions per response and continue after applied edits.
- Add explicit Go runtime setup, narrower discovery, and incomplete-work reporting.
- Add regression coverage and regenerate four Aider workflow locks.
| File | Description |
|---|---|
pkg/workflow/aider_discovery_test.go |
Adds discovery and validation-contract regressions. |
pkg/workflow/aider_continuation_test.go |
Tests command replay prevention and edit-only continuation. |
.github/workflows/smoke-aider.lock.yml |
Regenerates the smoke workflow with shared driver updates. |
.github/workflows/shared/aider.md |
Updates command scoping and continuation behavior. |
.github/workflows/engine-conformance-aider.lock.yml |
Regenerates conformance execution with driver updates. |
.github/workflows/daily-go-test-stubs-aider.md |
Adds Go setup, package discovery, and placeholder-test validation. |
.github/workflows/daily-go-test-stubs-aider.lock.yml |
Compiles runtime and shared driver changes. |
.github/workflows/daily-code-debt-aider.md |
Narrows marker discovery and stops publication on validation failure. |
.github/workflows/daily-code-debt-aider.lock.yml |
Compiles runtime, reporting, and driver changes. |
.changeset/patch-aider-reflection-command-scope.md |
Records the Aider reliability changes for a patch release. |
Review effort: Max
|
|
||
| ```bash | ||
| grep -rn "TODO\|FIXME" --include="*.go" --exclude-dir=vendor --exclude-dir=.git . | grep -v "_test.go" | head -20 | ||
| grep -rnE '^[[:space:]]*//[[:space:]]*(TODO|FIXME)([[:space:]:]|$)' --include="*.go" --exclude="*_test.go" --exclude-dir=vendor --exclude-dir=.git --exclude-dir=testdata . | head -20 |
| shared_output = original_run_shell_commands(coder) | ||
| results = command_results[start:] | ||
| if results and not coder.reflected_message: | ||
| if (results or getattr(coder, "aider_edited_files", None)) and not coder.reflected_message: |
Contributor
|
🎉 This pull request is included in a new release. Release: |
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.

Summary
Fix the shared Aider driver and the two daily Go workflows as one reliability workstream, without changing authentication/model selection or weakening TLS verification.
EditBlockCoder.get_edits()appends toshell_commandsacross native reflections; the previous adapter replayed discovery after edit-only replies. Continue after applied edits even when the response has no shell command. Keep the native reflection budget unchanged.go list, excluding ignored fixture/hidden/nested-module directories. Compile and run placeholder tests rather than relying ongo build, which does not check_test.gofiles.Failure evidence
invalid_api_key401s occur before Aider session initialization, while its subsequent model turns succeed through Copilot (gpt-4o-mini-2024-07-18, HTTP 200). These errors are ancillary to the observed successful inference, not evidence for changing the workflow's Copilot credentials/model. The component initiating the OpenAI request remains unconfirmed.Validation
go test ./pkg/workflow -run '^TestAider' -count=1passes.make fmtpasses after restoring the existing pinned JavaScript validation dependencies.make recompile: all 346 workflows pass.make check-workflow-drift: all locks match sources.concurrency.queue/job.workflow_refsyntax). Offline zizmor has the same 28 existing low-severityself-repositoryfindings as baseline.Known validation limits:
make agent-report-progresswas run using installed Bash 5 after macOS Bash 3 rejectedmapfile. Its impacted test phase passes, but the gate fails on an existing golangci warning about unknownnolintnameslargefunc/uncheckedsliceindex; modernize findings are confined to unchangedclaude_engine.go,codex_engine.go, andcomment_memory.go. No unrelated linter changes are included. Dry-run compilation safely refuses the existing imported host-side Aiderpre-agent-steps(and smoke/conformance post-steps / MCP scripts), so the dry-run/live-testing gate is not passed. No workflow dispatch or rerun was attempted; live TLS/runner behavior remains unverified.Authored Markdown security impact
shared/aider.mddaily-code-debt-aider.mddaily-go-test-stubs-aider.mdThe Go runtime adds the existing standard Go ecosystem destinations (
go.dev,golang.org,goproxy.io,pkg.go.dev,proxy.golang.org,storage.googleapis.com,sum.golang.org). SHA-pinned runtime actions, read-only agent repository permissions, AWF isolation, credential exclusions/redaction and privileged safe-output publication gates remain intact.