Skip to content

[codex] Enforce uppercase shell retirement inventory extensions#5787

Merged
AceHack merged 11 commits into
mainfrom
claim/codex-loop-bash-retirement-inventory-guard-20260528
May 28, 2026
Merged

[codex] Enforce uppercase shell retirement inventory extensions#5787
AceHack merged 11 commits into
mainfrom
claim/codex-loop-bash-retirement-inventory-guard-20260528

Conversation

@AceHack
Copy link
Copy Markdown
Member

@AceHack AceHack commented May 28, 2026

Summary

  • Enforce the bash-retirement inventory guard against uppercase shell-family extensions.
  • Add focused regression coverage for uppercase shell drift.
  • Update the TypeScript/Bun migration resume for this guard slice.

Validation

  • bun test tools/hygiene/check-bash-retirement-inventory.test.ts (18 pass, 0 fail)

Notes

  • Origin: codex-launchd-loop run 20260528T122248Z.
  • Opened as draft so PR CI/review can validate before merge.

Lior and others added 9 commits May 28, 2026 06:53
…irement guard maintenance

Co-Authored-By: Codex <noreply@openai.com>

Codex-Origin: codex-launchd-loop

Codex-Surface: codex-background-service

Codex-Loop-Run-Id: 20260528T105110Z
…main

Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>

Codex-Origin: codex-launchd-loop

Codex-Surface: codex-background-service

Codex-Loop-Run-Id: 20260528T112143Z
Co-Authored-By: Codex <noreply@openai.com>

Codex-Origin: vera-desktop-loop

Codex-Surface: desktop-heartbeat

Codex-Loop-Run-Id: 20260528T112945Z
Co-Authored-By: Codex <noreply@openai.com>

Codex-Origin: codex-launchd-loop

Codex-Surface: codex-background-service

Codex-Loop-Run-Id: 20260528T113659Z
Treat shell-family file extension detection as case-insensitive so tracked .SH/.BASH/.ZSH/.KSH/.COMMAND files cannot bypass the bash-retirement guard. Update the TS/Bun trajectory wording and coverage.

Co-Authored-By: Codex <noreply@openai.com>
Codex-Origin: codex-launchd-loop
Codex-Surface: codex-background-service
Codex-Loop-Run-Id: 20260528T122248Z
Co-Authored-By: Codex <noreply@openai.com>
Codex-Origin: codex-launchd-loop
Codex-Surface: codex-background-service
Codex-Loop-Run-Id: 20260528T122248Z
Release the headless Codex claim after landing the uppercase shell-extension inventory guard slice in this branch. Surface: codex-background-service. Origin: codex-launchd-loop. Run-Id: 20260528T122248Z.

Co-Authored-By: Codex <noreply@openai.com>
Codex-Origin: codex-launchd-loop
Codex-Surface: codex-background-service
Codex-Loop-Run-Id: 20260528T122248Z
Copilot AI review requested due to automatic review settings May 28, 2026 12:31
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR tightens the check-bash-retirement-inventory hygiene guard so it correctly classifies shell-family files even when their extensions are uppercase (e.g., .SH, .BASH), preventing uppercase-extension drift from bypassing the inventory enforcement.

Changes:

  • Make shell-family extension detection case-insensitive by comparing against a lowercased path.
  • Add a focused regression test covering uppercase variants for the shell-family extensions.
  • Update the TypeScript/Bun migration trajectory resume to document that uppercase variants are included in the guard.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
tools/hygiene/check-bash-retirement-inventory.ts Detect shell-family extensions case-insensitively to avoid uppercase bypass.
tools/hygiene/check-bash-retirement-inventory.test.ts Add regression fixtures/expectations for uppercase shell extension variants.
docs/trajectories/typescript-bun-migration/RESUME.md Document that uppercase shell extension variants are treated as in-scope drift.

Comment thread docs/trajectories/typescript-bun-migration/RESUME.md
Address Copilot review on PR #5787 by updating the edited trajectory resume metadata.

Co-Authored-By: Codex <noreply@openai.com>

Codex-Origin: vera-desktop-loop

Codex-Surface: desktop-heartbeat

Codex-Loop-Run-Id: 20260528T123316Z
@AceHack
Copy link
Copy Markdown
Member Author

AceHack commented May 28, 2026

The changes to make the shell extension check case-insensitive are correct and the addition of regression tests is good practice. This is a valuable hygiene improvement.

The check is failing. It appears this change requires a corresponding backlog item to be referenced in the commit message or documentation, which seems to be missing. Please address the failing check so this can be taken out of draft and merged.

@AceHack
Copy link
Copy Markdown
Member Author

AceHack commented May 28, 2026

Background Codex status for #5787 — 2026-05-28T13:44Z

I inspected the failed lint (backlog ID uniqueness) job (26575034574 / job 78291930041). The failure is the shared duplicate-ID gate:

  • B-0865: integrate-or-remove-unreferenced-cayleydickson and ARC-AGI-3 benchmark row.
  • B-0866: integrate-or-remove-unreferenced-kskauthorization and marketing/business/naming row.

This PR does not touch docs/backlog/**; its touched paths are tools/hygiene/check-bash-retirement-inventory.ts, tools/hygiene/check-bash-retirement-inventory.test.ts, and docs/trajectories/typescript-bun-migration/RESUME.md. The bash-retirement inventory lint, tsc tools, build-and-test jobs, CodeQL, and submit-nuget are green.

Current blocker: wait for #5800 (claim/task-backlog-id-collision-b0865-b0866-20260528) to land the duplicate-ID repair, then rerun #5787 gate and mark/arm only if the rerun is clean. I did not touch #5800/#5813 because foreground Vera is actively managing those path sets.

Provenance:

  • surface: codex-background-service
  • origin: codex-launchd-loop
  • session: codex/launchd-loop
  • run_id: 20260528T133917Z

@AceHack
Copy link
Copy Markdown
Member Author

AceHack commented May 28, 2026

Vera status for #5787 - 2026-05-28T15:23Z

I inspected the rerun of lint (backlog ID uniqueness) after #5844 landed. The rerun still failed in job 78324519436 with the same B-0865/B-0866 duplicate-ID output because the remote PR head is still b30f01004ffaa3304b13bcb00527ca3e19def839 and its base/merge check is stale; rerunning alone will keep exercising the old duplicate-ID tree.

Local verification in the dedicated #5787 worktree after the #5844 fix:

  • bun tools/hygiene/audit-backlog-items.ts --enforce-duplicate-ids => Duplicate-ID groups: 0
  • bun tools/hygiene/check-bash-retirement-inventory.ts => OK
  • bun test tools/hygiene/check-bash-retirement-inventory.test.ts => 18 pass / 0 fail

I did not push the local worktree state because it currently contains an unpushed Lior-authored merge commit (ec8a7dfbfd1edc98f229dab1d1c510bb91eba378) on the Codex claim branch. Next safe action is a clean Codex-authored refresh/reland that preserves the intended three-file #5787 diff, then rerun checks and mark ready only if clean.

Copilot AI review requested due to automatic review settings May 28, 2026 15:26
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated no new comments.

@AceHack AceHack marked this pull request as ready for review May 28, 2026 15:32
@chatgpt-codex-connector
Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@AceHack AceHack merged commit 98bed5e into main May 28, 2026
53 checks passed
@AceHack AceHack deleted the claim/codex-loop-bash-retirement-inventory-guard-20260528 branch May 28, 2026 15:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants