kenaz 0.3.22 → 0.3.24

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 (474) hide show
  1. package/core/.claude/hooks/_user-scope.js +1 -1
  2. package/core/.claude/hooks/core-resolve.js +1 -1
  3. package/core/.claude/hooks/worktree-create.js +11 -29
  4. package/core/.claude/hooks/worktree-remove.js +12 -38
  5. package/core/.collaboration/core/reconcile.js +16 -1
  6. package/core/.collaboration/core/task-2467-lifecycle.test.js +63 -0
  7. package/core/.collaboration/core/task-api.js +37 -7
  8. package/core/.formation/bifrost/launch.js +1 -1
  9. package/core/.formation/tools/dispatch-detail/worktree-subagent-mode.md +6 -1
  10. package/core/.formation/tools/kenaz-stats.js +1 -1
  11. package/core/.formation/tools/post-complete/git-merge.js +1 -1
  12. package/core/.formation/tools/prompt.js +1 -1
  13. package/core/.formation/tools/utils.js +5 -5
  14. package/core/.formation/tools/worktree-reclaim.js +73 -2
  15. package/core/.formation/tools/worktree-reclaim.test.js +113 -0
  16. package/core/.kenaz/specialist/ansuz_rules.yaml +7 -51
  17. package/core/.kenaz/specialist/ansuz_session_handoff.schema.json +2 -6
  18. package/core/.rule/general/project-self-containment.yaml +2 -2
  19. package/core/.specialist/Amelia/README.md +1 -1
  20. package/core/.specialist/Amelia/rule.yaml +1 -1
  21. package/core/.specialist/Ansuz/RULES.md +6 -2
  22. package/core/.specialist/Ansuz/concepts/commitment_layer.yaml +1 -1
  23. package/core/.specialist/Ansuz/concepts/evolvable_guardrails.yaml +1 -1
  24. package/core/.specialist/Ansuz/knowledge.yaml +1 -3
  25. package/core/.specialist/tools/__tests__/task-2409-lessons.test.js +10 -0
  26. package/core/.specialist/tools/__tests__/task-2427-harvest.test.js +25 -0
  27. package/core/.specialist/tools/ansuz-boot-fast.js +1 -1
  28. package/core/.specialist/tools/failure-detector.js +4 -4
  29. package/core/.specialist/tools/handoff-doc.js +1 -1
  30. package/core/.specialist/tools/lessons.js +2 -2
  31. package/core/CLAUDE.md +5 -5
  32. package/core/KENAZ_CORE_VERSION +1 -1
  33. package/core/dashboard/scripts/install-kenaz-cli.js +56 -30
  34. package/core/dev/scripts/check-file-size.js +1 -1
  35. package/core/dev/scripts/ci-feedback.js +1 -1
  36. package/core/dev/scripts/gc-agent-worktrees.js +13 -12
  37. package/core/dev/scripts/kenaz-session.js +3 -3
  38. package/core/dev/scripts/peer-identity-e2e.js +6 -4
  39. package/core/dev/scripts/run-rust-tests.js +2 -2
  40. package/core/dev/scripts/skill-routing-replay.js +3 -3
  41. package/core/dev/scripts/task1961/selftest.js +2 -2
  42. package/core/dev/scripts/windows-hide-guard.test.js +112 -0
  43. package/core/plugins/kenaz/guidance.md +1 -0
  44. package/core/plugins/kenaz/hooks/core-resolve.js +1 -1
  45. package/core/plugins/kenaz/hooks/hooks.json +9 -0
  46. package/core/plugins/kenaz/hooks/kenaz-hook.js +58 -4
  47. package/core/plugins/kenaz/hooks/worktree-guard.js +121 -0
  48. package/core/plugins/kenaz/hooks/worktree-guard.test.js +75 -0
  49. package/core/plugins/kenaz/scripts/kenaz.test.js +72 -5
  50. package/core/plugins/kenaz-peer/hooks/register.test.ts +14 -2
  51. package/core/plugins/kenaz-peer/hooks/register.ts +6 -1
  52. package/lib/cli.js +9 -5
  53. package/package.json +6 -6
  54. package/vendor/install-kenaz-cli.js +56 -30
  55. package/core/.kenaz/designs/METAPLASTICITY_CONFIDENCE_DESIGN.md +0 -537
  56. package/core/.kenaz/designs/REFLEX_INITIATOR_DESIGN.md +0 -501
  57. package/core/.kenaz/designs/TASK_1385_handoff_mcp_design.md +0 -426
  58. package/core/.kenaz/designs/TASK_932_hippocampus_consolidation.md +0 -103
  59. package/core/.kenaz/designs/TASK_934_efe_signal_engine.md +0 -97
  60. package/core/.kenaz/designs/TASK_935_self_evolution_framework.md +0 -154
  61. package/core/.kenaz/designs/VISION_cognitive_architecture_roadmap.md +0 -159
  62. package/core/.kenaz/designs/metaplasticity_simulation_results.json +0 -696
  63. package/core/.kenaz/main-memory/README.md +0 -230
  64. package/core/.kenaz/main-memory/kenaz/cortex/001_cortex_overview.md +0 -168
  65. package/core/.kenaz/main-memory/kenaz/cortex/001_rag_engine_overview.md +0 -30
  66. package/core/.kenaz/main-memory/kenaz/memory-system/001_three_tier_architecture.md +0 -361
  67. package/core/.kenaz/main-memory/kenaz/pipeline/001_task_execution_flow.md +0 -117
  68. package/core/.kenaz/main-memory/kenaz/pipeline/001_task_granularity.md +0 -154
  69. package/core/.kenaz/main-memory/kenaz/pipeline/002_team_priority.md +0 -51
  70. package/core/.kenaz/main-memory/kenaz/pipeline/003_feature_id_system.md +0 -46
  71. package/core/.kenaz/main-memory/kenaz/rules/001_gen_007_self_containment.md +0 -108
  72. package/core/.kenaz/main-memory/kenaz/rules/001_rule_priority_system.md +0 -121
  73. package/core/.kenaz/main-memory/kenaz/rules/002_agt_006_pre_check.md +0 -0
  74. package/core/.kenaz/main-memory/kenaz/rules/003_ppl_002_task_archival.md +0 -48
  75. package/core/.kenaz/main-memory/kenaz/system/001_dual_track_task_system.md +0 -197
  76. package/core/.kenaz/main-memory/knowledge/patterns/001_json_bom_issue.md +0 -78
  77. package/core/.kenaz/main-memory/knowledge/patterns/001_leader_worker_pattern.md +0 -0
  78. package/core/.kenaz/main-memory/knowledge/patterns/002_scope_path_conflict.md +0 -115
  79. package/core/.kenaz/main-memory/knowledge/patterns/002_task_dependency_resolution.md +0 -223
  80. package/core/.kenaz/main-memory/knowledge/patterns/003_question_protocol.md +0 -242
  81. package/core/.kenaz/main-memory/knowledge/patterns/004_user_insight_value.md +0 -111
  82. package/core/.kenaz/main-memory/knowledge/patterns/005_file_lock_pattern.md +0 -274
  83. package/core/.kenaz/main-memory/knowledge/references/001_ppl_rules.md +0 -28
  84. package/core/.kenaz/main-memory/knowledge/solutions/001_json_bom_issue.md +0 -137
  85. package/core/.kenaz/main-memory/knowledge/solutions/001_team_invocation.md +0 -0
  86. package/core/.kenaz/main-memory/knowledge/solutions/002_passive_monitoring.md +0 -0
  87. package/core/.kenaz/main-memory/knowledge/solutions/003_windows_file_race_condition.md +0 -239
  88. package/core/.kenaz/main-memory/registry.json +0 -326
  89. package/core/.kenaz/main-memory/version.yaml +0 -58
  90. package/core/.kenaz/specialist/memory_guard_fired.json +0 -1
  91. package/core/.kenaz/specialist/memory_guard_trigger_cache.json +0 -1
  92. package/core/.kenaz/specialist/memory_source_priority.yaml +0 -260
  93. package/core/.kenaz/specialist/prompt_1775.txt +0 -317
  94. package/core/.kenaz/specialist/prompt_1776.txt +0 -326
  95. package/core/.kenaz/specialist/prompt_1791.txt +0 -320
  96. package/core/.kenaz/specialist/prompt_1792.txt +0 -320
  97. package/core/.kenaz/specialist/prompt_1795.txt +0 -281
  98. package/core/.kenaz/specialist/prompt_1813.txt +0 -332
  99. package/core/.kenaz/specialist/prompt_1814.txt +0 -401
  100. package/core/.kenaz/specialist/prompt_1815.txt +0 -394
  101. package/core/.kenaz/specialist/prompt_1816.txt +0 -437
  102. package/core/.kenaz/specialist/prompt_1818.txt +0 -361
  103. package/core/.kenaz/specialist/prompt_1819.txt +0 -421
  104. package/core/.kenaz/specialist/prompt_1821.txt +0 -345
  105. package/core/.kenaz/specialist/prompt_1822.txt +0 -313
  106. package/core/.kenaz/specialist/prompt_1824.txt +0 -348
  107. package/core/.kenaz/specialist/prompt_1826.txt +0 -388
  108. package/core/.kenaz/specialist/rune_efe_salience_gap.md +0 -21
  109. package/core/.kenaz/specialist/task1825_update.json +0 -43
  110. package/core/.kenaz/specialist/taskgen/consolidation_i.json +0 -38
  111. package/core/.kenaz/specialist/taskgen/csharp_a.json +0 -44
  112. package/core/.kenaz/specialist/taskgen/csharp_b.json +0 -40
  113. package/core/.kenaz/specialist/taskgen/embedding_e.json +0 -34
  114. package/core/.kenaz/specialist/taskgen/hygiene_fg.json +0 -39
  115. package/core/.kenaz/specialist/taskgen/pathology_h.json +0 -36
  116. package/core/.kenaz/specialist/taskgen/unity_noise_d.json +0 -38
  117. package/core/.kenaz/specialist/taskgen/visibility_c.json +0 -38
  118. package/core/.specialist/Ansuz/decisions/ADR-requirement-graph-layer.md +0 -390
  119. package/core/.specialist/Ansuz/self_model_seed.backup.json +0 -100
  120. package/core/.specialist/ansuz_session_handoff.json +0 -96
  121. package/core/dev/ALAYA_FIELD_FEEDBACK_DESIGN.md +0 -126
  122. package/core/dev/ANSUZ_SCAFFOLD_DIET_2026-09-20.md +0 -231
  123. package/core/dev/ANSUZ_STARTUP_INJECTION_REVIEW.md +0 -355
  124. package/core/dev/ANSUZ_WORKFLOW_MODERNIZATION.md +0 -143
  125. package/core/dev/CORTEX_META_GRAPH_ASSESSMENT.md +0 -99
  126. package/core/dev/FREYA_DOWNSTREAM_BUGS_2026-09-19.md +0 -44
  127. package/core/dev/GLOBAL_MEMORY_IDENTITY_CONSOLIDATION.md +0 -263
  128. package/core/dev/GUARD_EFFECTIVENESS_DESIGN.md +0 -180
  129. package/core/dev/HEALTH_GATE_VARIANCE_ASSESSMENT.md +0 -271
  130. package/core/dev/HOOK_DIET_2026-09-21.md +0 -126
  131. package/core/dev/JEV_INTEGRATION_PLAN.md +0 -189
  132. package/core/dev/KENAZ_AGENT_CONNECT_v1_SPEC.md +0 -139
  133. package/core/dev/MOBILE_DESIGN_SPEC.md +0 -569
  134. package/core/dev/MULTI_ANSUZ_SPEC.md +0 -136
  135. package/core/dev/MUNINN_RETIREMENT.md +0 -115
  136. package/core/dev/PHASE3_ATTRIBUTION_POPULATION_DIAGNOSIS.md +0 -211
  137. package/core/dev/PHASE3_P3-2B_TASKLEVEL_PROBE.md +0 -83
  138. package/core/dev/PHASE3_P3-2_POPULATION_DISJOINTNESS.md +0 -83
  139. package/core/dev/PHASE3_P3-2_REMEASURE_REPORT.md +0 -231
  140. package/core/dev/PREDICTION_GROUNDING_DESIGN.md +0 -376
  141. package/core/dev/PRODUCT_SPEC.md +0 -317
  142. package/core/dev/PROJECT_REGISTRY_DUPLICATE_ASSESSMENT.md +0 -86
  143. package/core/dev/STARTUP_TIMELINE_TASK_1995.md +0 -181
  144. package/core/dev/SYNAPSE_WORKER_PER_PROJECT.md +0 -881
  145. package/core/dev/TASK_1680_P3-3_DISPATCH_SPEC.md +0 -96
  146. package/core/dev/TASK_1684_CALIBRATION_IMPACT_ANALYSIS.md +0 -170
  147. package/core/dev/TASK_1684_FORK_A_GOODHART_DESIGN.md +0 -171
  148. package/core/dev/TASK_1684_P3_2_REMEASURE_VALIDATION.md +0 -262
  149. package/core/dev/TASK_1903_SIGNAL_AUC_MEASUREMENT.md +0 -207
  150. package/core/dev/TASK_1904_BRANCH_INTEGRITY_AUDIT.md +0 -146
  151. package/core/dev/ansuz-eval/README.md +0 -38
  152. package/core/dev/ansuz-eval/build-fixtures.js +0 -87
  153. package/core/dev/ansuz-eval/grade.js +0 -96
  154. package/core/dev/ansuz-eval/grader.test.js +0 -117
  155. package/core/dev/ansuz-eval/tasks.md +0 -32
  156. package/core/dev/archive/ansuz/BOOT_FULL.md +0 -141
  157. package/core/dev/archive/ansuz/agents/ansuz-boot.md +0 -176
  158. package/core/dev/archive/ansuz/designs/alaya-passive-surfacing.md +0 -84
  159. package/core/dev/archive/ansuz/designs/cc_memory_indexing.md +0 -307
  160. package/core/dev/archive/ansuz/designs/check_guard.md +0 -322
  161. package/core/dev/archive/ansuz/designs/consequence_loop.md +0 -227
  162. package/core/dev/archive/ansuz/designs/mcp_kuzudb_lock_architecture.md +0 -312
  163. package/core/dev/archive/ansuz/designs/phase0_git_enrichment.md +0 -278
  164. package/core/dev/archive/ansuz/designs/refactor_mcp_tools_synapse.md +0 -490
  165. package/core/dev/archive/ansuz/designs/semantic_markdown_extraction.md +0 -167
  166. package/core/dev/archive/ansuz/designs/task_1372_prompt_injects_into.md +0 -193
  167. package/core/dev/archive/ansuz/designs/thought_stack.md +0 -286
  168. package/core/dev/archive/ansuz/investigations/reachability_unified_api_2026-04-11.md +0 -330
  169. package/core/dev/archive/ansuz/investigations/synapse_orphans_indexing_bug_2026-04-11.md +0 -352
  170. package/core/dev/archive/ansuz/investigations/synapse_orphans_reindex_verification_2026-04-11.md +0 -48
  171. package/core/dev/archive/ansuz/investigations/synapse_orphans_verification_2026-04-11.md +0 -170
  172. package/core/dev/archive/ansuz/legacy/kernel.yaml +0 -399
  173. package/core/dev/archive/ansuz/legacy/phases/phase_0.yaml +0 -418
  174. package/core/dev/archive/ansuz/legacy/phases/phase_1.yaml +0 -376
  175. package/core/dev/archive/ansuz/legacy/phases/phase_10.yaml +0 -35
  176. package/core/dev/archive/ansuz/legacy/phases/phase_11.yaml +0 -582
  177. package/core/dev/archive/ansuz/legacy/phases/phase_2.yaml +0 -94
  178. package/core/dev/archive/ansuz/legacy/phases/phase_3.yaml +0 -274
  179. package/core/dev/archive/ansuz/legacy/phases/phase_4.yaml +0 -67
  180. package/core/dev/archive/ansuz/legacy/phases/phase_5.yaml +0 -32
  181. package/core/dev/archive/ansuz/legacy/phases/phase_6.yaml +0 -91
  182. package/core/dev/archive/ansuz/legacy/phases/phase_7.yaml +0 -58
  183. package/core/dev/archive/ansuz/legacy/phases/phase_8.yaml +0 -146
  184. package/core/dev/archive/ansuz/legacy/phases/phase_9.yaml +0 -424
  185. package/core/dev/archive/ansuz/specs/INDEX_bifrost_hook_parity.yaml +0 -92
  186. package/core/dev/archive/ansuz/specs/active-inference-formation.yaml +0 -453
  187. package/core/dev/archive/ansuz/specs/brief_TASK_1228_userpromptsubmit.yaml +0 -191
  188. package/core/dev/archive/ansuz/specs/brief_TASK_1229_pretooluse_posttooluse.yaml +0 -250
  189. package/core/dev/archive/ansuz/specs/brief_TASK_1230_sessionstart_stop.yaml +0 -301
  190. package/core/dev/archive/ansuz/specs/brief_TASK_1231_verification.yaml +0 -272
  191. package/core/dev/archive/skills/feature_agent/SKILL.md +0 -289
  192. package/core/dev/design/PHASE4_DESIGN.md +0 -559
  193. package/core/dev/design/dashboard_docs_integration_PLAN.md +0 -388
  194. package/core/dev/design/matrix_format_ABBREVIATIONS.md +0 -655
  195. package/core/dev/design/matrix_format_DESIGN_SPEC.md +0 -601
  196. package/core/dev/design/matrix_format_DISCUSSION_SUMMARY.md +0 -484
  197. package/core/dev/design/matrix_format_EXAMPLE_memory.matrix +0 -13
  198. package/core/dev/design/matrix_format_EXAMPLE_project_status.matrix +0 -9
  199. package/core/dev/design/matrix_format_EXAMPLE_tasks.matrix +0 -14
  200. package/core/dev/design/matrix_format_SYNTAX_BNF.md +0 -754
  201. package/core/dev/design/matrix_format_TOKEN_COMPARISON.md +0 -484
  202. package/core/dev/design/matrix_v2_COGNITIVE_DESIGN.md +0 -503
  203. package/core/dev/design/matrix_v2_DISCUSSION_SUMMARY.md +0 -414
  204. package/core/dev/design/matrix_v2_EXAMPLE.matrix +0 -67
  205. package/core/dev/designs/EXPANDABLE_CARD_DESIGN_SPEC.md +0 -509
  206. package/core/dev/jev-eval/ACTIVE_CORRECTION.md +0 -52
  207. package/core/dev/jev-eval/ANNOTATION_GUIDE.md +0 -68
  208. package/core/dev/jev-eval/BASELINE_COMPARISON.md +0 -45
  209. package/core/dev/jev-eval/CONTEXT_REVIEW.md +0 -31
  210. package/core/dev/jev-eval/EVALUATION_STATUS.md +0 -39
  211. package/core/dev/jev-eval/HISTORICAL_CORPUS.md +0 -33
  212. package/core/dev/jev-eval/PACKAGING_VERIFICATION.md +0 -42
  213. package/core/dev/jev-eval/README.md +0 -101
  214. package/core/dev/jev-eval/THALAMUS_RANKING.md +0 -58
  215. package/core/dev/jev-eval/VALIDATION_PROGRESS.md +0 -54
  216. package/core/dev/jev-eval/cli.mjs +0 -50
  217. package/core/dev/jev-eval/context.mjs +0 -183
  218. package/core/dev/jev-eval/corpus.mjs +0 -186
  219. package/core/dev/jev-eval/fixtures/conversation-review.seed.jsonl +0 -6
  220. package/core/dev/jev-eval/fixtures/synthetic.jsonl +0 -11
  221. package/core/dev/jev-eval/metrics.mjs +0 -67
  222. package/core/dev/jev-eval/muninn-baseline.mjs +0 -119
  223. package/core/dev/jev-eval/providers.mjs +0 -95
  224. package/core/dev/jev-eval/reports/annotation-pilot-2026-09-20.json +0 -32
  225. package/core/dev/jev-eval/reports/context-review-2026-09-20.json +0 -48
  226. package/core/dev/jev-eval/reports/conversation-review.pending.json +0 -151
  227. package/core/dev/jev-eval/reports/history-corpus-2026-09-20.json +0 -52
  228. package/core/dev/jev-eval/reports/length-probe-2026-09-20.json +0 -133
  229. package/core/dev/jev-eval/reports/live-smoke-2026-09-20.json +0 -616
  230. package/core/dev/jev-eval/reports/muninn-baseline-2026-09-20.json +0 -52
  231. package/core/dev/jev-eval/reports/resilience-2026-09-20.json +0 -520
  232. package/core/dev/jev-eval/reports/rules-baseline.json +0 -197
  233. package/core/dev/jev-eval/reports/synthetic-review.pending.json +0 -357
  234. package/core/dev/jev-eval/resilience.mjs +0 -71
  235. package/core/dev/jev-eval/review.mjs +0 -78
  236. package/core/dev/jev-eval/schema.mjs +0 -87
  237. package/core/dev/jev-eval/test/context.test.mjs +0 -95
  238. package/core/dev/jev-eval/test/corpus.test.mjs +0 -102
  239. package/core/dev/jev-eval/test/eval.test.mjs +0 -146
  240. package/core/dev/jev-eval/test/muninn-baseline.test.mjs +0 -71
  241. package/core/dev/jev-eval/test/resilience.test.mjs +0 -72
  242. package/core/dev/jev-eval/test/review.test.mjs +0 -61
  243. package/core/dev/pipeline/PHASE3_PLANNING_SUMMARY.md +0 -338
  244. package/core/dev/pipeline/PROGRESS.md +0 -113
  245. package/core/dev/pipeline/PROGRESS_template.md +0 -860
  246. package/core/dev/pipeline/QA_REPORT_F008.md +0 -431
  247. package/core/dev/pipeline/QA_REPORT_LOCAL_CLAUDE_DIAGNOSIS.md +0 -583
  248. package/core/dev/pipeline/README.md +0 -210
  249. package/core/dev/pipeline/WORKFLOW_GUIDE.md +0 -824
  250. package/core/dev/pipeline/archived/TASK_015_tauri_init.yaml +0 -53
  251. package/core/dev/pipeline/archived/TASK_016_tauri_commands.yaml +0 -54
  252. package/core/dev/pipeline/archived/TASK_017_rust_pty.yaml +0 -54
  253. package/core/dev/pipeline/archived/TASK_018_tauri_bundle.yaml +0 -53
  254. package/core/dev/pipeline/archived/TASK_019_release_workflow.yaml +0 -56
  255. package/core/dev/pipeline/archived/TASK_020_update_ui.yaml +0 -54
  256. package/core/dev/pipeline/archived/TASK_021_update_notification_ui.yaml +0 -55
  257. package/core/dev/pipeline/archived/TASK_022_remove_node_pty.yaml +0 -65
  258. package/core/dev/pipeline/archived/TASK_023_api_routes_migration.yaml +0 -86
  259. package/core/dev/pipeline/archived/TASK_024_feature_id_system.yaml +0 -51
  260. package/core/dev/pipeline/archived/TASK_025_executable_acceptance.yaml +0 -66
  261. package/core/dev/pipeline/archived/TASK_026_spec_versioning.yaml +0 -56
  262. package/core/dev/pipeline/archived/TASK_027_drift_detection.yaml +0 -60
  263. package/core/dev/pipeline/archived/TASK_028_tauri_pty_manager.yaml +0 -60
  264. package/core/dev/pipeline/archived/TASK_029_tauri_pty_commands.yaml +0 -62
  265. package/core/dev/pipeline/archived/TASK_030_frontend_session_adapter.yaml +0 -54
  266. package/core/dev/pipeline/archived/TASK_031_terminal_tauri_events.yaml +0 -56
  267. package/core/dev/pipeline/archived/TASK_041_scheduler_data_models.yaml +0 -54
  268. package/core/dev/pipeline/archived/TASK_042_path_lock_manager.yaml +0 -53
  269. package/core/dev/pipeline/archived/TASK_043_process_manager.yaml +0 -57
  270. package/core/dev/pipeline/archived/TASK_044_git_integration.yaml +0 -85
  271. package/core/dev/pipeline/archived/TASK_045_task_queue_manager.yaml +0 -54
  272. package/core/dev/pipeline/archived/TASK_046_scheduler_dispatcher.yaml +0 -60
  273. package/core/dev/pipeline/archived/TASK_047_tauri_scheduler_commands.yaml +0 -55
  274. package/core/dev/pipeline/archived/TASK_048_realtime_status_push.yaml +0 -92
  275. package/core/dev/pipeline/archived/TASK_049_frontend_scheduler_integration.yaml +0 -58
  276. package/core/dev/pipeline/archived/TASK_050_error_recovery.yaml +0 -56
  277. package/core/dev/pipeline/archived/TASK_051_optimization_proposals_backend.yaml +0 -53
  278. package/core/dev/pipeline/archived/TASK_052_optimization_proposals_ui.yaml +0 -58
  279. package/core/dev/pipeline/archived/TASK_053_optimization_proposals_diff_view.yaml +0 -54
  280. package/core/dev/pipeline/archived/TASK_054_multi_project_scheduler_state.yaml +0 -76
  281. package/core/dev/pipeline/archived/TASK_055_scheduler_api_project_scope.yaml +0 -64
  282. package/core/dev/pipeline/archived/TASK_056_frontend_scheduler_project_scope.yaml +0 -62
  283. package/core/dev/pipeline/archived/TASK_057_scheduler_module_structure.yaml +0 -54
  284. package/core/dev/pipeline/archived/TASK_058_scheduler_models_extract.yaml +0 -51
  285. package/core/dev/pipeline/archived/TASK_059_scheduler_core_extract.yaml +0 -51
  286. package/core/dev/pipeline/archived/TASK_060_scheduler_commands_extract.yaml +0 -51
  287. package/core/dev/pipeline/archived/TASK_061_scheduler_specialized_commands.yaml +0 -53
  288. package/core/dev/pipeline/archived/TASK_062_process_manager_module_structure.yaml +0 -56
  289. package/core/dev/pipeline/archived/TASK_063_process_manager_core_extract.yaml +0 -56
  290. package/core/dev/pipeline/archived/TASK_064_recovery_module_structure.yaml +0 -57
  291. package/core/dev/pipeline/archived/TASK_065_recovery_core_extract.yaml +0 -56
  292. package/core/dev/pipeline/archived/TASK_066_self_enhancement_scheduler_models.yaml +0 -60
  293. package/core/dev/pipeline/archived/TASK_067_agents_section_quick_actions.yaml +0 -53
  294. package/core/dev/pipeline/archived/TASK_067_self_enhancement_scheduler_core.yaml +0 -65
  295. package/core/dev/pipeline/archived/TASK_068_agent_workflow_rule_enhancement.yaml +0 -46
  296. package/core/dev/pipeline/archived/TASK_068_self_enhancement_tauri_commands.yaml +0 -61
  297. package/core/dev/pipeline/archived/TASK_069_agent_wizard_responsive.yaml +0 -46
  298. package/core/dev/pipeline/archived/TASK_069_self_enhancement_ui.yaml +0 -62
  299. package/core/dev/pipeline/archived/TASK_070_preview_panel_redesign.yaml +0 -62
  300. package/core/dev/pipeline/archived/TASK_070_self_enhancement_integration.yaml +0 -57
  301. package/core/dev/pipeline/archived/TASK_071_preview_panel_qa.yaml +0 -98
  302. package/core/dev/pipeline/archived/TASK_071_single_agent_config.yaml +0 -57
  303. package/core/dev/pipeline/archived/TASK_072_preview_modal_esc_fix.yaml +0 -71
  304. package/core/dev/pipeline/archived/TASK_072_product_review_module.yaml +0 -57
  305. package/core/dev/pipeline/archived/TASK_073_agents_page_component_refactor.yaml +0 -68
  306. package/core/dev/pipeline/archived/TASK_073_rename_single_agent.yaml +0 -64
  307. package/core/dev/pipeline/archived/TASK_074_preview_mode_ui_diagnosis.yaml +0 -71
  308. package/core/dev/pipeline/archived/TASK_074_single_agent_ui_toggle.yaml +0 -56
  309. package/core/dev/pipeline/archived/TASK_075_agents_page_component_refactor.yaml +0 -69
  310. package/core/dev/pipeline/archived/TASK_075_single_agent_integration_test.yaml +0 -75
  311. package/core/dev/pipeline/archived/TASK_076_preview_mode_ui_diagnosis.yaml +0 -70
  312. package/core/dev/pipeline/archived/TASK_076_single_agent_continuous_mode.yaml +0 -65
  313. package/core/dev/pipeline/archived/TASK_077_failure_directory_structure.yaml +0 -51
  314. package/core/dev/pipeline/archived/TASK_077_single_agent_typescript_types.yaml +0 -59
  315. package/core/dev/pipeline/archived/TASK_078_fail_001_agent_no_output.yaml +0 -53
  316. package/core/dev/pipeline/archived/TASK_078_single_agent_ui_simplify.yaml +0 -74
  317. package/core/dev/pipeline/archived/TASK_079_dashboard_rwd_responsive.yaml +0 -63
  318. package/core/dev/pipeline/archived/TASK_079_fail_002_json_bom.yaml +0 -56
  319. package/core/dev/pipeline/archived/TASK_080_fail_003_queue_pollution.yaml +0 -56
  320. package/core/dev/pipeline/archived/TASK_080_http_server_module.yaml +0 -55
  321. package/core/dev/pipeline/archived/TASK_081_failure_logging_tools.yaml +0 -57
  322. package/core/dev/pipeline/archived/TASK_081_http_api_routes.yaml +0 -62
  323. package/core/dev/pipeline/archived/TASK_082_frontend_api_adapter.yaml +0 -51
  324. package/core/dev/pipeline/archived/TASK_082_integrate_failure_to_workflow.yaml +0 -60
  325. package/core/dev/pipeline/archived/TASK_083_cleanup_nextjs_api.yaml +0 -48
  326. package/core/dev/pipeline/archived/TASK_083_task_queue_cleanup.yaml +0 -67
  327. package/core/dev/pipeline/archived/TASK_084_rust_dead_code_cleanup.yaml +0 -66
  328. package/core/dev/pipeline/archived/TASK_084_scheduler_sync_logic_fix.yaml +0 -68
  329. package/core/dev/pipeline/archived/TASK_085_http_api_web_mode_fixes.yaml +0 -46
  330. package/core/dev/pipeline/archived/TASK_085_memory_consolidation_0204_0205.yaml +0 -98
  331. package/core/dev/pipeline/archived/TASK_086_collapsible_preview_panel.yaml +0 -161
  332. package/core/dev/pipeline/archived/TASK_086_web_mode_feature_parity.yaml +0 -62
  333. package/core/dev/pipeline/archived/TASK_087_manual_memory_archival.yaml +0 -163
  334. package/core/dev/pipeline/archived/TASK_087_mobile_http_control.yaml +0 -68
  335. package/core/dev/pipeline/archived/TASK_088_fail_003_to_ppl_002_rule.yaml +0 -63
  336. package/core/dev/pipeline/archived/TASK_088_mobile_http_qa.yaml +0 -121
  337. package/core/dev/pipeline/archived/TASK_089_agent_collaboration_topic.yaml +0 -60
  338. package/core/dev/pipeline/archived/TASK_089_web_mode_monitor_fix.yaml +0 -58
  339. package/core/dev/pipeline/archived/TASK_090_cli_detection_fix.yaml +0 -61
  340. package/core/dev/pipeline/archived/TASK_090_ui_ux_lessons_topic.yaml +0 -63
  341. package/core/dev/pipeline/archived/TASK_091_expandable_card_design.yaml +0 -56
  342. package/core/dev/pipeline/archived/TASK_091_move_agent_section_components.yaml +0 -65
  343. package/core/dev/pipeline/archived/TASK_092_expandable_card_component.yaml +0 -60
  344. package/core/dev/pipeline/archived/TASK_092_refactor_agent_create_wizard.yaml +0 -84
  345. package/core/dev/pipeline/archived/TASK_093_taskcard_detail_integration.yaml +0 -57
  346. package/core/dev/pipeline/archived/TASK_093_update_barrel_exports_test.yaml +0 -84
  347. package/core/dev/pipeline/archived/TASK_094_ai_agent_generation_enhancement.yaml +0 -115
  348. package/core/dev/pipeline/archived/TASK_094_proposalcard_detail_integration.yaml +0 -55
  349. package/core/dev/pipeline/archived/TASK_095_preview_fixes.yaml +0 -129
  350. package/core/dev/pipeline/archived/TASK_095_single_agent_task_selector.yaml +0 -60
  351. package/core/dev/pipeline/archived/TASK_096_agents_page_ux_improvements.yaml +0 -163
  352. package/core/dev/pipeline/archived/TASK_096_single_agent_status_sync.yaml +0 -60
  353. package/core/dev/pipeline/archived/TASK_097_local_claude_error_logging.yaml +0 -59
  354. package/core/dev/pipeline/archived/TASK_097_single_agent_monitor_events.yaml +0 -59
  355. package/core/dev/pipeline/archived/TASK_098_product_manager_team_phase2.yaml +0 -60
  356. package/core/dev/pipeline/archived/TASK_098_single_agent_refactor_test.yaml +0 -58
  357. package/core/dev/pipeline/archived/TASK_099_backend_team_creation.yaml +0 -258
  358. package/core/dev/pipeline/archived/TASK_100_frontend_team_creation.yaml +0 -61
  359. package/core/dev/pipeline/archived/TASK_101_orchestrator_system.yaml +0 -403
  360. package/core/dev/pipeline/archived/TASK_102_designer_sre_teams.yaml +0 -90
  361. package/core/dev/pipeline/archived/TASK_103_integration_testing.yaml +0 -86
  362. package/core/dev/pipeline/archived/TASK_128_integration_testing.yaml +0 -83
  363. package/core/dev/pipeline/archived/TASK_134_cortex_v2_phase3_file_watcher.yaml +0 -65
  364. package/core/dev/pipeline/archived/TASK_134_team_http_api.yaml +0 -96
  365. package/core/dev/pipeline/archived/TASK_135_cortex_v2_phase3_git_monitor.yaml +0 -63
  366. package/core/dev/pipeline/archived/TASK_136_cortex_v2_phase3_change_analyzer.yaml +0 -69
  367. package/core/dev/pipeline/archived/TASK_137_cortex_v2_phase3_cache_invalidator.yaml +0 -67
  368. package/core/dev/pipeline/archived/TASK_137_team_orchestrator_integration.yaml +0 -93
  369. package/core/dev/pipeline/archived/TASK_138_cortex_v2_phase3_distributed_cache.yaml +0 -68
  370. package/core/dev/pipeline/archived/TASK_138_matrix_folder_structure.yaml +0 -61
  371. package/core/dev/pipeline/archived/TASK_139_cortex_v2_phase3_cache_prewarming.yaml +0 -65
  372. package/core/dev/pipeline/archived/TASK_146_unified_documentation.yaml +0 -141
  373. package/core/dev/pipeline/archived/TASK_147_pipeline_execution_rules.yaml +0 -76
  374. package/core/dev/pipeline/archived/TASK_148_update_claude_md.yaml +0 -77
  375. package/core/dev/pipeline/archived/TASK_149_fix_nextjs_mdx_serialization.yaml +0 -63
  376. package/core/dev/pipeline/archived/TASK_149_update_team_docs.yaml +0 -77
  377. package/core/dev/pipeline/archived/TASK_150_pipeline_workflow_guide.yaml +0 -82
  378. package/core/dev/pipeline/archived/TASK_164_fix_smart_context_switch.yaml +0 -49
  379. package/core/dev/pipeline/archived/TASK_165_ctags_symbol_index.yaml +0 -53
  380. package/core/dev/pipeline/archived/TASK_166_symbol_search_mcp_tool.yaml +0 -48
  381. package/core/dev/pipeline/archived/TASK_167_llm_module_summary.yaml +0 -55
  382. package/core/dev/pipeline/archived/TASK_168_map_reduce_context.yaml +0 -51
  383. package/core/dev/pipeline/archived/TASK_169_v2_integration_testing.yaml +0 -52
  384. package/core/dev/pipeline/backups/archive_2026-02-04T22-07-22/TASK_QUEUE_backup.json +0 -95
  385. package/core/dev/pipeline/docs/multi-agent-coordination.md +0 -446
  386. package/core/dev/pipeline/docs/overview.md +0 -406
  387. package/core/dev/pipeline/docs/task-management.md +0 -412
  388. package/core/dev/pipeline/docs/workflows.md +0 -32
  389. package/core/dev/pipeline/orchestrator/schemas/task_queue_schema.json +0 -58
  390. package/core/dev/pipeline/orchestrator/schemas/task_schema.json +0 -139
  391. package/core/dev/pipeline/plans/PLAN_task_cli_refactor.md +0 -281
  392. package/core/dev/pipeline/test_results/TASK_TEST_PARALLEL_002_result.txt +0 -27
  393. package/core/dev/plans/ANSUZ_SLIM_PLAN.md +0 -68
  394. package/core/dev/plans/CLI_FIRST_INSTALL_FLOW.md +0 -120
  395. package/core/dev/plans/FORMATION_RETIREMENT_PLAN.md +0 -313
  396. package/core/dev/plans/KUZU_REPLACEMENT_PLAN.md +0 -126
  397. package/core/dev/scripts/CRASH_DIAGNOSIS.md +0 -47
  398. package/core/dev/scripts/README.md +0 -142
  399. package/core/dev/scripts/RUN_ONCE.bat +0 -40
  400. package/core/dev/scripts/START_DEV_AGENT.bat +0 -63
  401. package/core/dev/scripts/START_MULTI_AGENT.bat +0 -80
  402. package/core/dev/scripts/dev_agent_scheduler.ps1 +0 -536
  403. package/core/dev/scripts/init_git.ps1 +0 -396
  404. package/core/dev/scripts/init_git.sh +0 -337
  405. package/core/dev/scripts/init_project.ps1 +0 -851
  406. package/core/dev/scripts/init_project.sh +0 -477
  407. package/core/dev/scripts/multi_agent_scheduler.ps1 +0 -2021
  408. package/core/dev/scripts/multi_agent_scheduler.sh +0 -1344
  409. package/core/dev/scripts/run_once.sh +0 -47
  410. package/core/dev/scripts/setup_rag.ps1 +0 -304
  411. package/core/dev/scripts/setup_rag.sh +0 -230
  412. package/core/dev/scripts/start_dev_agent.sh +0 -137
  413. package/core/dev/scripts/start_multi_agent.sh +0 -41
  414. package/core/dev/scripts/sync_task_queue.ps1 +0 -505
  415. package/core/dev/scripts/sync_task_queue.sh +0 -392
  416. package/core/dev/specs/agent-connect/PROTOCOL.md +0 -177
  417. package/core/dev/specs/agent-connect/SDK_GUIDE.md +0 -915
  418. package/core/dev/specs/agent-connect/examples/minimal-site/README.md +0 -137
  419. package/core/dev/specs/agent-connect/examples/minimal-site/package.json +0 -12
  420. package/core/dev/specs/agent-connect/examples/minimal-site/public/index.html +0 -116
  421. package/core/dev/specs/agent-connect/examples/minimal-site/public/install-redirect.js +0 -73
  422. package/core/dev/specs/agent-connect/examples/minimal-site/server.js +0 -516
  423. package/core/dev/specs/agent-connect/examples/minimal-site/test/smoke.test.mjs +0 -263
  424. package/core/dev/specs/agent-connect/history/DEFECT_REPORT_kenaz-agent-hub_2026-09-09_v0.4-empty-prompt-no-first-turn.md +0 -77
  425. package/core/dev/specs/agent-connect/history/DEFECT_REPORT_kenaz-agent-hub_2026-09-09_v0.4-prompt-mojibake.md +0 -90
  426. package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-07.md +0 -61
  427. package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-08_relay-v1-conformance.md +0 -76
  428. package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-09_v0.4-session-channel.md +0 -87
  429. package/core/dev/specs/agent-connect/history/FLOWPIX_REPLY_agent-hub_2026-09-08_relay-v1-answers.md +0 -68
  430. package/core/dev/specs/agent-connect/history/FLOWPIX_bridge_CONTRACT.md +0 -642
  431. package/core/dev/specs/agent-connect/history/FLOWPIX_spikes_relay_spike_relay.mjs +0 -244
  432. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-07.md +0 -77
  433. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_direction-change-v0.3.md +0 -44
  434. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_relay-v1-answers-ack.md +0 -37
  435. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_relay-v1-conformance.md +0 -56
  436. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_annotations-install-coldstart.md +0 -44
  437. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_empty-prompt-first-turn.md +0 -56
  438. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_prompt-mojibake-fixed.md +0 -48
  439. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_session-channel.md +0 -57
  440. package/core/dev/specs/agent-connect/history/PROTOCOL_v0.3_snapshot.md +0 -379
  441. package/core/dev/specs/agent-connect/history/README.md +0 -47
  442. package/core/dev/specs/peer/CODEX_INTERACTIVE_PUSH.md +0 -65
  443. package/core/dev/specs/peer/CODEX_MANAGED_DAEMON.md +0 -54
  444. package/core/dev/specs/peer/CODEX_PEER_PULL_SPIKE.md +0 -54
  445. package/core/dev/specs/peer/MODS_SPIKE.md +0 -133
  446. package/core/dev/specs/peer/PER_PROJECT_ADDRESSING.md +0 -143
  447. package/core/dev/specs/peer/SWARM_PROTOCOLS.md +0 -256
  448. package/core/dev/specs/peer/codex-hook-shim-peer.test.js +0 -113
  449. package/core/dev/specs/peer/codex-push-launcher.test.js +0 -142
  450. package/core/dev/specs/peer/setup-codex-hooks.test.js +0 -60
  451. package/core/dev/specs/peer-ansuz/DELIVERY_SPIKE.md +0 -397
  452. package/core/dev/specs/peer-ansuz/DESIGN.md +0 -109
  453. package/core/dev/specs/peer-ansuz/spike/claude_poke.js +0 -129
  454. package/core/dev/specs/peer-ansuz/spike/claude_session_start_hook.js +0 -37
  455. package/core/dev/specs/peer-ansuz/spike/claude_settings_hook.json +0 -14
  456. package/core/dev/specs/peer-ansuz/spike/codex_appserver_client.js +0 -105
  457. package/core/dev/specs/peer-ansuz/spike/codex_appserver_query.js +0 -29
  458. package/core/dev/specs/peer-ansuz/spike/extract_timeline.js +0 -26
  459. package/core/dev/specs/synapse/SYMBOL_IDENTITY.md +0 -305
  460. package/core/dev/spikes/A4-cypher-varlen.md +0 -176
  461. package/core/dev/spikes/bloat-rounds.sh +0 -25
  462. package/core/dev/spikes/mods/clean-claude.js +0 -9
  463. package/core/dev/spikes/mods/drive-probe.js +0 -29
  464. package/core/dev/spikes/mods/e2e-peer.js +0 -71
  465. package/core/dev/spikes/mods/evidence/e2e-peer-control.json +0 -17
  466. package/core/dev/spikes/mods/evidence/e2e-peer-mod.json +0 -17
  467. package/core/dev/spikes/mods/evidence/probe-006a6e65-d807-4bc1-b648-fd7d1edfe0b4.jsonl +0 -4
  468. package/core/dev/spikes/mods/evidence/probe-cebdf1f7-f9c4-47a8-83cd-7c0786177404.jsonl +0 -12
  469. package/core/dev/spikes/mods/evidence/probe-eb21147d-10ce-4c32-93ed-37ca37d88d5a.jsonl +0 -11
  470. package/core/dev/spikes/mods/evidence/stream-cebdf1f7.jsonl +0 -18
  471. package/core/dev/spikes/mods/kenaz-mod-probe/.claude-plugin/plugin.json +0 -1
  472. package/core/dev/spikes/mods/kenaz-mod-probe/hooks/hooks.json +0 -1
  473. package/core/dev/spikes/mods/kenaz-mod-probe/hooks/register.ts +0 -65
  474. package/core/dev/spikes/mods/kenaz-mod-probe/tsconfig.json +0 -3
