@chenmk/superflow 0.5.20 → 0.5.22

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.
Files changed (90) hide show
  1. package/INSTALL.en.md +2 -0
  2. package/INSTALL.md +2 -0
  3. package/assets/scripts/superflow-delivery-check.sh +36 -6
  4. package/assets/scripts/superflow-review-coverage.mjs +34 -0
  5. package/assets/scripts/superflow-test-report-lint.py +125 -4
  6. package/assets/skill-registry.json +23 -8
  7. package/assets/skills/openspec-apply-change/SKILL.md +7 -0
  8. package/assets/skills/openspec-archive-change/SKILL.md +13 -1
  9. package/assets/skills/superflow-archive/SKILL.md +17 -0
  10. package/assets/skills/superflow-design/SKILL.md +15 -1
  11. package/assets/skills/superflow-docs/SKILL.md +11 -0
  12. package/assets/skills/superflow-implement/SKILL.md +22 -0
  13. package/assets/skills/superflow-pipeline/SKILL.md +6 -1
  14. package/assets/skills/superflow-pipeline/references/architecture-design-template.md +4 -2
  15. package/assets/skills/superflow-pipeline/references/batch-prompt-template.md +6 -1
  16. package/assets/skills/superflow-pipeline/references/document-review-coverage.md +26 -0
  17. package/assets/skills/superflow-pipeline/references/document-templates.md +7 -0
  18. package/assets/skills/superflow-pipeline/references/implementation-prompt-template.md +56 -35
  19. package/assets/skills/superflow-pipeline/references/managed-work.md +6 -0
  20. package/assets/skills/superflow-pipeline/references/mock-strategy-guide.md +28 -74
  21. package/assets/skills/superflow-pipeline/references/orchestration.md +43 -101
  22. package/assets/skills/superflow-pipeline/references/quality-gate.md +8 -4
  23. package/assets/skills/superflow-pipeline/references/reviewer-checklist.md +107 -3
  24. package/assets/skills/superflow-pipeline/references/superpower-technical-design-template.md +30 -0
  25. package/assets/skills/superflow-pipeline/references/test-execution-template.md +16 -12
  26. package/assets/skills/superflow-pipeline/references/test-guide.md +82 -30
  27. package/assets/skills/superflow-pipeline/scripts/superflow-archive.sh +57 -10
  28. package/assets/skills/superflow-pipeline/scripts/superflow-guard.sh +23 -6
  29. package/assets/skills/superflow-quick-dev/SKILL.md +3 -3
  30. package/assets/skills/superflow-verify/SKILL.md +28 -12
  31. package/assets/skills-en/openspec-apply-change/SKILL.md +8 -0
  32. package/assets/skills-en/openspec-archive-change/SKILL.md +17 -1
  33. package/assets/skills-en/superflow-archive/SKILL.md +20 -0
  34. package/assets/skills-en/superflow-design/SKILL.md +14 -1
  35. package/assets/skills-en/superflow-docs/SKILL.md +13 -0
  36. package/assets/skills-en/superflow-implement/SKILL.md +22 -0
  37. package/assets/skills-en/superflow-pipeline/SKILL.md +6 -0
  38. package/assets/skills-en/superflow-pipeline/references/architecture-design-template.md +3 -0
  39. package/assets/skills-en/superflow-pipeline/references/batch-prompt-template.md +7 -0
  40. package/assets/skills-en/superflow-pipeline/references/document-review-coverage.md +32 -0
  41. package/assets/skills-en/superflow-pipeline/references/document-templates.md +8 -0
  42. package/assets/skills-en/superflow-pipeline/references/implementation-prompt-template.md +33 -0
  43. package/assets/skills-en/superflow-pipeline/references/managed-work.md +10 -0
  44. package/assets/skills-en/superflow-pipeline/references/mock-strategy-guide.md +41 -11
  45. package/assets/skills-en/superflow-pipeline/references/orchestration.md +11 -0
  46. package/assets/skills-en/superflow-pipeline/references/quality-gate.md +9 -0
  47. package/assets/skills-en/superflow-pipeline/references/reviewer-checklist.md +132 -1
  48. package/assets/skills-en/superflow-pipeline/references/superpower-technical-design-template.md +36 -0
  49. package/assets/skills-en/superflow-pipeline/references/test-execution-template.md +5 -0
  50. package/assets/skills-en/superflow-pipeline/references/test-guide.md +106 -12
  51. package/assets/skills-en/superflow-pipeline/scripts/superflow-archive.sh +57 -10
  52. package/assets/skills-en/superflow-pipeline/scripts/superflow-guard.sh +23 -6
  53. package/assets/skills-en/superflow-quick-dev/SKILL.md +6 -3
  54. package/assets/skills-en/superflow-verify/SKILL.md +36 -12
  55. package/dist/app/cli.js +5 -5
  56. package/dist/app/cli.js.map +1 -1
  57. package/dist/app/commands/review-coverage.js +8 -3
  58. package/dist/app/commands/review-coverage.js.map +1 -1
  59. package/dist/app/commands/update.js +2 -0
  60. package/dist/app/commands/update.js.map +1 -1
  61. package/dist/build-info.json +1 -0
  62. package/dist/domains/config/cli-help.js +8 -0
  63. package/dist/domains/config/cli-help.js.map +1 -1
  64. package/dist/domains/managed-work/control.js.map +1 -1
  65. package/dist/domains/managed-work/failure.js +9 -0
  66. package/dist/domains/managed-work/failure.js.map +1 -1
  67. package/dist/domains/managed-work/prompts.js +29 -4
  68. package/dist/domains/managed-work/prompts.js.map +1 -1
  69. package/dist/domains/managed-work/runner.js +29 -24
  70. package/dist/domains/managed-work/runner.js.map +1 -1
  71. package/dist/domains/managed-work/service.js +147 -19
  72. package/dist/domains/managed-work/service.js.map +1 -1
  73. package/dist/domains/managed-work/types.js.map +1 -1
  74. package/dist/domains/quick-dev/gate.js +0 -2
  75. package/dist/domains/quick-dev/gate.js.map +1 -1
  76. package/dist/domains/review/coverage.js +12 -4
  77. package/dist/domains/review/coverage.js.map +1 -1
  78. package/dist/domains/review/report.js +67 -2
  79. package/dist/domains/review/report.js.map +1 -1
  80. package/dist/mcp/runtime-identity.js +19 -4
  81. package/dist/mcp/runtime-identity.js.map +1 -1
  82. package/dist/mcp/server.js +1 -1
  83. package/dist/mcp/server.js.map +1 -1
  84. package/dist/platform/agent-process.js +48 -9
  85. package/dist/platform/agent-process.js.map +1 -1
  86. package/dist/platform/process-liveness.js +46 -0
  87. package/dist/platform/process-liveness.js.map +1 -1
  88. package/package.json +2 -1
  89. package/scripts/ensure-bin-modes.js +37 -2
  90. package/scripts/verify-changed.mjs +321 -0
