From ed68e2284e186b4d518042061ec3d6e511bd6310 Mon Sep 17 00:00:00 2001 From: Rootiest Date: Wed, 23 Sep 2026 20:19:55 -0400 Subject: [PATCH] refactor(ship-it): remove attribution scrub requirements Attribution requirements are no longer necessary as they are handled via global git configuration and hooks. - Remove Phase 3 (Post-Publish Attribution Scrub) from ship-it skill - Update README documentation for ship-it to reflect two-phase flow - Regenerate dist/ targets for agy and claude-code - Remove local repository attribution rule --- README.md | 7 +------ .../rootiest-ai-all/skills/ship-it/SKILL.md | 20 ------------------- dist/agy/ship-it/skills/ship-it/SKILL.md | 20 ------------------- .../rootiest-ai-all/skills/ship-it/SKILL.md | 20 ------------------- .../ship-it/skills/ship-it/SKILL.md | 20 ------------------- plugins/ship-it/skills/ship-it/SKILL.md | 20 ------------------- 6 files changed, 1 insertion(+), 106 deletions(-) diff --git a/README.md b/README.md index 169fc28..1ba0066 100644 --- a/README.md +++ b/README.md @@ -167,7 +167,7 @@ or want an auditable record of what changed and why. **Purpose:** Run a comprehensive pre-flight audit and publish changes to a new PR in a single command. -Three sequential phases — each is blocked until the previous one succeeds: +Two sequential phases — Phase 2 is blocked until Phase 1 succeeds: 1. **Documentation Sync & Code Audit** — acts as `/docs-sync-audit`: scans all file changes since the last documentation edit, updates the docs/README to @@ -177,11 +177,6 @@ Three sequential phases — each is blocked until the previous one succeeds: descriptively named branch, commits all pending changes (including the README updates from Phase 1), pushes to the remote, and opens a Pull Request against `main`. -3. **Post-Publish Attribution Scrub** — only runs if a global/user/project - rule forbids AI attribution footers. Checks the commit(s) and PR - description as actually persisted (not just what was composed) for - attribution text sneaked in by hooks outside the visible conversation, and - strips it via `git commit --amend` + force-push and `gh pr edit`. **Use when:** you say "Ship this," "Publish my changes," or invoke `/ship-it`. diff --git a/dist/agy/rootiest-ai-all/skills/ship-it/SKILL.md b/dist/agy/rootiest-ai-all/skills/ship-it/SKILL.md index caf1df7..dd1a6f3 100644 --- a/dist/agy/rootiest-ai-all/skills/ship-it/SKILL.md +++ b/dist/agy/rootiest-ai-all/skills/ship-it/SKILL.md @@ -23,23 +23,3 @@ Execute the following phases sequentially. Do not proceed to the next phase unle - Stage and commit all pending changes (including the newly updated README from Phase 1). - Push the branch to the remote repository. - Generate a Pull Request (PR) from the new branch into 'main'. - -3. Phase 3: Post-Publish Attribution Scrub - - Only run this phase if a global, user, or project rule (e.g. `CLAUDE.md`, memory) explicitly - forbids AI attribution footers/text (e.g. "no Co-Authored-By", "no Claude attribution") on - commits or PRs. Skip this phase entirely if no such rule exists. - - Run this check AFTER the commit and PR from Phase 2 already exist, not before — attribution - lines can be injected by a hook outside the visible conversation, so text you composed - yourself is not proof of what actually landed. Verify the real, persisted state: - - Inspect the actual commit message(s) just created (`git log -1 --format=%B` for each - commit pushed) for attribution lines (e.g. `Co-Authored-By: Claude...`, "Generated with - Claude Code", or similar). - - Inspect the actual PR description as stored on the remote (e.g. `gh pr view --json body`), - not the text you intended to send. - - If any attribution text is found in violation of the rule, remove it: - - Commit message: amend it (`git commit --amend`) to strip the offending lines, then - force-push the branch (`git push --force-with-lease`) since it was just created for this - PR and nothing else depends on it yet. - - PR description: edit it directly (`gh pr edit --body ...`) with the offending lines - removed. - - Report to the user whether attribution was found and stripped, or that none was found. diff --git a/dist/agy/ship-it/skills/ship-it/SKILL.md b/dist/agy/ship-it/skills/ship-it/SKILL.md index caf1df7..dd1a6f3 100644 --- a/dist/agy/ship-it/skills/ship-it/SKILL.md +++ b/dist/agy/ship-it/skills/ship-it/SKILL.md @@ -23,23 +23,3 @@ Execute the following phases sequentially. Do not proceed to the next phase unle - Stage and commit all pending changes (including the newly updated README from Phase 1). - Push the branch to the remote repository. - Generate a Pull Request (PR) from the new branch into 'main'. - -3. Phase 3: Post-Publish Attribution Scrub - - Only run this phase if a global, user, or project rule (e.g. `CLAUDE.md`, memory) explicitly - forbids AI attribution footers/text (e.g. "no Co-Authored-By", "no Claude attribution") on - commits or PRs. Skip this phase entirely if no such rule exists. - - Run this check AFTER the commit and PR from Phase 2 already exist, not before — attribution - lines can be injected by a hook outside the visible conversation, so text you composed - yourself is not proof of what actually landed. Verify the real, persisted state: - - Inspect the actual commit message(s) just created (`git log -1 --format=%B` for each - commit pushed) for attribution lines (e.g. `Co-Authored-By: Claude...`, "Generated with - Claude Code", or similar). - - Inspect the actual PR description as stored on the remote (e.g. `gh pr view --json body`), - not the text you intended to send. - - If any attribution text is found in violation of the rule, remove it: - - Commit message: amend it (`git commit --amend`) to strip the offending lines, then - force-push the branch (`git push --force-with-lease`) since it was just created for this - PR and nothing else depends on it yet. - - PR description: edit it directly (`gh pr edit --body ...`) with the offending lines - removed. - - Report to the user whether attribution was found and stripped, or that none was found. diff --git a/dist/claude-code/rootiest-ai-all/skills/ship-it/SKILL.md b/dist/claude-code/rootiest-ai-all/skills/ship-it/SKILL.md index caf1df7..dd1a6f3 100644 --- a/dist/claude-code/rootiest-ai-all/skills/ship-it/SKILL.md +++ b/dist/claude-code/rootiest-ai-all/skills/ship-it/SKILL.md @@ -23,23 +23,3 @@ Execute the following phases sequentially. Do not proceed to the next phase unle - Stage and commit all pending changes (including the newly updated README from Phase 1). - Push the branch to the remote repository. - Generate a Pull Request (PR) from the new branch into 'main'. - -3. Phase 3: Post-Publish Attribution Scrub - - Only run this phase if a global, user, or project rule (e.g. `CLAUDE.md`, memory) explicitly - forbids AI attribution footers/text (e.g. "no Co-Authored-By", "no Claude attribution") on - commits or PRs. Skip this phase entirely if no such rule exists. - - Run this check AFTER the commit and PR from Phase 2 already exist, not before — attribution - lines can be injected by a hook outside the visible conversation, so text you composed - yourself is not proof of what actually landed. Verify the real, persisted state: - - Inspect the actual commit message(s) just created (`git log -1 --format=%B` for each - commit pushed) for attribution lines (e.g. `Co-Authored-By: Claude...`, "Generated with - Claude Code", or similar). - - Inspect the actual PR description as stored on the remote (e.g. `gh pr view --json body`), - not the text you intended to send. - - If any attribution text is found in violation of the rule, remove it: - - Commit message: amend it (`git commit --amend`) to strip the offending lines, then - force-push the branch (`git push --force-with-lease`) since it was just created for this - PR and nothing else depends on it yet. - - PR description: edit it directly (`gh pr edit --body ...`) with the offending lines - removed. - - Report to the user whether attribution was found and stripped, or that none was found. diff --git a/dist/claude-code/ship-it/skills/ship-it/SKILL.md b/dist/claude-code/ship-it/skills/ship-it/SKILL.md index caf1df7..dd1a6f3 100644 --- a/dist/claude-code/ship-it/skills/ship-it/SKILL.md +++ b/dist/claude-code/ship-it/skills/ship-it/SKILL.md @@ -23,23 +23,3 @@ Execute the following phases sequentially. Do not proceed to the next phase unle - Stage and commit all pending changes (including the newly updated README from Phase 1). - Push the branch to the remote repository. - Generate a Pull Request (PR) from the new branch into 'main'. - -3. Phase 3: Post-Publish Attribution Scrub - - Only run this phase if a global, user, or project rule (e.g. `CLAUDE.md`, memory) explicitly - forbids AI attribution footers/text (e.g. "no Co-Authored-By", "no Claude attribution") on - commits or PRs. Skip this phase entirely if no such rule exists. - - Run this check AFTER the commit and PR from Phase 2 already exist, not before — attribution - lines can be injected by a hook outside the visible conversation, so text you composed - yourself is not proof of what actually landed. Verify the real, persisted state: - - Inspect the actual commit message(s) just created (`git log -1 --format=%B` for each - commit pushed) for attribution lines (e.g. `Co-Authored-By: Claude...`, "Generated with - Claude Code", or similar). - - Inspect the actual PR description as stored on the remote (e.g. `gh pr view --json body`), - not the text you intended to send. - - If any attribution text is found in violation of the rule, remove it: - - Commit message: amend it (`git commit --amend`) to strip the offending lines, then - force-push the branch (`git push --force-with-lease`) since it was just created for this - PR and nothing else depends on it yet. - - PR description: edit it directly (`gh pr edit --body ...`) with the offending lines - removed. - - Report to the user whether attribution was found and stripped, or that none was found. diff --git a/plugins/ship-it/skills/ship-it/SKILL.md b/plugins/ship-it/skills/ship-it/SKILL.md index caf1df7..dd1a6f3 100644 --- a/plugins/ship-it/skills/ship-it/SKILL.md +++ b/plugins/ship-it/skills/ship-it/SKILL.md @@ -23,23 +23,3 @@ Execute the following phases sequentially. Do not proceed to the next phase unle - Stage and commit all pending changes (including the newly updated README from Phase 1). - Push the branch to the remote repository. - Generate a Pull Request (PR) from the new branch into 'main'. - -3. Phase 3: Post-Publish Attribution Scrub - - Only run this phase if a global, user, or project rule (e.g. `CLAUDE.md`, memory) explicitly - forbids AI attribution footers/text (e.g. "no Co-Authored-By", "no Claude attribution") on - commits or PRs. Skip this phase entirely if no such rule exists. - - Run this check AFTER the commit and PR from Phase 2 already exist, not before — attribution - lines can be injected by a hook outside the visible conversation, so text you composed - yourself is not proof of what actually landed. Verify the real, persisted state: - - Inspect the actual commit message(s) just created (`git log -1 --format=%B` for each - commit pushed) for attribution lines (e.g. `Co-Authored-By: Claude...`, "Generated with - Claude Code", or similar). - - Inspect the actual PR description as stored on the remote (e.g. `gh pr view --json body`), - not the text you intended to send. - - If any attribution text is found in violation of the rule, remove it: - - Commit message: amend it (`git commit --amend`) to strip the offending lines, then - force-push the branch (`git push --force-with-lease`) since it was just created for this - PR and nothing else depends on it yet. - - PR description: edit it directly (`gh pr edit --body ...`) with the offending lines - removed. - - Report to the user whether attribution was found and stripped, or that none was found. -- 2.54.0