Make First Draft CLI checks shell-portable - #28
Conversation
Release guidance still presented consumed package, staging, and catalog mutations as future instructions. Mark the sequence as historical so operators do not replay it, while preserving the remaining public-install and v14 evidence gaps.
zsh does not split unquoted scalar values, so batching multiword help probes made a healthy CLI look unavailable. Prefer a project wrapper through self-contained resolver blocks, remove the ineffective plugin configuration bridge, and prepare the 0.1.1 package identity.
|
Post-merge review, hosted CI green. Three changes, each verified sensible. The portability fix addresses a |
|
The bug that motivated this PR is worth five minutes of any Rails developer's time, because it is the kind In POSIX sh and bash, an unquoted variable undergoes word splitting: The second change generalizes the same idea from shells to commands: every operational block now calls And the third is a deletion with a lesson of its own: a credential bridge that did not actually work was |
Summary
shandzsh./bin/firstdraftwrapper in every operational block and packaged recovery referenceuserConfigcredential bridge and prepare an unpublished 0.1.1 package identityWhy
On zsh, an unquoted scalar containing
generate --helpis passed as one argument. The previous synthesized probe loop therefore made a healthy CLI 0.1.0 report a top-level unknown command. Separately, Claude Code does not deliver plugin user configuration to an executable merely because itsbin/directory is on the Bash tool PATH.Verification
npm run check— 64/64d37d8b6775a0b97ce10bd651485bd308fed1dda2800e9ebd63843c7c680810979c35ade37de31d5e203e89a75a09f80d3399d656shandzshBoundary
This PR does not publish or tag 0.1.1 and does not change the public marketplace catalog, which remains on immutable plugin 0.1.0. Package publication and catalog promotion require separate authorization and gates.