Skip to content

dispatch_workflow handler does not resolve #temporary_id references in input values #25687

@johnpreed

Description

@johnpreed

Bug Report

Summary

The dispatch_workflow safe-output handler does not resolve #temporary_id references in the inputs map before dispatching the target workflow. The literal string (e.g., #aw_slosync) is passed as the workflow input instead of the resolved issue number.

Reproduction

Parent workflow (slo-sync):

  1. Creates an issue with "temporary_id": "aw_slosync" via create_issue
  2. Framework correctly registers the mapping: aw_slosync → github/authentication#6499
  3. Dispatches create-pr with "issue_number": "#aw_slosync" in the dispatch_workflow inputs

Expected: The framework resolves #aw_slosync to 6499 before dispatching, so the create-pr workflow receives issue_number: "6499".

Actual: The literal string #aw_slosync is passed as the issue_number input. The create-pr workflow prompt interpolates this as ${{ github.event.inputs.issue_number }}#aw_slosync, which is not a valid issue number.

Impact

In the dispatched create-pr workflow, the add_comment safe output fails because item_number resolves to the invalid string #aw_slosync:

##[error]✗ Message 2 (add_comment) failed: Target is "*" but no item_number/issue_number specified in add_comment item

Evidence

Workflow source

The slo-sync.md prompt explicitly documents this expectation:

Emit a dispatch_workflow safe output to trigger the create-pr workflow. Use #aw_slosync to reference the tracking issue number — the framework resolves temporary IDs to real issue numbers before dispatching.

{
  "type": "dispatch_workflow",
  "workflow": "create-pr",
  "inputs": {
    "issue_number": "#aw_slosync",
    ...
  }
}

Expected fix

The dispatch_workflow handler should iterate over all input values and resolve any #temporary_id references using the registered temporary ID map before triggering the workflow dispatch.

Version

gh-aw v0.67.4

Metadata

Metadata

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions