kenaz 0.3.21 → 0.3.23

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 (481) hide show
  1. package/core/.claude/commands/Ansuz.md +2 -0
  2. package/core/.claude/hooks/__tests__/peer-session-fill.test.js +37 -0
  3. package/core/.claude/hooks/_ansuz-conversation.js +32 -1
  4. package/core/.claude/hooks/_user-scope.js +1 -1
  5. package/core/.claude/hooks/core-resolve.js +1 -1
  6. package/core/.claude/hooks/peer-optin.test.js +74 -0
  7. package/core/.claude/hooks/peer-session-fill.js +38 -0
  8. package/core/.claude/hooks/turn-context.js +5 -4
  9. package/core/.claude/hooks/worktree-create.js +6 -6
  10. package/core/.claude/hooks/worktree-remove.js +4 -4
  11. package/core/.claude/settings.json +9 -0
  12. package/core/.collaboration/core/reconcile.js +16 -1
  13. package/core/.collaboration/core/task-2467-lifecycle.test.js +63 -0
  14. package/core/.collaboration/core/task-api.js +37 -7
  15. package/core/.formation/bifrost/launch.js +1 -1
  16. package/core/.formation/bifrost/openai/codex-hook-shim.js +21 -4
  17. package/core/.formation/bifrost/openai/codex-peer-pull.test.js +42 -0
  18. package/core/.formation/bifrost/provider-launch.js +2 -1
  19. package/core/.formation/tools/kenaz-stats.js +1 -1
  20. package/core/.formation/tools/post-complete/git-merge.js +1 -1
  21. package/core/.formation/tools/prompt.js +1 -1
  22. package/core/.kenaz/specialist/ansuz_rules.yaml +7 -51
  23. package/core/.kenaz/specialist/ansuz_session_handoff.schema.json +2 -6
  24. package/core/.rule/general/project-self-containment.yaml +2 -2
  25. package/core/.specialist/Amelia/README.md +1 -1
  26. package/core/.specialist/Amelia/rule.yaml +1 -1
  27. package/core/.specialist/Ansuz/RULES.md +1 -1
  28. package/core/.specialist/Ansuz/concepts/commitment_layer.yaml +1 -1
  29. package/core/.specialist/Ansuz/concepts/evolvable_guardrails.yaml +1 -1
  30. package/core/.specialist/Ansuz/knowledge.yaml +1 -3
  31. package/core/.specialist/tools/__tests__/task-2409-lessons.test.js +10 -0
  32. package/core/.specialist/tools/__tests__/task-2427-harvest.test.js +25 -0
  33. package/core/.specialist/tools/ansuz-boot-fast.js +1 -1
  34. package/core/.specialist/tools/failure-detector.js +4 -4
  35. package/core/.specialist/tools/handoff-doc.js +1 -1
  36. package/core/.specialist/tools/lessons.js +2 -2
  37. package/core/CLAUDE.md +5 -5
  38. package/core/KENAZ_CORE_VERSION +1 -1
  39. package/core/dashboard/scripts/install-kenaz-cli.js +471 -0
  40. package/core/dev/scripts/check-file-size.js +1 -1
  41. package/core/dev/scripts/ci-feedback.js +1 -1
  42. package/core/dev/scripts/gc-agent-worktrees.js +11 -11
  43. package/core/dev/scripts/kenaz-session.js +3 -3
  44. package/core/dev/scripts/peer-identity-e2e.js +3 -3
  45. package/core/dev/scripts/run-rust-tests.js +2 -2
  46. package/core/dev/scripts/skill-routing-replay.js +3 -3
  47. package/core/dev/scripts/task1961/selftest.js +2 -2
  48. package/core/dev/scripts/windows-hide-guard.test.js +97 -0
  49. package/core/plugins/kenaz/commands/Ansuz.md +2 -0
  50. package/core/plugins/kenaz/guidance.md +2 -0
  51. package/core/plugins/kenaz/hooks/core-resolve.js +1 -1
  52. package/core/plugins/kenaz/hooks/hooks.json +9 -0
  53. package/core/plugins/kenaz/hooks/kenaz-hook.js +53 -4
  54. package/core/plugins/kenaz/scripts/kenaz.test.js +72 -5
  55. package/core/plugins/kenaz/scripts/ygg.js +40 -4
  56. package/core/plugins/kenaz/scripts/ygg.test.js +63 -3
  57. package/core/plugins/kenaz-peer/hooks/register.test.ts +59 -2
  58. package/core/plugins/kenaz-peer/hooks/register.ts +24 -1
  59. package/lib/cli.js +9 -5
  60. package/package.json +6 -6
  61. package/vendor/install-kenaz-cli.js +21 -6
  62. package/core/.kenaz/designs/METAPLASTICITY_CONFIDENCE_DESIGN.md +0 -537
  63. package/core/.kenaz/designs/REFLEX_INITIATOR_DESIGN.md +0 -501
  64. package/core/.kenaz/designs/TASK_1385_handoff_mcp_design.md +0 -426
  65. package/core/.kenaz/designs/TASK_932_hippocampus_consolidation.md +0 -103
  66. package/core/.kenaz/designs/TASK_934_efe_signal_engine.md +0 -97
  67. package/core/.kenaz/designs/TASK_935_self_evolution_framework.md +0 -154
  68. package/core/.kenaz/designs/VISION_cognitive_architecture_roadmap.md +0 -159
  69. package/core/.kenaz/designs/metaplasticity_simulation_results.json +0 -696
  70. package/core/.kenaz/main-memory/README.md +0 -230
  71. package/core/.kenaz/main-memory/kenaz/cortex/001_cortex_overview.md +0 -168
  72. package/core/.kenaz/main-memory/kenaz/cortex/001_rag_engine_overview.md +0 -30
  73. package/core/.kenaz/main-memory/kenaz/memory-system/001_three_tier_architecture.md +0 -361
  74. package/core/.kenaz/main-memory/kenaz/pipeline/001_task_execution_flow.md +0 -117
  75. package/core/.kenaz/main-memory/kenaz/pipeline/001_task_granularity.md +0 -154
  76. package/core/.kenaz/main-memory/kenaz/pipeline/002_team_priority.md +0 -51
  77. package/core/.kenaz/main-memory/kenaz/pipeline/003_feature_id_system.md +0 -46
  78. package/core/.kenaz/main-memory/kenaz/rules/001_gen_007_self_containment.md +0 -108
  79. package/core/.kenaz/main-memory/kenaz/rules/001_rule_priority_system.md +0 -121
  80. package/core/.kenaz/main-memory/kenaz/rules/002_agt_006_pre_check.md +0 -0
  81. package/core/.kenaz/main-memory/kenaz/rules/003_ppl_002_task_archival.md +0 -48
  82. package/core/.kenaz/main-memory/kenaz/system/001_dual_track_task_system.md +0 -197
  83. package/core/.kenaz/main-memory/knowledge/patterns/001_json_bom_issue.md +0 -78
  84. package/core/.kenaz/main-memory/knowledge/patterns/001_leader_worker_pattern.md +0 -0
  85. package/core/.kenaz/main-memory/knowledge/patterns/002_scope_path_conflict.md +0 -115
  86. package/core/.kenaz/main-memory/knowledge/patterns/002_task_dependency_resolution.md +0 -223
  87. package/core/.kenaz/main-memory/knowledge/patterns/003_question_protocol.md +0 -242
  88. package/core/.kenaz/main-memory/knowledge/patterns/004_user_insight_value.md +0 -111
  89. package/core/.kenaz/main-memory/knowledge/patterns/005_file_lock_pattern.md +0 -274
  90. package/core/.kenaz/main-memory/knowledge/references/001_ppl_rules.md +0 -28
  91. package/core/.kenaz/main-memory/knowledge/solutions/001_json_bom_issue.md +0 -137
  92. package/core/.kenaz/main-memory/knowledge/solutions/001_team_invocation.md +0 -0
  93. package/core/.kenaz/main-memory/knowledge/solutions/002_passive_monitoring.md +0 -0
  94. package/core/.kenaz/main-memory/knowledge/solutions/003_windows_file_race_condition.md +0 -239
  95. package/core/.kenaz/main-memory/registry.json +0 -326
  96. package/core/.kenaz/main-memory/version.yaml +0 -58
  97. package/core/.kenaz/specialist/memory_guard_fired.json +0 -1
  98. package/core/.kenaz/specialist/memory_guard_trigger_cache.json +0 -1
  99. package/core/.kenaz/specialist/memory_source_priority.yaml +0 -260
  100. package/core/.kenaz/specialist/prompt_1775.txt +0 -317
  101. package/core/.kenaz/specialist/prompt_1776.txt +0 -326
  102. package/core/.kenaz/specialist/prompt_1791.txt +0 -320
  103. package/core/.kenaz/specialist/prompt_1792.txt +0 -320
  104. package/core/.kenaz/specialist/prompt_1795.txt +0 -281
  105. package/core/.kenaz/specialist/prompt_1813.txt +0 -332
  106. package/core/.kenaz/specialist/prompt_1814.txt +0 -401
  107. package/core/.kenaz/specialist/prompt_1815.txt +0 -394
  108. package/core/.kenaz/specialist/prompt_1816.txt +0 -437
  109. package/core/.kenaz/specialist/prompt_1818.txt +0 -361
  110. package/core/.kenaz/specialist/prompt_1819.txt +0 -421
  111. package/core/.kenaz/specialist/prompt_1821.txt +0 -345
  112. package/core/.kenaz/specialist/prompt_1822.txt +0 -313
  113. package/core/.kenaz/specialist/prompt_1824.txt +0 -348
  114. package/core/.kenaz/specialist/prompt_1826.txt +0 -388
  115. package/core/.kenaz/specialist/rune_efe_salience_gap.md +0 -21
  116. package/core/.kenaz/specialist/task1825_update.json +0 -43
  117. package/core/.kenaz/specialist/taskgen/consolidation_i.json +0 -38
  118. package/core/.kenaz/specialist/taskgen/csharp_a.json +0 -44
  119. package/core/.kenaz/specialist/taskgen/csharp_b.json +0 -40
  120. package/core/.kenaz/specialist/taskgen/embedding_e.json +0 -34
  121. package/core/.kenaz/specialist/taskgen/hygiene_fg.json +0 -39
  122. package/core/.kenaz/specialist/taskgen/pathology_h.json +0 -36
  123. package/core/.kenaz/specialist/taskgen/unity_noise_d.json +0 -38
  124. package/core/.kenaz/specialist/taskgen/visibility_c.json +0 -38
  125. package/core/.specialist/Ansuz/decisions/ADR-requirement-graph-layer.md +0 -390
  126. package/core/.specialist/Ansuz/self_model_seed.backup.json +0 -100
  127. package/core/.specialist/ansuz_session_handoff.json +0 -96
  128. package/core/dev/ALAYA_FIELD_FEEDBACK_DESIGN.md +0 -126
  129. package/core/dev/ANSUZ_SCAFFOLD_DIET_2026-09-20.md +0 -231
  130. package/core/dev/ANSUZ_STARTUP_INJECTION_REVIEW.md +0 -355
  131. package/core/dev/ANSUZ_WORKFLOW_MODERNIZATION.md +0 -143
  132. package/core/dev/CORTEX_META_GRAPH_ASSESSMENT.md +0 -99
  133. package/core/dev/FREYA_DOWNSTREAM_BUGS_2026-09-19.md +0 -44
  134. package/core/dev/GLOBAL_MEMORY_IDENTITY_CONSOLIDATION.md +0 -263
  135. package/core/dev/GUARD_EFFECTIVENESS_DESIGN.md +0 -180
  136. package/core/dev/HEALTH_GATE_VARIANCE_ASSESSMENT.md +0 -271
  137. package/core/dev/HOOK_DIET_2026-09-21.md +0 -126
  138. package/core/dev/JEV_INTEGRATION_PLAN.md +0 -189
  139. package/core/dev/KENAZ_AGENT_CONNECT_v1_SPEC.md +0 -139
  140. package/core/dev/MOBILE_DESIGN_SPEC.md +0 -569
  141. package/core/dev/MULTI_ANSUZ_SPEC.md +0 -136
  142. package/core/dev/MUNINN_RETIREMENT.md +0 -115
  143. package/core/dev/PHASE3_ATTRIBUTION_POPULATION_DIAGNOSIS.md +0 -211
  144. package/core/dev/PHASE3_P3-2B_TASKLEVEL_PROBE.md +0 -83
  145. package/core/dev/PHASE3_P3-2_POPULATION_DISJOINTNESS.md +0 -83
  146. package/core/dev/PHASE3_P3-2_REMEASURE_REPORT.md +0 -231
  147. package/core/dev/PREDICTION_GROUNDING_DESIGN.md +0 -376
  148. package/core/dev/PRODUCT_SPEC.md +0 -317
  149. package/core/dev/PROJECT_REGISTRY_DUPLICATE_ASSESSMENT.md +0 -86
  150. package/core/dev/STARTUP_TIMELINE_TASK_1995.md +0 -181
  151. package/core/dev/SYNAPSE_WORKER_PER_PROJECT.md +0 -881
  152. package/core/dev/TASK_1680_P3-3_DISPATCH_SPEC.md +0 -96
  153. package/core/dev/TASK_1684_CALIBRATION_IMPACT_ANALYSIS.md +0 -170
  154. package/core/dev/TASK_1684_FORK_A_GOODHART_DESIGN.md +0 -171
  155. package/core/dev/TASK_1684_P3_2_REMEASURE_VALIDATION.md +0 -262
  156. package/core/dev/TASK_1903_SIGNAL_AUC_MEASUREMENT.md +0 -207
  157. package/core/dev/TASK_1904_BRANCH_INTEGRITY_AUDIT.md +0 -146
  158. package/core/dev/ansuz-eval/README.md +0 -38
  159. package/core/dev/ansuz-eval/build-fixtures.js +0 -87
  160. package/core/dev/ansuz-eval/grade.js +0 -96
  161. package/core/dev/ansuz-eval/grader.test.js +0 -117
  162. package/core/dev/ansuz-eval/tasks.md +0 -32
  163. package/core/dev/archive/ansuz/BOOT_FULL.md +0 -141
  164. package/core/dev/archive/ansuz/agents/ansuz-boot.md +0 -176
  165. package/core/dev/archive/ansuz/designs/alaya-passive-surfacing.md +0 -84
  166. package/core/dev/archive/ansuz/designs/cc_memory_indexing.md +0 -307
  167. package/core/dev/archive/ansuz/designs/check_guard.md +0 -322
  168. package/core/dev/archive/ansuz/designs/consequence_loop.md +0 -227
  169. package/core/dev/archive/ansuz/designs/mcp_kuzudb_lock_architecture.md +0 -312
  170. package/core/dev/archive/ansuz/designs/phase0_git_enrichment.md +0 -278
  171. package/core/dev/archive/ansuz/designs/refactor_mcp_tools_synapse.md +0 -490
  172. package/core/dev/archive/ansuz/designs/semantic_markdown_extraction.md +0 -167
  173. package/core/dev/archive/ansuz/designs/task_1372_prompt_injects_into.md +0 -193
  174. package/core/dev/archive/ansuz/designs/thought_stack.md +0 -286
  175. package/core/dev/archive/ansuz/investigations/reachability_unified_api_2026-04-11.md +0 -330
  176. package/core/dev/archive/ansuz/investigations/synapse_orphans_indexing_bug_2026-04-11.md +0 -352
  177. package/core/dev/archive/ansuz/investigations/synapse_orphans_reindex_verification_2026-04-11.md +0 -48
  178. package/core/dev/archive/ansuz/investigations/synapse_orphans_verification_2026-04-11.md +0 -170
  179. package/core/dev/archive/ansuz/legacy/kernel.yaml +0 -399
  180. package/core/dev/archive/ansuz/legacy/phases/phase_0.yaml +0 -418
  181. package/core/dev/archive/ansuz/legacy/phases/phase_1.yaml +0 -376
  182. package/core/dev/archive/ansuz/legacy/phases/phase_10.yaml +0 -35
  183. package/core/dev/archive/ansuz/legacy/phases/phase_11.yaml +0 -582
  184. package/core/dev/archive/ansuz/legacy/phases/phase_2.yaml +0 -94
  185. package/core/dev/archive/ansuz/legacy/phases/phase_3.yaml +0 -274
  186. package/core/dev/archive/ansuz/legacy/phases/phase_4.yaml +0 -67
  187. package/core/dev/archive/ansuz/legacy/phases/phase_5.yaml +0 -32
  188. package/core/dev/archive/ansuz/legacy/phases/phase_6.yaml +0 -91
  189. package/core/dev/archive/ansuz/legacy/phases/phase_7.yaml +0 -58
  190. package/core/dev/archive/ansuz/legacy/phases/phase_8.yaml +0 -146
  191. package/core/dev/archive/ansuz/legacy/phases/phase_9.yaml +0 -424
  192. package/core/dev/archive/ansuz/specs/INDEX_bifrost_hook_parity.yaml +0 -92
  193. package/core/dev/archive/ansuz/specs/active-inference-formation.yaml +0 -453
  194. package/core/dev/archive/ansuz/specs/brief_TASK_1228_userpromptsubmit.yaml +0 -191
  195. package/core/dev/archive/ansuz/specs/brief_TASK_1229_pretooluse_posttooluse.yaml +0 -250
  196. package/core/dev/archive/ansuz/specs/brief_TASK_1230_sessionstart_stop.yaml +0 -301
  197. package/core/dev/archive/ansuz/specs/brief_TASK_1231_verification.yaml +0 -272
  198. package/core/dev/archive/skills/feature_agent/SKILL.md +0 -289
  199. package/core/dev/design/PHASE4_DESIGN.md +0 -559
  200. package/core/dev/design/dashboard_docs_integration_PLAN.md +0 -388
  201. package/core/dev/design/matrix_format_ABBREVIATIONS.md +0 -655
  202. package/core/dev/design/matrix_format_DESIGN_SPEC.md +0 -601
  203. package/core/dev/design/matrix_format_DISCUSSION_SUMMARY.md +0 -484
  204. package/core/dev/design/matrix_format_EXAMPLE_memory.matrix +0 -13
  205. package/core/dev/design/matrix_format_EXAMPLE_project_status.matrix +0 -9
  206. package/core/dev/design/matrix_format_EXAMPLE_tasks.matrix +0 -14
  207. package/core/dev/design/matrix_format_SYNTAX_BNF.md +0 -754
  208. package/core/dev/design/matrix_format_TOKEN_COMPARISON.md +0 -484
  209. package/core/dev/design/matrix_v2_COGNITIVE_DESIGN.md +0 -503
  210. package/core/dev/design/matrix_v2_DISCUSSION_SUMMARY.md +0 -414
  211. package/core/dev/design/matrix_v2_EXAMPLE.matrix +0 -67
  212. package/core/dev/designs/EXPANDABLE_CARD_DESIGN_SPEC.md +0 -509
  213. package/core/dev/jev-eval/ACTIVE_CORRECTION.md +0 -52
  214. package/core/dev/jev-eval/ANNOTATION_GUIDE.md +0 -68
  215. package/core/dev/jev-eval/BASELINE_COMPARISON.md +0 -45
  216. package/core/dev/jev-eval/CONTEXT_REVIEW.md +0 -31
  217. package/core/dev/jev-eval/EVALUATION_STATUS.md +0 -39
  218. package/core/dev/jev-eval/HISTORICAL_CORPUS.md +0 -33
  219. package/core/dev/jev-eval/PACKAGING_VERIFICATION.md +0 -42
  220. package/core/dev/jev-eval/README.md +0 -101
  221. package/core/dev/jev-eval/THALAMUS_RANKING.md +0 -58
  222. package/core/dev/jev-eval/VALIDATION_PROGRESS.md +0 -54
  223. package/core/dev/jev-eval/cli.mjs +0 -50
  224. package/core/dev/jev-eval/context.mjs +0 -183
  225. package/core/dev/jev-eval/corpus.mjs +0 -186
  226. package/core/dev/jev-eval/fixtures/conversation-review.seed.jsonl +0 -6
  227. package/core/dev/jev-eval/fixtures/synthetic.jsonl +0 -11
  228. package/core/dev/jev-eval/metrics.mjs +0 -67
  229. package/core/dev/jev-eval/muninn-baseline.mjs +0 -119
  230. package/core/dev/jev-eval/providers.mjs +0 -95
  231. package/core/dev/jev-eval/reports/annotation-pilot-2026-09-20.json +0 -32
  232. package/core/dev/jev-eval/reports/context-review-2026-09-20.json +0 -48
  233. package/core/dev/jev-eval/reports/conversation-review.pending.json +0 -151
  234. package/core/dev/jev-eval/reports/history-corpus-2026-09-20.json +0 -52
  235. package/core/dev/jev-eval/reports/length-probe-2026-09-20.json +0 -133
  236. package/core/dev/jev-eval/reports/live-smoke-2026-09-20.json +0 -616
  237. package/core/dev/jev-eval/reports/muninn-baseline-2026-09-20.json +0 -52
  238. package/core/dev/jev-eval/reports/resilience-2026-09-20.json +0 -520
  239. package/core/dev/jev-eval/reports/rules-baseline.json +0 -197
  240. package/core/dev/jev-eval/reports/synthetic-review.pending.json +0 -357
  241. package/core/dev/jev-eval/resilience.mjs +0 -71
  242. package/core/dev/jev-eval/review.mjs +0 -78
  243. package/core/dev/jev-eval/schema.mjs +0 -87
  244. package/core/dev/jev-eval/test/context.test.mjs +0 -95
  245. package/core/dev/jev-eval/test/corpus.test.mjs +0 -102
  246. package/core/dev/jev-eval/test/eval.test.mjs +0 -146
  247. package/core/dev/jev-eval/test/muninn-baseline.test.mjs +0 -71
  248. package/core/dev/jev-eval/test/resilience.test.mjs +0 -72
  249. package/core/dev/jev-eval/test/review.test.mjs +0 -61
  250. package/core/dev/pipeline/PHASE3_PLANNING_SUMMARY.md +0 -338
  251. package/core/dev/pipeline/PROGRESS.md +0 -113
  252. package/core/dev/pipeline/PROGRESS_template.md +0 -860
  253. package/core/dev/pipeline/QA_REPORT_F008.md +0 -431
  254. package/core/dev/pipeline/QA_REPORT_LOCAL_CLAUDE_DIAGNOSIS.md +0 -583
  255. package/core/dev/pipeline/README.md +0 -210
  256. package/core/dev/pipeline/WORKFLOW_GUIDE.md +0 -824
  257. package/core/dev/pipeline/archived/TASK_015_tauri_init.yaml +0 -53
  258. package/core/dev/pipeline/archived/TASK_016_tauri_commands.yaml +0 -54
  259. package/core/dev/pipeline/archived/TASK_017_rust_pty.yaml +0 -54
  260. package/core/dev/pipeline/archived/TASK_018_tauri_bundle.yaml +0 -53
  261. package/core/dev/pipeline/archived/TASK_019_release_workflow.yaml +0 -56
  262. package/core/dev/pipeline/archived/TASK_020_update_ui.yaml +0 -54
  263. package/core/dev/pipeline/archived/TASK_021_update_notification_ui.yaml +0 -55
  264. package/core/dev/pipeline/archived/TASK_022_remove_node_pty.yaml +0 -65
  265. package/core/dev/pipeline/archived/TASK_023_api_routes_migration.yaml +0 -86
  266. package/core/dev/pipeline/archived/TASK_024_feature_id_system.yaml +0 -51
  267. package/core/dev/pipeline/archived/TASK_025_executable_acceptance.yaml +0 -66
  268. package/core/dev/pipeline/archived/TASK_026_spec_versioning.yaml +0 -56
  269. package/core/dev/pipeline/archived/TASK_027_drift_detection.yaml +0 -60
  270. package/core/dev/pipeline/archived/TASK_028_tauri_pty_manager.yaml +0 -60
  271. package/core/dev/pipeline/archived/TASK_029_tauri_pty_commands.yaml +0 -62
  272. package/core/dev/pipeline/archived/TASK_030_frontend_session_adapter.yaml +0 -54
  273. package/core/dev/pipeline/archived/TASK_031_terminal_tauri_events.yaml +0 -56
  274. package/core/dev/pipeline/archived/TASK_041_scheduler_data_models.yaml +0 -54
  275. package/core/dev/pipeline/archived/TASK_042_path_lock_manager.yaml +0 -53
  276. package/core/dev/pipeline/archived/TASK_043_process_manager.yaml +0 -57
  277. package/core/dev/pipeline/archived/TASK_044_git_integration.yaml +0 -85
  278. package/core/dev/pipeline/archived/TASK_045_task_queue_manager.yaml +0 -54
  279. package/core/dev/pipeline/archived/TASK_046_scheduler_dispatcher.yaml +0 -60
  280. package/core/dev/pipeline/archived/TASK_047_tauri_scheduler_commands.yaml +0 -55
  281. package/core/dev/pipeline/archived/TASK_048_realtime_status_push.yaml +0 -92
  282. package/core/dev/pipeline/archived/TASK_049_frontend_scheduler_integration.yaml +0 -58
  283. package/core/dev/pipeline/archived/TASK_050_error_recovery.yaml +0 -56
  284. package/core/dev/pipeline/archived/TASK_051_optimization_proposals_backend.yaml +0 -53
  285. package/core/dev/pipeline/archived/TASK_052_optimization_proposals_ui.yaml +0 -58
  286. package/core/dev/pipeline/archived/TASK_053_optimization_proposals_diff_view.yaml +0 -54
  287. package/core/dev/pipeline/archived/TASK_054_multi_project_scheduler_state.yaml +0 -76
  288. package/core/dev/pipeline/archived/TASK_055_scheduler_api_project_scope.yaml +0 -64
  289. package/core/dev/pipeline/archived/TASK_056_frontend_scheduler_project_scope.yaml +0 -62
  290. package/core/dev/pipeline/archived/TASK_057_scheduler_module_structure.yaml +0 -54
  291. package/core/dev/pipeline/archived/TASK_058_scheduler_models_extract.yaml +0 -51
  292. package/core/dev/pipeline/archived/TASK_059_scheduler_core_extract.yaml +0 -51
  293. package/core/dev/pipeline/archived/TASK_060_scheduler_commands_extract.yaml +0 -51
  294. package/core/dev/pipeline/archived/TASK_061_scheduler_specialized_commands.yaml +0 -53
  295. package/core/dev/pipeline/archived/TASK_062_process_manager_module_structure.yaml +0 -56
  296. package/core/dev/pipeline/archived/TASK_063_process_manager_core_extract.yaml +0 -56
  297. package/core/dev/pipeline/archived/TASK_064_recovery_module_structure.yaml +0 -57
  298. package/core/dev/pipeline/archived/TASK_065_recovery_core_extract.yaml +0 -56
  299. package/core/dev/pipeline/archived/TASK_066_self_enhancement_scheduler_models.yaml +0 -60
  300. package/core/dev/pipeline/archived/TASK_067_agents_section_quick_actions.yaml +0 -53
  301. package/core/dev/pipeline/archived/TASK_067_self_enhancement_scheduler_core.yaml +0 -65
  302. package/core/dev/pipeline/archived/TASK_068_agent_workflow_rule_enhancement.yaml +0 -46
  303. package/core/dev/pipeline/archived/TASK_068_self_enhancement_tauri_commands.yaml +0 -61
  304. package/core/dev/pipeline/archived/TASK_069_agent_wizard_responsive.yaml +0 -46
  305. package/core/dev/pipeline/archived/TASK_069_self_enhancement_ui.yaml +0 -62
  306. package/core/dev/pipeline/archived/TASK_070_preview_panel_redesign.yaml +0 -62
  307. package/core/dev/pipeline/archived/TASK_070_self_enhancement_integration.yaml +0 -57
  308. package/core/dev/pipeline/archived/TASK_071_preview_panel_qa.yaml +0 -98
  309. package/core/dev/pipeline/archived/TASK_071_single_agent_config.yaml +0 -57
  310. package/core/dev/pipeline/archived/TASK_072_preview_modal_esc_fix.yaml +0 -71
  311. package/core/dev/pipeline/archived/TASK_072_product_review_module.yaml +0 -57
  312. package/core/dev/pipeline/archived/TASK_073_agents_page_component_refactor.yaml +0 -68
  313. package/core/dev/pipeline/archived/TASK_073_rename_single_agent.yaml +0 -64
  314. package/core/dev/pipeline/archived/TASK_074_preview_mode_ui_diagnosis.yaml +0 -71
  315. package/core/dev/pipeline/archived/TASK_074_single_agent_ui_toggle.yaml +0 -56
  316. package/core/dev/pipeline/archived/TASK_075_agents_page_component_refactor.yaml +0 -69
  317. package/core/dev/pipeline/archived/TASK_075_single_agent_integration_test.yaml +0 -75
  318. package/core/dev/pipeline/archived/TASK_076_preview_mode_ui_diagnosis.yaml +0 -70
  319. package/core/dev/pipeline/archived/TASK_076_single_agent_continuous_mode.yaml +0 -65
  320. package/core/dev/pipeline/archived/TASK_077_failure_directory_structure.yaml +0 -51
  321. package/core/dev/pipeline/archived/TASK_077_single_agent_typescript_types.yaml +0 -59
  322. package/core/dev/pipeline/archived/TASK_078_fail_001_agent_no_output.yaml +0 -53
  323. package/core/dev/pipeline/archived/TASK_078_single_agent_ui_simplify.yaml +0 -74
  324. package/core/dev/pipeline/archived/TASK_079_dashboard_rwd_responsive.yaml +0 -63
  325. package/core/dev/pipeline/archived/TASK_079_fail_002_json_bom.yaml +0 -56
  326. package/core/dev/pipeline/archived/TASK_080_fail_003_queue_pollution.yaml +0 -56
  327. package/core/dev/pipeline/archived/TASK_080_http_server_module.yaml +0 -55
  328. package/core/dev/pipeline/archived/TASK_081_failure_logging_tools.yaml +0 -57
  329. package/core/dev/pipeline/archived/TASK_081_http_api_routes.yaml +0 -62
  330. package/core/dev/pipeline/archived/TASK_082_frontend_api_adapter.yaml +0 -51
  331. package/core/dev/pipeline/archived/TASK_082_integrate_failure_to_workflow.yaml +0 -60
  332. package/core/dev/pipeline/archived/TASK_083_cleanup_nextjs_api.yaml +0 -48
  333. package/core/dev/pipeline/archived/TASK_083_task_queue_cleanup.yaml +0 -67
  334. package/core/dev/pipeline/archived/TASK_084_rust_dead_code_cleanup.yaml +0 -66
  335. package/core/dev/pipeline/archived/TASK_084_scheduler_sync_logic_fix.yaml +0 -68
  336. package/core/dev/pipeline/archived/TASK_085_http_api_web_mode_fixes.yaml +0 -46
  337. package/core/dev/pipeline/archived/TASK_085_memory_consolidation_0204_0205.yaml +0 -98
  338. package/core/dev/pipeline/archived/TASK_086_collapsible_preview_panel.yaml +0 -161
  339. package/core/dev/pipeline/archived/TASK_086_web_mode_feature_parity.yaml +0 -62
  340. package/core/dev/pipeline/archived/TASK_087_manual_memory_archival.yaml +0 -163
  341. package/core/dev/pipeline/archived/TASK_087_mobile_http_control.yaml +0 -68
  342. package/core/dev/pipeline/archived/TASK_088_fail_003_to_ppl_002_rule.yaml +0 -63
  343. package/core/dev/pipeline/archived/TASK_088_mobile_http_qa.yaml +0 -121
  344. package/core/dev/pipeline/archived/TASK_089_agent_collaboration_topic.yaml +0 -60
  345. package/core/dev/pipeline/archived/TASK_089_web_mode_monitor_fix.yaml +0 -58
  346. package/core/dev/pipeline/archived/TASK_090_cli_detection_fix.yaml +0 -61
  347. package/core/dev/pipeline/archived/TASK_090_ui_ux_lessons_topic.yaml +0 -63
  348. package/core/dev/pipeline/archived/TASK_091_expandable_card_design.yaml +0 -56
  349. package/core/dev/pipeline/archived/TASK_091_move_agent_section_components.yaml +0 -65
  350. package/core/dev/pipeline/archived/TASK_092_expandable_card_component.yaml +0 -60
  351. package/core/dev/pipeline/archived/TASK_092_refactor_agent_create_wizard.yaml +0 -84
  352. package/core/dev/pipeline/archived/TASK_093_taskcard_detail_integration.yaml +0 -57
  353. package/core/dev/pipeline/archived/TASK_093_update_barrel_exports_test.yaml +0 -84
  354. package/core/dev/pipeline/archived/TASK_094_ai_agent_generation_enhancement.yaml +0 -115
  355. package/core/dev/pipeline/archived/TASK_094_proposalcard_detail_integration.yaml +0 -55
  356. package/core/dev/pipeline/archived/TASK_095_preview_fixes.yaml +0 -129
  357. package/core/dev/pipeline/archived/TASK_095_single_agent_task_selector.yaml +0 -60
  358. package/core/dev/pipeline/archived/TASK_096_agents_page_ux_improvements.yaml +0 -163
  359. package/core/dev/pipeline/archived/TASK_096_single_agent_status_sync.yaml +0 -60
  360. package/core/dev/pipeline/archived/TASK_097_local_claude_error_logging.yaml +0 -59
  361. package/core/dev/pipeline/archived/TASK_097_single_agent_monitor_events.yaml +0 -59
  362. package/core/dev/pipeline/archived/TASK_098_product_manager_team_phase2.yaml +0 -60
  363. package/core/dev/pipeline/archived/TASK_098_single_agent_refactor_test.yaml +0 -58
  364. package/core/dev/pipeline/archived/TASK_099_backend_team_creation.yaml +0 -258
  365. package/core/dev/pipeline/archived/TASK_100_frontend_team_creation.yaml +0 -61
  366. package/core/dev/pipeline/archived/TASK_101_orchestrator_system.yaml +0 -403
  367. package/core/dev/pipeline/archived/TASK_102_designer_sre_teams.yaml +0 -90
  368. package/core/dev/pipeline/archived/TASK_103_integration_testing.yaml +0 -86
  369. package/core/dev/pipeline/archived/TASK_128_integration_testing.yaml +0 -83
  370. package/core/dev/pipeline/archived/TASK_134_cortex_v2_phase3_file_watcher.yaml +0 -65
  371. package/core/dev/pipeline/archived/TASK_134_team_http_api.yaml +0 -96
  372. package/core/dev/pipeline/archived/TASK_135_cortex_v2_phase3_git_monitor.yaml +0 -63
  373. package/core/dev/pipeline/archived/TASK_136_cortex_v2_phase3_change_analyzer.yaml +0 -69
  374. package/core/dev/pipeline/archived/TASK_137_cortex_v2_phase3_cache_invalidator.yaml +0 -67
  375. package/core/dev/pipeline/archived/TASK_137_team_orchestrator_integration.yaml +0 -93
  376. package/core/dev/pipeline/archived/TASK_138_cortex_v2_phase3_distributed_cache.yaml +0 -68
  377. package/core/dev/pipeline/archived/TASK_138_matrix_folder_structure.yaml +0 -61
  378. package/core/dev/pipeline/archived/TASK_139_cortex_v2_phase3_cache_prewarming.yaml +0 -65
  379. package/core/dev/pipeline/archived/TASK_146_unified_documentation.yaml +0 -141
  380. package/core/dev/pipeline/archived/TASK_147_pipeline_execution_rules.yaml +0 -76
  381. package/core/dev/pipeline/archived/TASK_148_update_claude_md.yaml +0 -77
  382. package/core/dev/pipeline/archived/TASK_149_fix_nextjs_mdx_serialization.yaml +0 -63
  383. package/core/dev/pipeline/archived/TASK_149_update_team_docs.yaml +0 -77
  384. package/core/dev/pipeline/archived/TASK_150_pipeline_workflow_guide.yaml +0 -82
  385. package/core/dev/pipeline/archived/TASK_164_fix_smart_context_switch.yaml +0 -49
  386. package/core/dev/pipeline/archived/TASK_165_ctags_symbol_index.yaml +0 -53
  387. package/core/dev/pipeline/archived/TASK_166_symbol_search_mcp_tool.yaml +0 -48
  388. package/core/dev/pipeline/archived/TASK_167_llm_module_summary.yaml +0 -55
  389. package/core/dev/pipeline/archived/TASK_168_map_reduce_context.yaml +0 -51
  390. package/core/dev/pipeline/archived/TASK_169_v2_integration_testing.yaml +0 -52
  391. package/core/dev/pipeline/backups/archive_2026-02-04T22-07-22/TASK_QUEUE_backup.json +0 -95
  392. package/core/dev/pipeline/docs/multi-agent-coordination.md +0 -446
  393. package/core/dev/pipeline/docs/overview.md +0 -406
  394. package/core/dev/pipeline/docs/task-management.md +0 -412
  395. package/core/dev/pipeline/docs/workflows.md +0 -32
  396. package/core/dev/pipeline/orchestrator/schemas/task_queue_schema.json +0 -58
  397. package/core/dev/pipeline/orchestrator/schemas/task_schema.json +0 -139
  398. package/core/dev/pipeline/plans/PLAN_task_cli_refactor.md +0 -281
  399. package/core/dev/pipeline/test_results/TASK_TEST_PARALLEL_002_result.txt +0 -27
  400. package/core/dev/plans/ANSUZ_SLIM_PLAN.md +0 -68
  401. package/core/dev/plans/CLI_FIRST_INSTALL_FLOW.md +0 -120
  402. package/core/dev/plans/FORMATION_RETIREMENT_PLAN.md +0 -313
  403. package/core/dev/plans/KUZU_REPLACEMENT_PLAN.md +0 -126
  404. package/core/dev/scripts/CRASH_DIAGNOSIS.md +0 -47
  405. package/core/dev/scripts/README.md +0 -142
  406. package/core/dev/scripts/RUN_ONCE.bat +0 -40
  407. package/core/dev/scripts/START_DEV_AGENT.bat +0 -63
  408. package/core/dev/scripts/START_MULTI_AGENT.bat +0 -80
  409. package/core/dev/scripts/dev_agent_scheduler.ps1 +0 -536
  410. package/core/dev/scripts/init_git.ps1 +0 -396
  411. package/core/dev/scripts/init_git.sh +0 -337
  412. package/core/dev/scripts/init_project.ps1 +0 -851
  413. package/core/dev/scripts/init_project.sh +0 -477
  414. package/core/dev/scripts/multi_agent_scheduler.ps1 +0 -2021
  415. package/core/dev/scripts/multi_agent_scheduler.sh +0 -1344
  416. package/core/dev/scripts/run_once.sh +0 -47
  417. package/core/dev/scripts/setup_rag.ps1 +0 -304
  418. package/core/dev/scripts/setup_rag.sh +0 -230
  419. package/core/dev/scripts/start_dev_agent.sh +0 -137
  420. package/core/dev/scripts/start_multi_agent.sh +0 -41
  421. package/core/dev/scripts/sync_task_queue.ps1 +0 -505
  422. package/core/dev/scripts/sync_task_queue.sh +0 -392
  423. package/core/dev/specs/agent-connect/PROTOCOL.md +0 -177
  424. package/core/dev/specs/agent-connect/SDK_GUIDE.md +0 -915
  425. package/core/dev/specs/agent-connect/examples/minimal-site/README.md +0 -137
  426. package/core/dev/specs/agent-connect/examples/minimal-site/package.json +0 -12
  427. package/core/dev/specs/agent-connect/examples/minimal-site/public/index.html +0 -116
  428. package/core/dev/specs/agent-connect/examples/minimal-site/public/install-redirect.js +0 -73
  429. package/core/dev/specs/agent-connect/examples/minimal-site/server.js +0 -516
  430. package/core/dev/specs/agent-connect/examples/minimal-site/test/smoke.test.mjs +0 -263
  431. 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
  432. package/core/dev/specs/agent-connect/history/DEFECT_REPORT_kenaz-agent-hub_2026-09-09_v0.4-prompt-mojibake.md +0 -90
  433. package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-07.md +0 -61
  434. package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-08_relay-v1-conformance.md +0 -76
  435. package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-09_v0.4-session-channel.md +0 -87
  436. package/core/dev/specs/agent-connect/history/FLOWPIX_REPLY_agent-hub_2026-09-08_relay-v1-answers.md +0 -68
  437. package/core/dev/specs/agent-connect/history/FLOWPIX_bridge_CONTRACT.md +0 -642
  438. package/core/dev/specs/agent-connect/history/FLOWPIX_spikes_relay_spike_relay.mjs +0 -244
  439. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-07.md +0 -77
  440. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_direction-change-v0.3.md +0 -44
  441. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_relay-v1-answers-ack.md +0 -37
  442. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_relay-v1-conformance.md +0 -56
  443. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_annotations-install-coldstart.md +0 -44
  444. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_empty-prompt-first-turn.md +0 -56
  445. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_prompt-mojibake-fixed.md +0 -48
  446. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_session-channel.md +0 -57
  447. package/core/dev/specs/agent-connect/history/PROTOCOL_v0.3_snapshot.md +0 -379
  448. package/core/dev/specs/agent-connect/history/README.md +0 -47
  449. package/core/dev/specs/peer/CODEX_INTERACTIVE_PUSH.md +0 -65
  450. package/core/dev/specs/peer/CODEX_MANAGED_DAEMON.md +0 -54
  451. package/core/dev/specs/peer/CODEX_PEER_PULL_SPIKE.md +0 -54
  452. package/core/dev/specs/peer/MODS_SPIKE.md +0 -133
  453. package/core/dev/specs/peer/PER_PROJECT_ADDRESSING.md +0 -143
  454. package/core/dev/specs/peer/SWARM_PROTOCOLS.md +0 -256
  455. package/core/dev/specs/peer/codex-hook-shim-peer.test.js +0 -113
  456. package/core/dev/specs/peer/codex-push-launcher.test.js +0 -142
  457. package/core/dev/specs/peer/setup-codex-hooks.test.js +0 -60
  458. package/core/dev/specs/peer-ansuz/DELIVERY_SPIKE.md +0 -397
  459. package/core/dev/specs/peer-ansuz/DESIGN.md +0 -109
  460. package/core/dev/specs/peer-ansuz/spike/claude_poke.js +0 -129
  461. package/core/dev/specs/peer-ansuz/spike/claude_session_start_hook.js +0 -37
  462. package/core/dev/specs/peer-ansuz/spike/claude_settings_hook.json +0 -14
  463. package/core/dev/specs/peer-ansuz/spike/codex_appserver_client.js +0 -105
  464. package/core/dev/specs/peer-ansuz/spike/codex_appserver_query.js +0 -29
  465. package/core/dev/specs/peer-ansuz/spike/extract_timeline.js +0 -26
  466. package/core/dev/specs/synapse/SYMBOL_IDENTITY.md +0 -305
  467. package/core/dev/spikes/A4-cypher-varlen.md +0 -176
  468. package/core/dev/spikes/bloat-rounds.sh +0 -25
  469. package/core/dev/spikes/mods/clean-claude.js +0 -9
  470. package/core/dev/spikes/mods/drive-probe.js +0 -29
  471. package/core/dev/spikes/mods/e2e-peer.js +0 -71
  472. package/core/dev/spikes/mods/evidence/e2e-peer-control.json +0 -17
  473. package/core/dev/spikes/mods/evidence/e2e-peer-mod.json +0 -17
  474. package/core/dev/spikes/mods/evidence/probe-006a6e65-d807-4bc1-b648-fd7d1edfe0b4.jsonl +0 -4
  475. package/core/dev/spikes/mods/evidence/probe-cebdf1f7-f9c4-47a8-83cd-7c0786177404.jsonl +0 -12
  476. package/core/dev/spikes/mods/evidence/probe-eb21147d-10ce-4c32-93ed-37ca37d88d5a.jsonl +0 -11
  477. package/core/dev/spikes/mods/evidence/stream-cebdf1f7.jsonl +0 -18
  478. package/core/dev/spikes/mods/kenaz-mod-probe/.claude-plugin/plugin.json +0 -1
  479. package/core/dev/spikes/mods/kenaz-mod-probe/hooks/hooks.json +0 -1
  480. package/core/dev/spikes/mods/kenaz-mod-probe/hooks/register.ts +0 -65
  481. package/core/dev/spikes/mods/kenaz-mod-probe/tsconfig.json +0 -3
@@ -1,860 +0,0 @@
1
- # Pipeline 進度追蹤
2
-
3
- ## 最後更新
4
- - **時間**: 2025-12-12 18:00
5
- - **Agent**: Dev Agent (Frontend Developer Agent 協助)
6
- - **會話**: TASK_069 完成 - NAV/Footer 跨頁面共享功能
7
-
8
- ---
9
-
10
- ## 當前狀態
11
-
12
- ### 執行中的任務
13
- | 任務 ID | 名稱 | 進度 | 下一步 |
14
- |--------|------|-----|-------|
15
- | P0 | TASK_001 | 專案初始化與環境設置 | 執行中 | 1-2h
16
-
17
- ### 待處理任務佇列
18
- | 優先級 | 任務 ID | 名稱 | 狀態 | 預估工時 |
19
- |-------|--------|------|-----|---------|
20
- | P0 | TASK_001 | 專案初始化與環境設置 | 待處理 | 1-2h
21
-
22
- ### 已完成任務
23
- | 任務 ID | 名稱 | 完成日期 |
24
- |--------|------|---------|
25
- | TASK_069 | NAV/Footer 跨頁面共享功能 | 2025-12-12 |
26
- | TASK_068 | 修復 user_pages 表缺失 (Migration 推送) | 2025-12-12 |
27
- | TASK_067 | Preview Canvas 頁面切換 (修正 TASK_065) | 2025-12-12 |
28
- | TASK_066 | 按鈕 URL 編輯功能 | 2025-12-11 |
29
- | TASK_065 | Preview 模式頁面導航功能 | 2025-12-11 |
30
- | TASK_064 | 修復 ExportTemplateModal UI 問題 | 2025-12-11 |
31
- | TASK_063 | 修復 html2canvas 依賴缺失 | 2025-12-11 |
32
- | TASK_062 | 範本導出功能 | 2025-12-11 |
33
- | TASK_061 | 完善 i18n 國際化覆蓋 | 2025-12-11 |
34
- | TASK_060_P4 | 多頁面導出整合 | 2025-12-12 |
35
- | TASK_060 | 多頁面編輯系統 (Phase 1-3) | 2025-12-12 |
36
- | TASK_059 | 資料庫遷移與 API 500 錯誤修復 (一鍵腳本) | 2025-12-12 |
37
- | TASK_058 | 多語系 JSON 對照表完善 (整站覆蓋) | 2025-12-12 |
38
- | TASK_057 | 修復 RPC 函數 Schema 不匹配 (quota API 錯誤) | 2025-12-12 |
39
- | TASK_055 | 多語系支援 (i18n) | 2025-12-12 |
40
- | TASK_056 | GCP Cloud Run 部署環境設置指南 | 2025-12-12 |
41
- | TASK_054 | 部署 API 500 錯誤修復與資料庫遷移 (診斷完成) | 2025-12-11 |
42
- | TASK_053 | 設定 Service Role Key 並驗證 RLS 繞過 | 2025-12-11 |
43
- | TASK_052 | API 500 錯誤修復與環境變數配置 | 2025-12-11 |
44
- | TASK_050 | 子域名唯一性與 406 錯誤修復 | 2025-12-11 |
45
- | TASK_051 | RLS 政策與 CORS 錯誤修復 | 2025-12-11 |
46
- | TASK_048 | Backend Module Unit Tests | 2025-12-10 |
47
- | TASK_047 | Export-Deploy Integration + BSC USDT Payment | 2025-12-10 |
48
- | TASK_046 | Docker + GCP Cloud Run Deployment | 2025-12-10 |
49
- | TASK_044 | Backend Concurrency & Modularization | 2025-12-10 |
50
- | TASK_045 | Export Style Consistency | 2025-12-10 |
51
- | TASK_000 | Pipeline 系統初始化 | 2025-12-07 |
52
- | TASK_001 | 完善網站導出功能 | 2025-12-07 |
53
- | TASK_002 | PropertiesPanel UGC 編輯支援 | 2025-12-08 |
54
- | TASK_003 | 新增 Features Renderer | 2025-12-08 |
55
- | TASK_004 | 新增 Hero Renderer | 2025-12-08 |
56
- | TASK_005 | 新增 FAQ Renderer | 2025-12-08 |
57
- | TASK_006 | 新增 Testimonial Renderer | 2025-12-08 |
58
- | TASK_007 | 新增 Stats Renderer | 2025-12-08 |
59
- | TASK_008 | Tabs 切換互動組件 | 2025-12-08 |
60
- | TASK_009 | Accordion 手風琴組件 | 2025-12-08 |
61
- | TASK_010 | 淡入動畫效果 | 2025-12-08 |
62
- | TASK_012 | 修復 UGC 導出問題 | 2025-12-08 |
63
- | TASK_013 | 修復渲染器 Tailwind 動態類名問題 | 2025-12-08 |
64
- | TASK_014 | 為 UGC 渲染器添加 Error Boundary | 2025-12-08 |
65
- | TASK_015 | 修復模式檢測邏輯不一致問題 | 2025-12-08 |
66
- | TASK_016 | 增強 DynamicBlockRenderer 組件類型驗證 | 2025-12-08 |
67
- | TASK_017 | 改進後端 editableParams 類型推斷邏輯 | 2025-12-08 |
68
- | TASK_018 | 增強 CSS 動畫提取正則表達式的魯棒性 | 2025-12-08 |
69
- | TASK_019 | 優化 LiveComponentRenderer 參數注入安全性 | 2025-12-08 |
70
- | TASK_011 | 視差滾動效果 | 2025-12-08 |
71
- | TASK_021 | 修復 RWD 響應式設計問題 | 2025-12-08 |
72
- | TASK_023 | 建立 QA 單元測試框架 | 2025-12-09 |
73
- | TASK_022 | 檢查並修復 Footer 導出樣式一致性 | 2025-12-09 |
74
- | TASK_024 | 修復 BRAND_FOOTER 導出內容缺失 | 2025-12-09 |
75
- | TASK_025 | 修復導出網站水平滾動問題 | 2025-12-09 |
76
- | TASK_026 | 為 code_generator.py 添加完整單元測試 | 2025-12-09 |
77
- | TASK_027 | 為前端區塊組件添加單元測試 | 2025-12-09 |
78
- | TASK_028 | 為配置模式渲染器添加單元測試 | 2025-12-09 |
79
- | TASK_032 | Supabase 資料庫部署 | 2025-12-09 |
80
- | TASK_033 | 修復關鍵安全和代碼品質問題 | 2025-12-09 |
81
- | TASK_030 | 用戶 Profile 系統 | 2025-12-09 |
82
- | TASK_031 | 訂閱付費系統 | 2025-12-09 |
83
- | TASK_029 | UGC 組件重新生成功能 | 2025-12-09 |
84
- | TASK_035 | 用戶選單與 Profile 入口 | 2025-12-09 |
85
- | TASK_034 | UGC 組件卡片 UI/UX 設計優化 | 2025-12-09 |
86
- | TASK_036 | 額外 UX 改進項目 (Phase 1-3) | 2025-12-09 |
87
- | TASK_039 | 修復 Supabase 訂閱設定 | 2025-12-09 |
88
- | TASK_037 | 定價頁面重構 (Cursor 風格) | 2025-12-09 |
89
- | TASK_038 | 帳單頁面與發票歷史 | 2025-12-10 |
90
- | TASK_040 | QA 測試訂閱功能 | 2025-12-10 |
91
- | TASK_042 | AI Generator Skip Sandbox Preview | 2025-12-10 |
92
- | TASK_043 | Edit Panel Sync with Regenerate | 2025-12-10 |
93
- | TASK_041 | Profile Pages RWD & Theme Consistency | 2025-12-10 |
94
-
95
- ---
96
-
97
- ## 統計資訊
98
-
99
- ### 整體進度
100
- ```
101
- 總任務數: 70
102
- 已完成: 70 (100%)
103
- 執行中: 0 (0%)
104
- 待處理: 0 (0%)
105
- 已阻塞: 0 (0%)
106
- ```
107
-
108
- ### 專案狀態
109
- ```
110
- ✅ 核心功能完成
111
- ✅ UX 改進完成
112
- ✅ 安全修復完成
113
- ✅ 測試框架建立完成
114
- ✅ Supabase 訂閱方案更新完成 (Cursor 風格)
115
- ✅ 定價頁面 Cursor 風格重構完成
116
- ✅ 帳單頁面與發票歷史完成
117
- ✅ 訂閱功能 QA 測試完成
118
- ✅ AI 組件生成器優化完成 (跳過預覽)
119
- ✅ Edit Panel 重新生成同步完成
120
- ✅ Profile RWD & 主題統一完成 (Dark→Light, Purple→Orange)
121
- ✅ 導出樣式一致性完成 (統一顏色處理系統)
122
- ✅ 後端併發與模組化完成 (並行圖片生成、線程安全、中間件)
123
- ✅ Docker + GCP Cloud Run 部署系統完成
124
- ✅ Export-Deploy 整合完成 (直接部署無下載)
125
- ✅ BSC USDT 區塊鏈支付模組完成 (模組化設計)
126
- ✅ 後端模組單元測試完成 (157 新測試案例)
127
- ✅ RLS 政策修復完成 (user_subscriptions/user_layouts)
128
- ✅ 子域名唯一性檢查完成 (全套 DB/API/UI)
129
- ✅ ProfileContext 406 錯誤修復完成 (.single() -> .maybeSingle())
130
- ✅ API 環境變數統一配置完成 (deploy.py/crypto_payment.py 改用 core.dependencies)
131
- ✅ GCP Cloud Run 部署環境設置指南完成
132
- ✅ 多語系支援 (i18n) 完成 (zh-TW/en 雙語支援)
133
- ✅ RPC 函數 Schema 修復完成 (get_user_deployment_quota → user_subscriptions)
134
- ✅ i18n 整站覆蓋完成 (Pages/Modals/Panels/Components 共 15+ 組件)
135
- ✅ 一鍵資料庫設置腳本完成 (FULL_DATABASE_SETUP.sql)
136
- ✅ 多頁面編輯系統完成 (Phase 1-3: 資料結構、頁面管理、導航連結)
137
- ✅ 範本導出功能完成 (TemplatesPanel 一鍵導出設計為 JSON)
138
- ✅ 次要組件 i18n 覆蓋完成 (AiComponentGeneratorModal, DeploymentModal, CodeModeEditor, ConfigModeEditor)
139
- ✅ html2canvas 依賴修復完成 (縮圖生成功能啟用)
140
- ✅ ExportTemplateModal UI 修復完成 (z-index + 背景點擊關閉)
141
- ✅ Preview 模式頁面導航完成 (useButtonNavigation hook、Hero/CTA/Nav 按鈕導航)
142
- ✅ Preview Canvas 內部頁面切換完成 (TASK_067 修正)
143
- ✅ user_pages 表 Migration 推送完成 (TASK_068 - 多頁面功能資料庫就緒)
144
- ✅ NAV/Footer 跨頁面共享功能完成 (TASK_069 - 右鍵設為共享、自動同步)
145
- ```
146
-
147
- ---
148
-
149
- ## TASK_050 完成產出
150
-
151
- ### 分析結論
152
-
153
- | Issue | 狀態 | 說明 |
154
- |-------|------|------|
155
- | 子域名唯一性 | ✅ 已存在 | DB 唯一索引 + API 檢查 + UI 顯示都已完成 |
156
- | 406 錯誤 | ✅ 已修復 | ProfileContext 改用 .maybeSingle() |
157
- | user_layouts | ⏳ 待執行 | Migration 已存在,需用戶執行 |
158
-
159
- ### 修改檔案
160
-
161
- | 檔案路徑 | 修改內容 |
162
- |---------|---------|
163
- | `contexts/ProfileContext.tsx` | `.single()` -> `.maybeSingle()`,改進錯誤處理 |
164
-
165
- ### 用戶待辦事項
166
-
167
- 如尚未執行 migration:
168
- ```bash
169
- cd supabase && supabase db push
170
- ```
171
-
172
- ---
173
-
174
- ## TASK_051 完成產出
175
-
176
- ### 新建檔案
177
-
178
- | 檔案路徑 | 功能 |
179
- |---------|------|
180
- | `supabase/migrations/20251211000002_fix_rls_policies.sql` | RLS 政策修復 migration |
181
- | `backend/.env.example` | 環境變數範本 |
182
-
183
- ### 修改檔案
184
-
185
- | 檔案路徑 | 修改內容 |
186
- |---------|---------|
187
- | `backend/routers/layout.py` | 改用 service_role_client (5 個端點) |
188
- | `backend/core/config.py` | 添加 SUPABASE_SERVICE_ROLE_KEY 缺失警告 |
189
-
190
- ### 用戶待辦事項
191
-
192
- 此任務完成了程式碼修復,但用戶需執行:
193
-
194
- 1. **設定環境變數** (從 Supabase Dashboard 取得)
195
- ```
196
- SUPABASE_SERVICE_ROLE_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
197
- ```
198
-
199
- 2. **執行資料庫遷移**
200
- ```bash
201
- cd supabase && supabase db push
202
- ```
203
-
204
- 3. **重啟後端服務**
205
-
206
- ---
207
-
208
- ## 阻塞項目
209
-
210
- 目前無阻塞項目。
211
-
212
- ---
213
-
214
- ## 測試框架使用指南
215
-
216
- ### 前端測試 (Vitest + React Testing Library)
217
-
218
- ```bash
219
- # 執行所有測試 (watch 模式)
220
- npm test
221
-
222
- # 執行一次性測試
223
- npm run test:run
224
-
225
- # 生成覆蓋率報告
226
- npm run test:coverage
227
- ```
228
-
229
- **測試文件位置**:
230
- - `tests/unit/` - 單元測試
231
- - `tests/rwd/` - 響應式設計測試
232
-
233
- ### 後端測試 (pytest)
234
-
235
- ```bash
236
- cd backend
237
-
238
- # 執行所有測試
239
- pytest
240
-
241
- # 執行特定測試文件
242
- pytest tests/test_component_utils.py -v
243
-
244
- # 生成覆蓋率報告
245
- pytest --cov=. --cov-report=html
246
- ```
247
-
248
- **測試文件位置**:
249
- - `backend/tests/` - 所有後端測試
250
-
251
- ### 環境要求
252
- **注意**: 前端測試運行需要 Node.js >= 20。
253
-
254
- 升級方式:
255
- ```bash
256
- nvm install 20
257
- nvm use 20
258
- ```
259
-
260
- ---
261
-
262
- ## 參考資料
263
-
264
- 1. **AI UGC 系統架構**:
265
- - 入口: `components/modals/AiComponentGeneratorModal.tsx`
266
- - 區塊: `components/blocks/UGCBlock.tsx`
267
- - 代碼模式: `components/LiveComponentRenderer.tsx`
268
- - 配置模式: `components/DynamicBlockRenderer.tsx`
269
- - 錯誤邊界: `components/UGCErrorBoundary.tsx`
270
- - 服務: `services/ugcComponentService.ts`
271
- - 後端: `backend/routers/ai/component.py`
272
-
273
- 2. **UX 組件庫**:
274
- - `components/ui/ErrorBoundary.tsx` - 全域錯誤邊界
275
- - `components/ui/Skeleton.tsx` - Skeleton 載入元件
276
- - `components/ui/Toast.tsx` - Toast 通知系統
277
- - `components/ui/ConfirmDialog.tsx` - 確認對話框
278
- - `components/ui/OfflineIndicator.tsx` - 離線指示器
279
- - `components/ui/Animate.tsx` - 動畫組件
280
-
281
- 3. **動畫 Hooks**:
282
- - `hooks/useAnimation.ts` - 滾動動畫、交錯動畫、彈簧物理
283
- - `hooks/useKeyboardNavigation.ts` - 鍵盤導航、焦點陷阱
284
-
285
- 4. **網路狀態**:
286
- - `hooks/useNetworkStatus.ts` - 網路連線監聽
287
-
288
- 5. **訂閱系統**:
289
- - `pages/PricingPage.tsx` - 定價頁面 (Cursor 風格)
290
- - `pages/BillingPage.tsx` - 帳單頁面 (Cursor 風格)
291
- - `components/pricing/` - 定價相關組件
292
- - `components/billing/` - 帳單相關組件
293
- - `contexts/ProfileContext.tsx` - 用戶 Profile 和訂閱 Context
294
- - `supabase/migrations/` - 資料庫遷移
295
-
296
- 6. **後端併發架構** (新增):
297
- - `backend/services/storage/status_store.py` - 線程安全狀態存儲
298
- - `backend/services/interfaces/` - 服務抽象層
299
- - `backend/core/container.py` - 依賴注入容器
300
- - `backend/core/middleware/` - 請求追蹤與計時中間件
301
-
302
- ---
303
-
304
- ## 變更歷史
305
-
306
- | 日期 | 操作 | 說明 |
307
- |-----|------|-----|
308
- | 2025-12-07 | 初始化 | 建立 Pipeline 系統,導入初始任務 |
309
- | 2025-12-07 | TASK_001 完成 | 測試導出功能通過 |
310
- | 2025-12-08 | TASK_002~019 批次完成 | UGC 編輯、渲染器、互動組件、安全性修復 |
311
- | 2025-12-08 | TASK_021 完成 | 修復 RWD 響應式設計 |
312
- | 2025-12-09 | TASK_022~028 完成 | QA 測試框架、Footer 修復、單元測試 |
313
- | 2025-12-09 | TASK_029~035 完成 | 用戶系統、訂閱系統、UGC 重新生成、UI 優化 |
314
- | 2025-12-09 | TASK_036 Phase 1-2 完成 | ErrorBoundary、Skeleton、Toast、ConfirmDialog、響應式改進 |
315
- | 2025-12-09 | TASK_036 Phase 3 完成 | 離線指示器、進階動畫、TypeScript 錯誤修復 |
316
- | 2025-12-09 | 新增任務 | 根據用戶需求新增 TASK_037~040:定價頁面 (Cursor 風格)、帳單頁面、Supabase 修復、QA 測試 |
317
- | 2025-12-09 | TASK_039 完成 | 修復 Supabase 訂閱設定,更新為 Cursor 風格 4 方案 (Hobby/Pro/Pro+/Ultra) |
318
- | 2025-12-09 | TASK_037 完成 | 定價頁面 Cursor 風格重構:深色主題、4 欄佈局、FAQ 手風琴、響應式設計 |
319
- | 2025-12-10 | TASK_038 完成 | 帳單頁面與發票歷史:DB Migration、Backend API、Frontend Components |
320
- | 2025-12-10 | TASK_040 完成 | QA 測試訂閱功能:16 個測試案例全部通過,生成測試報告和測試文件 |
321
- | 2025-12-10 | 新增任務 | 根據用戶需求新增 TASK_041~045:Profile RWD、AI Generator 優化、Edit Panel 同步、後端併發、導出樣式一致性 |
322
- | 2025-12-10 | TASK_042 完成 | AI Generator 跳過 Sandbox 預覽,生成後直接進入保存流程 |
323
- | 2025-12-10 | TASK_043 完成 | Edit Panel 與重新生成同步:PropertiesPanel/CodeModeEditor/ConfigModeEditor 添加事件監聯 |
324
- | 2025-12-10 | TASK_041 完成 | Profile/Billing/Pricing 頁面主題統一:Dark→Light、Purple→Orange、RWD 改進 |
325
- | 2025-12-10 | TASK_045 完成 | Export 樣式一致性:新建 color_utils.py (151 色)、統一 colorToCss、修復 FeaturesBlock/NavBlock |
326
- | 2025-12-10 | TASK_044 完成 | 後端併發與模組化:並行圖片生成、線程安全狀態存儲、服務抽象層、依賴注入、中間件 |
327
- | 2025-12-10 | TASK_046 完成 | Docker + GCP Cloud Run 部署系統:域名生成、Docker 打包、Cloud Run 部署、前端整合 |
328
- | 2025-12-10 | TASK_047 完成 | Export-Deploy 整合 + BSC USDT 支付模組:直接部署無下載、模組化區塊鏈支付 |
329
- | 2025-12-10 | TASK_048 完成 | 後端模組單元測試:新增 157 個測試案例,覆蓋 Payment/Deploy/Storage/Middleware/Routers |
330
- | 2025-12-11 | TASK_051 完成 | RLS 政策修復:新增 migration、layout.py 改用 service_role_client、添加環境變數提示 |
331
- | 2025-12-11 | TASK_050 完成 | 子域名唯一性 (已存在)、406 錯誤修復 (ProfileContext .single() -> .maybeSingle()) |
332
- | 2025-12-11 | TASK_052 完成 | API 環境變數統一配置:deploy.py/crypto_payment.py 改用 core.dependencies |
333
- | 2025-12-11 | TASK_054 完成 | 部署 API 500 錯誤診斷:確認需執行 migration,程式碼無需修改 |
334
- | 2025-12-12 | TASK_056 完成 | GCP Cloud Run 部署環境設置指南:擴充 DEPLOYMENT_GUIDE.md,包含完整 GCP 設置步驟 |
335
- | 2025-12-12 | TASK_055 完成 | 多語系支援 (i18n):react-i18next、zh-TW/en 雙語、UserMenu 語言切換 UI |
336
- | 2025-12-12 | TASK_057 完成 | 修復 RPC 函數 Schema 不匹配:get_user_deployment_quota 改用 user_subscriptions |
337
- | 2025-12-12 | TASK_059 完成 | 資料庫遷移一鍵執行腳本:FULL_DATABASE_SETUP.sql |
338
- | 2025-12-12 | TASK_058 完成 | 多語系 JSON 對照表完善:整站 i18n 覆蓋 (15+ 組件改造) |
339
- | 2025-12-12 | TASK_060 完成 | 多頁面編輯系統 Phase 1-3:資料結構、頁面管理、導航連結 |
340
- | 2025-12-11 | TASK_061 完成 | 完善 i18n 國際化覆蓋:AiComponentGeneratorModal, DeploymentModal, CodeModeEditor, ConfigModeEditor |
341
- | 2025-12-11 | TASK_062 完成 | 範本導出功能:templateService.ts、ExportTemplateModal.tsx、TemplatesPanel 整合、i18n 支援 |
342
- | 2025-12-11 | TASK_063 完成 | 修復 html2canvas 依賴缺失:安裝套件、移除 @ts-ignore、縮圖功能啟用 |
343
- | 2025-12-11 | TASK_064 完成 | 修復 ExportTemplateModal UI:z-index 提升至 9999、分離 Backdrop 層、點擊背景關閉 |
344
- | 2025-12-11 | TASK_065 完成 | Preview 模式頁面導航功能:useButtonNavigation hook、HeroBlock/CtaBlock/NavBlock 按鈕導航 |
345
- | 2025-12-11 | TASK_066 完成 | 按鈕 URL 編輯功能:HERO/CTA/BANNER Edit Panel 新增 buttonUrl 欄位、i18n 翻譯 |
346
- | 2025-12-12 | TASK_067 完成 | Preview Canvas 內部頁面切換:修正 TASK_065 實作,讓內部頁面連結在 Canvas 內切換而非瀏覽器導航 |
347
- | 2025-12-12 | 新增任務 | TASK_068: 修復 user_pages 表缺失 (500 錯誤) - 需執行 Migration |
348
- | 2025-12-12 | 新增任務 | TASK_069: NAV/Footer 跨頁面共享功能 - 新頁面自動繼承共享區塊 |
349
- | 2025-12-12 | TASK_068 完成 | user_pages 表 Migration 推送到遠端 Supabase - 多頁面功能啟用 |
350
- | 2025-12-12 | TASK_069 完成 | NAV/Footer 跨頁面共享功能:右鍵選單、視覺標記、自動同步、i18n |
351
-
352
- ---
353
-
354
- ## TASK_068 完成產出
355
-
356
- ### 完成內容
357
-
358
- | 項目 | 狀態 | 說明 |
359
- |------|------|------|
360
- | Migration 檔案驗證 | ✅ | `20251212100001_user_pages.sql` 內容完整 |
361
- | Supabase 環境檢查 | ✅ | 本地環境運行中 |
362
- | Migration 推送 | ✅ | 使用 `supabase db push` 推送到遠端 |
363
- | 驗證遠端狀態 | ✅ | `migration list` 確認本地/遠端同步 |
364
-
365
- ### 執行過程
366
-
367
- 1. **檢查 Migration 狀態**:
368
- - Local: `20251212100001` 存在
369
- - Remote: 欄位為空 (尚未推送)
370
-
371
- 2. **執行推送**:
372
- ```bash
373
- supabase db push
374
- ```
375
- 輸出: `Applying migration 20251212100001_user_pages.sql... Finished`
376
-
377
- 3. **驗證結果**:
378
- - Local 和 Remote 都顯示 `20251212100001`
379
- - `user_pages` 表已在遠端資料庫建立
380
-
381
- ### 已建立的資料庫物件
382
-
383
- | 物件 | 類型 | 說明 |
384
- |------|------|------|
385
- | `user_pages` | 表 | 多頁面編輯資料表 |
386
- | `idx_user_pages_layout_id` | 索引 | layout_id 查詢優化 |
387
- | `idx_user_pages_user_id` | 索引 | user_id 查詢優化 |
388
- | `idx_user_pages_order` | 索引 | 排序查詢優化 |
389
- | RLS 政策 (5 個) | 安全政策 | SELECT/INSERT/UPDATE/DELETE + Service Role |
390
- | `update_user_pages_updated_at()` | 函數 | 自動更新時間觸發器 |
391
- | `get_layout_pages()` | 函數 | 頁面查詢輔助函數 |
392
-
393
- ### 調用的 Agent
394
-
395
- - **SRE Agent**: 執行資料庫 Migration 操作
396
-
397
- ---
398
-
399
- ## TASK_069 完成產出
400
-
401
- ### 完成內容
402
-
403
- | 項目 | 狀態 | 說明 |
404
- |------|------|------|
405
- | types.ts 資料結構 | ✅ | 新增 SharedBlocks 介面、PageBlock.isShared/sharedPosition |
406
- | useBuilderState.ts 狀態管理 | ✅ | sharedBlocks 狀態、CRUD 方法、同步邏輯 |
407
- | SortableBlock 右鍵選單 | ✅ | NAV/Footer 右鍵可設為共享 Header/Footer |
408
- | SortableBlock 視覺標記 | ✅ | 共享區塊顯示藍色標記和鏈接圖標 |
409
- | CanvasArea 渲染整合 | ✅ | allBlocksForRender = header + page + footer |
410
- | BuilderPage 傳遞 props | ✅ | 傳遞共享區塊相關 props 到子組件 |
411
- | PropertiesPanel 更新邏輯 | ✅ | 編輯共享區塊使用 updateSharedBlock |
412
- | i18n 翻譯 | ✅ | zh-TW/en sharedBlocks.* keys |
413
-
414
- ### 新增/修改檔案
415
-
416
- | 檔案路徑 | 修改內容 |
417
- |---------|---------|
418
- | `types.ts` | 新增 SharedBlocks 介面、PageBlock.isShared/sharedPosition |
419
- | `hooks/useBuilderState.ts` | sharedBlocks 狀態、setBlockAsShared、removeBlockFromShared、updateSharedBlock、deleteSharedBlock、isBlockShared、getAllBlocksForRender |
420
- | `components/SortableBlock.tsx` | 右鍵選單、共享區塊視覺標記、新 props |
421
- | `components/layout/CanvasArea.tsx` | allBlocksForRender 計算、傳遞共享區塊 props |
422
- | `pages/BuilderPage.tsx` | 傳遞 sharedBlocks 相關 props 到 CanvasArea 和 PropertiesPanel |
423
- | `i18n/locales/zh-TW/builder.json` | 新增 sharedBlocks.* 翻譯 |
424
- | `i18n/locales/en/builder.json` | 新增對應英文翻譯 |
425
-
426
- ### 功能特性
427
-
428
- - ✅ 在 Canvas 中右鍵點擊 NAV 區塊,可「設為共享 Header」
429
- - ✅ 在 Canvas 中右鍵點擊 Footer 區塊,可「設為共享 Footer」
430
- - ✅ 共享區塊顯示藍色邊框和「共享」標籤
431
- - ✅ 新增頁面會自動顯示共享的 Header 和 Footer
432
- - ✅ 編輯共享區塊會即時同步到所有頁面
433
- - ✅ 可隨時「取消共享」將區塊恢復為普通區塊
434
- - ✅ 共享區塊資料存儲在前端狀態中 (localStorage)
435
- - ✅ 中英文 i18n 翻譯完整
436
-
437
- ### 調用的 Agent
438
-
439
- - **Frontend Developer Agent**: 實作前端共享區塊功能
440
-
441
- ### 後續優化建議
442
-
443
- - 後端 API 支援 sharedBlocks 持久化存儲
444
- - 導出功能整合共享區塊
445
- - 共享區塊順序拖曳調整
446
-
447
- ---
448
-
449
- ## TASK_067 完成產出
450
-
451
- ### 完成內容
452
-
453
- | 項目 | 狀態 | 說明 |
454
- |------|------|------|
455
- | useButtonNavigation.ts 擴展 | ✅ | 新增 pages、onSwitchPage 參數,處理內部頁面切換 |
456
- | BlockRendererProps 類型更新 | ✅ | 新增 pages、onSwitchPage 可選屬性 |
457
- | renderBlock 函數更新 | ✅ | 傳遞新 props 到區塊組件 |
458
- | SortableBlock 更新 | ✅ | 接收並傳遞 pages、onSwitchPage |
459
- | CanvasArea 更新 | ✅ | 接收並傳遞 pages、onSwitchPage 到所有 SortableBlock |
460
- | BuilderPage 更新 | ✅ | 傳遞 pages、switchPage 到 CanvasArea |
461
- | NavBlock 更新 | ✅ | 使用擴展後的 useButtonNavigation |
462
- | HeroBlock 更新 | ✅ | 使用擴展後的 useButtonNavigation |
463
- | CtaBlock 更新 | ✅ | 使用擴展後的 useButtonNavigation |
464
-
465
- ### 修改檔案
466
-
467
- | 檔案路徑 | 修改內容 |
468
- |---------|---------|
469
- | `hooks/useButtonNavigation.ts` | 新增 pages、onSwitchPage 參數,擴展 handleButtonClick 和 handleNavClick |
470
- | `types.ts` | BlockRendererProps 新增 pages、onSwitchPage |
471
- | `components/blocks/index.tsx` | renderBlock 函數傳遞新參數 |
472
- | `components/SortableBlock.tsx` | 接收並傳遞 pages、onSwitchPage |
473
- | `components/layout/CanvasArea.tsx` | 接收並傳遞 pages、onSwitchPage 到所有視圖模式 |
474
- | `pages/BuilderPage.tsx` | 傳遞 pages、switchPage 到 CanvasArea |
475
- | `components/blocks/NavBlock.tsx` | 傳遞 pages、onSwitchPage 到 useButtonNavigation |
476
- | `components/blocks/HeroBlock.tsx` | 傳遞 pages、onSwitchPage 到 useButtonNavigation |
477
- | `components/blocks/CtaBlock.tsx` | 傳遞 pages、onSwitchPage 到 useButtonNavigation |
478
-
479
- ### 功能特性
480
-
481
- - ✅ Preview 模式點擊內部頁面連結會在 Canvas 內切換頁面 (不觸發瀏覽器導航)
482
- - ✅ 支援 pageId 直接切換 (linkType: 'page')
483
- - ✅ 支援 /slug 格式的內部連結 (自動解析為 pageId)
484
- - ✅ 外部連結 (http/https) 仍開新分頁
485
- - ✅ 錨點連結 (#id) 仍平滑滾動
486
- - ✅ Edit 模式下所有導航行為被阻止 (保持可編輯)
487
- - ✅ 向後相容:未傳遞 pages/onSwitchPage 時,行為與舊版一致
488
-
489
- ---
490
-
491
- ## TASK_066 完成產出
492
-
493
- ### 完成內容
494
-
495
- | 項目 | 狀態 | 說明 |
496
- |------|------|------|
497
- | blockSchemas.ts 更新 | ✅ | HERO、CTA、BANNER 新增 buttonUrl 欄位 |
498
- | FieldRenderer.tsx 更新 | ✅ | 新增 buttonUrl 專用渲染邏輯 (輸入框+頁面選擇) |
499
- | types.ts 確認 | ✅ | BlockContent 已有 buttonUrl 定義 |
500
- | i18n 翻譯 | ✅ | zh-TW/en 新增 fields.buttonUrl 相關 key |
501
-
502
- ### 修改檔案
503
-
504
- | 檔案路徑 | 修改內容 |
505
- |---------|---------|
506
- | `config/blockSchemas.ts` | HERO、CTA、BANNER 新增 buttonUrl |
507
- | `components/properties/FieldRenderer.tsx` | 新增 Section 6.7 buttonUrl 欄位渲染 |
508
- | `i18n/locales/zh-TW/builder.json` | 新增 fields.buttonUrl 相關翻譯 |
509
- | `i18n/locales/en/builder.json` | 新增對應英文翻譯 |
510
-
511
- ### 功能特性
512
-
513
- - ✅ Hero 區塊 Edit Panel 顯示「按鈕連結」欄位
514
- - ✅ CTA 區塊 Edit Panel 顯示「按鈕連結」欄位
515
- - ✅ Banner 區塊 Edit Panel 顯示「按鈕連結」欄位
516
- - ✅ 支援外部連結 (https://...)
517
- - ✅ 支援內部頁面選擇 (多頁面系統整合)
518
- - ✅ 支援錨點連結 (#features)
519
- - ✅ 中英文 i18n 翻譯
520
- - ✅ 與 TASK_065 useButtonNavigation hook 完整整合
521
-
522
- ---
523
-
524
- ## TASK_065 完成產出
525
-
526
- ### 完成內容
527
-
528
- | 項目 | 狀態 | 說明 |
529
- |------|------|------|
530
- | useButtonNavigation hook | ✅ | 統一處理 Edit/Preview 模式按鈕導航邏輯 |
531
- | HeroBlock 按鈕導航 | ✅ | 使用 buttonUrl,支援外部/內部/錨點連結 |
532
- | CtaBlock 按鈕導航 | ✅ | 使用 buttonUrl,支援外部/內部/錨點連結 |
533
- | NavBlock 頁面連結導航 | ✅ | 根據 linkType 正確導航 (page/url/anchor) |
534
- | NavItem 類型更新 | ✅ | 新增 description 欄位支援向後兼容 |
535
-
536
- ### 新建檔案
537
-
538
- | 檔案路徑 | 功能 |
539
- |---------|------|
540
- | `hooks/useButtonNavigation.ts` | 共用按鈕導航 hook (handleButtonClick, handleNavClick, getNavHref) |
541
-
542
- ### 修改檔案
543
-
544
- | 檔案路徑 | 修改內容 |
545
- |---------|---------|
546
- | `components/blocks/HeroBlock.tsx` | 使用 useButtonNavigation hook,href 使用 buttonUrl |
547
- | `components/blocks/CtaBlock.tsx` | 使用 useButtonNavigation hook,href 使用 buttonUrl |
548
- | `components/blocks/NavBlock.tsx` | 使用 handleNavClick/getNavHref 處理導航連結 |
549
- | `types.ts` | NavItem 新增 description 欄位 (向後兼容) |
550
-
551
- ### 功能特性
552
-
553
- - ✅ Edit 模式點擊按鈕不會導航 (保持可編輯)
554
- - ✅ Preview 模式點擊外部連結會開新分頁 (http/https)
555
- - ✅ Preview 模式點擊錨點會平滑滾動 (#features)
556
- - ✅ Preview 模式點擊內部頁面讓 href 自然處理 (/about)
557
- - ✅ 行動版選單點擊連結後自動收合
558
- - ✅ 向後兼容舊版 nav items (description 作為 URL)
559
-
560
- ---
561
-
562
- ## TASK_060 完成產出
563
-
564
- ### 完成內容
565
-
566
- | 項目 | 狀態 | 說明 |
567
- |------|------|------|
568
- | Phase 1: 資料結構擴展 | ✅ | Page 類型定義、Database Migration、Backend API |
569
- | Phase 2: 前端頁面管理 | ✅ | PageManager 組件、useBuilderState 擴展 |
570
- | Phase 3: 導航連結整合 | ✅ | NavItemsEditor、內部頁面連結支援 |
571
- | Phase 4: 多頁面導出 | ⏳ | 列入 TASK_060_P4 待後續迭代 |
572
- | i18n 翻譯 | ✅ | zh-TW/en 多頁面相關翻譯 |
573
-
574
- ### 新建檔案
575
-
576
- | 檔案路徑 | 功能 |
577
- |---------|------|
578
- | `supabase/migrations/20251212100001_user_pages.sql` | 頁面表 Migration (RLS、索引、觸發器) |
579
- | `components/layout/PageManager.tsx` | 頁面標籤管理器 (拖曳排序、重命名、刪除) |
580
- | `components/modals/AddPageModal.tsx` | 新增頁面彈窗 (名稱、slug、範本選擇) |
581
- | `components/properties/inputs/NavItemsEditor.tsx` | 導航項目編輯器 (頁面/URL/錨點連結類型) |
582
-
583
- ### 修改檔案
584
-
585
- | 檔案路徑 | 修改內容 |
586
- |---------|---------|
587
- | `types.ts` | 新增 Page, MultiPageLayout, NavItem 介面 |
588
- | `backend/routers/layout.py` | 新增 Page CRUD API 端點 (create/list/get/update/delete/reorder/save-all) |
589
- | `services/layoutService.ts` | 新增頁面 API 函數 |
590
- | `hooks/useBuilderState.ts` | 擴展多頁面狀態管理 (pages, currentPageId, addPage, deletePage, switchPage 等) |
591
- | `pages/BuilderPage.tsx` | 整合 PageManager 和 AddPageModal |
592
- | `components/PropertiesPanel.tsx` | 傳遞 pages prop 給 FieldRenderer |
593
- | `components/properties/FieldRenderer.tsx` | NavBlock 使用 NavItemsEditor |
594
- | `i18n/locales/zh-TW/builder.json` | 新增 pages.*, nav.* 翻譯 |
595
- | `i18n/locales/en/builder.json` | 新增對應英文翻譯 |
596
-
597
- ### 功能特性
598
-
599
- - ✅ 多頁面創建與管理 (新增、刪除、重命名)
600
- - ✅ 頁面拖曳排序
601
- - ✅ URL slug 自動生成與驗證
602
- - ✅ 從現有頁面複製範本
603
- - ✅ 導航連結支援三種類型:內部頁面、外部 URL、頁面錨點
604
- - ✅ 向下相容舊版導航項目 (description 字段)
605
- - ✅ 完整 RLS 政策保護
606
-
607
- ### 用戶待辦事項
608
-
609
- 執行資料庫遷移以啟用多頁面功能:
610
- ```bash
611
- cd supabase && supabase db push
612
- ```
613
-
614
- ---
615
-
616
- ## TASK_058 完成產出
617
-
618
- ### 完成內容
619
-
620
- | 項目 | 狀態 | 說明 |
621
- |------|------|------|
622
- | JSON 翻譯擴充 | ✅ | 擴充 common.json、builder.json、auth.json |
623
- | Pages 改造 | ✅ | LoginPage、SubscriptionSuccessPage |
624
- | Modals 改造 | ✅ | ExportModal、AiBlockGeneratorModal、RegenerateModal |
625
- | Panels 改造 | ✅ | UGCLibraryPanel、PropertiesPanel 相關組件 |
626
- | Layout 改造 | ✅ | LeftSidebar |
627
- | UI 組件改造 | ✅ | ConfirmDialog |
628
-
629
- ### 修改檔案清單
630
-
631
- | 檔案路徑 | 修改內容 |
632
- |---------|---------|
633
- | `i18n/locales/zh-TW/common.json` | 新增 subscription、checkout、order、blocks 等翻譯 |
634
- | `i18n/locales/en/common.json` | 對應英文翻譯 |
635
- | `i18n/locales/zh-TW/builder.json` | 新增 export、ugc、regenerateModal 等翻譯 |
636
- | `i18n/locales/en/builder.json` | 對應英文翻譯 |
637
- | `i18n/locales/zh-TW/auth.json` | 新增 login.pageTitle、orWithEmail 等翻譯 |
638
- | `i18n/locales/en/auth.json` | 對應英文翻譯 |
639
- | `pages/LoginPage.tsx` | 使用 useTranslation 替換硬編碼文字 |
640
- | `pages/SubscriptionSuccessPage.tsx` | 使用 useTranslation 替換硬編碼文字 |
641
- | `components/modals/ExportModal.tsx` | 使用 useTranslation 替換部署相關文字 |
642
- | `components/modals/AiBlockGeneratorModal.tsx` | 使用 useTranslation |
643
- | `components/modals/RegenerateModal.tsx` | 使用 useTranslation |
644
- | `components/layout/LeftSidebar.tsx` | 使用 useTranslation |
645
- | `components/panels/UGCLibraryPanel.tsx` | 使用 useTranslation |
646
- | `components/properties/PropertiesPanelEmptyState.tsx` | 使用 useTranslation |
647
- | `components/properties/PropertiesPanelHeader.tsx` | 使用 useTranslation |
648
- | `components/ui/ConfirmDialog.tsx` | 使用 useTranslation |
649
-
650
- ### 新增翻譯 Key 統計
651
-
652
- | Namespace | 新增 Key 數量 |
653
- |-----------|-------------|
654
- | common | 50+ keys |
655
- | builder | 80+ keys |
656
- | auth | 6 keys |
657
-
658
- ### 特性
659
-
660
- - ✅ 支援參數化翻譯 (如 `{{name}}`、`{{countdown}}`)
661
- - ✅ 所有組件使用正確的 namespace
662
- - ✅ 中英文翻譯完整對應
663
- - ✅ 語言切換即時生效
664
-
665
- ---
666
-
667
- ## TASK_057 完成產出
668
-
669
- ### 完成內容
670
-
671
- | 項目 | 狀態 | 說明 |
672
- |------|------|------|
673
- | 問題分析 | ✅ | 確認 RPC 函數引用錯誤的表 |
674
- | Migration 建立 | ✅ | `20251212000001_fix_quota_rpc.sql` |
675
- | SQL 語法驗證 | ✅ | 使用正確的 user_subscriptions 表 |
676
-
677
- ### 問題根因
678
-
679
- 原始 `get_user_deployment_quota` 函數錯誤引用:
680
- ```sql
681
- FROM user_supabase_config usc -- 此表無 plan_id 欄位
682
- JOIN subscription_plans sp ON usc.plan_id = sp.id
683
- ```
684
-
685
- ### 修復方案
686
-
687
- 改為使用正確的 `user_subscriptions` 表:
688
- ```sql
689
- FROM user_subscriptions us
690
- JOIN subscription_plans sp ON us.plan_id = sp.id
691
- WHERE us.user_id = p_user_id AND us.status = 'active'
692
- ```
693
-
694
- ### 新建檔案
695
-
696
- | 檔案路徑 | 功能 |
697
- |---------|------|
698
- | `supabase/migrations/20251212000001_fix_quota_rpc.sql` | 修復 RPC 函數定義 |
699
-
700
- ### 用戶待辦事項
701
-
702
- 執行資料庫遷移以套用修復:
703
- ```bash
704
- cd supabase && supabase db push
705
- ```
706
-
707
- ---
708
-
709
- ## TASK_055 完成產出
710
-
711
- ### 完成內容
712
-
713
- | 項目 | 狀態 | 說明 |
714
- |------|------|------|
715
- | react-i18next 安裝 | ✅ | i18next + i18next-browser-languagedetector |
716
- | i18n 配置 | ✅ | 7 個命名空間 (common, nav, builder, pricing, auth, profile, billing) |
717
- | zh-TW 語言檔案 | ✅ | 繁體中文翻譯 |
718
- | en 語言檔案 | ✅ | 英文翻譯 |
719
- | 組件改造 | ✅ | TopBar, UserMenu, PricingPage, BillingPage, ProfilePage |
720
- | 語言切換 UI | ✅ | UserMenu 內置語言切換按鈕 |
721
-
722
- ### 新建檔案
723
-
724
- | 檔案路徑 | 功能 |
725
- |---------|------|
726
- | `i18n/index.ts` | i18n 配置和初始化 |
727
- | `i18n/locales/zh-TW/*.json` | 繁體中文翻譯檔案 (7 個) |
728
- | `i18n/locales/en/*.json` | 英文翻譯檔案 (7 個) |
729
- | `components/ui/LanguageSwitcher.tsx` | 獨立語言切換組件 |
730
-
731
- ### 修改檔案
732
-
733
- | 檔案路徑 | 修改內容 |
734
- |---------|---------|
735
- | `App.tsx` | 導入 i18n 配置 |
736
- | `components/layout/TopBar.tsx` | 使用 useTranslation |
737
- | `components/layout/UserMenu.tsx` | 使用翻譯 + 語言切換 UI |
738
- | `pages/PricingPage.tsx` | 使用翻譯 |
739
- | `pages/BillingPage.tsx` | 使用翻譯 |
740
- | `pages/ProfilePage.tsx` | 使用翻譯 |
741
-
742
- ---
743
-
744
- ## TASK_056 完成產出
745
-
746
- ### 完成內容
747
-
748
- | 項目 | 狀態 | 說明 |
749
- |------|------|------|
750
- | 程式碼檢查 | ✅ 無需修改 | cloudrun_deployer.py / deploy.py 已完整實現 |
751
- | Migration | ✅ 已存在 | `20251210000002_deployed_sites.sql` |
752
- | .env.example | ✅ 已包含 | GCP 相關環境變數已配置 |
753
- | 部署指南 | ✅ 已創建 | 擴充 `supabase/DEPLOYMENT_GUIDE.md` |
754
-
755
- ### 修改檔案
756
-
757
- | 檔案路徑 | 修改內容 |
758
- |---------|---------|
759
- | `supabase/DEPLOYMENT_GUIDE.md` | 新增 GCP Cloud Run 部署指南章節 |
760
-
761
- ### 用戶待辦事項
762
-
763
- 要啟用 Cloud Run 部署功能,用戶需:
764
-
765
- 1. **安裝 GCP SDK**
766
- ```bash
767
- # 安裝 gcloud CLI
768
- # https://cloud.google.com/sdk/docs/install
769
- ```
770
-
771
- 2. **執行 GCP 設置** (參考 `supabase/DEPLOYMENT_GUIDE.md`)
772
- - 創建 GCP 專案
773
- - 啟用 API (Cloud Run, Artifact Registry, Cloud Build)
774
- - 創建 Service Account 並下載金鑰
775
- - 創建 Artifact Registry 儲存庫
776
-
777
- 3. **設定環境變數**
778
- ```bash
779
- GCP_PROJECT_ID=your-project-id
780
- GCP_REGION=asia-east1
781
- GCP_ARTIFACT_REGISTRY=kenaz-sites
782
- GOOGLE_APPLICATION_CREDENTIALS=/path/to/gcp-key.json
783
- ```
784
-
785
- 4. **執行資料庫遷移**
786
- ```bash
787
- cd supabase && supabase db push
788
- ```
789
-
790
- ---
791
-
792
- ## TASK_054 完成產出
793
-
794
- ### 診斷結論
795
-
796
- | 項目 | 狀態 | 說明 |
797
- |------|------|------|
798
- | `deploy.py` 程式碼 | ✅ 無需修改 | 已使用 `service_role_client` |
799
- | Migration 檔案 | ✅ 已存在 | `20251210000002_deployed_sites.sql` |
800
- | 問題根因 | ⏳ 待用戶執行 | Migration 尚未推送到遠端資料庫 |
801
-
802
- ### 用戶待辦事項
803
-
804
- 執行資料庫遷移:
805
- ```bash
806
- cd supabase && supabase db push
807
- ```
808
-
809
- ---
810
-
811
- ## TASK_059 完成產出
812
-
813
- ### 完成內容
814
-
815
- | 項目 | 狀態 | 說明 |
816
- |------|------|------|
817
- | 一鍵執行腳本 | ✅ | `supabase/migrations/FULL_DATABASE_SETUP.sql` |
818
- | deployed_sites 表 | ✅ | 包含在腳本中 |
819
- | deployment_logs 表 | ✅ | 包含在腳本中 |
820
- | user_layouts 表 | ✅ | 包含在腳本中 |
821
- | RPC 函數修復 | ✅ | 包含在腳本中 |
822
- | RLS 政策 | ✅ | 包含在腳本中 |
823
-
824
- ### 新建檔案
825
-
826
- | 檔案路徑 | 功能 |
827
- |---------|------|
828
- | `supabase/migrations/FULL_DATABASE_SETUP.sql` | 一鍵資料庫設置腳本 |
829
-
830
- ### 用戶待辦事項
831
-
832
- 1. 打開 [Supabase SQL Editor](https://supabase.com/dashboard)
833
- 2. 複製 `supabase/migrations/FULL_DATABASE_SETUP.sql` 全部內容
834
- 3. 貼上並執行
835
- 4. 重啟後端服務
836
-
837
- ---
838
-
839
- ## 專案里程碑
840
-
841
- 🎉 **70 個任務全部完成!Pipeline 任務清空!** 🎉
842
-
843
- 專案已達到生產就緒狀態,包含:
844
- - 完整的 AI 網站建構器功能
845
- - Cursor 風格的訂閱與帳單系統
846
- - 響應式設計與主題一致性
847
- - 完整的測試框架覆蓋 (283+ 測試案例)
848
- - 高併發後端架構
849
- - 請求追蹤與性能監控
850
- - **一鍵部署到 GCP Cloud Run** (Export 直接部署)
851
- - **BSC USDT 區塊鏈支付** (模組化設計)
852
- - **全面的後端單元測試** (Payment/Deploy/Storage/Middleware/Routers)
853
- - **完整的 RLS 政策** (user_subscriptions/user_layouts)
854
- - **完整的 GCP Cloud Run 部署指南** (設置步驟、故障排除、費用估算)
855
- - **完整的多語系支援** (zh-TW/en 整站覆蓋,15+ 組件改造)
856
- - **多頁面編輯系統** (Phase 1-3: 頁面管理、導航連結、i18n)
857
- - **範本導出功能** (一鍵導出設計為可重用 JSON 範本)
858
- - **Preview 模式頁面導航** (useButtonNavigation hook、支援外部/內部/錨點連結)
859
- - **Canvas 內部頁面切換** (Preview 模式下點擊內部連結切換 Canvas 顯示頁面)
860
- - **NAV/Footer 跨頁面共享** (右鍵設為共享區塊,自動同步到所有頁面)