Skip to content

fix: harden script execution, config parsing, and CI release gate - #12

Merged
ticdenis merged 3 commits into
mainfrom
fix/security-hardening
Aug 3, 2026
Merged

fix: harden script execution, config parsing, and CI release gate#12
ticdenis merged 3 commits into
mainfrom
fix/security-hardening

Conversation

@ticdenis

@ticdenis ticdenis commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Escape cmd.exe metacharacters in forwarded arguments, reject invalid/explosive script graphs, and scope --no-hooks to pre-command argv
  • Harden pyproject.toml loading (size cap, cleaner errors) and strip terminal control characters from script names/descriptions
  • Run CI tests/scans on main before publish; pin checkout, pass publish token via env, and install with --frozen

Test plan

  • uvx uvtask unit-tests and uvx uvtask integration-tests pass
  • On Windows, uvtask echo "foo&whoami" does not split into a second shell command
  • uvtask guard --no-hooks still runs pre-guard; uvtask --no-hooks guard skips it
  • Malformed script tables (missing command) and deep/diamond reference graphs fail with a config error
  • CI on main runs the security/static/test steps; CD publishes with UV_PUBLISH_TOKEN from env

Made with Cursor

Escape cmd.exe metacharacters in forwarded args, reject invalid and
explosive script graphs, scope --no-hooks to pre-command argv, and run
CI tests on main before publish.
@ticdenis
ticdenis merged commit 2d614ff into main Aug 3, 2026
2 checks passed
@ticdenis
ticdenis deleted the fix/security-hardening branch August 3, 2026 13:28
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.

1 participant