{
"meta": {
"agent": "planner",
"task_id": "499",
"title": "E2E targeted workflow — wait for dispatched run result",
"created_at": "2026-04-14T12:00:00Z"
},
"inputs": [
{
"name": "issue-499",
"type": "context",
"ref": "https://github.com/AgentSDE/agent-core/issues/499",
"notes": "Fire-and-forget dispatch must block on E2E result"
},
{
"name": "e2e-targeted.yml",
"type": "file",
"ref": ".github/workflows/e2e-targeted.yml",
"notes": "Current workflow — dispatch-e2e job exits immediately after gh workflow run"
},
{
"name": "e2e.yml (agent-core-e2e)",
"type": "file",
"ref": "AgentSDE/agent-core-e2e/.github/workflows/e2e.yml",
"notes": "Target workflow — accepts modules input, has concurrency group"
}
],
"outputs": [
{
"name": "plan",
"type": "plan",
"format": "md",
"content": "plan.md"
}
],
"files": [
{
"path": ".github/workflows/e2e-targeted.yml",
"action": "modify",
"reason": "Add run identification, polling, timeout, and commit status reporting to dispatch-e2e job"
}
],
"steps": [
{
"id": "S1",
"summary": "Add poll-and-wait logic to dispatch-e2e job: capture run ID after dispatch, poll with gh run watch --exit-status, add timeout-minutes, post commit status with E2E conclusion, add statuses:write permission",
"acceptance": [
"dispatch-e2e job does not complete until the dispatched agent-core-e2e run finishes",
"Job exits non-zero if E2E run fails or is cancelled",
"Commit status is posted to the PR head SHA with the E2E conclusion and a link to the run",
"timeout-minutes is set on the job (30 min)",
"Concurrent PR dispatches each identify and track their own run independently"
],
"depends_on": []
}
],
"risks": [
{
"risk": "Run identification race between dispatch and listing",
"mitigation": "Filter by narrow timestamp window and retry loop for up to 60s"
},
{
"risk": "E2E concurrency queue delays",
"mitigation": "30-min job timeout as safety cap"
}
],
"assumptions": [
"PAT_CROSS_REPO secret has sufficient permissions to list and watch runs on agent-core-e2e",
"gh run watch --exit-status is available on the self-hosted runner"
],
"open_questions": []
}