@@ -1,94 +0,0 @@
1
- phase: 2
2
- name: "背景調研"
3
- goal: "用神經脈衝建立完整 context — 圖譜先行,再設計任務"
4
-
5
- actions:
6
- - |
7
- 【Metacognitive Planning Check】(TASK_973 Metacognitive Planning Layer)
8
- Before starting research, consult metacognitive_state.json to adapt strategy:
9
- 1. Read {PROJECT_PATH}/.kenaz/specialist/metacognitive_state.json
10
- → If file missing or empty: skip this step silently (cold start — no history yet)
11
- 2. Check knowledge.task_type_performance for the current task's type (from Phase 1 requirement_type):
12
- → If avg_accuracy < 0.5: flag as "weak area" — allocate deeper Phase 2 research
13
- → If avg_accuracy > 0.8: flag as "strong area" — can use lighter research
14
- 3. Check knowledge.learning_strategy_effectiveness:
15
- → Deprioritize strategies with effectiveness_rate < 0.3
16
- → Prefer strategies with effectiveness_rate > 0.7
17
- 4. Check knowledge.domain_familiarity for scope_paths domains:
18
- → Unfamiliar domains (confidence < 0.4): add extra Grep/Glob exploratory queries
19
- 5. Check planning.current_priorities:
20
- → If current task aligns with a priority, note the recommended approach
21
- 6. Apply planning.strategy_selection_rules to determine research order
22
- 7. Output one-line summary: "📊 Metacognitive: {strategy adjustment or 'baseline — no history'}"
23
- This step is informational — it adjusts research intensity, not phase gates.
24
- - "搜尋相關 Feature ID(Grep dev/PRODUCT_SPEC.md)"
25
- - "synapse_recall(目標 symbol / 主題) — 已知 risk/decision/fix rune"
26
- - "kenaz_lsp_callers / kenaz_lsp_references(目標 symbol) — 誰呼叫、誰引用(爆炸半徑)"
27
- - "Grep/Glob — 探索相關代碼與檔案結構"
28
- - "cortex_recall — 查跨專案歷史知識(mandatory,與 synapse_recall 並行)"
29
- - "cortex_search — 找其他專案的相似實現"
30
- - "Grep — 僅用於精確字串匹配"
31
- - "查閱類似已完成任務(task-api.js search)+ 檢查 .failure/ 相關失敗模式"
32
-
33
- caller_driven_research:
34
- rule: "Phase 3 的 scope_paths 和 dependencies 必須有 LSP callers / recall 結果支撐,不靠推斷"
35
- note: "核心 symbol 來源:需求描述或 scope_paths 推斷"
36
- scope_from_callers: "scope_paths = kenaz_lsp_callers / kenaz_lsp_references 結果所在的文件路徑"
37
- complexity_from_callers: |
38
- simple: callers < 10 且無跨模組呼叫
39
- medium: callers 10-30 或跨 1-2 個模組
40
- complex: callers > 30 或跨 3+ 個模組
41
-
42
- empty_result:
43
- when: "synapse_recall 與 kenaz_lsp_callers 都回空"
44
- action: "懶載入 modules/pulse_empty.yaml"
45
-
46
- prophetic_comparison:
47
- when: "Phase 2 偵測到 2+ 方案"
48
- action: "懶載入 modules/prophecy.yaml — 各方案跑 kenaz_lsp_callers + recall,結構數據選方案"
49
-
50
- cross_project_mandatory:
51
- rule: "Phase 2 開始時,與 synapse_recall 同步執行 cortex_recall(並行)"
52
- why: "跨專案 risk/fix/decision rune 是免費經驗值"
53
-
54
- fallbacks:
55
- lsp: "kenaz_lsp_* 失敗 → 降級用 Grep/Glob"
56
- cortex: "cortex 不可用 → 跳過跨專案查詢,不阻塞"
57
-
58
- cli_format: |
59
- 🔍 背景調研 + 神經脈衝
60
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
61
- 相關 Feature: {F-XXX}
62
-
63
- ⚡ 脈衝結果: {symbol_name}
64
- 爆炸半徑: {total_impacted} symbols, {community_crossings} 跨模組
65
- 風險等級: {overall_risk}
66
- 受影響流程: {affected_processes}
67
- 歷史風險: {known_risks 摘要}
68
- 建議: {recommendations}
69
-
70
- 相關代碼: {檔案路徑}
71
- 類似任務: {TASK_XXX}
72
- 已知風險: {.failure 相關模式}
73
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
74
-
75
- interaction:
76
- type: "auto"
77
- instruction: "靜默執行,結果併入 Phase 3 輸出"
78
-
79
- checklist:
80
- - "metacognitive_planning_check 已執行(或 cold start 靜默跳過)"
81
- - "context-injection 已執行:node .specialist/tools/context-injection.js --phase=2 --task={task_id} [--project-path=PATH],取得 pulse_targets 後對其執行 synapse_recall + kenaz_lsp_callers"
82
- - "kenaz_lsp_callers 已對核心 symbol 執行(或已 fallback 到 Grep)"
83
- - "scope_paths 從 callers / references 提取(非推斷)"
84
- - "cortex_recall 已並行執行"
85
-
86
- context_hints:
87
- input_from: "phase_1"
88
- key_data: ["requirement_type", "priority", "summary"]
89
-
90
- inject:
91
- rules:
92
- - synapse-code-intelligence.yaml
93
- - cortex-tools.yaml
94
- specialist: []
@@ -1,274 +0,0 @@
1
- phase: 3
2
- name: "任務設計"
3
- goal: "用脈衝結果拆解需求為獨立、可執行的任務 — 圖譜驅動,不靠推斷"
4
-
5
- # TASK_1020: Phase 3 exit self-annotation requirement.
6
- # phase-gate.js reads `required_exit_args` metadata and emits a stderr warning
7
- # when the listed args are absent on `phase-gate.js exit --phase=3`. Grace
8
- # period: warning-only until TASK_1018 attribution pipeline has ≥5 sessions of
9
- # data, then promoted to hard-block in a follow-up task.
10
- required_exit_args:
11
- - name: thinking_tag
12
- cli_flag: "--thinking-tag"
13
- required: true
14
- enforcement: warn # warn | block — grace period uses warn
15
- min_count: 1
16
- max_count: 3
17
- value_source: "kernel.yaml principles keys (e.g. differential_over_intuition, wire_over_rewrite)"
18
- purpose: |
19
- Capture which 1-3 principles guided the decide phase in Phase 3 (任務設計).
20
- Feeds TASK_1018 attribution pipeline: links task-design decisions back to
21
- principles so post-complete can measure which principles correlate with
22
- successful outcomes.
23
- warning_message: |
24
- ⚠️ Phase 3 exit without --thinking-tag — principle attribution data lost.
25
- Add --thinking-tag=<principle>[,<principle>...] naming 1-3 principles
26
- that guided task breakdown. Examples: see phase_3.yaml thinking_tag_usage.
27
-
28
- thinking_tag_usage:
29
- description: |
30
- Self-annotation: after finalizing the task list, tag this decide phase with
31
- the principles that shaped the breakdown. This is NOT decoration — it
32
- closes the feedback loop between principles (kernel.yaml) and outcomes
33
- (post-complete health_delta).
34
- cli_syntax: |
35
- node .specialist/tools/phase-gate.js exit --phase=3 --task=TASK_XXX \
36
- --data='{...}' --thinking-tag=differential_over_intuition,wire_over_rewrite
37
- how_to_choose:
38
- - "Pick the 1-3 principles you actually leaned on while deciding — not all principles, not none"
39
- - "Tag names must match kernel.yaml principles keys (snake_case, no prefix)"
40
- - "If you honestly cannot name a principle, something is wrong — go back to Phase 2"
41
- common_scenarios:
42
- diagnosed_competing_hypotheses:
43
- when: "You weighed 2+ implementation approaches and eliminated some with evidence"
44
- tag: "differential_over_intuition"
45
- example: "Considered monolith task vs split-by-role → chose split after scope overlap analysis"
46
- chose_existing_over_new:
47
- when: "You scoped tasks around existing code/APIs instead of introducing new abstractions"
48
- tag: "wire_over_rewrite"
49
- example: "Reused phase-gate.js exit hook instead of creating new validator module"
50
- split_by_graph_structure:
51
- when: "Task boundaries came from pulse/impact data, not estimation"
52
- tag: "structural_over_estimation"
53
- example: "scope_paths derived from kenaz_lsp_callers results, not guessed"
54
- surfaced_ambiguity:
55
- when: "You exposed a design problem to the user rather than picking silently"
56
- tag: "expose_problems"
57
- example: "Two valid task splits existed → surfaced both in AskUserQuestion rather than choosing"
58
- made_acceptance_grep_verifiable:
59
- when: "Acceptance criteria written as executable greps, not subjective checks"
60
- tag: "verifiable_over_explainable"
61
- example: "'grep kernel.yaml thinking.tag returns non-empty' instead of 'kernel mentions thinking tag'"
62
- followed_evidence_against_default:
63
- when: "You chose something because data said so, even if it contradicted the obvious path"
64
- tag: "evidence_over_authority"
65
- example: "Kept 2 tasks instead of merging, because scope_paths overlap would cause conflicts"
66
- true_dep_vs_false_dep:
67
- when: "You identified which tasks can parallelize vs which must serialize"
68
- tag: "real_dependency_over_perceived"
69
- example: "Frontend task marked dependencies=[] because it uses mock API — no real dep on backend"
70
- user_intent_not_literal:
71
- when: "You reframed the user ask to match their underlying goal"
72
- tag: "intent_over_literal"
73
- example: "User said 'add logging' → actual need was observability metrics, scoped accordingly"
74
- anti_patterns:
75
- - "❌ Tagging all 8 principles 'to be safe' — max 3, max_count enforced by phase-gate.js"
76
- - "❌ Picking tags that sound good but didn't actually drive the decision — defeats attribution"
77
- - "❌ Using freeform strings instead of principle keys — phase-gate.js warns on unknown tags"
78
- - "❌ Skipping --thinking-tag because 'I didn't really think about principles' — then Phase 3 was cargo-culted"
79
-
80
-
81
- ddx_trigger:
82
- when: "需求有多種實作方案、或涉及架構決策時"
83
- action: "懶載入 modules/ddx.yaml → modules/prophecy.yaml — 量化風險後選方案"
84
-
85
- amelia_review:
86
- trigger: "Phase 3 用戶批准後,根據複雜度決定是否啟動"
87
- skip: "任務 ≤2 + 同 role + 無 P0 + scope 無重疊 → Ansuz 自行分配 role"
88
- full_protocol: "懶載入 modules/amelia_review.yaml — 複雜任務兩階段審查"
89
-
90
- phantom_declaration:
91
- description: "在任務設計時,為每個計畫新增的 symbol 呼叫 synapse_declare 建立 phantom 節點,實現「設計先於實作」的圖譜預覽"
92
- trigger:
93
- graph_maturity_gate:
94
- rule: "Phase 0 的 synapse_status 回傳 total_symbols ≥ 50 時才啟用 CGDD。低於此閾值 → phantoms_declared: skipped (graph_immature)"
95
- why: "全 phantom 圖的 impact 是自我循環 — CGDD 的價值來自 phantom 與 real symbol 的交互。圖譜太小時直接寫代碼 + index 建圖更高效"
96
- threshold: 50
97
- check: "synapse_status → total_symbols(Phase 0 已取得,不需重複呼叫)"
98
- cross_module_gate:
99
- rule: "單函數新增 → GDD(pulse)夠用,跳過 CGDD。跨模組新增 2+ 個互相呼叫的新 symbol → 啟用 CGDD"
100
- why: "CGDD 不可替代的價值在跨模組架構設計。單函數場景 overhead > benefit"
101
- keyword_heuristic: "requirements 中出現 add|create|implement|new|introduce 關鍵字時觸發"
102
- skip_condition: "需求為 bug-fix / refactor / optimize(僅修改現有 symbol)→ 跳過,phantoms_declared: skipped"
103
- kind_mapping:
104
- "add|create|new": "function 或 class(視 scope_paths 決定)"
105
- "implement|introduce": "function 或 interface 或 struct"
106
- "*.ts|*.tsx": "function / class / interface"
107
- "*.rs": "function / struct / impl"
108
- "*.py": "function / class"
109
- per_symbol_actions:
110
- - "推導 symbol_id:{file_path}:{name}:{kind}(例 src/foo.ts:newHandler:function)"
111
- - "推導 name 和 signature:從 requirements 文字提取 — 語義命名,不猜測實作細節"
112
- - "推導 intended_file_path:從 scope_paths 推斷最合理的目標檔案"
113
- - "呼叫 synapse_declare(symbol_id, name, kind, intended_file_path, signature, calls=[], called_by=[], implements=[])"
114
- - "邊接線:從 Phase 2 kenaz_lsp_callers 結果中找 callers/callees symbol_id → 填入 calls / called_by"
115
- - "呼叫 kenaz_lsp_callers / kenaz_lsp_references → 記錄爆炸半徑(caller 數, affected_files)"
116
- output:
117
- phantom_ids_format: "[PHANTOM] symbol_id_1, symbol_id_2(寫入 task YAML technical_notes,供 appendPhantomContext 解析)"
118
- cli_section: "在 cli_format 中輸出 ## 👻 Phantom Symbols 段落(僅當有 phantom 時)"
119
- design_benefit: "blast radius 預覽讓任務設計可基於衝擊數據調整 scope_paths 和 dependencies"
120
- edge_wiring:
121
- source: "Phase 2 kenaz_lsp_callers 結果中的 callers / callees symbol_id"
122
- validation: "synapse_declare 回報 edges_created vs edges_failed — 失敗邊記入 known_risks"
123
- fallback: "callers 無結果時,calls/called_by 留空(phantom 仍建立,但無邊)"
124
- caller_branch_coverage:
125
- rule: "聲明 called_by edge 前,必須 Read caller 原始碼確認 caller 的所有執行分支是否都需要呼叫新 symbol"
126
- why: "TASK_761 教訓 — cleanup_orphan_phantoms 只放在 run_full_index,遺漏 run_incremental_index。讀 caller 原始碼可看到所有分支,一眼看出是否有遺漏"
127
- protocol: |
128
- 1. Read(caller_symbol 所在檔案) → 看 callees 列表
129
- 2. 問:caller 有幾條執行路徑(如 full vs incremental)?
130
- 3. 新 symbol 應該在哪些路徑被呼叫?全部?還是特定條件?
131
- 4. 在 requirement 中明確寫出呼叫位置(共享路徑 vs 特定分支)
132
-
133
- cgdd_contract_analysis:
134
- description: "CGDD(Contract-Graph Driven Design)— 在 dispatch 前為 code-touching 任務映射 dispatcher/normalizer/consumer 邊界合約,預見跨邊界風險"
135
- trigger:
136
- code_touching_gate:
137
- rule: "任務會修改程式碼(role = backend/frontend/developer/sre)時啟用。design-only/research/qa 任務跳過"
138
- why: "CGDD 的價值在預見程式碼邊界合約破壞。純設計/研究任務無程式碼邊界"
139
- complexity_gate:
140
- rule: "scope_paths 跨 2+ 個檔案 OR requirements 涉及修改函數簽名/新增 boundary 時啟用。單檔 trivial fix 跳過"
141
- why: "CGDD 對單檔 fix 的 overhead > benefit(同 phantom_declaration 的 cross_module_gate 精神)"
142
- protocol:
143
- step_1:
144
- action: "為每個 scope_path 中的修改目標,用 kenaz_lsp_callers 或 Read 識別現有 data flow"
145
- output: "Data Flow Graph — 從 input source 到 output sink 的完整路徑"
146
- step_2:
147
- action: "在 flow 中標記每個跨檔案/跨模組 boundary 的 contract(Producer → Consumer → 輸入/輸出格式)"
148
- output: "Contracts 表 — | Boundary | Producer | Consumer | Contract | Bug/Risk |"
149
- step_3:
150
- action: "識別 [NEW] boundary(任務會新增的邊界)和 [BREAK] boundary(任務會改變的既有合約)"
151
- output: "風險標記 — 哪些 consumer 可能因合約變更而壞掉"
152
- step_4:
153
- action: "將 CGDD 分析結果注入任務的 technical_notes(供 dispatch agent 帶著認知開工)"
154
- format: |
155
- technical_notes 追加:
156
- [CGDD] Data flow: {Producer} → {Boundary} → {Consumer}
157
- [CGDD] New boundary: {description}
158
- [CGDD] Risk: {consumer} depends on {contract} — verify after modification
159
- output:
160
- cli_section: |
161
- ## 🔗 CGDD Contract Analysis
162
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
163
- | Boundary | Producer | Consumer | Contract | Risk |
164
- |----------|----------|----------|----------|------|
165
- ...
166
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
167
- inject_to_task: "CGDD 結果寫入每個任務的 technical_notes,格式化為 [CGDD] prefix 行"
168
- skip_annotation: "cgdd_analysis: skipped (design-only | single-file trivial | qa/research)"
169
- rules:
170
- - "✅ CGDD 在 phantom_declaration 之後執行(phantom 提供新 symbol 的邊界資訊)"
171
- - "✅ 識別 [NEW] boundary 時,requirements 必須明確指出 consumer 端的驗證方式"
172
- - "✅ 識別 [BREAK] boundary 時,acceptance_criteria 必須包含 consumer 端回歸驗證"
173
- - "❌ 不為 CGDD 開獨立任務 — 它是 Phase 3 的內建分析步驟,不是額外工作"
174
-
175
- actions:
176
- - "每個任務 1-8 小時可完成"
177
- - "任務之間盡量獨立 — 真依賴才序列,假依賴並行"
178
- - "scope_paths 從 callers / references 結果提取,確保並行安全"
179
- - "分配 agent_type(frontend/backend/sre/qa/designer/developer)"
180
- - "執行 phantom_declaration — 偵測 new-symbol keywords → synapse_declare → kenaz_lsp_callers"
181
- - "執行 cgdd_contract_analysis — code-touching 任務映射邊界合約,注入 technical_notes"
182
-
183
- scope_safety:
184
- rule: "輸出任務列表前,檢查所有任務的 scope_paths 是否有交集"
185
- overlap: "有交集 → 必須標記 dependencies 或調整 scope 使其不重疊"
186
-
187
- dependency_rules:
188
- rule: "每個任務必須分析真依賴:它是否需要其他任務的產出才能開始?"
189
- examples:
190
- - "API 端點 → 前端呼叫 → 前端任務 depends_on 後端任務"
191
- - "設計稿 → 實作 → 前端任務 depends_on 設計任務"
192
- no_deps: "確實無依賴 → dependencies: [] 且註明「獨立任務,無前置依賴」"
193
-
194
- sizing_rules:
195
- - "單一任務不應跨越 2 個以上 role — 如果需要修改前端+後端 → 拆成 2 個"
196
- - "每個任務最多 8 小時 — 超過必須拆分"
197
-
198
- cli_format: |
199
- 📐 任務設計
200
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
201
- 共拆解為 {N} 個任務:
202
-
203
- | # | 標題 | Agent | Priority | Hours | 陣型 |
204
- |---|------|-------|----------|-------|------|
205
- | 1 | ... | frontend | P1 | 4h | unit |
206
- | 2 | ... | frontend | P2 | 2h | unit |
207
-
208
- 依賴關係: {TASK_B → TASK_A}
209
- 並行策略: {N 個可並行,M 個需序列}
210
-
211
- ## 👻 Phantom Symbols(設計預覽)
212
- ─ 僅當 phantom_declaration 觸發時輸出 ─
213
- | Symbol ID | Kind | 目標檔案 | 爆炸半徑 | 風險等級 |
214
- |-----------|------|----------|----------|----------|
215
- | src/foo.ts:newFn:function | function | src/foo.ts | 5 symbols | MEDIUM |
216
-
217
- Phantom IDs → technical_notes: [PHANTOM] symbol_id_1, symbol_id_2
218
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
219
-
220
- interaction:
221
- type: "ask"
222
- instruction: |
223
- 輸出 cli_format 後,用 AskUserQuestion 工具提問,提供選項:
224
- 「任務拆解是否合理?
225
- [A] 合理,繼續
226
- [B] 調整任務數或範圍(請說明)
227
- [C] 調整優先級
228
- [D] 調整 Agent 分配
229
- [E] 重新設計」
230
- on_A: "→ Phase 3.5(簡單任務跳過)→ Phase 4-5 → Phase 6"
231
- on_B_E: "根據用戶說明調整,再次輸出 cli_format + 再次詢問"
232
-
233
- checklist:
234
- - "scope_paths 無重疊(或重疊已用 dependencies 解決)"
235
- - "每個任務有 role 分配"
236
- - "依賴關係已標記(真依賴 only)"
237
- - "每個任務 ≤8h"
238
- - "phantoms_declared: true(有 new-symbol keywords)| skipped(bug-fix/refactor only)"
239
- - "cgdd_analysis: done(code-touching 跨檔案任務)| skipped(design-only/trivial/qa/research)"
240
-
241
- prediction_recording:
242
- description: |
243
- After task design is finalized, record a prediction object for each task.
244
- This enables outcome tracking: comparing what Ansuz predicted at design time
245
- with what actually happened at post-complete (Phase 10).
246
- trigger: "Phase 3 task list finalized (user approved)"
247
- per_task_actions:
248
- - "Collect expected_files from scope_paths (normalized, forward slashes)"
249
- - "Collect risk from known_risks (high/medium/low, default: medium)"
250
- - "Collect confidence from pulse confidence or default 0.7"
251
- - "Write prediction object to .kenaz/specialist/ansuz_predictions.json"
252
- prediction_schema:
253
- task_id: "TASK_XXX"
254
- timestamp: "ISO-8601"
255
- expected_files: ["scope_paths as predicted touch set"]
256
- risk: "high|medium|low"
257
- confidence: 0.7
258
- predicted_health_delta: "positive|neutral|negative (from pulse risk assessment)"
259
- storage:
260
- file: "{PROJECT_PATH}/.kenaz/specialist/ansuz_predictions.json"
261
- format: |
262
- { "predictions": [ { ...prediction_schema } ] }
263
- write_mode: "append to predictions array (atomic read-modify-write)"
264
- mkdir: "create .kenaz/specialist/ if absent"
265
- output_note: "prediction_id logged in cli_format for traceability"
266
-
267
- context_hints:
268
- input_from: "phase_2"
269
- key_data: ["pulse_targets", "scope_paths", "known_risks", "feature_ids"]
270
-
271
- inject:
272
- rules:
273
- - pipeline.yaml
274
- specialist: []
@@ -1,67 +0,0 @@
1
- phase: 4
2
- name: "規格撰寫"
3
- goal: "為每個任務撰寫詳細 YAML 規格"
4
-
5
- required_fields:
6
- - "id, title, description, priority, role, acceptance_criteria(必填)"
7
- - "scope_paths, requirements, technical_notes, estimated_hours"
8
- - "dependencies(真依賴 only)+ feature_ids(關聯 PRODUCT_SPEC)"
9
-
10
- task_template_note: "完整 YAML 範例見 workflow.yaml.bak Phase 4 task_template"
11
-
12
- design_skill_selection:
13
- when: "任務 role = frontend 或 designer 且涉及 UI 變更"
14
- action: "懶載入 modules/design_checks.yaml → 選 skill → 寫入 technical_notes [DESIGN_CHECK]"
15
- skip_when: "role = backend/sre/qa/security/code_reviewer/incident_response/developer"
16
-
17
- verification_inference:
18
- description: "根據 scope_paths 副檔名自動推導 verification 欄位(預設值,可被 Ansuz 手動覆蓋)"
19
- override_note: "Ansuz 可在任務 YAML 手動定義 verification 欄位以覆蓋推導結果"
20
- skip_when: "scope_paths 僅含 .md / .yaml(純文件任務不產生 verification)"
21
- rules:
22
- - match: "scope_paths 含 *.rs"
23
- infer:
24
- level_1: "cargo check && cargo test"
25
- - match: "scope_paths 含 *.ts 或 *.tsx"
26
- infer:
27
- level_1: "tsc --noEmit"
28
- - match: "scope_paths 含 API route(路徑包含 /api/ 或 routes/)"
29
- infer:
30
- level_2: "probe endpoint"
31
- - match: "scope_paths 含 UI component(路徑包含 components/ 且副檔名為 .tsx)"
32
- infer:
33
- level_3: "Playwright scenario(optional)"
34
- multi_match_note: "多條規則可同時命中,合併所有 infer 欄位(level_1/level_2/level_3)"
35
-
36
- actions:
37
- - "為每個任務撰寫完整 YAML 規格(必填欄位齊全)"
38
- - "role = frontend/designer + UI 變更 → 懶載入 modules/design_checks.yaml"
39
- - "acceptance_criteria 每項可測試(非模糊描述)"
40
- - "根據 scope_paths 副檔名執行 verification_inference → 寫入任務 verification 欄位(已有手動定義則跳過)"
41
-
42
- cli_format: |
43
- 📝 規格撰寫
44
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
45
- TASK_XXX: {標題}
46
- Requirements: ✓ {需求 1}
47
- Acceptance Criteria: ✓ {標準 1}
48
- Design Checks: {skill 列表,僅 frontend/designer 任務}
49
- Verification: {level_1/level_2/level_3 推導結果,純文件任務顯示 N/A}
50
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
51
-
52
- interaction:
53
- type: "auto"
54
- instruction: "靜默執行,結果併入 Phase 6 輸出"
55
-
56
- checklist:
57
- - "所有必填欄位完整(id/title/description/priority/role/acceptance_criteria)"
58
- - "scope_paths 合理,dependencies 已設定"
59
- - "verification 欄位已填(由 verification_inference 推導,或 Ansuz 手動定義;純文件任務可無)"
60
-
61
- context_hints:
62
- input_from: "phase_3"
63
- key_data: ["task_list", "roles", "dependencies"]
64
-
65
- inject:
66
- rules: []
67
- specialist: []
@@ -1,32 +0,0 @@
1
- phase: 5
2
- name: "驗證"
3
- goal: "驗證任務完整性和正確性"
4
-
5
- actions:
6
- - "必填欄位完整?(id, title, description, priority, role, acceptance_criteria)"
7
- - "Feature ID 存在於 PRODUCT_SPEC.md?"
8
- - "依賴任務存在且狀態正確?"
9
- - "scope_paths 合理?(無重疊衝突)"
10
- - "agent_type / role 分配正確?"
11
- - "acceptance_criteria 可測試?(非模糊描述)"
12
- - ".failure/ 相關模式已考慮?"
13
-
14
- on_fail: "列出錯誤 → 返回 Phase 4 修正"
15
-
16
- cli_format: |
17
- ✅ 驗證通過 / ❌ 驗證失敗: {pass/fail 逐條列出}
18
-
19
- interaction:
20
- type: "auto"
21
- instruction: "靜默執行,驗證失敗 → 返回 Phase 4。結果併入 Phase 6 輸出"
22
-
23
- checklist:
24
- - "全部 7 項驗證通過"
25
-
26
- context_hints:
27
- input_from: "phase_4"
28
- key_data: ["task_yaml_specs"]
29
-
30
- inject:
31
- rules: []
32
- specialist: []
@@ -1,91 +0,0 @@
1
- phase: 6
2
- name: "用戶批准"
3
- goal: "展示任務摘要,等用戶批准後建立任務卡(auto mode 自動跳過)"
4
-
5
- auto_approve:
6
- description: "在 auto loop mode 下,自動跳過用戶批准,直接進入 Phase 7"
7
- condition:
8
- loop_mode: "auto"
9
- source_match: "task.source starts with 'wish_'"
10
- read_loop_json: |
11
- node -e "const fs=require('fs'); const p='.kenaz/loop.json'; console.log(JSON.stringify(fs.existsSync(p) ? JSON.parse(fs.readFileSync(p,'utf8')) : {mode:'manual'}))"
12
- behavior:
13
- - "讀取 .kenaz/loop.json,取得 mode(不存在時預設 manual)"
14
- - "檢查 task source tag(wish_* 前綴)"
15
- - "若 mode=auto 且 source 符合條件,輸出 AUTO-APPROVE 稽核日誌後直接進入 Phase 7"
16
- - "若不符合條件,走正常 manual 流程(AskUserQuestion)"
17
- audit_log_format: |
18
- 🤖 AUTO-APPROVE [Phase 6]
19
- ─────────────────────────────
20
- task_id : {task_id}
21
- source : {source_tag}
22
- loop : auto
23
- decision: APPROVED — proceeding to Phase 7
24
- ─────────────────────────────
25
-
26
- actions:
27
- - "【第一步】讀取 .kenaz/loop.json,判斷當前 loop mode"
28
- - "【auto mode + wish_* source】輸出 AUTO-APPROVE 稽核日誌,跳過 AskUserQuestion,直接 → Phase 7"
29
- - "【manual mode 或其他 source】展示任務摘要表格(ID、標題、Agent、Priority、Hours、陣型)"
30
- - "展示依賴關係和並行策略"
31
- - "展示雙時間估算(人類 vs Agent)"
32
- - "用 AskUserQuestion 詢問批准"
33
-
34
- time_estimation:
35
- agent_rules:
36
- "1-4h": "3-5 min"
37
- "4-8h": "5-8 min"
38
- "8-16h": "8-12 min"
39
- "16h+": "12-30 min"
40
-
41
- cli_format: |
42
- 🔍 任務摘要(等待批准)
43
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
44
- | # | 標題 | Agent | Priority | 人類預估 | Agent 預估 |
45
- |---|------|-------|----------|---------|-----------|
46
- | 1 | ... | frontend | P1 | 4h | ~5 min |
47
-
48
- 依賴: TASK_B → TASK_A
49
- 並行: 2 個可並行
50
- 陣型: unit × 2(並行 dispatch)
51
-
52
- ⏱️ 效率提升: ~{ratio}x({human_hours}h → {agent_min} min)
53
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
54
-
55
- interaction:
56
- type: "conditional"
57
- auto_mode:
58
- condition: "loop mode = auto AND source matches wish_*"
59
- action: "輸出 AUTO-APPROVE 稽核日誌(含 task_id + source tag),直接 → Phase 7"
60
- note: "禁止呼叫 AskUserQuestion — 這是 headless 自動化流程"
61
- manual_mode:
62
- instruction: |
63
- 輸出 cli_format 後,用 AskUserQuestion 工具提問,提供選項:
64
- 「批准建立任務卡嗎?
65
- [A] 批准,開始建立
66
- [B] 需要調整規格(請說明)
67
- [C] 返回重新設計任務拆解
68
- [D] 取消」
69
- on_A: "→ Phase 7(建立任務卡)→ Phase 8(自動 dispatch)"
70
- on_B: "根據說明調整規格,重走 Phase 4-5,再次詢問批准"
71
- on_C: "→ 返回 Phase 3 重新設計"
72
- on_D: "停止,回到 Phase 0 待命"
73
-
74
- rules:
75
- - "✅ 進入 Phase 6 先讀 loop.json,判斷 auto/manual"
76
- - "✅ auto mode + 符合 source → AUTO-APPROVE,記錄 task_id + source,直接進 Phase 7"
77
- - "✅ manual mode → 等用戶批准後才建立任務卡"
78
- - "✅ 批准後 Phase 7→8 全程自動,不再詢問"
79
- - "❌ auto mode 下禁止呼叫 AskUserQuestion — 這會阻塞 headless loop"
80
-
81
- checklist:
82
- - "已讀取 loop.json,確認當前 mode(auto/manual)"
83
- - "用戶已批准建立任務卡(manual mode)或 AUTO-APPROVE 日誌已輸出(auto mode)"
84
-
85
- context_hints:
86
- input_from: "phase_5"
87
- key_data: ["validated_specs"]
88
-
89
- inject:
90
- rules: []
91
- specialist: []
@@ -1,58 +0,0 @@
1
- phase: 7
2
- name: "任務建立"
3
- goal: "在任務系統中建立 YAML 任務"
4
-
5
- system: ".collaboration/core/task-api.js"
6
- note: "子專案時所有 task-api.js 呼叫必須加 --project-path {PROJECT_PATH}"
7
-
8
- actions:
9
- - "執行 task-api.js create(見 create_command)"
10
- - "執行 task-api.js list 確認建立結果"
11
- - "驗證 YAML 文件已建立(task-api.js get TASK_XXX)"
12
- - "確認任務狀態已更新(task-api.js list)"
13
- - "更新 dev/pipeline/PROGRESS.md — Last Update + Recent Activity(僅 Core 專案)"
14
-
15
- quality_gate:
16
- requirements_min: 3 # ⚠️ 最少 3 條 requirements,否則 task create 會被拒絕
17
- note: "kenaz_task_create MCP 和 task-api.js create 都執行品質檢查:requirements < 3 → 拒絕。必須補齊!"
18
-
19
- create_command: |
20
- node {CORE}/.collaboration/core/task-api.js [--project-path {PROJECT_PATH}] create \
21
- --title "任務名稱" \
22
- --priority P1 \
23
- --role frontend \
24
- --rigor medium \
25
- --complexity medium \
26
- --tags code \
27
- --scope-paths "dashboard/src/" \
28
- --dependencies TASK_YYY \
29
- --feature-ids F-001 \
30
- --estimated-hours 4 \
31
- --acceptance-criteria "AC 1" --acceptance-criteria "AC 2" \
32
- --requirements "需求 1" --requirements "需求 2" --requirements "需求 3"
33
-
34
- verify_command: "node {CORE}/.collaboration/core/task-api.js [--project-path {PROJECT_PATH}] list"
35
-
36
- cli_format: |
37
- 📦 任務建立
38
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
39
- ✓ TASK_XXX 已建立 → .collaboration/tasks/backlog/
40
- ✓ 任務統計: 待處理 {N} | 進行中 {N} | 已完成 {N}
41
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
42
-
43
- interaction:
44
- type: "auto"
45
- instruction: "Phase 6 批准後自動建立任務卡,不問"
46
-
47
- checklist:
48
- - "所有任務已建立(task-api.js list 確認)"
49
- - "每個任務已用 task-api.js get 驗證存在"
50
- - "PROGRESS.md 已更新(Core 專案)"
51
-
52
- context_hints:
53
- input_from: "phase_6"
54
- key_data: ["approved_specs"]
55
-
56
- inject:
57
- rules: []
58
- specialist: []