chore: switch package manager from pnpm to bun
Remove pnpm-workspace.yaml (bun ignores it), add a preinstall guard
that rejects non-bun package managers via $npm_config_user_agent, and
add a format:dirty script so Claude's PostToolUse hook can format only
git-dirty files. Composer ci:check now calls bun run instead of npm run.
Co-Authored-By: Claude <noreply@anthropic.com>