@@ -28,6 +28,27 @@ canonical_sources:
28
28
  - If this document conflicts with canonical sources, stop and return to
29
29
  `$superflow-docs`; do not let implementation prompts carry the conflict forward.
30
30
 
31
+ ## Directory Changes
32
+
33
+ List Created / Modified / Deleted / Not created modules and key files, with
34
+ responsibility and reuse evidence. Trees or lists are fine; annotate action,
35
+ owner, and reason rather than names alone. Use None for empty categories.
36
+ Not created records considered modules/helpers/caches/state/parallel entries and
37
+ why they were rejected. Record implementation-local helper/method edits without
38
+ automatically expanding business scope. Details within confirmed modules that
39
+ preserve contracts need no new requirement confirmation; frozen HOW repairs still
40
+ return to the document owner for handoff refresh and existing review. New owners,
41
+ cross-module dependencies, allowed path scope, or acceptance obligations return
42
+ to clarification/docs before coding. Runtime protections, source coverage, and
43
+ existing approval rules remain; this inventory creates no parallel state.
44
+
45
+ | Action | Module/file | Owner and responsibility | Reuse/evidence or rejection reason |
46
+ |---|---|---|---|
47
+ | Created | None / `<path>` | | |
48
+ | Modified | None / `<path>` | | |
49
+ | Deleted | None / `<path>` | | |
50
+ | Not created | None / `<candidate>` | | |
51
+
31
52
  ## Source-Level HOW
32
53
 
33
54
  | Requirement/Scenario | Code anchor | Current behavior | Target HOW | Files/methods | Risk |
@@ -45,6 +66,21 @@ that can be derived safely, and do not add async compensation or caching when a
45
66
  single synchronous transaction closes the contract. Every retained item must
46
67
  explain why a simpler option fails; remove it when there is no evidence.
47
68
 
69
+ ## Data Scale And Processing Cost
70
+
71
+ Complete this for data-intensive paths such as large or growing collections,
72
+ batch processing, import/export, aggregation, repeated scans, or fan-out. Record
73
+ current/expected scale, the growth boundary, work and primary CPU/memory/I/O or
74
+ round-trip cost per request/job, alternatives and trade-offs, and representative
75
+ evidence validating the selected approach. Match evidence to risk: source/query
76
+ analysis or representative functional cases can suffice for small changes; a
77
+ performance benchmark is not mandatory. If there is no meaningful data-volume
78
+ sensitivity, mark this not applicable with a brief reason.
79
+
80
+ | Data path | Current/expected scale and growth boundary | Work and primary cost | Trade-offs | Validation evidence |
81
+ | --------- | ------------------------------------------ | --------------------- | ---------- | ------------------- |
82
+ | `<path or reason not applicable>` | `<cardinality/rate/window>` | `<records per request/job, scans/allocations/round trips>` | `<choice and rejected options>` | `<query plan/source anchor/representative case/benchmark>` |
83
+
48
84
  ## Architecture Boundary And Call Direction
49
85
 
50
86
  Use this whenever the change crosses repositories, services, SDKs, MQ,
@@ -1,5 +1,10 @@
1
1
  # Test Execution Template
2
2
 
3
+ Read [test-guide.md](test-guide.md) first and inherit frozen tests.md / Quick Spec
4
+ signals. Fill applicable cases; give source reasons for inapplicable fields and
5
+ BLOCKED/PARTIAL for unavailable required environments. Existing coverage/receipts
6
+ check facts; template examples never redesign tests or reduce frozen gates.
7
+
3
8
  Use the environment frozen in tests.md; do not substitute local containers or
4
9
  mocks for an explicitly required shared development environment. When the user
5
10
  requires every endpoint to be exercised, freeze an endpoint/role/scenario matrix,
@@ -1,16 +1,110 @@
1
- # Test Guide
1
+ # Test Selection and Verification Loop
2
2
 
3
- ## Levels
3
+ ## Scope and ownership
4
4
 
5
- - L0: unit test.
6
- - L1: component test.
7
- - L2: integration with real infrastructure such as Testcontainers.
8
- - L3: API or message contract test with executable command.
9
- - L4: real external entry such as callback, device, scheduler, client, or
10
- third-party sandbox.
5
+ Read when generating tests.md, starting implementation, repairing findings, or
6
+ verifying delivery. Inputs are confirmed requirements, source changes, existing
7
+ project tests, and frozen contracts. Write outputs into existing tests.md / Quick
8
+ Spec and test-report.md. Documentation-only work checks its contracts; pure
9
+ functions check their seam without inventing application or database requirements.
11
10
 
12
- ## Rule
11
+ superflow-docs freezes the plan; the implementer executes and records evidence;
12
+ superflow-verify / Host judges sufficiency and historical applicability. Existing
13
+ coverage/receipt/lint checks deterministic facts; the existing state machine owns
14
+ state. Database machine contracts come only from
15
+ [document-review-coverage.md](document-review-coverage.md#database-layer-contract).
16
+ Reuse testLayer, mockBoundary, and execution-receipt.v1, without another evidence
17
+ format or level system. Superflow distributes this guide; no ake verification
18
+ skill installation or .ake memory is required.
13
19
 
14
- When tests.md requires L3/L4, test-report.md must include real command,
15
- response, DB/log assertion, and final state evidence. Unit tests alone do not
16
- close the requirement.
20
+ ## Select signals before implementation
21
+
22
+ Search existing tests, build wiring, environment configuration, and project rules.
23
+ Reuse seams, commands, and tools. Before production edits, map each affected
24
+ behavior to these signals and freeze case IDs, commands, assertions, and evidence
25
+ paths. Give source reasons for inapplicable signals. Missing environments for
26
+ required cases mean BLOCKED/PARTIAL, never inapplicable. Implementers cannot
27
+ remove frozen obligations; omissions return to the document owner.
28
+
29
+ | Change/risk | Signals to freeze |
30
+ |---|---|
31
+ | Pure function or local algorithm | Narrow unit checks, boundaries/failures, applicable build and static checks |
32
+ | Component wiring or configuration | Above checks plus real application/context startup and readiness |
33
+ | SQL, Mapper, persistence, transactions, CAS, data-driven behavior | Logic checks plus production statements against the same database engine; full SDD also covers real consuming entries |
34
+ | API, public fields, authentication | Existing contract tests/snapshots plus affected real entries; establish new contract baselines |
35
+ | New capability spanning API, business logic, storage | Build, unit, wiring, real database, API contract, at least one real main flow |
36
+ | Bug fix | Same symptom RED → GREEN plus affected regression; environment failure is not business RED |
37
+ | MQ, devices, callbacks, cache, third-party semantics | Freeze real protocol/backend/entry verification and isolatable boundaries; missing environment remains blocked |
38
+ | Report format or test isolation only | Check affected contracts/evidence without automatically rerunning unrelated business flows |
39
+
40
+ Keep project case level numbering; do not import ake L1/L3/L5/L7/L8/L10 numbers.
41
+ Database testLayer and entry acceptance level are separate dimensions; a level
42
+ label cannot hide a missing real backend.
43
+
44
+ ## Mocks and environments
45
+
46
+ The [Mock guide](mock-strategy-guide.md) describes isolation boundaries. Logic
47
+ unit tests may mock data access, but cannot prove SQL, transactions, or persistence.
48
+ Required database cases cannot mock production Service/Mapper; mockBoundary
49
+ freezes allowed external clients. H2/SQLite cannot substitute for MySQL proof.
50
+ A real same-engine container database is not a mock. Freeze engine/major, schema
51
+ provenance, production statements, and cleanup. Use a required shared environment;
52
+ otherwise use existing container infrastructure when the contract approves it.
53
+ Without an executable environment, preserve logic evidence and mark real database
54
+ cases BLOCKED/PARTIAL rather than reducing acceptance.
55
+
56
+ ## Retained business scenario tests
57
+
58
+ Prefer repeatable project-native regression tests for critical business flows and
59
+ bug reproductions. Reuse directories, fixtures, authentication, DB helpers, and
60
+ execution scripts. Extend equivalent tests instead of building another scenario
61
+ framework or public helper. Keep pure logic at the lowest adequate layer. Java
62
+ may reuse existing JUnit/RestAssured/JdbcTemplate; other stacks use native tools,
63
+ without mandatory Java dependencies.
64
+
65
+ Assert concrete business response values, same-business-ID database state, and
66
+ contract-required messages/logs/side effects separately. Freeze before/after,
67
+ affected rows, and unchanged non-target records under the canonical contract.
68
+ HTTP 200, non-null values, invocation counts, or affectedRows=1 alone do not prove
69
+ correct persistence.
70
+
71
+ Make subjects unique per run/case; resolve stable base data by business key or
72
+ logical name and fail during setup when missing. Reuse project environment and
73
+ auth commands; record credential sources rather than passwords/tokens in source
74
+ or docs. Never automatically seed or delete shared base data. Freeze data creation
75
+ permissions, ownership, cleanup scope, and failure cleanup. Use existing tags,
76
+ profiles, or scripts to run environment-dependent scenarios separately from unit
77
+ checks. Grouping does not skip required delivery cases: explicitly run required
78
+ groups and check execution counts. Cases do not depend on order or share mutable
79
+ subjects.
80
+
81
+ ## Execute, review, and inherit evidence
82
+
83
+ Run narrow tests first, then frozen build/startup/real-entry commands. Read exit
84
+ codes, counts, and raw output; fill case evidence using the
85
+ [execution template](test-execution-template.md). Never fit frozen assertions to
86
+ wrong output. Passing conclusions cover only executed layers; zero cases, skipped,
87
+ and unexecuted checks cannot become PASS.
88
+
89
+ For repairs, map current changes → invalidated evidence → rerun commands.
90
+ Production code, SQL, configuration, authentication, public contracts, runtime
91
+ entries, or environment changes invalidate affected proof. Report formatting
92
+ alone does not automatically invalidate prior runtime results. Historical evidence
93
+ must match source/build, backend/entry, and contract; independent review judges
94
+ applicability. It cannot authorize another source version. Reuse healthy instances
95
+ matching the tested build; restart and reverify when code/configuration/identity
96
+ mismatches. Stop only through frozen owner verification and cleanup entry points,
97
+ never broad pkill/killall. Pure functions need no process; required real entries
98
+ cannot be waived. Reviewers inspect source and raw evidence read-only; implementers
99
+ own execution and cleanup. Independent review does not mean mechanical full reruns.
100
+
101
+ ## Repair failures
102
+
103
+ Reproduce case preconditions and inspect actual SQL/bindings, transaction
104
+ boundaries, responses, and logs. For DB failures first inspect production
105
+ statements, written fields, schema, and same-ID before/after values; do not blindly
106
+ add transaction annotations or replace Mapper methods. Run the same path and
107
+ affected regression after repair. Design changes first repair canonical contracts.
108
+ Do not skip failures, weaken assertions, or hide blockers.
109
+
110
+ For cross-round checks sensitive to commands/directories/invocation environments, freeze executionContext under [declared context](document-review-coverage.md#declared-execution-context-and-evidence-reuse). Keep historical proof without calling unbound records complete under a new context.
@@ -29,7 +29,8 @@ resolve_doc_path() {
29
29
  printf '%s\n' "$CHANGE_DIR/$value"
30
30
  return 0
31
31
  fi
32
- if [[ -f "$value" ]]; then
32
+ if [[ "$value" == /* && -f "$value" ]]; then
33
+ [[ ! -L "$value" ]] || die "symbolic document link rejected: $value"
33
34
  printf '%s\n' "$value"
34
35
  return 0
35
36
  fi
@@ -47,11 +48,13 @@ annotate_frontmatter() {
47
48
  local tmp
48
49
 
49
50
  [[ -f "$file" ]] || return 0
51
+ [[ ! -L "$file" ]] || die "symbolic document link rejected: $file"
50
52
  tmp="$(mktemp)"
51
53
  chmod 600 "$tmp"
52
54
 
53
55
  if head -1 "$file" | grep -q '^---'; then
54
56
  awk -v archive="$archive_name" -v status_field="$status_field" '
57
+ closed { print; next }
55
58
  /^archived-with:/ { next }
56
59
  status_field != "" && /^status:/ { next }
57
60
  NR == 1 && /^---/ { print; next }
@@ -59,6 +62,7 @@ annotate_frontmatter() {
59
62
  print "archived-with: " archive
60
63
  if (status_field != "") print "status: " status_field
61
64
  print
65
+ closed = 1
62
66
  next
63
67
  }
64
68
  { print }
@@ -129,13 +133,45 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
129
133
  STATE="$SCRIPT_DIR/superflow-state.sh"
130
134
  GUARD="$SCRIPT_DIR/superflow-guard.sh"
131
135
  VALIDATE="$SCRIPT_DIR/superflow-yaml-validate.sh"
132
- CHANGE_DIR="$(cd "$CHANGE_DIR" && pwd)"
136
+ [[ ! -L "${CHANGE_DIR%/}" ]] || die "canonical change directory required; symbolic link rejected"
137
+ CHANGE_DIR="$(cd "$CHANGE_DIR" && pwd -L)"
138
+ for component in "$CHANGE_DIR" "$(dirname "$CHANGE_DIR")" "$(dirname "$(dirname "$CHANGE_DIR")")" "$(dirname "$(dirname "$(dirname "$CHANGE_DIR")")")"; do
139
+ [[ ! -L "$component" ]] || die "canonical directory required; symbolic link rejected: $component"
140
+ done
141
+ CHANGE_DIR="$(cd "$CHANGE_DIR" && pwd -P)"
133
142
  CHANGE_NAME="$(basename "$CHANGE_DIR")"
134
- PROJECT_ROOT="$(cd "$CHANGE_DIR/../../.." && pwd)"
143
+ IS_MOVED=false
144
+ IS_STANDARD=false
145
+ case "$CHANGE_DIR" in
146
+ */openspec/changes/archive/*)
147
+ [[ "$(basename "$(dirname "$CHANGE_DIR")")" == archive ]] || die "canonical archive directory required"
148
+ PROJECT_ROOT="$(cd "$CHANGE_DIR/../../../.." && pwd -P)"
149
+ IS_MOVED=true
150
+ ;;
151
+ */openspec/changes/*)
152
+ [[ "$(basename "$(dirname "$CHANGE_DIR")")" == changes ]] || die "canonical change directory required"
153
+ IS_STANDARD=true
154
+ PROJECT_ROOT="$(cd "$CHANGE_DIR/../../.." && pwd -P)"
155
+ ;;
156
+ *) PROJECT_ROOT="$(cd "$CHANGE_DIR/../../.." && pwd -P)" ;;
157
+ esac
158
+ for component in "$PROJECT_ROOT/openspec" "$PROJECT_ROOT/openspec/changes" "$PROJECT_ROOT/openspec/changes/archive"; do
159
+ [[ ! -L "$component" ]] || die "canonical directory required; symbolic link rejected: $component"
160
+ done
135
161
  ARCHIVE_ROOT="$PROJECT_ROOT/openspec/changes/archive"
136
162
  ARCHIVE_NAME="$CHANGE_NAME"
137
163
 
138
164
  "$VALIDATE" "$CHANGE_DIR"
165
+ if [[ "$IS_STANDARD" == true && ( "$(field_value archived)" == true || "$(field_value phase)" == done ) ]]; then
166
+ die "active standard directory has archived state: $CHANGE_DIR; confirm the physical archive location first. If this was state-only closeout, repair through the existing state owner: SUPERFLOW_FORCE_PHASE=1 $STATE set '$CHANGE_DIR' phase archive; $STATE set '$CHANGE_DIR' archived false; then rerun --apply with OpenSpec available"
167
+ fi
168
+ if [[ "$IS_STANDARD" == true ]] && ! command -v openspec >/dev/null 2>&1; then
169
+ die "OpenSpec is required for standard change directory: $CHANGE_DIR; install/restore openspec, then rerun this command"
170
+ fi
171
+ if [[ "$(field_value archived)" == true && "$(field_value phase)" == done ]]; then
172
+ printf 'already archived: %s; no changes required\n' "$CHANGE_DIR"
173
+ exit 0
174
+ fi
139
175
  "$GUARD" "$CHANGE_DIR" archive
140
176
 
141
177
  printf 'Archive summary:\n'
@@ -148,7 +184,11 @@ if [[ "$CHANGE_DIR" == "$PROJECT_ROOT/openspec/changes/$CHANGE_NAME" ]] && comma
148
184
  printf '%s\n' "- openspec_archive: openspec archive $CHANGE_NAME --yes"
149
185
  ARCHIVE_NAME="$(date -u '+%Y-%m-%d')-$CHANGE_NAME"
150
186
  else
151
- printf '%s\n' "- openspec_archive: unavailable; fallback to state-only archive"
187
+ if [[ "$IS_MOVED" == true ]]; then
188
+ printf '%s\n' "- openspec_archive: already moved; recover remaining closeout"
189
+ else
190
+ printf '%s\n' "- openspec_archive: unavailable; fallback to state-only archive"
191
+ fi
152
192
  fi
153
193
 
154
194
  if [[ "$MODE" == "--dry-run" ]]; then
@@ -159,13 +199,20 @@ fi
159
199
 
160
200
  if [[ "$CHANGE_DIR" == "$PROJECT_ROOT/openspec/changes/$CHANGE_NAME" ]] && command -v openspec >/dev/null 2>&1; then
161
201
  (cd "$PROJECT_ROOT" && openspec archive "$CHANGE_NAME" --yes)
162
- archived_dir=""
163
- if [[ -d "$ARCHIVE_ROOT/$CHANGE_NAME" ]]; then
164
- archived_dir="$ARCHIVE_ROOT/$CHANGE_NAME"
165
- else
166
- archived_dir="$(find "$ARCHIVE_ROOT" -maxdepth 1 -mindepth 1 -type d -name "*-$CHANGE_NAME" 2>/dev/null | head -1 || true)"
202
+ candidates=()
203
+ if [[ -d "$ARCHIVE_ROOT" ]]; then
204
+ for candidate in "$ARCHIVE_ROOT"/*; do
205
+ [[ -d "$candidate" ]] || continue
206
+ candidate_name="$(basename "$candidate")"
207
+ if [[ "$candidate_name" == "$CHANGE_NAME" || "$candidate_name" == *-"$CHANGE_NAME" ]]; then
208
+ [[ ! -L "$candidate" ]] || die "canonical archive directory required; symbolic link rejected"
209
+ candidates+=("$candidate")
210
+ fi
211
+ done
167
212
  fi
168
- [[ -n "$archived_dir" && -d "$archived_dir" ]] || die "openspec archive completed but archive dir was not found"
213
+ [[ "${#candidates[@]}" -gt 0 ]] || die "openspec archive completed but archive dir was not found; supply explicit archive path"
214
+ [[ "${#candidates[@]}" -eq 1 ]] || die "multiple archive targets found; supply explicit archive path"
215
+ archived_dir="${candidates[0]}"
169
216
  ARCHIVE_NAME="$(basename "$archived_dir")"
170
217
  CHANGE_DIR="$(cd "$archived_dir" && pwd)"
171
218
  annotate_archive_docs "$ARCHIVE_NAME"
@@ -235,16 +235,33 @@ verification_report_path() {
235
235
 
236
236
  require_closeout_markers() {
237
237
  local report="${1:-$CHANGE_DIR/test-report.md}"
238
+ local lint output
238
239
  if [[ ! -f "$report" ]]; then
239
240
  issues+=("verification report path does not exist: $report")
240
241
  return 0
241
242
  fi
242
- if ! grep -Eiq '(Verification Result)[[:space:]:|*-]*(PASS)' "$report"; then
243
- issues+=("verification result PASS marker not found in verification report")
244
- fi
245
- if ! grep -Eiq '(Archive Readiness)[[:space:]:|*-]*(PASS|READY)' "$report"; then
246
- issues+=("archive readiness PASS marker not found in verification report")
247
- fi
243
+ for lint in \
244
+ "${SUPERFLOW_REPORT_LINT:-$SCRIPT_DIR/../../../scripts/superflow-test-report-lint.py}" \
245
+ "$SCRIPT_DIR/../../../hooks/superflow-test-report-lint.py"; do
246
+ [[ -f "$lint" ]] || continue
247
+ if ! output="$(python3 - "$lint" "$report" <<'PYCLOSEOUT'
248
+ import runpy, sys
249
+ from pathlib import Path
250
+ module = runpy.run_path(sys.argv[1])
251
+ text = Path(sys.argv[2]).read_text()
252
+ if module["final_report_result"](text) != "PASS":
253
+ print("verification result PASS marker not found in verification report")
254
+ if module["archive_readiness_result"](text) != "PASS":
255
+ print("archive readiness PASS marker not found in verification report")
256
+ PYCLOSEOUT
257
+ )"; then
258
+ issues+=("verification report closeout parser failed")
259
+ elif [[ -n "$output" ]]; then
260
+ issues+=("$output")
261
+ fi
262
+ return
263
+ done
264
+ issues+=("superflow-test-report-lint.py not found for closeout guard")
248
265
  }
249
266
 
250
267
  require_branch_handled() {
@@ -28,15 +28,18 @@ user explicitly chooses that workflow.
28
28
 
29
29
  Write and show the current disk version at
30
30
  `.sdd/tasks/<YYYY-MM-DD>-<slug>/spec.md` with Intent / Non-goals, current and
31
- target behavior, confirmed test seam, ordered implementation steps, Given /
31
+ target behavior, confirmed test seam, applicable signals/commands/assertions/evidence paths from
32
+ the [test guide](../superflow-pipeline/references/test-guide.md), ordered implementation steps, Given /
32
33
  When / Then acceptance, risks, escalation conditions, deferred work, baseline
33
34
  commit, and exact file scope.
34
35
 
35
36
  Do not edit runtime code before approval. After explicit approval of the current
36
37
  disk version, run `superflow quick "<request>" --path <files...> --seam <existing-file> --spec <spec> --approve`.
37
38
  The CLI binds the approval to the current content digest. If Intent, Non-goals, or Acceptance
38
- Criteria change, return to `draft` and obtain approval again. Use TDD and
39
- verification-loop RED/GREEN signals, then close with `superflow review-coverage`
39
+ Criteria change, return to `draft` and obtain approval again. Read the [test guide](../superflow-pipeline/references/test-guide.md), verify applicable
40
+ signals, commands, assertions, and evidence paths are already frozen in the approved
41
+ Quick Spec (repair omissions and reapprove before edits), then
42
+ run TDD RED/GREEN and close with `superflow review-coverage`
40
43
  and `superflow eval` evidence.
41
44
 
42
45
  Quick work creates no OpenSpec checkpoint and never commits, pushes, or releases.
@@ -1,10 +1,18 @@
1
1
  ---
2
2
  name: superflow-verify
3
- description: Use when an OpenSpec/SDD change is ready for verification, real evidence collection, test-report closure, code review, branch handling, or retry decisions after implementation.
3
+ description: Use when reviewing code changes or verifying an SDD/OpenSpec implementation, test evidence, branch/worktree handling, or retry decisions.
4
4
  ---
5
5
 
6
6
  # SDD Verify
7
7
 
8
+ ## Verification signal review
9
+
10
+ Read the [test guide](../superflow-pipeline/references/test-guide.md). Compare current
11
+ changes, frozen cases, and actual execution counts; distinguish logic, database,
12
+ and real-entry conclusions. Judge historical applicability before requesting
13
+ affected reruns. Report formatting alone does not force full-chain reruns. Reviewers
14
+ inspect raw output and source read-only.
15
+
8
16
  Before semantic code review, run `superflow review-coverage --json` (or pass
9
17
  `--base <ref>` for a branch review). Use its included/excluded inventory and
10
18
  path-specific rules to account for every changed file. Review related Java
@@ -12,16 +20,28 @@ and Mapper XML files together when they share a bundle. Do not treat this
12
20
  mechanical inventory as a correctness verdict: findings still need source
13
21
  anchors, a fresh reading of the affected call path, and independent judgment.
14
22
 
15
- Use the reported risk tier to choose review depth: low may be reviewed inline;
16
- medium requires an independent view; high requires focused coverage of the
17
- named high-impact paths in addition to the ordinary Host review. Every
18
- reviewer report starts with `DONE`, `DONE_WITH_CONCERNS`, `BLOCKED`, or
19
- `NEEDS_CONTEXT`. Run `superflow review-coverage --report <file> --json` to
20
- validate that marker and every `file:line` finding anchor. `BLOCKED` and
21
- `NEEDS_CONTEXT` require more evidence before triage; `DONE_WITH_CONCERNS`
22
- requires Host investigation of each concern before deciding. Re-read each
23
- anchor and attempt to disprove the finding before assigning severity. Keep
24
- unverifiable claims separate rather than giving them a guessed severity.
23
+ For declared executionContext reuse, independently check current command, cwd,
24
+ selected environment, source, build, and entry. Changed invocation context cannot
25
+ reuse PASS. Legacy unbound evidence retains its boundary; JSON presence/hash
26
+ identity does not prove actual execution or business sufficiency.
27
+
28
+
29
+ ## Five-axis and independent review entry
30
+
31
+ Read the [canonical Reviewer checklist](../superflow-pipeline/references/reviewer-checklist.md)
32
+ for code-quality review. Follow its actual-impact depth selection, isolated bundle,
33
+ axis coverage, finding falsification, and merging. `review-coverage` risk.tier is a
34
+ path hint, not the actual depth: print both tiers with evidence. Ordinary code
35
+ review enters here without creating SDD state; existing frozen contracts still
36
+ require conformity checks. The main Agent owns the verdict, reviewers contribute
37
+ read-only independent views, and Runner does not judge semantic risk.
38
+
39
+ Use the existing four-state report with `superflow review-coverage --report <file> --json`
40
+ for markers/anchors. It does not prove axis sufficiency: inspect raw proof yourself.
41
+ BLOCKED/NEEDS_CONTEXT needs evidence; investigate every DONE_WITH_CONCERNS concern
42
+ before deciding. Use isolated native subagents for medium+ when supported, adding
43
+ focused views by independent high-risk clusters without fixed counts or models.
44
+ Report unavailable independent review honestly.
25
45
 
26
46
  ## Review response discipline
27
47
 
@@ -63,7 +83,11 @@ revert that simplification. Keep simplification in a separate commit from the
63
83
  feature, and stop if it reaches files outside the original change. This is a
64
84
  readability pass, not a second code review or a license for unrelated cleanup.
65
85
 
66
- ## Entry Check
86
+ ## Entry Check (SDD only)
87
+
88
+ Ordinary code review returns its reviewed findings after the five-axis workflow.
89
+ The phase state, test-delivery, branch, and archive steps below apply only to an
90
+ associated SDD/OpenSpec delivery; do not create state for a bare diff review.
67
91
 
68
92
  Run:
69
93
 
package/dist/app/cli.js CHANGED
@@ -269,11 +269,11 @@ program
269
269
  });
270
270
  program
271
271
  .command("review-coverage")
272
- .description("Enumerate changed files and resolve review rules without an Agent")
273
- .option("--base <ref>", "Review changes since a Git reference")
274
- .option("--path <paths...>", "Review explicit files")
275
- .option("--report <path>", "Audit a reviewer four-state report and finding anchors")
276
- .option("--json", "Output JSON")
272
+ .description(helpText.reviewCoverageDescription)
273
+ .option("--base <ref>", helpText.reviewBaseOption)
274
+ .option("--path <paths...>", helpText.reviewPathOption)
275
+ .option("--report <path>", helpText.reviewReportOption)
276
+ .option("--json", helpText.jsonOption)
277
277
  .action(async (options) => {
278
278
  const { reviewCoverageCommand } = await import("./commands/review-coverage.js");
279
279
  reviewCoverageCommand({
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/app/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/app/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACtC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;AAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AAEvD,0BAA0B;AAC1B,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAE7B,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAC9B,MAAM,QAAQ,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAE/C,SAAS,oBAAoB,CAC3B,KAAc,EACd,OAAgB,EAChB,WAAmB;IAEnB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,KAAK,GAAG;QAChE,OAAO,KAAK,CAAC;IACf,MAAM,IAAI,GAAI,OAA4C,EAAE,IAAI,CAAC;IACjE,MAAM,KAAK,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAEhE,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAChD,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC;YAC3B,SAAS;YACT,SAAS;YACT,YAAY;YACZ,QAAQ;SACT,CAAC,CAAC;QACH,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrD,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1B,CAAC,EAAE,CAAC;gBACJ,SAAS;YACX,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,GAAG,CAAC;QACvC,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,cAAc,CAAC,OAAgB;IACtC,MAAM,IAAI,GAAI,OAAgE;QAC5E,EAAE,IAAI,CAAC;IACT,OAAO;QACL,GAAG,OAAO,CAAC,IAAI,EAAE;QACjB,GAAG,CAAC,OAAO,IAAI,KAAK,UAAU;YAC5B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YACpB,CAAC,CAAC,EAAE,GAAI,OAAkB,EAAE,CAAC;KAChC,CAAC;AACJ,CAAC;AAED,OAAO;KACJ,IAAI,CAAC,WAAW,CAAC;KACjB,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC;KACxC,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,cAAc,CAAC;KACxD,MAAM,CAAC,mBAAmB,EAAE,QAAQ,CAAC,cAAc,CAAC;KACpD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,mBAAmB,CAAC;KAC5B,WAAW,CAAC,QAAQ,CAAC,eAAe,CAAC;KACrC,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC;KACpC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,CAAC;KAC/C,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC;KACzD,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,cAAc,CAAC;KACxD,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC;KACnC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;KACrC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC;KACzC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,kBAAkB,CAAC;KACtD,MAAM,CAAC,aAAa,EAAE,QAAQ,CAAC,eAAe,CAAC;KAC/C,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,aAAa,CAAC;KAC5C,MAAM,CAAC,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB,CAAC;KAC3D,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC;KAC1C,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE;IACpC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAC3D,MAAM,WAAW,CAAC;QAChB,GAAG,cAAc,CAAC,OAAO,CAAC;QAC1B,UAAU,EAAE,oBAAoB,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC;KAC9D,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,QAAQ,CAAC,eAAe,CAAC;KACrC,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC;KACpC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,WAAW,CAAC;KACvC,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,cAAc,CAAC;KACxD,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAC3D,MAAM,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,mBAAmB,CAAC;KAC5B,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC;KACxC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KACvD,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;IACjC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;IACjE,MAAM,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,QAAQ,CAAC,eAAe,CAAC;KACrC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KACvD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;IAChC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAC3D,MAAM,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,iBAAiB,CAAC;KAC1B,KAAK,CAAC,oBAAoB,CAAC;KAC3B,WAAW,CAAC,QAAQ,CAAC,4BAA4B,CAAC;KAClD,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KACvD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;IAChC,MAAM,EAAE,wBAAwB,EAAE,GAChC,MAAM,MAAM,CAAC,kCAAkC,CAAC,CAAC;IACnD,MAAM,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,iBAAiB,CAAC;KAC1B,WAAW,CAAC,QAAQ,CAAC,iBAAiB,CAAC;KACvC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KACvD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;IAChC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC/D,MAAM,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,oBAAoB,CAAC;KAC7B,WAAW,CAAC,QAAQ,CAAC,oBAAoB,CAAC;KAC1C,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KACvD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;IAChC,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;IACrE,MAAM,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,oBAAoB,CAAC;KAC7B,WAAW,CAAC,QAAQ,CAAC,mBAAmB,CAAC;KACzC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KACvD,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,aAAa,CAAC;KAC3C,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC;KACzC,MAAM,CAAC,kBAAkB,EAAE,QAAQ,CAAC,oBAAoB,CAAC;KACzD,MAAM,CAAC,qBAAqB,EAAE,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;KACpE,MAAM,CAAC,sBAAsB,EAAE,QAAQ,CAAC,uBAAuB,EAAE,SAAS,CAAC;KAC3E,MAAM,CAAC,oBAAoB,EAAE,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;KACpE,MAAM,CAAC,sBAAsB,EAAE,QAAQ,CAAC,mBAAmB,CAAC;KAC5D,MAAM,CACL,8BAA8B,EAC9B,QAAQ,CAAC,+BAA+B,CACzC;KACA,MAAM,CAAC,wBAAwB,EAAE,QAAQ,CAAC,mBAAmB,CAAC;KAC9D,MAAM,CAAC,6BAA6B,EAAE,QAAQ,CAAC,6BAA6B,CAAC;KAC7E,MAAM,CACL,iCAAiC,EACjC,QAAQ,CAAC,iCAAiC,CAC3C;KACA,MAAM,CAAC,4BAA4B,EAAE,QAAQ,CAAC,2BAA2B,CAAC;KAC1E,MAAM,CACL,wCAAwC,EACxC,QAAQ,CAAC,mCAAmC,CAC7C;KACA,MAAM,CACL,mCAAmC,EACnC,QAAQ,CAAC,iCAAiC,CAC3C;KACA,MAAM,CACL,mCAAmC,EACnC,QAAQ,CAAC,iCAAiC,CAC3C;KACA,MAAM,CACL,8BAA8B,EAC9B,QAAQ,CAAC,6BAA6B,CACvC;KACA,MAAM,CACL,6CAA6C,EAC7C,QAAQ,CAAC,kCAAkC,CAC5C;KACA,MAAM,CACL,oCAAoC,EACpC,QAAQ,CAAC,mCAAmC,CAC7C;KACA,MAAM,CAAC,6BAA6B,EAAE,QAAQ,CAAC,4BAA4B,CAAC;KAC5E,MAAM,CACL,uCAAuC,EACvC,QAAQ,CAAC,qCAAqC,CAC/C;KACA,MAAM,CACL,mCAAmC,EACnC,QAAQ,CAAC,iCAAiC,CAC3C;KACA,MAAM,CACL,0BAA0B,EAC1B,QAAQ,CAAC,iCAAiC,CAC3C;KACA,MAAM,CACL,2CAA2C,EAC3C,QAAQ,CAAC,0CAA0C,CACpD;KACA,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,cAAc,CAAC;KACxD,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC;KACpC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;IACjC,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;IACnE,MAAM,eAAe,CAAC,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;AAC1D,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KAC5C,MAAM,CAAC,QAAQ,CAAC;KAChB,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,EAAE,qBAAqB,EAAE,GAC7B,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAC;IAChD,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,iBAAiB,CAAC;KAC1B,WAAW,CAAC,QAAQ,CAAC,iBAAiB,CAAC;KACvC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KACvD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;IAChC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC/D,MAAM,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,kBAAkB,CAAC;KAC3B,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC;KACxC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KACvD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;IAChC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;IACjE,MAAM,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACxC,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,QAAQ,CAAC,iBAAiB,CAAC;KACvC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;KACrC,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,cAAc,CAAC;KACxD,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,GAAG,EAAE,OAAO,EAAE,EAAE;IAC1C,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC/D,MAAM,aAAa,CAAC,UAAU,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;AAC3D,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,cAAc,CAAC;KACvB,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC;KACpC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KACvD,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC;KACpC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;KACrC,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,cAAc,CAAC;KACxD,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE,OAAO,EAAE,EAAE;IAC3C,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;IACzD,MAAM,UAAU,CAAC,MAAM,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;AACpD,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,qBAAqB,CAAC;KAC9B,WAAW,CAAC,QAAQ,CAAC,eAAe,CAAC;KACrC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;KACrC,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,aAAa,CAAC;KAC3C,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,cAAc,CAAC;KACxD,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;IACnC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAC3D,MAAM,WAAW,CAAC,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;AACxD,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,kBAAkB,CAAC;KAC3B,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC;KACxC,MAAM,CAAC,kBAAkB,EAAE,QAAQ,CAAC,oBAAoB,EAAE,GAAG,CAAC;KAC9D,MAAM,CAAC,sBAAsB,EAAE,QAAQ,CAAC,sBAAsB,CAAC;KAC/D,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC;KACpC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;KACrC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;IAChC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;IACjE,cAAc,CACZ,MAAM,EACN,cAAc,CAAC,OAAO,CAKrB,CACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,qBAAqB,CAAC;KAC9B,WAAW,CAAC,QAAQ,CAAC,iBAAiB,CAAC;KACvC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KACvD,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;KAC7D,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC;KACpC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;KACrC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,mBAAmB,CAAC;KAClD,MAAM,CAAC,gBAAgB,EAAE,QAAQ,CAAC,iBAAiB,CAAC;KACpD,MAAM,CAAC,qBAAqB,EAAE,QAAQ,CAAC,sBAAsB,CAAC;KAC9D,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,cAAc,CAAC;KACxD,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE;IACpC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC/D,MAAM,aAAa,CAAC;QAClB,GAAG,cAAc,CAAC,OAAO,CAAC;QAC1B,UAAU,EAAE,oBAAoB,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC;KAChE,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,qBAAqB,CAAC;KAC9B,WAAW,CAAC,QAAQ,CAAC,iBAAiB,CAAC;KACvC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KACvD,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,kBAAkB,EAAE,QAAQ,CAAC;KAChE,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,cAAc,CAAC;KACxD,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;KACrC,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE;IACpC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC/D,MAAM,aAAa,CAAC;QAClB,GAAG,cAAc,CAAC,OAAO,CAAC;QAC1B,UAAU,EAAE,oBAAoB,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC;KAChE,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,gEAAgE,CAAC;KAC7E,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC;KAC/B,MAAM,CAAC,UAAU,EAAE,gDAAgD,CAAC;KACpE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;IACxE,iBAAiB,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,iBAAiB,CAAC;KAC1B,WAAW,CAAC,QAAQ,CAAC,yBAAyB,CAAC;KAC/C,MAAM,CAAC,cAAc,EAAE,QAAQ,CAAC,gBAAgB,CAAC;KACjD,MAAM,CAAC,mBAAmB,EAAE,QAAQ,CAAC,gBAAgB,CAAC;KACtD,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,kBAAkB,CAAC;KACtD,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;KACrC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAC;IAChF,qBAAqB,CAAC;QACpB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK,EAAE,OAAO,CAAC,IAAI;QACnB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,oDAAoD,CAAC;KACjE,MAAM,CAAC,eAAe,EAAE,cAAc,CAAC;KACvC,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC;KAC/B,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAC;IAC5E,mBAAmB,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,2DAA2D,CAAC;KACxE,MAAM,CAAC,eAAe,EAAE,cAAc,CAAC;KACvC,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC;KAC/B,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;IACtE,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,yEAAyE,CAAC;KACtF,MAAM,CAAC,eAAe,EAAE,cAAc,CAAC;KACvC,MAAM,CAAC,iBAAiB,EAAE,eAAe,CAAC;KAC1C,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,GAAG,CAAC;KACzC,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC;KAC/B,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;IACpE,eAAe,CAAC,OAAO,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,wDAAwD,CAAC;KACrE,MAAM,CAAC,eAAe,EAAE,cAAc,CAAC;KACvC,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC;KAC/B,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAC;IAC5E,mBAAmB,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,cAAc,CAAC;KACvB,WAAW,CAAC,QAAQ,CAAC,sBAAsB,CAAC;KAC5C,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC,cAAc,CAAC;KAChD,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,eAAe,EAAE,SAAS,CAAC;KAC9D,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KACvD,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,eAAe,CAAC;KAC3C,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;KACrC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;IAC1E,kBAAkB,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,QAAQ,CAAC,oBAAoB,CAAC;KAC1C,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC,cAAc,CAAC;KAChD,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,eAAe,EAAE,SAAS,CAAC;KAC9D,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KACvD,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;KACrC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;IAC1E,kBAAkB,CAAC,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,iBAAiB,CAAC;KAC1B,WAAW,CAAC,QAAQ,CAAC,gBAAgB,CAAC;KACtC,MAAM,CAAC,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB,CAAC;KACvD,MAAM,CAAC,mBAAmB,EAAE,QAAQ,CAAC,eAAe,CAAC;KACrD,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC,eAAe,CAAC;KACjD,MAAM,CAAC,cAAc,EAAE,QAAQ,CAAC,oBAAoB,CAAC;KACrD,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC,eAAe,CAAC;KACjD,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,kBAAkB,CAAC;KAChD,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;KACrC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;IACjC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;IAC7D,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,wBAAwB,CAAC;KACjC,WAAW,CAAC,QAAQ,CAAC,oBAAoB,CAAC;KAC1C,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KACvD,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,kBAAkB,EAAE,QAAQ,CAAC;KAChE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC;KACpC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;KACrC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,oBAAoB,CAAC;KAChD,MAAM,CAAC,aAAa,EAAE,QAAQ,CAAC,cAAc,CAAC;KAC9C,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE;IACpC,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;IACrE,MAAM,gBAAgB,CAAC;QACrB,GAAG,cAAc,CAAC,OAAO,CAAC;QAC1B,UAAU,EAAE,oBAAoB,CAAC,UAAU,EAAE,OAAO,EAAE,WAAW,CAAC;KACnE,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,QAAQ,CAAC,gBAAgB,CAAC;KACtC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;KAC7D,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;KACrC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;IAChC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;IAC7D,MAAM,YAAY,CAAC,MAAM,EAAE;QACzB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,iBAAiB,CAAC;KAC1B,WAAW,CACV,iEAAiE,CAClE;KACA,MAAM,CAAC,sBAAsB,EAAE,wCAAwC,CAAC;KACxE,MAAM,CAAC,0BAA0B,EAAE,mCAAmC,CAAC;KACvE,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC;KAC/B,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;IAChC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC/D,MAAM,aAAa,CAAC,MAAM,EAAE;QAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,OAAO,CAAC,KAAK,EAAE,CAAC"}
@@ -5,6 +5,7 @@ import { execFileSync } from "node:child_process";
5
5
  import { ASSETS_DIR } from "../../platform/assets.js";
6
6
  import { resolveReviewCoverage } from "../../domains/review/coverage.js";
7
7
  import { auditReviewReport } from "../../domains/review/report.js";
8
+ import { resolveCliLanguage } from "../../domains/config/cli-help.js";
8
9
  export function reviewCoverageCommand(options = {}) {
9
10
  const system = readRules(path.join(ASSETS_DIR, "review-rules.json"), "system");
10
11
  const user = readRules(path.join(os.homedir(), ".config", "superflow", "review-rules.json"), "user");
@@ -20,10 +21,14 @@ export function reviewCoverageCommand(options = {}) {
20
21
  if (options.json)
21
22
  console.log(JSON.stringify({ ...result, ...(report ? { report } : {}) }, null, 2));
22
23
  else {
23
- console.log(`Review coverage: ${result.coverage.included}/${result.coverage.total} included, ` +
24
- `${result.coverage.excluded} excluded | risk ${result.risk.tier}`);
24
+ const english = resolveCliLanguage() === "en";
25
+ console.log(english
26
+ ? `Review coverage: ${result.coverage.included}/${result.coverage.total} included, ` +
27
+ `${result.coverage.excluded} excluded | path risk hint ${result.risk.tier}; Host impact assessment required`
28
+ : `评审覆盖:${result.coverage.included}/${result.coverage.total} 纳入,` +
29
+ `${result.coverage.excluded} 排除 | 路径风险提示 ${result.risk.tier};实际影响由 Host 判断`);
25
30
  for (const file of result.files) {
26
- console.log(`- ${file.path}: ${file.included ? file.rules.join("; ") || "generic review" : file.reason}`);
31
+ console.log(`- ${file.path}: ${file.included ? file.rules.join("; ") || (english ? "generic review" : "通用五维评审") : file.reason}`);
27
32
  }
28
33
  for (const [bundle, paths] of Object.entries(result.bundles)) {
29
34
  console.log(`bundle ${bundle}: ${paths.join(", ")}`);
@@ -1 +1 @@
1
- {"version":3,"file":"review-coverage.js","sourceRoot":"","sources":["../../../src/app/commands/review-coverage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review-coverage.js","sourceRoot":"","sources":["../../../src/app/commands/review-coverage.ts"],"names":[],"mappings":"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"}
@@ -155,6 +155,8 @@ export function resolveUpdateTargetsFromState(projectPath, agents, scopeValue, s
155
155
  const merged = [...base];
156
156
  for (const project of managed) {
157
157
  for (const agent of project.agents) {
158
+ if (!agents.includes(agent))
159
+ continue;
158
160
  const key = `${agent}|project|${project.root}`;
159
161
  if (seen.has(key))
160
162
  continue;