Skip to content

[plan] Reproduce and confirm: timeout-minutes not enforced on AWF agent steps #23966

@github-actions

Description

@github-actions

Objective

Reproduce and confirm the bug reported in #23965: timeout-minutes on agent steps is not enforced when the agent runs inside the AWF Docker container.

Context

Issue #23965 reports that when timeout-minutes is set on the GitHub Actions step that runs the Copilot CLI agent inside the AWF firewall container, the step continues past the timeout until the job-level or workflow-level timeout. This may be caused by signal delivery (SIGTERM/SIGKILL) not reaching processes inside the container.

Approach

  1. Create a test workflow that has an agent step with a short timeout-minutes (e.g., 5 minutes) and a task that is designed to run longer (e.g., an agent instructed to sleep or loop for 30 minutes).
  2. Trigger the workflow and observe whether the step terminates at 5 minutes or continues running.
  3. Collect evidence: Capture the step log to confirm whether the runner emits "##[error]The operation was cancelled because the step exceeded the configured timeout." vs. the step running indefinitely.
  4. Document the process tree at the time of timeout: use ps auxf or similar inside the runner to show the process hierarchy (runner shell → sudo awf → docker container → agent).

Files of Interest

  • pkg/workflow/awf_helpers.goBuildAWFCommand() at lines ~70-142 (builds the sudo -E awf ... | tee command)
  • Compiled .lock.yml files — check that timeout-minutes appears on the agent step YAML
  • actions/setup/sh/ — shell scripts managing AWF lifecycle

Acceptance Criteria

Generated by Plan Command for issue #23965 ·

  • expires on Apr 3, 2026, 11:47 PM UTC

Metadata

Metadata

Labels

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