all-for-claudecode 2.7.0 → 2.7.1

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.
@@ -6,14 +6,14 @@
6
6
  },
7
7
  "metadata": {
8
8
  "description": "Automated pipeline for Claude Code — spec → plan → implement → review → clean",
9
- "version": "2.7.0"
9
+ "version": "2.7.1"
10
10
  },
11
11
  "plugins": [
12
12
  {
13
13
  "name": "afc",
14
14
  "source": "./",
15
15
  "description": "Automated pipeline for Claude Code. Automates the full development cycle: spec → plan → implement → review → clean.",
16
- "version": "2.7.0",
16
+ "version": "2.7.1",
17
17
  "category": "automation",
18
18
  "tags": ["pipeline", "automation", "spec", "plan", "implement", "review", "critic-loop"]
19
19
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "afc",
3
- "version": "2.7.0",
3
+ "version": "2.7.1",
4
4
  "description": "Automated pipeline for Claude Code. Automates the full development cycle: spec → plan → implement → review → clean.",
5
5
  "author": { "name": "jhlee0409", "email": "relee6203@gmail.com" },
6
6
  "homepage": "https://github.com/jhlee0409/all-for-claudecode",
@@ -8,6 +8,5 @@
8
8
  "license": "MIT",
9
9
  "keywords": ["pipeline", "automation", "spec", "plan", "implement", "review", "critic-loop"],
10
10
  "commands": "./commands/",
11
- "agents": "./agents/",
12
11
  "hooks": "./hooks/hooks.json"
13
12
  }
@@ -32,6 +32,14 @@ The orchestrator pre-assigns tasks to you via the prompt. Do NOT self-claim task
32
32
  - Gate command result
33
33
  5. Do NOT call TaskList or TaskUpdate — the orchestrator handles task state management
34
34
 
35
+ ## Cross-Phase Awareness
36
+
37
+ When implementing tasks that call functions modified in a previous phase:
38
+ - Read the callee's current implementation (it may have changed in the previous phase)
39
+ - Verify that your call pattern is compatible with the callee's actual behavior (side effects, return values, error handling)
40
+ - If `{config.test}` is available, run it after completing tasks that depend on cross-phase changes
41
+ - If no E2E/integration tests are configured, note in your output: "⚠ Cross-phase dependency on {function} — no E2E verification available"
42
+
35
43
  ## Rules
36
44
 
37
45
  - Always read existing files before modifying them
@@ -59,6 +59,17 @@ Task("analyze features/timeline", subagent_type: Explore)
59
59
  Task("analyze widgets/timeline", subagent_type: Explore)
60
60
  ```
61
61
 
62
+ **Cross-Module Import Chain Verification** (after Explore agents return):
63
+
64
+ When parallel Explore agents are used, the orchestrator must verify cross-module boundaries that no single agent can see:
65
+
66
+ 1. From each agent's dependency map, extract **outbound imports** that cross module boundaries
67
+ 2. For each cross-module import chain (e.g., widget → feature → shared), read the actual import statements at the boundary files
68
+ 3. Verify against {config.architecture} rules: does the full chain respect layer direction, not just each module's internal imports?
69
+ 4. Report any cross-module violations not surfaced by individual agents
70
+
71
+ Do not trust agent-summarized import relationships for cross-boundary chains — re-read the boundary files directly.
72
+
62
73
  ### 3. Write Analysis
63
74
 
64
75
  Structure analysis results and **print to console**:
@@ -271,7 +271,7 @@ When a worker agent returns an error:
271
271
 
272
272
  #### Phase Completion Gate (3 steps)
273
273
 
274
- > **Always** read `${CLAUDE_PLUGIN_ROOT}/docs/phase-gate-protocol.md` first and perform the 3 steps (CI gate → Mini-Review → Auto-Checkpoint) in order.
274
+ > **Always** read `${CLAUDE_PLUGIN_ROOT}/docs/phase-gate-protocol.md` first and perform the 3–4 steps (CI gate → Mini-Review → Integration/E2E Gate (conditional) → Auto-Checkpoint) in order.
275
275
  > Cannot advance to the next phase without passing the gate. Abort and report to user after 3 consecutive CI failures.
276
276
 
277
277
  After passing the gate, create a phase rollback point:
@@ -320,6 +320,7 @@ After CI passes, run a convergence-based Critic Loop to verify design alignment
320
320
  - **SCOPE_ADHERENCE**: Compare `git diff` changed files against plan.md File Change List. Flag any file modified that is NOT in the plan. Flag any planned file NOT modified. Provide "M of N files match" count.
321
321
  - **ARCHITECTURE**: Validate changed files against `{config.architecture}` rules (layer boundaries, naming conventions, import paths). Provide "N of M rules checked" count.
322
322
  - **CORRECTNESS**: Cross-check implemented changes against spec.md acceptance criteria (AC). Verify each AC has corresponding code. Provide "N of M AC verified" count.
323
+ - **SIDE_EFFECT_SAFETY**: For tasks that changed call order, error handling, or state flow: verify that callee behavior is compatible with the new call pattern. Provide "{M} of {N} behavioral changes verified" count.
323
324
  - **Adversarial 3-perspective** (mandatory each pass):
324
325
  - Skeptic: "Which implementation assumption is most likely wrong?"
325
326
  - Devil's Advocate: "How could this implementation be misused or fail unexpectedly?"
@@ -51,6 +51,16 @@ Source priority:
51
51
  2. **Codebase** (existing patterns in the current project)
52
52
  3. **Community** (GitHub Issues, blogs)
53
53
 
54
+ ### 3.5. Reconcile Findings
55
+
56
+ After parallel agents return, the orchestrator checks for conflicts between sources:
57
+
58
+ 1. Compare codebase agent findings (current usage patterns) against web agent findings (official docs, latest versions)
59
+ 2. If a codebase pattern conflicts with official documentation (e.g., deprecated API, changed behavior in newer version):
60
+ - Flag the conflict explicitly in Findings rather than silently adopting one source
61
+ - Note: "Current codebase uses {pattern} but official docs recommend {alternative} since {version/date}"
62
+ 3. If no conflicts → proceed to Summarize
63
+
54
64
  ### 4. Summarize Conclusions
55
65
 
56
66
  ```markdown
@@ -51,6 +51,23 @@ If config file is missing:
51
51
 
52
52
  Choose review orchestration based on the number of changed files:
53
53
 
54
+ **Pre-scan: Call Chain Context** (for Parallel Batch and Review Swarm modes only):
55
+
56
+ Before distributing files to review agents, collect cross-boundary context:
57
+
58
+ 1. For each changed file, identify **outbound calls** to other changed files (imports + function calls)
59
+ 2. For each outbound call target, extract: function signature + 1-line side-effect summary (e.g., "mutates playlist state", "triggers async cascade")
60
+ 3. Include this context in each review agent's prompt:
61
+ ```
62
+ ## Cross-File Context
63
+ This file calls:
64
+ - `deleteVideo()` in api/videos.ts → internally auto-advances to next video if current is deleted
65
+ - `getNextVideo()` in api/playlist.ts → pops pending keyword queue first, falls back to normal next
66
+ Review findings should account for these behaviors.
67
+ ```
68
+
69
+ For Direct review mode (≤5 files): skip pre-scan — orchestrator already has full context.
70
+
54
71
  #### 5 or fewer files: Direct review
55
72
  Review all files directly in the current context (no delegation).
56
73
 
@@ -152,6 +169,31 @@ For each changed file, examine from the following perspectives:
152
169
  - Open/Closed principle adherence where applicable
153
170
  - Future modification cost — would a reasonable feature request require rewriting or only extending?
154
171
 
172
+ ### 3.5. Cross-Boundary Verification
173
+
174
+ After individual/parallel reviews complete, the **orchestrator** performs a cross-boundary check on behavioral findings:
175
+
176
+ 1. **Filter**: From all collected findings, select those involving:
177
+ - Call order changes (function A now calls B before C)
178
+ - Error handling modifications (try/catch scope changes, error propagation changes)
179
+ - State mutation changes (new writes to shared state, removed cleanup)
180
+
181
+ 2. **Verify**: For each behavioral finding rated Critical or Warning:
182
+ - Read the **callee's implementation** (the function/method being called)
183
+ - Check: does the callee's internal behavior (side effects, state changes, return values) actually conflict with the change?
184
+ - If no conflict → downgrade: Critical → Info, Warning → Info (append "verified: no cross-boundary impact")
185
+ - If confirmed conflict → keep severity, enrich description with callee behavior details
186
+
187
+ 3. **Output**: Append verification summary before Review Output:
188
+ ```
189
+ Cross-Boundary Check: {N} behavioral findings verified
190
+ ├─ Confirmed: {M} (severity kept)
191
+ ├─ Downgraded: {K} (false positive — callee compatible)
192
+ └─ Skipped: {J} (no behavioral change)
193
+ ```
194
+
195
+ This step runs in the orchestrator context (not delegated), as it requires reading code across file boundaries that individual review agents cannot see.
196
+
155
197
  ### 4. Review Output
156
198
 
157
199
  ```markdown
@@ -197,6 +239,7 @@ Run the critic loop until convergence. Safety cap: 5 passes.
197
239
  |-----------|------------|
198
240
  | **COMPLETENESS** | Were all changed files reviewed? Are there any missed perspectives (A through H)? |
199
241
  | **SPEC_ALIGNMENT** | Cross-check implementation against spec.md: (1) every SC (success criterion) is satisfied — provide `{M}/{N} SC verified` count, (2) every acceptance scenario (GWT) has corresponding code path, (3) no spec constraint is violated by the implementation |
242
+ | **SIDE_EFFECT_AWARENESS** | For findings involving call order changes, error handling modifications, or state mutation changes: did the reviewer verify the callee's internal behavior? If a Critical finding assumes a side effect without reading the target implementation → auto-downgrade to Info with note "cross-boundary unverified". Provide "{M} of {N} behavioral findings verified" count. |
200
243
  | **PRECISION** | Are the findings actual issues, not false positives? |
201
244
 
202
245
  **On FAIL**: auto-fix and continue to next pass.
@@ -46,11 +46,52 @@ For dependency audit command: infer from `packageManager` field in `package.json
46
46
  ### 2. Agent Teams (if more than 10 files)
47
47
 
48
48
  Use parallel agents for wide-scope scans:
49
+
50
+ **Pre-scan: Data Flow Context** (before distributing to agents):
51
+
52
+ 1. For each changed file, identify **input entry points** (user input, API params, URL params, form data) and **sanitization calls** (validation, escaping, encoding)
53
+ 2. Trace input flow across changed files: where does user input enter? Where is it sanitized? Where is it consumed?
54
+ 3. Include this context in each agent's prompt:
55
+ ```
56
+ ## Data Flow Context
57
+ Input flows relevant to your scan scope:
58
+ - User input enters via `req.body` in api/routes.ts → sanitized by `validateInput()` in shared/validation.ts → consumed in features/user.ts
59
+ - URL params enter via `req.params` in api/routes.ts → NO sanitization found → used in features/search.ts
60
+ Account for these flows when assessing injection/XSS severity.
61
+ ```
62
+
49
63
  ```
50
- Task("Security scan: src/features/", subagent_type: general-purpose)
51
- Task("Security scan: src/shared/api/", subagent_type: general-purpose)
64
+ Task("Security scan: src/features/", subagent_type: general-purpose,
65
+ prompt: "... {include Data Flow Context} ...")
66
+ Task("Security scan: src/shared/api/", subagent_type: general-purpose,
67
+ prompt: "... {include Data Flow Context} ...")
52
68
  ```
53
69
 
70
+ For scans with ≤10 files: skip pre-scan — orchestrator has full context.
71
+
72
+ ### 2.5. Cross-Boundary Verification
73
+
74
+ After parallel agent results are collected, the **orchestrator** performs cross-boundary verification on injection/vulnerability findings:
75
+
76
+ 1. **Filter**: From all findings, select those involving:
77
+ - Injection vulnerabilities (SQL, command, XSS) where input origin is in another agent's scan scope
78
+ - Authentication/authorization checks where the guard is in a different directory slice
79
+ - Sensitive data exposure where the data source and the exposure point are in different slices
80
+
81
+ 2. **Verify**: For each Critical or High finding:
82
+ - Read the **upstream code** (where input enters or is sanitized)
83
+ - Check: is the input actually sanitized before reaching the flagged consumption point?
84
+ - If sanitized → downgrade: Critical → Low, High → Low (append "verified: input sanitized at {location}")
85
+ - If NOT sanitized → keep severity, enrich with full data flow path
86
+
87
+ 3. **Output**: Append verification summary before Output Results:
88
+ ```
89
+ Cross-Boundary Check: {N} injection/vulnerability findings verified
90
+ ├─ Confirmed: {M} (severity kept — no upstream sanitization)
91
+ ├─ Downgraded: {K} (false positive — sanitized upstream)
92
+ └─ Skipped: {J} (single-file scope, no cross-boundary flow)
93
+ ```
94
+
54
95
  ### 3. Security Check Items
55
96
 
56
97
  #### A. Injection (A03:2021)
@@ -145,6 +145,20 @@ Task("Deep triage PR #{number}", subagent_type: "afc:afc-pr-analyst",
145
145
 
146
146
  If `--deep` flag was specified, run Phase 2 for **all** PRs regardless of Phase 1 classification.
147
147
 
148
+ ### 3.5. Cross-PR Coupling Detection
149
+
150
+ After Phase 1 (and Phase 2 if applicable) results are collected, detect file-level coupling between PRs:
151
+
152
+ 1. Extract changed file lists from each PR's diff (already available from Phase 1 agent outputs)
153
+ 2. For each file, check if it appears in multiple PRs' changed file lists
154
+ 3. If shared files are found, annotate affected PRs with a coupling flag:
155
+ ```
156
+ COUPLING: PR #{A} and PR #{B} both modify src/shared/utils.ts
157
+ ```
158
+ 4. Include coupling information in the consolidated report's Priority Actions table and per-PR details
159
+
160
+ This helps identify merge-order dependencies and potential conflict risks that no single-PR agent can detect.
161
+
148
162
  ### 4. Consolidate Triage Report
149
163
 
150
164
  Merge Phase 1 and Phase 2 results into a single report:
@@ -1,6 +1,6 @@
1
- # Phase Completion Gate (3 Steps)
1
+ # Phase Completion Gate (3–4 Steps)
2
2
 
3
- After each Phase completes, perform **3-step verification** sequentially:
3
+ After each Phase completes, perform **3–4 step verification** sequentially (Step 2.5 is conditional):
4
4
 
5
5
  ## Step 1. CI Gate
6
6
 
@@ -29,6 +29,17 @@ Quantitatively inspect changed files within the Phase against `{config.code_styl
29
29
  - If issues found → fix immediately, then re-run CI Gate (Step 1)
30
30
  - If no issues → `✓ Phase {N} Mini-Review passed`
31
31
 
32
+ ## Step 2.5. Integration/E2E Gate (conditional)
33
+
34
+ When the phase contains **behavioral changes** (call order modifications, error handling changes, state mutation changes — not pure additions or style fixes):
35
+
36
+ 1. Check if `{config.test}` includes integration or E2E tests
37
+ 2. If yes → run `{config.test}` and verify pass
38
+ 3. If fail → debug-based RCA (same protocol as Step 1)
39
+ 4. If `{config.test}` is empty or has no E2E coverage → skip with note: `⚠ No E2E test configured — behavioral changes not integration-tested`
40
+
41
+ This gate is skipped for phases with only additive changes (new files, new functions with no existing callers).
42
+
32
43
  ## Step 3. Auto-Checkpoint
33
44
 
34
45
  After passing the Phase gate, automatically save session state:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "all-for-claudecode",
3
- "version": "2.7.0",
3
+ "version": "2.7.1",
4
4
  "description": "Claude Code plugin that automates the full dev cycle — spec, plan, implement, review, clean.",
5
5
  "bin": {
6
6
  "all-for-claudecode": "bin/cli.mjs"