-
Notifications
You must be signed in to change notification settings - Fork 296
Closed
Description
Problem
When a gh-aw workflow is called via workflow_call, the caller has no way to access results from safe-outputs (created issue numbers, PR URLs, push status, etc.). The safe-outputs job sets job-level outputs, but the compiler doesn't generate on.workflow_call.outputs to expose them.
Proposal
-
Publish individual safe-output results as named job outputs — instead of bundling everything into
process_safe_outputs_temporary_id_map, each safe-output type should emit its own clearly-named outputs:create_issue→created_issue_number,created_issue_urlcreate_pull_request→created_pr_number,created_pr_urlpush_to_pull_request_branch→push_commit_sha,push_commit_urladd_comment→comment_id,comment_url- etc.
-
Wire job outputs to
on.workflow_call.outputs— add frontmatter support to declare which outputs to expose:outputs: issue_number: safe_outputs.created_issue_number pr_url: safe_outputs.created_pr_url
Or automatically expose all safe-output results without explicit declaration.
-
Caller usage:
jobs: run-agent: uses: ./.github/workflows/gh-aw-create-issue.lock.yml follow-up: needs: run-agent steps: - run: echo "Created issue ${{ needs.run-agent.outputs.issue_number }}"
Why
- Enables chaining agent workflows (e.g., create issue → assign to agent → track results)
- Allows callers to conditionally branch based on safe-output success/failure
- Makes gh-aw workflows composable building blocks in larger automation
Reactions are currently unavailable