From 72793779756e1c80f44e0084729753a7750c6607 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 May 2026 19:21:32 +0000 Subject: [PATCH 1/3] Initial plan From 385fd9cc1a52adf1ae6c1c430eabac003dc19c49 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 May 2026 19:33:45 +0000 Subject: [PATCH 2/3] test: add multiple-occurrence timeout_minutes codemod coverage Agent-Logs-Url: https://github.com/github/gh-aw/sessions/eae05fd3-0bc6-47b3-ae36-07666d34f41e Co-authored-by: gh-aw-bot <259018956+gh-aw-bot@users.noreply.github.com> --- pkg/cli/codemod_timeout_minutes_test.go | 26 +++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/pkg/cli/codemod_timeout_minutes_test.go b/pkg/cli/codemod_timeout_minutes_test.go index 75071101c4b..e89dcffb27f 100644 --- a/pkg/cli/codemod_timeout_minutes_test.go +++ b/pkg/cli/codemod_timeout_minutes_test.go @@ -236,3 +236,29 @@ custom_timeout_minutes: 60 assert.True(t, foundTimeoutMinutes, "Should replace timeout_minutes") assert.True(t, foundCustomTimeoutMinutes, "Should not replace custom_timeout_minutes") } + +func TestTimeoutMinutesCodemod_MultipleOccurrences(t *testing.T) { + codemod := getTimeoutMinutesCodemod() + + content := `--- +on: workflow_dispatch +timeout_minutes: 30 +jobs: + setup: + timeout_minutes: 45 +--- + +# Test` + + frontmatter := map[string]any{ + "on": "workflow_dispatch", + "timeout_minutes": 30, + } + + result, applied, err := codemod.Apply(content, frontmatter) + + require.NoError(t, err, "Apply should not return an error") + assert.True(t, applied, "Codemod should report changes") + assert.Equal(t, 2, strings.Count(result, "timeout-minutes:"), "Codemod should replace all timeout_minutes occurrences in frontmatter") + assert.NotContains(t, result, "timeout_minutes:", "Result should not contain old field name") +} From 7ae0ea9004daf9e35b189ac37848e1d86820ef4f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 May 2026 19:36:53 +0000 Subject: [PATCH 3/3] test: align frontmatter fixture in timeout multiple-occurrence test Agent-Logs-Url: https://github.com/github/gh-aw/sessions/eae05fd3-0bc6-47b3-ae36-07666d34f41e Co-authored-by: gh-aw-bot <259018956+gh-aw-bot@users.noreply.github.com> --- pkg/cli/codemod_timeout_minutes_test.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkg/cli/codemod_timeout_minutes_test.go b/pkg/cli/codemod_timeout_minutes_test.go index e89dcffb27f..359b97d8061 100644 --- a/pkg/cli/codemod_timeout_minutes_test.go +++ b/pkg/cli/codemod_timeout_minutes_test.go @@ -253,6 +253,11 @@ jobs: frontmatter := map[string]any{ "on": "workflow_dispatch", "timeout_minutes": 30, + "jobs": map[string]any{ + "setup": map[string]any{ + "timeout_minutes": 45, + }, + }, } result, applied, err := codemod.Apply(content, frontmatter)