Skip to content

Add full-agent multi-project issue runs#3

Open
RaistlinMuc wants to merge 1 commit intomainfrom
codex/full-agent-github-issue-runner
Open

Add full-agent multi-project issue runs#3
RaistlinMuc wants to merge 1 commit intomainfrom
codex/full-agent-github-issue-runner

Conversation

@RaistlinMuc
Copy link
Owner

Context

Multi-project mode could detect GitHub and GitLab issues, but full_agent still behaved like build_only and issue-triggered runs could spam comments when retries fired.

TL;DR

Wire full_agent to real Codex issue runs and harden the GitHub/GitLab trigger loop.

Summary

  • Add isolated workspace cloning and prompt building for multi-project full_agent runs
  • Post agent-generated issue replies from .symphony/issue_comment.md back to GitHub or GitLab
  • Stabilize issue signatures, replace broken build timeouts, and clear trigger labels after runs
  • Add regression tests and update fork docs for the new full-agent workflow

Alternatives

  • Keep full_agent mapped to the build pipeline, but that could not execute issue-text requests
  • Let Codex post comments directly, but keeping Symphony as the poster is more deterministic

Test Plan

  • make -C elixir all
  • cd elixir && mise exec -- mix test
  • cd elixir && mise exec -- mix specs.check
  • cd elixir && mise exec -- mix credo --strict
  • Live-test full_agent on RaistlinMuc/symphony#2 and verify label cleanup + single issue comment

Summary:
- add a real `full_agent` runner for GitHub and GitLab projects that
  clones an isolated workspace, runs Codex, and posts the generated
  issue reply back to the tracker
- fix multi-project retry behavior by stabilizing issue signatures,
  replacing the invalid build timeout handling, and clearing trigger
  labels after each run to prevent comment spam loops
- document the new fork behavior and add regression coverage for the
  workspace, agent runner, and orchestrator helpers

Rationale:
- multi-project mode needed a true issue-driven Codex path instead of
  routing `full_agent` through the same build-only pipeline
- the original build runner bug and label retry loop made GitHub issue
  testing noisy and hard to validate in practice
- writing the final reply into `.symphony/issue_comment.md` keeps the
  agent run deterministic and lets Symphony own the final tracker post

Tests:
- cd elixir && mise exec -- mix test
- cd elixir && mise exec -- mix specs.check
- cd elixir && mise exec -- mix credo --strict
- live-tested full_agent against #2 and verified
  the `todo` label was removed and a single joke comment was posted

Co-authored-by: Codex <codex@openai.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant