@kennethsolomon/shipkit 3.0.7 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,11 +2,11 @@
2
2
 
3
3
  # Finish Feature Command
4
4
 
5
- **Workflow:** Read → Explore → Design → Accessibility → Plan → Branch → Migrate → Write Tests → Implement → Lint → Verify Tests → Security → Performance → Review → **Finalize** → Release
5
+ **Workflow:** Read → Explore → Design → Accessibility → Plan → Branch → Migrate → Write Tests → Implement → Lint → Verify Tests → Security → Performance → Review → E2E Tests → **Finish** → Sync Features
6
6
 
7
7
  Finalize a feature/bug-fix branch: changelog, arch log, security gate, verification, and PR creation.
8
8
 
9
- This is the **last step before `/release`**. It auto-commits documentation changes (changelog, arch log) so you don't need to loop back to `/commit` for docs-only work.
9
+ This is the **last step before `/sk:release`**. It auto-commits documentation changes (changelog, arch log) so you don't need to loop back to `/sk:smart-commit` for docs-only work.
10
10
 
11
11
  ## Before You Start
12
12
 
@@ -16,7 +16,7 @@ before marking the feature done. This is the last gate before merge — catch re
16
16
  mistakes here rather than in review.
17
17
 
18
18
  If `tasks/security-findings.md` exists, read it. Check that any Critical or High
19
- severity findings from the most recent `/security-check` audit have been addressed.
19
+ severity findings from the most recent `/sk:security-check` audit have been addressed.
20
20
  If unresolved Critical/High findings remain, warn the user before proceeding.
21
21
 
22
22
  ## Steps
@@ -69,7 +69,7 @@ If unresolved Critical/High findings remain, warn the user before proceeding.
69
69
  - Migration/Compatibility: Any breaking changes?
70
70
  - Verify the auto-filled sections (Summary, Type, What Changed, Impact)
71
71
 
72
- c) **Auto-commit the arch log** (no need to go back to `/commit`):
72
+ c) **Auto-commit the arch log** (no need to go back to `/sk:smart-commit`):
73
73
  ```bash
74
74
  git add .claude/docs/architectural_change_log/
75
75
  git commit -m "docs: add architectural changelog entry"
@@ -79,7 +79,7 @@ If unresolved Critical/High findings remain, warn the user before proceeding.
79
79
 
80
80
  5. **Verification** (with Test Checklist for Reviewers)
81
81
 
82
- Tests should have been created during `/execute-plan`. Verify:
82
+ Tests should have been created during `/sk:execute-plan`. Verify:
83
83
 
84
84
  a) **Automated Tests**
85
85
  - Execute: `[TEST_COMMAND]`
@@ -108,7 +108,7 @@ If unresolved Critical/High findings remain, warn the user before proceeding.
108
108
  - Follows [LANGUAGE] conventions and style guide (see `CLAUDE.md`)
109
109
 
110
110
  6. **Security Gate**
111
- - Read `tasks/security-findings.md`. If it doesn't exist or has no audit for this branch, recommend: "Run `/security-check` before creating a PR."
111
+ - Read `tasks/security-findings.md`. If it doesn't exist or has no audit for this branch, recommend: "Run `/sk:security-check` before creating a PR."
112
112
  - If the most recent audit has unresolved Critical or High findings, list them and ask the user to confirm they've been addressed before proceeding.
113
113
 
114
114
  7. **Create Pull Request**
@@ -126,7 +126,7 @@ If unresolved Critical/High findings remain, warn the user before proceeding.
126
126
 
127
127
  c) **Generate PR title and body:**
128
128
  - Title: Short, imperative, under 70 characters
129
- - Body: Summary of changes, review findings (if any from `/review`), test status
129
+ - Body: Summary of changes, review findings (if any from `/sk:review`), test status
130
130
 
131
131
  d) **Create PR:**
132
132
  ```bash
@@ -152,4 +152,4 @@ EOF
152
152
 
153
153
  ## When Done
154
154
 
155
- > "Feature finalized and PR created! Run `/release` when ready to tag and publish."
155
+ > "Feature finalized and PR created! Run `/sk:release` when ready to tag and publish."
@@ -6,7 +6,7 @@ description: "Audit changed code for security best practices, production-grade q
6
6
 
7
7
  # /security-check
8
8
 
9
- **Workflow:** Read → Explore → Design → Accessibility → Plan → Branch → Migrate → Write Tests → Implement → Lint → Verify Tests → **Security** → Performance → Review → FinalizeRelease
9
+ **Workflow:** Read → Explore → Design → Accessibility → Plan → Branch → Migrate → Write Tests → Implement → Lint → Verify Tests → **Security** → Performance → Review → E2E Tests Finish → Sync Features
10
10
 
11
11
  Audit code for security vulnerabilities, production-grade quality, and industry gold-standard compliance.
12
12
 
@@ -164,9 +164,9 @@ Tell the user:
164
164
  > "Security audit complete. Findings saved to `tasks/security-findings.md`.
165
165
  > - **Critical:** N | **High:** N | **Medium:** N | **Low:** N
166
166
  >
167
- > Review the findings, then run `/finish-feature` when ready to finalize."
167
+ > Review the findings, then run `/sk:finish-feature` when ready to finalize."
168
168
 
169
169
  If there are Critical or High findings:
170
- > "There are critical/high findings that should be addressed before merging. Fix them, then re-run `/security-check` to verify."
170
+ > "There are critical/high findings that should be addressed before merging. Fix them, then re-run `/sk:security-check` to verify."
171
171
 
172
172
  **Do not auto-fix.** The user decides what to address.
@@ -6,7 +6,7 @@ description: "Write a decision-complete plan into tasks/todo.md (no code yet)."
6
6
 
7
7
  # /write-plan
8
8
 
9
- **Workflow:** Read → Explore → Design → Accessibility → **Plan** → Branch → Migrate → Write Tests → Implement → Lint → Verify Tests → Security → Performance → Review → FinalizeRelease
9
+ **Workflow:** Read → Explore → Design → Accessibility → **Plan** → Branch → Migrate → Write Tests → Implement → Lint → Verify Tests → Security → Performance → Review → E2E Tests Finish → Sync Features
10
10
 
11
11
  Create a decision-complete plan **before** writing code.
12
12
 
@@ -7,25 +7,28 @@
7
7
  |---|------|--------|-------|
8
8
  | 1 | Read Todo | >> next << | |
9
9
  | 2 | Read Lessons | not yet | |
10
- | 3 | Explore (`/brainstorm`) | not yet | |
11
- | 4 | Design (`/frontend-design` or `/api-design`) | not yet | optional |
12
- | 5 | Accessibility (`/accessibility`) | not yet | optional |
13
- | 6 | Plan (`/write-plan`) | not yet | |
14
- | 7 | Branch (`/branch`) | not yet | |
15
- | 8 | Migrate (`/schema-migrate`) | not yet | optional |
16
- | 9 | Write Tests (`/write-tests`) | not yet | |
17
- | 10 | Implement (`/execute-plan`) | not yet | |
18
- | 11 | Commit (`/smart-commit`) | not yet | |
19
- | 12 | **Lint** (`/lint`) | not yet | HARD GATE — loop until clean |
20
- | 13 | Commit (`/smart-commit`) | not yet | conditional |
21
- | 14 | **Verify Tests** (`/test`) | not yet | HARD GATE — 100% coverage |
22
- | 15 | Commit (`/smart-commit`) | not yet | conditional |
23
- | 16 | **Security** (`/security-check`) | not yet | HARD GATE — 0 issues |
24
- | 17 | Commit (`/smart-commit`) | not yet | conditional |
25
- | 18 | Performance (`/perf`) | not yet | optional gate |
26
- | 19 | Commit (`/smart-commit`) | not yet | conditional |
27
- | 20 | **Review** (`/review`) | not yet | HARD GATE — 0 issues |
28
- | 21 | Commit (`/smart-commit`) | not yet | conditional |
29
- | 22 | Update (`/update-task`) | not yet | |
30
- | 23 | Finalize (`/finish-feature`) | not yet | |
31
- | 24 | Release (`/release`) | not yet | optional |
10
+ | 3 | Explore (`/sk:brainstorm`) | not yet | |
11
+ | 4 | Design (`/sk:frontend-design` or `/sk:api-design`) | not yet | optional |
12
+ | 5 | Accessibility (`/sk:accessibility`) | not yet | optional |
13
+ | 6 | Plan (`/sk:write-plan`) | not yet | |
14
+ | 7 | Branch (`/sk:branch`) | not yet | |
15
+ | 8 | Migrate (`/sk:schema-migrate`) | not yet | optional |
16
+ | 9 | Write Tests (`/sk:write-tests`) | not yet | |
17
+ | 10 | Implement (`/sk:execute-plan`) | not yet | |
18
+ | 11 | Commit (`/sk:smart-commit`) | not yet | |
19
+ | 12 | **Lint + Dep Audit** (`/sk:lint`) | not yet | HARD GATE — loop until clean |
20
+ | 13 | Commit (`/sk:smart-commit`) | not yet | conditional |
21
+ | 14 | **Verify Tests** (`/sk:test`) | not yet | HARD GATE — 100% coverage |
22
+ | 15 | Commit (`/sk:smart-commit`) | not yet | conditional |
23
+ | 16 | **Security** (`/sk:security-check`) | not yet | HARD GATE — 0 issues |
24
+ | 17 | Commit (`/sk:smart-commit`) | not yet | conditional |
25
+ | 18 | Performance (`/sk:perf`) | not yet | optional gate |
26
+ | 19 | Commit (`/sk:smart-commit`) | not yet | conditional |
27
+ | 20 | **Review + Simplify** (`/sk:review`) | not yet | HARD GATE — 0 issues |
28
+ | 21 | Commit (`/sk:smart-commit`) | not yet | conditional |
29
+ | 22 | **E2E** (`/sk:e2e`) | not yet | HARD GATE — all E2E scenarios must pass |
30
+ | 23 | Commit (`/sk:smart-commit`) | not yet | conditional — skip if E2E was clean |
31
+ | 24 | Update (`/sk:update-task`) | not yet | |
32
+ | 25 | Finalize (`/sk:finish-feature`) | not yet | |
33
+ | 26 | Sync Features (`/sk:features`) | not yet | required — sync feature specs after ship |
34
+ | 27 | Release (`/sk:release`) | not yet | optional |
@@ -43,7 +43,7 @@ Before making any changes, runs a diagnostic pass on the existing CLAUDE.md:
43
43
  - **Stale content** — detects outdated info (stale model/route counts, removed dependencies, old command names like `/laravel-lint` instead of `/sk:lint`)
44
44
  - **Inconsistencies** — compares documented vs actual project state (directories, scripts, workflows)
45
45
  - **Section completeness** — flags sections that exist but are empty or have only placeholder text
46
- - **Outdated workflow** — checks if the workflow matches the current 24-step TDD flow with hard gates
46
+ - **Outdated workflow** — checks if the workflow matches the current 27-step TDD flow with hard gates
47
47
 
48
48
  Reports findings before proceeding. If issues are found, they inform subsequent steps.
49
49
 
@@ -51,15 +51,15 @@ Reports findings before proceeding. If issues are found, they inform subsequent
51
51
 
52
52
  If the workflow section is outdated or missing, replace it with the latest version:
53
53
 
54
- **Current workflow (24 steps, TDD with hard gates):**
54
+ **Current workflow (27 steps, TDD with hard gates):**
55
55
  ```
56
- Read → Explore → Design → Accessibility → Plan → Branch → Migrate → Write Tests → Implement → Lint → Verify Tests → Security → Performance → Review → Finish
56
+ Read → Explore → Design → Accessibility → Plan → Branch → Migrate → Write Tests → Implement → Lint → Verify Tests → Security → Performance → Review → E2E Tests → Finish → Sync Features
57
57
  ```
58
58
 
59
59
  **What gets updated:**
60
- - Workflow table (24 steps with correct commands: `/sk:write-tests`, `/sk:lint`, `/sk:test`, `/sk:accessibility`, `/sk:perf`)
60
+ - Workflow table (27 steps with correct commands: `/sk:write-tests`, `/sk:lint`, `/sk:test`, `/sk:accessibility`, `/sk:perf`, `/sk:e2e`)
61
61
  - Step details (TDD red/green/verify descriptions)
62
- - Tracker rules (hard gates at 12, 14, 16, 20; optional steps 4, 5, 7, 18, 24)
62
+ - Tracker rules (hard gates at 12, 14, 16, 20, 22; optional steps 4, 5, 8, 18, 27)
63
63
  - Step completion summary rule (NON-NEGOTIABLE)
64
64
  - Bug fix flow section
65
65
  - Sub-Agent Patterns section (if missing)
@@ -67,6 +67,8 @@ Read → Explore → Design → Accessibility → Plan → Branch → Migrate
67
67
  - Lessons Capture section (if missing)
68
68
  - Testing TDD section (if missing)
69
69
  - 3-Strike Protocol (if missing)
70
+ - Fix & Retest Protocol section (if missing)
71
+ - Requirement Change Flow section (if missing)
70
72
 
71
73
  **What gets preserved:**
72
74
  - Everything marked with `<!-- LOCK -->` is never touched
@@ -154,6 +154,23 @@ All detected suites pass with 100% coverage on new code. Both lines of the repor
154
154
 
155
155
  ---
156
156
 
157
+ ## Fix & Retest Protocol
158
+
159
+ When a test failure requires an implementation fix, classify the fix before committing:
160
+
161
+ **a. Bug fix — same behavior contract** (the code was wrong, the test expectation was right) → fix the implementation, re-run `/sk:test`. No test update needed.
162
+
163
+ **b. Logic change** (new behavior, changed data contract, modified function signature, new code path) → trigger protocol:
164
+ 1. Update or add failing unit tests to reflect the new behavior (RED first)
165
+ 2. Fix the implementation to make the updated tests pass (GREEN)
166
+ 3. Re-run `/sk:test` — must pass at 100% coverage
167
+ 4. Commit (tests + fix together in one commit)
168
+ 5. Re-run the gate that triggered this fix (Security, Performance, Review, or E2E)
169
+
170
+ **Why this matters:** quality gates (Security, Performance, Review, E2E) run after tests pass. If those gates require logic fixes, tests can become stale. This protocol ensures tests always reflect the actual implementation.
171
+
172
+ ---
173
+
157
174
  ## Model Routing
158
175
 
159
176
  Read `.shipkit/config.json` from the project root if it exists.