Skip to content

Fix local bundle installation for uppercase .ZIP artifacts - #5106

Merged
mnriem merged 1 commit into
github:mainfrom
chelsealong:fix/codex-spec-kit-5090
Oct 26, 2026
Merged

mnriem merged 1 commit into
github:mainfrom
chelsealong:fix/codex-spec-kit-5090

Conversation

@chelsealong

Copy link
Copy Markdown
Contributor

Description

Fixes #5090. Local bundle installation now checks ZIP extensions without regard to case, matching remote artifact handling. CLI regression tests cover lowercase and uppercase ZIP installation and rejection of an uppercase ZIP without a manifest.

Testing

Before the source fix, the lowercase case passed and both uppercase cases failed. After the fix, all 73 tests in test_command_install.py and test_sources.py passed. ruff@0.15.0 check src tests, specify --help, and git diff --check passed.

AI Disclosure

  • I did use AI assistance.

AI disclosure: Codex (GPT-6, default reasoning effort) autonomously authored the code and tests and ran the checks above. Human review has not yet occurred.

@chelsealong
chelsealong requested a review from mnriem as a code owner October 24, 2026 05:13
@mnriem mnriem added the triage-can-wait Verdict: valid and in-scope but deprioritized; held behind the evidence gate label Oct 25, 2026
@mnriem
mnriem requested a max review from Copilot October 26, 2026 13:16

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

The narrowly scoped fix preserves archive validation and includes appropriate positive and negative regression coverage.

No open issues 🎉

What changed in this PR

Fixes #5090 by making local bundle ZIP recognition case-insensitive, matching remote artifact handling while preserving existing validation.

Changes:

  • Normalizes the local artifact suffix before comparing it with .zip.
  • Adds CLI regression tests for lowercase and uppercase ZIP installation and rejection of an uppercase ZIP without a manifest.

Validation relies on the PR’s reported before-and-after results; tests were not rerun during this review.

File Description
tests/​specify_cli/​bundles/​test_command_install.py Tests case-insensitive installation and missing-manifest rejection.
src/​specify_cli/​bundles/​sources.py Makes local ZIP suffix recognition case-insensitive.

Review effort: Max

@mnriem
mnriem merged commit 158a97d into github:main Oct 26, 2026
16 checks passed
@mnriem

mnriem commented Oct 26, 2026

Copy link
Copy Markdown
Collaborator

Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

triage-can-wait Verdict: valid and in-scope but deprioritized; held behind the evidence gate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: bundle install rejects a local artifact with an upper-case .ZIP extension

3 participants