fix(pm): restore executable bit on check-doc-mapping and adopt-existing dispatcher scripts#403
Conversation
…ng scripts Both are dispatcher entrypoints (uv-script shebang, wired as `pkit project-management` verbs) but were git-tracked as 100644, so the dispatcher's `subprocess.run([script_path, ...])` raised PermissionError and the verbs could not run. chmod +x -> 100755, matching their sibling entrypoints. Surfaced when `merge-pr`'s close-gate needed the doc-impact checkbox and check-doc-mapping could not be invoked through the dispatcher. No surface change (restores intended behavior of existing verbs); no version bump, no migration. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
Reviewer agent (local, reviewer): CHANGES_REQUESTED
Passing criteria (not gate-blocking): issue classification is complete ( |
What
Restores the executable bit on two project-management dispatcher entrypoints that were git-tracked as
100644:check-doc-mapping.pyadopt-existing.pyBoth carry the
#!/usr/bin/env -S uv run --scriptshebang and are wired aspkit project-managementverbs, but the dispatcher invokes them viasubprocess.run([script_path, ...]), which needs the exec bit. Without it the verbs raisedPermissionError: [Errno 13] Permission deniedand could not run at all.chmod +x→100755, matching every sibling entrypoint.Why now
Surfaced live during the #399 merge:
merge-pr's DEC-007 close-gate flagged an unticked doc-impact checkbox, andcheck-doc-mapping— the verb that owns that mapping — could not be invoked through the dispatcher (had to be run viauv run --scriptas a workaround).Verification
pkit project-management check-doc-mapping --helpandadopt-existing --helpnow run through the dispatcher.git diffshows mode-only change (100644 → 100755), zero content lines.scripts/*.py: these were the only two entrypoints tracked non-executable; all other verbs already100755.Version / migration
None. Mode-only fix restoring intended behavior of existing verbs — not a surface change (no new command/flag/principle); no rename/removal/schema bump, so no migration.
Doc impact
Test plan
🤖 Generated with Claude Code
Closes #402