From 818b5b307222770517d84ff07ab3ca8017472441 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 8 Jan 2026 16:22:38 +0000 Subject: [PATCH] Simplify orchestration ID validation to accept any non-empty sanitized value Co-authored-by: TingluoHuang <1750815+TingluoHuang@users.noreply.github.com> --- __test__/git-command-manager.test.ts | 6 +++--- dist/index.js | 3 +-- src/git-command-manager.ts | 3 +-- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/__test__/git-command-manager.test.ts b/__test__/git-command-manager.test.ts index 5b21f31..3d0afec 100644 --- a/__test__/git-command-manager.test.ts +++ b/__test__/git-command-manager.test.ts @@ -493,7 +493,7 @@ describe('git user-agent with orchestration ID', () => { ) }) - it('should not append orchestration ID when it becomes empty after sanitization', async () => { + it('should sanitize orchestration ID to underscores when it contains only invalid characters', async () => { const orchId = '()///' process.env['ACTIONS_ORCHESTRATION_ID'] = orchId @@ -520,11 +520,11 @@ describe('git user-agent with orchestration ID', () => { // Call a git command to trigger env capture after user-agent is set await git.init() - // Verify the user agent does NOT contain orchestration ID when sanitized ID is empty + // Verify the user agent contains orchestration ID with sanitized underscores expect(git).toBeDefined() expect(capturedEnv).toBeDefined() expect(capturedEnv['GIT_HTTP_USER_AGENT']).toBe( - 'git/2.18 (github-actions-checkout)' + 'git/2.18 (github-actions-checkout) actions_orchestration_id/_____' ) }) }) diff --git a/dist/index.js b/dist/index.js index afcd3f8..4eab86e 100644 --- a/dist/index.js +++ b/dist/index.js @@ -1213,8 +1213,7 @@ class GitCommandManager { // Sanitize the orchestration ID to ensure it contains only valid characters // Valid characters: 0-9, a-z, _, -, . const sanitizedId = orchId.replace(/[^a-z0-9_.-]/gi, '_'); - // Only append if sanitized ID contains at least one alphanumeric character - if (sanitizedId && /[a-z0-9]/i.test(sanitizedId)) { + if (sanitizedId) { gitHttpUserAgent = `${gitHttpUserAgent} actions_orchestration_id/${sanitizedId}`; } } diff --git a/src/git-command-manager.ts b/src/git-command-manager.ts index ea2302a..eba285a 100644 --- a/src/git-command-manager.ts +++ b/src/git-command-manager.ts @@ -738,8 +738,7 @@ class GitCommandManager { // Sanitize the orchestration ID to ensure it contains only valid characters // Valid characters: 0-9, a-z, _, -, . const sanitizedId = orchId.replace(/[^a-z0-9_.-]/gi, '_') - // Only append if sanitized ID contains at least one alphanumeric character - if (sanitizedId && /[a-z0-9]/i.test(sanitizedId)) { + if (sanitizedId) { gitHttpUserAgent = `${gitHttpUserAgent} actions_orchestration_id/${sanitizedId}` } }