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.
- package/core/.claude/hooks/_user-scope.js +1 -1
- package/core/.claude/hooks/core-resolve.js +1 -1
- package/core/.claude/hooks/worktree-create.js +11 -29
- package/core/.claude/hooks/worktree-remove.js +12 -38
- package/core/.collaboration/core/reconcile.js +16 -1
- package/core/.collaboration/core/task-2467-lifecycle.test.js +63 -0
- package/core/.collaboration/core/task-api.js +37 -7
- package/core/.formation/bifrost/launch.js +1 -1
- package/core/.formation/tools/dispatch-detail/worktree-subagent-mode.md +6 -1
- package/core/.formation/tools/kenaz-stats.js +1 -1
- package/core/.formation/tools/post-complete/git-merge.js +1 -1
- package/core/.formation/tools/prompt.js +1 -1
- package/core/.formation/tools/utils.js +5 -5
- package/core/.formation/tools/worktree-reclaim.js +73 -2
- package/core/.formation/tools/worktree-reclaim.test.js +113 -0
- package/core/.kenaz/specialist/ansuz_rules.yaml +7 -51
- package/core/.kenaz/specialist/ansuz_session_handoff.schema.json +2 -6
- package/core/.rule/general/project-self-containment.yaml +2 -2
- package/core/.specialist/Amelia/README.md +1 -1
- package/core/.specialist/Amelia/rule.yaml +1 -1
- package/core/.specialist/Ansuz/RULES.md +6 -2
- package/core/.specialist/Ansuz/concepts/commitment_layer.yaml +1 -1
- package/core/.specialist/Ansuz/concepts/evolvable_guardrails.yaml +1 -1
- package/core/.specialist/Ansuz/knowledge.yaml +1 -3
- package/core/.specialist/tools/__tests__/task-2409-lessons.test.js +10 -0
- package/core/.specialist/tools/__tests__/task-2427-harvest.test.js +25 -0
- package/core/.specialist/tools/ansuz-boot-fast.js +1 -1
- package/core/.specialist/tools/failure-detector.js +4 -4
- package/core/.specialist/tools/handoff-doc.js +1 -1
- package/core/.specialist/tools/lessons.js +2 -2
- package/core/CLAUDE.md +5 -5
- package/core/KENAZ_CORE_VERSION +1 -1
- package/core/dashboard/scripts/install-kenaz-cli.js +56 -30
- package/core/dev/scripts/check-file-size.js +1 -1
- package/core/dev/scripts/ci-feedback.js +1 -1
- package/core/dev/scripts/gc-agent-worktrees.js +13 -12
- package/core/dev/scripts/kenaz-session.js +3 -3
- package/core/dev/scripts/peer-identity-e2e.js +6 -4
- package/core/dev/scripts/run-rust-tests.js +2 -2
- package/core/dev/scripts/skill-routing-replay.js +3 -3
- package/core/dev/scripts/task1961/selftest.js +2 -2
- package/core/dev/scripts/windows-hide-guard.test.js +112 -0
- package/core/plugins/kenaz/guidance.md +1 -0
- package/core/plugins/kenaz/hooks/core-resolve.js +1 -1
- package/core/plugins/kenaz/hooks/hooks.json +9 -0
- package/core/plugins/kenaz/hooks/kenaz-hook.js +58 -4
- package/core/plugins/kenaz/hooks/worktree-guard.js +121 -0
- package/core/plugins/kenaz/hooks/worktree-guard.test.js +75 -0
- package/core/plugins/kenaz/scripts/kenaz.test.js +72 -5
- package/core/plugins/kenaz-peer/hooks/register.test.ts +14 -2
- package/core/plugins/kenaz-peer/hooks/register.ts +6 -1
- package/lib/cli.js +9 -5
- package/package.json +6 -6
- package/vendor/install-kenaz-cli.js +56 -30
- package/core/.kenaz/designs/METAPLASTICITY_CONFIDENCE_DESIGN.md +0 -537
- package/core/.kenaz/designs/REFLEX_INITIATOR_DESIGN.md +0 -501
- package/core/.kenaz/designs/TASK_1385_handoff_mcp_design.md +0 -426
- package/core/.kenaz/designs/TASK_932_hippocampus_consolidation.md +0 -103
- package/core/.kenaz/designs/TASK_934_efe_signal_engine.md +0 -97
- package/core/.kenaz/designs/TASK_935_self_evolution_framework.md +0 -154
- package/core/.kenaz/designs/VISION_cognitive_architecture_roadmap.md +0 -159
- package/core/.kenaz/designs/metaplasticity_simulation_results.json +0 -696
- package/core/.kenaz/main-memory/README.md +0 -230
- package/core/.kenaz/main-memory/kenaz/cortex/001_cortex_overview.md +0 -168
- package/core/.kenaz/main-memory/kenaz/cortex/001_rag_engine_overview.md +0 -30
- package/core/.kenaz/main-memory/kenaz/memory-system/001_three_tier_architecture.md +0 -361
- package/core/.kenaz/main-memory/kenaz/pipeline/001_task_execution_flow.md +0 -117
- package/core/.kenaz/main-memory/kenaz/pipeline/001_task_granularity.md +0 -154
- package/core/.kenaz/main-memory/kenaz/pipeline/002_team_priority.md +0 -51
- package/core/.kenaz/main-memory/kenaz/pipeline/003_feature_id_system.md +0 -46
- package/core/.kenaz/main-memory/kenaz/rules/001_gen_007_self_containment.md +0 -108
- package/core/.kenaz/main-memory/kenaz/rules/001_rule_priority_system.md +0 -121
- package/core/.kenaz/main-memory/kenaz/rules/002_agt_006_pre_check.md +0 -0
- package/core/.kenaz/main-memory/kenaz/rules/003_ppl_002_task_archival.md +0 -48
- package/core/.kenaz/main-memory/kenaz/system/001_dual_track_task_system.md +0 -197
- package/core/.kenaz/main-memory/knowledge/patterns/001_json_bom_issue.md +0 -78
- package/core/.kenaz/main-memory/knowledge/patterns/001_leader_worker_pattern.md +0 -0
- package/core/.kenaz/main-memory/knowledge/patterns/002_scope_path_conflict.md +0 -115
- package/core/.kenaz/main-memory/knowledge/patterns/002_task_dependency_resolution.md +0 -223
- package/core/.kenaz/main-memory/knowledge/patterns/003_question_protocol.md +0 -242
- package/core/.kenaz/main-memory/knowledge/patterns/004_user_insight_value.md +0 -111
- package/core/.kenaz/main-memory/knowledge/patterns/005_file_lock_pattern.md +0 -274
- package/core/.kenaz/main-memory/knowledge/references/001_ppl_rules.md +0 -28
- package/core/.kenaz/main-memory/knowledge/solutions/001_json_bom_issue.md +0 -137
- package/core/.kenaz/main-memory/knowledge/solutions/001_team_invocation.md +0 -0
- package/core/.kenaz/main-memory/knowledge/solutions/002_passive_monitoring.md +0 -0
- package/core/.kenaz/main-memory/knowledge/solutions/003_windows_file_race_condition.md +0 -239
- package/core/.kenaz/main-memory/registry.json +0 -326
- package/core/.kenaz/main-memory/version.yaml +0 -58
- package/core/.kenaz/specialist/memory_guard_fired.json +0 -1
- package/core/.kenaz/specialist/memory_guard_trigger_cache.json +0 -1
- package/core/.kenaz/specialist/memory_source_priority.yaml +0 -260
- package/core/.kenaz/specialist/prompt_1775.txt +0 -317
- package/core/.kenaz/specialist/prompt_1776.txt +0 -326
- package/core/.kenaz/specialist/prompt_1791.txt +0 -320
- package/core/.kenaz/specialist/prompt_1792.txt +0 -320
- package/core/.kenaz/specialist/prompt_1795.txt +0 -281
- package/core/.kenaz/specialist/prompt_1813.txt +0 -332
- package/core/.kenaz/specialist/prompt_1814.txt +0 -401
- package/core/.kenaz/specialist/prompt_1815.txt +0 -394
- package/core/.kenaz/specialist/prompt_1816.txt +0 -437
- package/core/.kenaz/specialist/prompt_1818.txt +0 -361
- package/core/.kenaz/specialist/prompt_1819.txt +0 -421
- package/core/.kenaz/specialist/prompt_1821.txt +0 -345
- package/core/.kenaz/specialist/prompt_1822.txt +0 -313
- package/core/.kenaz/specialist/prompt_1824.txt +0 -348
- package/core/.kenaz/specialist/prompt_1826.txt +0 -388
- package/core/.kenaz/specialist/rune_efe_salience_gap.md +0 -21
- package/core/.kenaz/specialist/task1825_update.json +0 -43
- package/core/.kenaz/specialist/taskgen/consolidation_i.json +0 -38
- package/core/.kenaz/specialist/taskgen/csharp_a.json +0 -44
- package/core/.kenaz/specialist/taskgen/csharp_b.json +0 -40
- package/core/.kenaz/specialist/taskgen/embedding_e.json +0 -34
- package/core/.kenaz/specialist/taskgen/hygiene_fg.json +0 -39
- package/core/.kenaz/specialist/taskgen/pathology_h.json +0 -36
- package/core/.kenaz/specialist/taskgen/unity_noise_d.json +0 -38
- package/core/.kenaz/specialist/taskgen/visibility_c.json +0 -38
- package/core/.specialist/Ansuz/decisions/ADR-requirement-graph-layer.md +0 -390
- package/core/.specialist/Ansuz/self_model_seed.backup.json +0 -100
- package/core/.specialist/ansuz_session_handoff.json +0 -96
- package/core/dev/ALAYA_FIELD_FEEDBACK_DESIGN.md +0 -126
- package/core/dev/ANSUZ_SCAFFOLD_DIET_2026-09-20.md +0 -231
- package/core/dev/ANSUZ_STARTUP_INJECTION_REVIEW.md +0 -355
- package/core/dev/ANSUZ_WORKFLOW_MODERNIZATION.md +0 -143
- package/core/dev/CORTEX_META_GRAPH_ASSESSMENT.md +0 -99
- package/core/dev/FREYA_DOWNSTREAM_BUGS_2026-09-19.md +0 -44
- package/core/dev/GLOBAL_MEMORY_IDENTITY_CONSOLIDATION.md +0 -263
- package/core/dev/GUARD_EFFECTIVENESS_DESIGN.md +0 -180
- package/core/dev/HEALTH_GATE_VARIANCE_ASSESSMENT.md +0 -271
- package/core/dev/HOOK_DIET_2026-09-21.md +0 -126
- package/core/dev/JEV_INTEGRATION_PLAN.md +0 -189
- package/core/dev/KENAZ_AGENT_CONNECT_v1_SPEC.md +0 -139
- package/core/dev/MOBILE_DESIGN_SPEC.md +0 -569
- package/core/dev/MULTI_ANSUZ_SPEC.md +0 -136
- package/core/dev/MUNINN_RETIREMENT.md +0 -115
- package/core/dev/PHASE3_ATTRIBUTION_POPULATION_DIAGNOSIS.md +0 -211
- package/core/dev/PHASE3_P3-2B_TASKLEVEL_PROBE.md +0 -83
- package/core/dev/PHASE3_P3-2_POPULATION_DISJOINTNESS.md +0 -83
- package/core/dev/PHASE3_P3-2_REMEASURE_REPORT.md +0 -231
- package/core/dev/PREDICTION_GROUNDING_DESIGN.md +0 -376
- package/core/dev/PRODUCT_SPEC.md +0 -317
- package/core/dev/PROJECT_REGISTRY_DUPLICATE_ASSESSMENT.md +0 -86
- package/core/dev/STARTUP_TIMELINE_TASK_1995.md +0 -181
- package/core/dev/SYNAPSE_WORKER_PER_PROJECT.md +0 -881
- package/core/dev/TASK_1680_P3-3_DISPATCH_SPEC.md +0 -96
- package/core/dev/TASK_1684_CALIBRATION_IMPACT_ANALYSIS.md +0 -170
- package/core/dev/TASK_1684_FORK_A_GOODHART_DESIGN.md +0 -171
- package/core/dev/TASK_1684_P3_2_REMEASURE_VALIDATION.md +0 -262
- package/core/dev/TASK_1903_SIGNAL_AUC_MEASUREMENT.md +0 -207
- package/core/dev/TASK_1904_BRANCH_INTEGRITY_AUDIT.md +0 -146
- package/core/dev/ansuz-eval/README.md +0 -38
- package/core/dev/ansuz-eval/build-fixtures.js +0 -87
- package/core/dev/ansuz-eval/grade.js +0 -96
- package/core/dev/ansuz-eval/grader.test.js +0 -117
- package/core/dev/ansuz-eval/tasks.md +0 -32
- package/core/dev/archive/ansuz/BOOT_FULL.md +0 -141
- package/core/dev/archive/ansuz/agents/ansuz-boot.md +0 -176
- package/core/dev/archive/ansuz/designs/alaya-passive-surfacing.md +0 -84
- package/core/dev/archive/ansuz/designs/cc_memory_indexing.md +0 -307
- package/core/dev/archive/ansuz/designs/check_guard.md +0 -322
- package/core/dev/archive/ansuz/designs/consequence_loop.md +0 -227
- package/core/dev/archive/ansuz/designs/mcp_kuzudb_lock_architecture.md +0 -312
- package/core/dev/archive/ansuz/designs/phase0_git_enrichment.md +0 -278
- package/core/dev/archive/ansuz/designs/refactor_mcp_tools_synapse.md +0 -490
- package/core/dev/archive/ansuz/designs/semantic_markdown_extraction.md +0 -167
- package/core/dev/archive/ansuz/designs/task_1372_prompt_injects_into.md +0 -193
- package/core/dev/archive/ansuz/designs/thought_stack.md +0 -286
- package/core/dev/archive/ansuz/investigations/reachability_unified_api_2026-04-11.md +0 -330
- package/core/dev/archive/ansuz/investigations/synapse_orphans_indexing_bug_2026-04-11.md +0 -352
- package/core/dev/archive/ansuz/investigations/synapse_orphans_reindex_verification_2026-04-11.md +0 -48
- package/core/dev/archive/ansuz/investigations/synapse_orphans_verification_2026-04-11.md +0 -170
- package/core/dev/archive/ansuz/legacy/kernel.yaml +0 -399
- package/core/dev/archive/ansuz/legacy/phases/phase_0.yaml +0 -418
- package/core/dev/archive/ansuz/legacy/phases/phase_1.yaml +0 -376
- package/core/dev/archive/ansuz/legacy/phases/phase_10.yaml +0 -35
- package/core/dev/archive/ansuz/legacy/phases/phase_11.yaml +0 -582
- package/core/dev/archive/ansuz/legacy/phases/phase_2.yaml +0 -94
- package/core/dev/archive/ansuz/legacy/phases/phase_3.yaml +0 -274
- package/core/dev/archive/ansuz/legacy/phases/phase_4.yaml +0 -67
- package/core/dev/archive/ansuz/legacy/phases/phase_5.yaml +0 -32
- package/core/dev/archive/ansuz/legacy/phases/phase_6.yaml +0 -91
- package/core/dev/archive/ansuz/legacy/phases/phase_7.yaml +0 -58
- package/core/dev/archive/ansuz/legacy/phases/phase_8.yaml +0 -146
- package/core/dev/archive/ansuz/legacy/phases/phase_9.yaml +0 -424
- package/core/dev/archive/ansuz/specs/INDEX_bifrost_hook_parity.yaml +0 -92
- package/core/dev/archive/ansuz/specs/active-inference-formation.yaml +0 -453
- package/core/dev/archive/ansuz/specs/brief_TASK_1228_userpromptsubmit.yaml +0 -191
- package/core/dev/archive/ansuz/specs/brief_TASK_1229_pretooluse_posttooluse.yaml +0 -250
- package/core/dev/archive/ansuz/specs/brief_TASK_1230_sessionstart_stop.yaml +0 -301
- package/core/dev/archive/ansuz/specs/brief_TASK_1231_verification.yaml +0 -272
- package/core/dev/archive/skills/feature_agent/SKILL.md +0 -289
- package/core/dev/design/PHASE4_DESIGN.md +0 -559
- package/core/dev/design/dashboard_docs_integration_PLAN.md +0 -388
- package/core/dev/design/matrix_format_ABBREVIATIONS.md +0 -655
- package/core/dev/design/matrix_format_DESIGN_SPEC.md +0 -601
- package/core/dev/design/matrix_format_DISCUSSION_SUMMARY.md +0 -484
- package/core/dev/design/matrix_format_EXAMPLE_memory.matrix +0 -13
- package/core/dev/design/matrix_format_EXAMPLE_project_status.matrix +0 -9
- package/core/dev/design/matrix_format_EXAMPLE_tasks.matrix +0 -14
- package/core/dev/design/matrix_format_SYNTAX_BNF.md +0 -754
- package/core/dev/design/matrix_format_TOKEN_COMPARISON.md +0 -484
- package/core/dev/design/matrix_v2_COGNITIVE_DESIGN.md +0 -503
- package/core/dev/design/matrix_v2_DISCUSSION_SUMMARY.md +0 -414
- package/core/dev/design/matrix_v2_EXAMPLE.matrix +0 -67
- package/core/dev/designs/EXPANDABLE_CARD_DESIGN_SPEC.md +0 -509
- package/core/dev/jev-eval/ACTIVE_CORRECTION.md +0 -52
- package/core/dev/jev-eval/ANNOTATION_GUIDE.md +0 -68
- package/core/dev/jev-eval/BASELINE_COMPARISON.md +0 -45
- package/core/dev/jev-eval/CONTEXT_REVIEW.md +0 -31
- package/core/dev/jev-eval/EVALUATION_STATUS.md +0 -39
- package/core/dev/jev-eval/HISTORICAL_CORPUS.md +0 -33
- package/core/dev/jev-eval/PACKAGING_VERIFICATION.md +0 -42
- package/core/dev/jev-eval/README.md +0 -101
- package/core/dev/jev-eval/THALAMUS_RANKING.md +0 -58
- package/core/dev/jev-eval/VALIDATION_PROGRESS.md +0 -54
- package/core/dev/jev-eval/cli.mjs +0 -50
- package/core/dev/jev-eval/context.mjs +0 -183
- package/core/dev/jev-eval/corpus.mjs +0 -186
- package/core/dev/jev-eval/fixtures/conversation-review.seed.jsonl +0 -6
- package/core/dev/jev-eval/fixtures/synthetic.jsonl +0 -11
- package/core/dev/jev-eval/metrics.mjs +0 -67
- package/core/dev/jev-eval/muninn-baseline.mjs +0 -119
- package/core/dev/jev-eval/providers.mjs +0 -95
- package/core/dev/jev-eval/reports/annotation-pilot-2026-09-20.json +0 -32
- package/core/dev/jev-eval/reports/context-review-2026-09-20.json +0 -48
- package/core/dev/jev-eval/reports/conversation-review.pending.json +0 -151
- package/core/dev/jev-eval/reports/history-corpus-2026-09-20.json +0 -52
- package/core/dev/jev-eval/reports/length-probe-2026-09-20.json +0 -133
- package/core/dev/jev-eval/reports/live-smoke-2026-09-20.json +0 -616
- package/core/dev/jev-eval/reports/muninn-baseline-2026-09-20.json +0 -52
- package/core/dev/jev-eval/reports/resilience-2026-09-20.json +0 -520
- package/core/dev/jev-eval/reports/rules-baseline.json +0 -197
- package/core/dev/jev-eval/reports/synthetic-review.pending.json +0 -357
- package/core/dev/jev-eval/resilience.mjs +0 -71
- package/core/dev/jev-eval/review.mjs +0 -78
- package/core/dev/jev-eval/schema.mjs +0 -87
- package/core/dev/jev-eval/test/context.test.mjs +0 -95
- package/core/dev/jev-eval/test/corpus.test.mjs +0 -102
- package/core/dev/jev-eval/test/eval.test.mjs +0 -146
- package/core/dev/jev-eval/test/muninn-baseline.test.mjs +0 -71
- package/core/dev/jev-eval/test/resilience.test.mjs +0 -72
- package/core/dev/jev-eval/test/review.test.mjs +0 -61
- package/core/dev/pipeline/PHASE3_PLANNING_SUMMARY.md +0 -338
- package/core/dev/pipeline/PROGRESS.md +0 -113
- package/core/dev/pipeline/PROGRESS_template.md +0 -860
- package/core/dev/pipeline/QA_REPORT_F008.md +0 -431
- package/core/dev/pipeline/QA_REPORT_LOCAL_CLAUDE_DIAGNOSIS.md +0 -583
- package/core/dev/pipeline/README.md +0 -210
- package/core/dev/pipeline/WORKFLOW_GUIDE.md +0 -824
- package/core/dev/pipeline/archived/TASK_015_tauri_init.yaml +0 -53
- package/core/dev/pipeline/archived/TASK_016_tauri_commands.yaml +0 -54
- package/core/dev/pipeline/archived/TASK_017_rust_pty.yaml +0 -54
- package/core/dev/pipeline/archived/TASK_018_tauri_bundle.yaml +0 -53
- package/core/dev/pipeline/archived/TASK_019_release_workflow.yaml +0 -56
- package/core/dev/pipeline/archived/TASK_020_update_ui.yaml +0 -54
- package/core/dev/pipeline/archived/TASK_021_update_notification_ui.yaml +0 -55
- package/core/dev/pipeline/archived/TASK_022_remove_node_pty.yaml +0 -65
- package/core/dev/pipeline/archived/TASK_023_api_routes_migration.yaml +0 -86
- package/core/dev/pipeline/archived/TASK_024_feature_id_system.yaml +0 -51
- package/core/dev/pipeline/archived/TASK_025_executable_acceptance.yaml +0 -66
- package/core/dev/pipeline/archived/TASK_026_spec_versioning.yaml +0 -56
- package/core/dev/pipeline/archived/TASK_027_drift_detection.yaml +0 -60
- package/core/dev/pipeline/archived/TASK_028_tauri_pty_manager.yaml +0 -60
- package/core/dev/pipeline/archived/TASK_029_tauri_pty_commands.yaml +0 -62
- package/core/dev/pipeline/archived/TASK_030_frontend_session_adapter.yaml +0 -54
- package/core/dev/pipeline/archived/TASK_031_terminal_tauri_events.yaml +0 -56
- package/core/dev/pipeline/archived/TASK_041_scheduler_data_models.yaml +0 -54
- package/core/dev/pipeline/archived/TASK_042_path_lock_manager.yaml +0 -53
- package/core/dev/pipeline/archived/TASK_043_process_manager.yaml +0 -57
- package/core/dev/pipeline/archived/TASK_044_git_integration.yaml +0 -85
- package/core/dev/pipeline/archived/TASK_045_task_queue_manager.yaml +0 -54
- package/core/dev/pipeline/archived/TASK_046_scheduler_dispatcher.yaml +0 -60
- package/core/dev/pipeline/archived/TASK_047_tauri_scheduler_commands.yaml +0 -55
- package/core/dev/pipeline/archived/TASK_048_realtime_status_push.yaml +0 -92
- package/core/dev/pipeline/archived/TASK_049_frontend_scheduler_integration.yaml +0 -58
- package/core/dev/pipeline/archived/TASK_050_error_recovery.yaml +0 -56
- package/core/dev/pipeline/archived/TASK_051_optimization_proposals_backend.yaml +0 -53
- package/core/dev/pipeline/archived/TASK_052_optimization_proposals_ui.yaml +0 -58
- package/core/dev/pipeline/archived/TASK_053_optimization_proposals_diff_view.yaml +0 -54
- package/core/dev/pipeline/archived/TASK_054_multi_project_scheduler_state.yaml +0 -76
- package/core/dev/pipeline/archived/TASK_055_scheduler_api_project_scope.yaml +0 -64
- package/core/dev/pipeline/archived/TASK_056_frontend_scheduler_project_scope.yaml +0 -62
- package/core/dev/pipeline/archived/TASK_057_scheduler_module_structure.yaml +0 -54
- package/core/dev/pipeline/archived/TASK_058_scheduler_models_extract.yaml +0 -51
- package/core/dev/pipeline/archived/TASK_059_scheduler_core_extract.yaml +0 -51
- package/core/dev/pipeline/archived/TASK_060_scheduler_commands_extract.yaml +0 -51
- package/core/dev/pipeline/archived/TASK_061_scheduler_specialized_commands.yaml +0 -53
- package/core/dev/pipeline/archived/TASK_062_process_manager_module_structure.yaml +0 -56
- package/core/dev/pipeline/archived/TASK_063_process_manager_core_extract.yaml +0 -56
- package/core/dev/pipeline/archived/TASK_064_recovery_module_structure.yaml +0 -57
- package/core/dev/pipeline/archived/TASK_065_recovery_core_extract.yaml +0 -56
- package/core/dev/pipeline/archived/TASK_066_self_enhancement_scheduler_models.yaml +0 -60
- package/core/dev/pipeline/archived/TASK_067_agents_section_quick_actions.yaml +0 -53
- package/core/dev/pipeline/archived/TASK_067_self_enhancement_scheduler_core.yaml +0 -65
- package/core/dev/pipeline/archived/TASK_068_agent_workflow_rule_enhancement.yaml +0 -46
- package/core/dev/pipeline/archived/TASK_068_self_enhancement_tauri_commands.yaml +0 -61
- package/core/dev/pipeline/archived/TASK_069_agent_wizard_responsive.yaml +0 -46
- package/core/dev/pipeline/archived/TASK_069_self_enhancement_ui.yaml +0 -62
- package/core/dev/pipeline/archived/TASK_070_preview_panel_redesign.yaml +0 -62
- package/core/dev/pipeline/archived/TASK_070_self_enhancement_integration.yaml +0 -57
- package/core/dev/pipeline/archived/TASK_071_preview_panel_qa.yaml +0 -98
- package/core/dev/pipeline/archived/TASK_071_single_agent_config.yaml +0 -57
- package/core/dev/pipeline/archived/TASK_072_preview_modal_esc_fix.yaml +0 -71
- package/core/dev/pipeline/archived/TASK_072_product_review_module.yaml +0 -57
- package/core/dev/pipeline/archived/TASK_073_agents_page_component_refactor.yaml +0 -68
- package/core/dev/pipeline/archived/TASK_073_rename_single_agent.yaml +0 -64
- package/core/dev/pipeline/archived/TASK_074_preview_mode_ui_diagnosis.yaml +0 -71
- package/core/dev/pipeline/archived/TASK_074_single_agent_ui_toggle.yaml +0 -56
- package/core/dev/pipeline/archived/TASK_075_agents_page_component_refactor.yaml +0 -69
- package/core/dev/pipeline/archived/TASK_075_single_agent_integration_test.yaml +0 -75
- package/core/dev/pipeline/archived/TASK_076_preview_mode_ui_diagnosis.yaml +0 -70
- package/core/dev/pipeline/archived/TASK_076_single_agent_continuous_mode.yaml +0 -65
- package/core/dev/pipeline/archived/TASK_077_failure_directory_structure.yaml +0 -51
- package/core/dev/pipeline/archived/TASK_077_single_agent_typescript_types.yaml +0 -59
- package/core/dev/pipeline/archived/TASK_078_fail_001_agent_no_output.yaml +0 -53
- package/core/dev/pipeline/archived/TASK_078_single_agent_ui_simplify.yaml +0 -74
- package/core/dev/pipeline/archived/TASK_079_dashboard_rwd_responsive.yaml +0 -63
- package/core/dev/pipeline/archived/TASK_079_fail_002_json_bom.yaml +0 -56
- package/core/dev/pipeline/archived/TASK_080_fail_003_queue_pollution.yaml +0 -56
- package/core/dev/pipeline/archived/TASK_080_http_server_module.yaml +0 -55
- package/core/dev/pipeline/archived/TASK_081_failure_logging_tools.yaml +0 -57
- package/core/dev/pipeline/archived/TASK_081_http_api_routes.yaml +0 -62
- package/core/dev/pipeline/archived/TASK_082_frontend_api_adapter.yaml +0 -51
- package/core/dev/pipeline/archived/TASK_082_integrate_failure_to_workflow.yaml +0 -60
- package/core/dev/pipeline/archived/TASK_083_cleanup_nextjs_api.yaml +0 -48
- package/core/dev/pipeline/archived/TASK_083_task_queue_cleanup.yaml +0 -67
- package/core/dev/pipeline/archived/TASK_084_rust_dead_code_cleanup.yaml +0 -66
- package/core/dev/pipeline/archived/TASK_084_scheduler_sync_logic_fix.yaml +0 -68
- package/core/dev/pipeline/archived/TASK_085_http_api_web_mode_fixes.yaml +0 -46
- package/core/dev/pipeline/archived/TASK_085_memory_consolidation_0204_0205.yaml +0 -98
- package/core/dev/pipeline/archived/TASK_086_collapsible_preview_panel.yaml +0 -161
- package/core/dev/pipeline/archived/TASK_086_web_mode_feature_parity.yaml +0 -62
- package/core/dev/pipeline/archived/TASK_087_manual_memory_archival.yaml +0 -163
- package/core/dev/pipeline/archived/TASK_087_mobile_http_control.yaml +0 -68
- package/core/dev/pipeline/archived/TASK_088_fail_003_to_ppl_002_rule.yaml +0 -63
- package/core/dev/pipeline/archived/TASK_088_mobile_http_qa.yaml +0 -121
- package/core/dev/pipeline/archived/TASK_089_agent_collaboration_topic.yaml +0 -60
- package/core/dev/pipeline/archived/TASK_089_web_mode_monitor_fix.yaml +0 -58
- package/core/dev/pipeline/archived/TASK_090_cli_detection_fix.yaml +0 -61
- package/core/dev/pipeline/archived/TASK_090_ui_ux_lessons_topic.yaml +0 -63
- package/core/dev/pipeline/archived/TASK_091_expandable_card_design.yaml +0 -56
- package/core/dev/pipeline/archived/TASK_091_move_agent_section_components.yaml +0 -65
- package/core/dev/pipeline/archived/TASK_092_expandable_card_component.yaml +0 -60
- package/core/dev/pipeline/archived/TASK_092_refactor_agent_create_wizard.yaml +0 -84
- package/core/dev/pipeline/archived/TASK_093_taskcard_detail_integration.yaml +0 -57
- package/core/dev/pipeline/archived/TASK_093_update_barrel_exports_test.yaml +0 -84
- package/core/dev/pipeline/archived/TASK_094_ai_agent_generation_enhancement.yaml +0 -115
- package/core/dev/pipeline/archived/TASK_094_proposalcard_detail_integration.yaml +0 -55
- package/core/dev/pipeline/archived/TASK_095_preview_fixes.yaml +0 -129
- package/core/dev/pipeline/archived/TASK_095_single_agent_task_selector.yaml +0 -60
- package/core/dev/pipeline/archived/TASK_096_agents_page_ux_improvements.yaml +0 -163
- package/core/dev/pipeline/archived/TASK_096_single_agent_status_sync.yaml +0 -60
- package/core/dev/pipeline/archived/TASK_097_local_claude_error_logging.yaml +0 -59
- package/core/dev/pipeline/archived/TASK_097_single_agent_monitor_events.yaml +0 -59
- package/core/dev/pipeline/archived/TASK_098_product_manager_team_phase2.yaml +0 -60
- package/core/dev/pipeline/archived/TASK_098_single_agent_refactor_test.yaml +0 -58
- package/core/dev/pipeline/archived/TASK_099_backend_team_creation.yaml +0 -258
- package/core/dev/pipeline/archived/TASK_100_frontend_team_creation.yaml +0 -61
- package/core/dev/pipeline/archived/TASK_101_orchestrator_system.yaml +0 -403
- package/core/dev/pipeline/archived/TASK_102_designer_sre_teams.yaml +0 -90
- package/core/dev/pipeline/archived/TASK_103_integration_testing.yaml +0 -86
- package/core/dev/pipeline/archived/TASK_128_integration_testing.yaml +0 -83
- package/core/dev/pipeline/archived/TASK_134_cortex_v2_phase3_file_watcher.yaml +0 -65
- package/core/dev/pipeline/archived/TASK_134_team_http_api.yaml +0 -96
- package/core/dev/pipeline/archived/TASK_135_cortex_v2_phase3_git_monitor.yaml +0 -63
- package/core/dev/pipeline/archived/TASK_136_cortex_v2_phase3_change_analyzer.yaml +0 -69
- package/core/dev/pipeline/archived/TASK_137_cortex_v2_phase3_cache_invalidator.yaml +0 -67
- package/core/dev/pipeline/archived/TASK_137_team_orchestrator_integration.yaml +0 -93
- package/core/dev/pipeline/archived/TASK_138_cortex_v2_phase3_distributed_cache.yaml +0 -68
- package/core/dev/pipeline/archived/TASK_138_matrix_folder_structure.yaml +0 -61
- package/core/dev/pipeline/archived/TASK_139_cortex_v2_phase3_cache_prewarming.yaml +0 -65
- package/core/dev/pipeline/archived/TASK_146_unified_documentation.yaml +0 -141
- package/core/dev/pipeline/archived/TASK_147_pipeline_execution_rules.yaml +0 -76
- package/core/dev/pipeline/archived/TASK_148_update_claude_md.yaml +0 -77
- package/core/dev/pipeline/archived/TASK_149_fix_nextjs_mdx_serialization.yaml +0 -63
- package/core/dev/pipeline/archived/TASK_149_update_team_docs.yaml +0 -77
- package/core/dev/pipeline/archived/TASK_150_pipeline_workflow_guide.yaml +0 -82
- package/core/dev/pipeline/archived/TASK_164_fix_smart_context_switch.yaml +0 -49
- package/core/dev/pipeline/archived/TASK_165_ctags_symbol_index.yaml +0 -53
- package/core/dev/pipeline/archived/TASK_166_symbol_search_mcp_tool.yaml +0 -48
- package/core/dev/pipeline/archived/TASK_167_llm_module_summary.yaml +0 -55
- package/core/dev/pipeline/archived/TASK_168_map_reduce_context.yaml +0 -51
- package/core/dev/pipeline/archived/TASK_169_v2_integration_testing.yaml +0 -52
- package/core/dev/pipeline/backups/archive_2026-02-04T22-07-22/TASK_QUEUE_backup.json +0 -95
- package/core/dev/pipeline/docs/multi-agent-coordination.md +0 -446
- package/core/dev/pipeline/docs/overview.md +0 -406
- package/core/dev/pipeline/docs/task-management.md +0 -412
- package/core/dev/pipeline/docs/workflows.md +0 -32
- package/core/dev/pipeline/orchestrator/schemas/task_queue_schema.json +0 -58
- package/core/dev/pipeline/orchestrator/schemas/task_schema.json +0 -139
- package/core/dev/pipeline/plans/PLAN_task_cli_refactor.md +0 -281
- package/core/dev/pipeline/test_results/TASK_TEST_PARALLEL_002_result.txt +0 -27
- package/core/dev/plans/ANSUZ_SLIM_PLAN.md +0 -68
- package/core/dev/plans/CLI_FIRST_INSTALL_FLOW.md +0 -120
- package/core/dev/plans/FORMATION_RETIREMENT_PLAN.md +0 -313
- package/core/dev/plans/KUZU_REPLACEMENT_PLAN.md +0 -126
- package/core/dev/scripts/CRASH_DIAGNOSIS.md +0 -47
- package/core/dev/scripts/README.md +0 -142
- package/core/dev/scripts/RUN_ONCE.bat +0 -40
- package/core/dev/scripts/START_DEV_AGENT.bat +0 -63
- package/core/dev/scripts/START_MULTI_AGENT.bat +0 -80
- package/core/dev/scripts/dev_agent_scheduler.ps1 +0 -536
- package/core/dev/scripts/init_git.ps1 +0 -396
- package/core/dev/scripts/init_git.sh +0 -337
- package/core/dev/scripts/init_project.ps1 +0 -851
- package/core/dev/scripts/init_project.sh +0 -477
- package/core/dev/scripts/multi_agent_scheduler.ps1 +0 -2021
- package/core/dev/scripts/multi_agent_scheduler.sh +0 -1344
- package/core/dev/scripts/run_once.sh +0 -47
- package/core/dev/scripts/setup_rag.ps1 +0 -304
- package/core/dev/scripts/setup_rag.sh +0 -230
- package/core/dev/scripts/start_dev_agent.sh +0 -137
- package/core/dev/scripts/start_multi_agent.sh +0 -41
- package/core/dev/scripts/sync_task_queue.ps1 +0 -505
- package/core/dev/scripts/sync_task_queue.sh +0 -392
- package/core/dev/specs/agent-connect/PROTOCOL.md +0 -177
- package/core/dev/specs/agent-connect/SDK_GUIDE.md +0 -915
- package/core/dev/specs/agent-connect/examples/minimal-site/README.md +0 -137
- package/core/dev/specs/agent-connect/examples/minimal-site/package.json +0 -12
- package/core/dev/specs/agent-connect/examples/minimal-site/public/index.html +0 -116
- package/core/dev/specs/agent-connect/examples/minimal-site/public/install-redirect.js +0 -73
- package/core/dev/specs/agent-connect/examples/minimal-site/server.js +0 -516
- package/core/dev/specs/agent-connect/examples/minimal-site/test/smoke.test.mjs +0 -263
- 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
- package/core/dev/specs/agent-connect/history/DEFECT_REPORT_kenaz-agent-hub_2026-09-09_v0.4-prompt-mojibake.md +0 -90
- package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-07.md +0 -61
- package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-08_relay-v1-conformance.md +0 -76
- package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-09_v0.4-session-channel.md +0 -87
- package/core/dev/specs/agent-connect/history/FLOWPIX_REPLY_agent-hub_2026-09-08_relay-v1-answers.md +0 -68
- package/core/dev/specs/agent-connect/history/FLOWPIX_bridge_CONTRACT.md +0 -642
- package/core/dev/specs/agent-connect/history/FLOWPIX_spikes_relay_spike_relay.mjs +0 -244
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-07.md +0 -77
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_direction-change-v0.3.md +0 -44
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_relay-v1-answers-ack.md +0 -37
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_relay-v1-conformance.md +0 -56
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_annotations-install-coldstart.md +0 -44
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_empty-prompt-first-turn.md +0 -56
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_prompt-mojibake-fixed.md +0 -48
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_session-channel.md +0 -57
- package/core/dev/specs/agent-connect/history/PROTOCOL_v0.3_snapshot.md +0 -379
- package/core/dev/specs/agent-connect/history/README.md +0 -47
- package/core/dev/specs/peer/CODEX_INTERACTIVE_PUSH.md +0 -65
- package/core/dev/specs/peer/CODEX_MANAGED_DAEMON.md +0 -54
- package/core/dev/specs/peer/CODEX_PEER_PULL_SPIKE.md +0 -54
- package/core/dev/specs/peer/MODS_SPIKE.md +0 -133
- package/core/dev/specs/peer/PER_PROJECT_ADDRESSING.md +0 -143
- package/core/dev/specs/peer/SWARM_PROTOCOLS.md +0 -256
- package/core/dev/specs/peer/codex-hook-shim-peer.test.js +0 -113
- package/core/dev/specs/peer/codex-push-launcher.test.js +0 -142
- package/core/dev/specs/peer/setup-codex-hooks.test.js +0 -60
- package/core/dev/specs/peer-ansuz/DELIVERY_SPIKE.md +0 -397
- package/core/dev/specs/peer-ansuz/DESIGN.md +0 -109
- package/core/dev/specs/peer-ansuz/spike/claude_poke.js +0 -129
- package/core/dev/specs/peer-ansuz/spike/claude_session_start_hook.js +0 -37
- package/core/dev/specs/peer-ansuz/spike/claude_settings_hook.json +0 -14
- package/core/dev/specs/peer-ansuz/spike/codex_appserver_client.js +0 -105
- package/core/dev/specs/peer-ansuz/spike/codex_appserver_query.js +0 -29
- package/core/dev/specs/peer-ansuz/spike/extract_timeline.js +0 -26
- package/core/dev/specs/synapse/SYMBOL_IDENTITY.md +0 -305
- package/core/dev/spikes/A4-cypher-varlen.md +0 -176
- package/core/dev/spikes/bloat-rounds.sh +0 -25
- package/core/dev/spikes/mods/clean-claude.js +0 -9
- package/core/dev/spikes/mods/drive-probe.js +0 -29
- package/core/dev/spikes/mods/e2e-peer.js +0 -71
- package/core/dev/spikes/mods/evidence/e2e-peer-control.json +0 -17
- package/core/dev/spikes/mods/evidence/e2e-peer-mod.json +0 -17
- package/core/dev/spikes/mods/evidence/probe-006a6e65-d807-4bc1-b648-fd7d1edfe0b4.jsonl +0 -4
- package/core/dev/spikes/mods/evidence/probe-cebdf1f7-f9c4-47a8-83cd-7c0786177404.jsonl +0 -12
- package/core/dev/spikes/mods/evidence/probe-eb21147d-10ce-4c32-93ed-37ca37d88d5a.jsonl +0 -11
- package/core/dev/spikes/mods/evidence/stream-cebdf1f7.jsonl +0 -18
- package/core/dev/spikes/mods/kenaz-mod-probe/.claude-plugin/plugin.json +0 -1
- package/core/dev/spikes/mods/kenaz-mod-probe/hooks/hooks.json +0 -1
- package/core/dev/spikes/mods/kenaz-mod-probe/hooks/register.ts +0 -65
- package/core/dev/spikes/mods/kenaz-mod-probe/tsconfig.json +0 -3
|
@@ -1,403 +0,0 @@
|
|
|
1
|
-
id: TASK_101
|
|
2
|
-
title: .team 協調系統核心模組實作
|
|
3
|
-
description: |
|
|
4
|
-
完成 .team 協調系統的完整實作,包含權限管理、檔案鎖定、衝突解決、訊息通訊、工作流引擎等核心模組。
|
|
5
|
-
該系統將支援多 Agent 並行開發,確保任務分配、檔案存取、權限驗證、通訊協調的完整功能。
|
|
6
|
-
|
|
7
|
-
priority: P0
|
|
8
|
-
status: pending
|
|
9
|
-
agent_type: backend_engineer
|
|
10
|
-
source: Product Manager Team
|
|
11
|
-
created_at: "2026-02-06"
|
|
12
|
-
updated_at: "2026-02-06"
|
|
13
|
-
|
|
14
|
-
requirements:
|
|
15
|
-
- id: REQ_101_001
|
|
16
|
-
title: 權限管理器實作
|
|
17
|
-
description: |
|
|
18
|
-
實作 permission_manager.py,根據 .team/scope_matrix.yaml 進行權限驗證。
|
|
19
|
-
- 支援角色級別權限檢查(reader, editor, admin)
|
|
20
|
-
- 支援路徑級別的細粒度權限(repository, file, directory)
|
|
21
|
-
- 支援臨時權限授予與撤銷
|
|
22
|
-
- 支援權限快取與失效機制
|
|
23
|
-
acceptance:
|
|
24
|
-
- 能夠根據角色驗證權限
|
|
25
|
-
- 能夠根據路徑進行細粒度控制
|
|
26
|
-
- 能夠支援權限繼承
|
|
27
|
-
- 性能: <50ms 單次驗證
|
|
28
|
-
|
|
29
|
-
- id: REQ_101_002
|
|
30
|
-
title: 檔案鎖定機制實作
|
|
31
|
-
description: |
|
|
32
|
-
實作 lock_manager.py,提供檔案級別的鎖定機制。
|
|
33
|
-
- 支援 read lock(多個 Agent 同時讀取)
|
|
34
|
-
- 支援 write lock(排他性寫入)
|
|
35
|
-
- 支援 lock escalation(讀鎖升級為寫鎖)
|
|
36
|
-
- 支援 deadlock detection 與 timeout 機制
|
|
37
|
-
- 支援 first-come-first-served 優先級
|
|
38
|
-
acceptance:
|
|
39
|
-
- 能夠建立和釋放讀寫鎖
|
|
40
|
-
- 能夠檢測死鎖並自動超時
|
|
41
|
-
- 能夠記錄鎖定履歷
|
|
42
|
-
- 性能: <100ms 鎖定/解鎖操作
|
|
43
|
-
|
|
44
|
-
- id: REQ_101_003
|
|
45
|
-
title: 衝突解決器實作
|
|
46
|
-
description: |
|
|
47
|
-
實作 conflict_resolver.py,支援多種衝突解決策略。
|
|
48
|
-
- 支援 merge conflict 自動解決(3-way merge)
|
|
49
|
-
- 支援 version conflict 檢測與解決
|
|
50
|
-
- 支援 dependency conflict 分析
|
|
51
|
-
- 支援衝突報告與人工干預
|
|
52
|
-
- 支援回滾與版本恢復
|
|
53
|
-
acceptance:
|
|
54
|
-
- 能夠檢測並報告衝突
|
|
55
|
-
- 能夠自動合併無衝突的變更
|
|
56
|
-
- 能夠記錄衝突解決過程
|
|
57
|
-
- 能夠支援人工審查模式
|
|
58
|
-
|
|
59
|
-
- id: REQ_101_004
|
|
60
|
-
title: 訊息佇列實作
|
|
61
|
-
description: |
|
|
62
|
-
實作 message_queue.py,支援 Agent 之間的非同步通訊。
|
|
63
|
-
- 支援 pub/sub 消息模式
|
|
64
|
-
- 支援優先級佇列(P0-P3)
|
|
65
|
-
- 支援消息確認機制(ACK/NACK)
|
|
66
|
-
- 支援消息持久化(SQLite)
|
|
67
|
-
- 支援消息重試機制
|
|
68
|
-
acceptance:
|
|
69
|
-
- 能夠發送和接收消息
|
|
70
|
-
- 能夠按優先級處理消息
|
|
71
|
-
- 能夠持久化未處理消息
|
|
72
|
-
- 吞吐量: >100 消息/秒
|
|
73
|
-
|
|
74
|
-
- id: REQ_101_005
|
|
75
|
-
title: 工作流引擎實作
|
|
76
|
-
description: |
|
|
77
|
-
實作 workflow_engine.py,支援複雜工作流定義與執行。
|
|
78
|
-
- 支援 YAML 工作流定義(DAG 格式)
|
|
79
|
-
- 支援任務依賴關係解析
|
|
80
|
-
- 支援並行、順序、條件執行
|
|
81
|
-
- 支援任務狀態追蹤
|
|
82
|
-
- 支援工作流暫停、恢復、取消
|
|
83
|
-
- 支援失敗回復與重試
|
|
84
|
-
acceptance:
|
|
85
|
-
- 能夠解析 YAML 工作流定義
|
|
86
|
-
- 能夠執行 DAG 任務圖
|
|
87
|
-
- 能夠支援並行執行
|
|
88
|
-
- 能夠追蹤任務狀態
|
|
89
|
-
|
|
90
|
-
acceptance_criteria:
|
|
91
|
-
- id: AC_101_001
|
|
92
|
-
criterion: |
|
|
93
|
-
權限管理器能夠在 <50ms 內完成單次權限驗證,支援 3 種權限級別和路徑級別細粒度控制
|
|
94
|
-
validation: |
|
|
95
|
-
運行性能測試:
|
|
96
|
-
```bash
|
|
97
|
-
python -m pytest .team/tests/test_permission_manager.py::test_performance -v
|
|
98
|
-
```
|
|
99
|
-
結果要求: 平均延遲 <50ms,無超時
|
|
100
|
-
|
|
101
|
-
- id: AC_101_002
|
|
102
|
-
criterion: |
|
|
103
|
-
檔案鎖定機制能夠正確處理讀寫鎖、死鎖偵測、超時機制,並支援 first-come-first-served 優先級
|
|
104
|
-
validation: |
|
|
105
|
-
運行並發測試:
|
|
106
|
-
```bash
|
|
107
|
-
python -m pytest .team/tests/test_lock_manager.py -v
|
|
108
|
-
```
|
|
109
|
-
所有併發測試必須通過,包括死鎖偵測和超時恢復
|
|
110
|
-
|
|
111
|
-
- id: AC_101_003
|
|
112
|
-
criterion: |
|
|
113
|
-
衝突解決器能夠檢測多種衝突類型,自動解決無衝突變更,並支援人工審查
|
|
114
|
-
validation: |
|
|
115
|
-
運行衝突解決測試:
|
|
116
|
-
```bash
|
|
117
|
-
python -m pytest .team/tests/test_conflict_resolver.py -v
|
|
118
|
-
```
|
|
119
|
-
所有衝突類型測試必須通過
|
|
120
|
-
|
|
121
|
-
- id: AC_101_004
|
|
122
|
-
criterion: |
|
|
123
|
-
訊息佇列能夠支援 >100 消息/秒吞吐量,正確實現優先級和消息持久化
|
|
124
|
-
validation: |
|
|
125
|
-
運行性能和功能測試:
|
|
126
|
-
```bash
|
|
127
|
-
python -m pytest .team/tests/test_message_queue.py -v
|
|
128
|
-
pytest .team/tests/test_message_queue.py::test_throughput -v
|
|
129
|
-
```
|
|
130
|
-
吞吐量測試結果必須 >100 消息/秒
|
|
131
|
-
|
|
132
|
-
- id: AC_101_005
|
|
133
|
-
criterion: |
|
|
134
|
-
工作流引擎能夠正確解析 YAML 工作流定義,執行 DAG 任務圖,支援並行和條件執行
|
|
135
|
-
validation: |
|
|
136
|
-
運行工作流測試:
|
|
137
|
-
```bash
|
|
138
|
-
python -m pytest .team/tests/test_workflow_engine.py -v
|
|
139
|
-
```
|
|
140
|
-
所有工作流測試必須通過,包括並行執行和條件分支
|
|
141
|
-
|
|
142
|
-
- id: AC_101_006
|
|
143
|
-
criterion: |
|
|
144
|
-
整個協調系統必須包含完整的文檔、類型提示、錯誤處理和日誌記錄
|
|
145
|
-
validation: |
|
|
146
|
-
- 所有模組必須有 docstring 和類型提示
|
|
147
|
-
- 運行類型檢查:`mypy .team/orchestrator/ --strict`
|
|
148
|
-
- 代碼覆蓋率 >=85%:`pytest --cov=.team/orchestrator`
|
|
149
|
-
|
|
150
|
-
technical_notes: |
|
|
151
|
-
## Python 實作架構
|
|
152
|
-
|
|
153
|
-
### 1. 權限管理器 (permission_manager.py)
|
|
154
|
-
```python
|
|
155
|
-
class PermissionManager:
|
|
156
|
-
def __init__(self, scope_matrix_path: str):
|
|
157
|
-
self.scope_matrix = self._load_scope_matrix(scope_matrix_path)
|
|
158
|
-
self.cache = TTLCache(maxsize=1000, ttl=300)
|
|
159
|
-
|
|
160
|
-
def check_permission(self, agent_id: str, action: str, resource: str) -> bool:
|
|
161
|
-
# 1. 檢查緩存
|
|
162
|
-
# 2. 查詢 scope_matrix
|
|
163
|
-
# 3. 評估角色和路徑權限
|
|
164
|
-
# 4. 更新緩存
|
|
165
|
-
pass
|
|
166
|
-
|
|
167
|
-
def grant_temp_permission(self, agent_id: str, resource: str, duration: int):
|
|
168
|
-
# 授予臨時權限(用於特定任務)
|
|
169
|
-
pass
|
|
170
|
-
```
|
|
171
|
-
|
|
172
|
-
### 2. 檔案鎖定管理器 (lock_manager.py)
|
|
173
|
-
```python
|
|
174
|
-
class LockManager:
|
|
175
|
-
def __init__(self, db_path: str = ".team/locks.db"):
|
|
176
|
-
self.db = sqlite3.connect(db_path)
|
|
177
|
-
self.locks = {} # {resource: LockInfo}
|
|
178
|
-
|
|
179
|
-
def acquire_lock(self, resource: str, agent_id: str, lock_type: str, timeout: int = 300) -> LockToken:
|
|
180
|
-
# 1. 檢查 first-come-first-served 佇列
|
|
181
|
-
# 2. 驗證權限
|
|
182
|
-
# 3. 建立鎖定
|
|
183
|
-
# 4. 設置超時機制
|
|
184
|
-
pass
|
|
185
|
-
|
|
186
|
-
def detect_deadlock(self) -> List[str]:
|
|
187
|
-
# 使用 DFS 或 Tarjan 算法檢測循環依賴
|
|
188
|
-
pass
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
### 3. 衝突解決器 (conflict_resolver.py)
|
|
192
|
-
```python
|
|
193
|
-
class ConflictResolver:
|
|
194
|
-
def resolve_merge_conflict(self, base: str, ours: str, theirs: str) -> Tuple[str, ConflictReport]:
|
|
195
|
-
# 執行 3-way merge
|
|
196
|
-
# 1. 標記衝突區塊
|
|
197
|
-
# 2. 嘗試自動合併
|
|
198
|
-
# 3. 回報無法自動解決的衝突
|
|
199
|
-
pass
|
|
200
|
-
|
|
201
|
-
def resolve_version_conflict(self, versions: List[Version]) -> Version:
|
|
202
|
-
# 版本衝突解決策略
|
|
203
|
-
# 1. 比較版本号
|
|
204
|
-
# 2. 檢查依賴關係
|
|
205
|
-
# 3. 選擇最新相容版本
|
|
206
|
-
pass
|
|
207
|
-
```
|
|
208
|
-
|
|
209
|
-
### 4. 訊息佇列 (message_queue.py)
|
|
210
|
-
```python
|
|
211
|
-
class MessageQueue:
|
|
212
|
-
def __init__(self, db_path: str = ".team/messages.db"):
|
|
213
|
-
self.db = sqlite3.connect(db_path)
|
|
214
|
-
self.subscribers = defaultdict(list)
|
|
215
|
-
|
|
216
|
-
def publish(self, topic: str, message: Dict, priority: int = 1) -> str:
|
|
217
|
-
# 發布消息到佇列
|
|
218
|
-
# 1. 序列化消息
|
|
219
|
-
# 2. 存入資料庫
|
|
220
|
-
# 3. 通知訂閱者
|
|
221
|
-
pass
|
|
222
|
-
|
|
223
|
-
def subscribe(self, topic: str, handler: Callable) -> Subscription:
|
|
224
|
-
# 訂閱特定主題
|
|
225
|
-
pass
|
|
226
|
-
```
|
|
227
|
-
|
|
228
|
-
### 5. 工作流引擎 (workflow_engine.py)
|
|
229
|
-
```python
|
|
230
|
-
class WorkflowEngine:
|
|
231
|
-
def __init__(self, workflow_dir: str = ".team/workflows"):
|
|
232
|
-
self.workflow_dir = workflow_dir
|
|
233
|
-
self.executor = ThreadPoolExecutor()
|
|
234
|
-
|
|
235
|
-
def load_workflow(self, workflow_file: str) -> WorkflowDAG:
|
|
236
|
-
# 解析 YAML 工作流定義
|
|
237
|
-
pass
|
|
238
|
-
|
|
239
|
-
def execute(self, workflow: WorkflowDAG, context: Dict) -> ExecutionResult:
|
|
240
|
-
# 執行工作流
|
|
241
|
-
# 1. 解析依賴關係
|
|
242
|
-
# 2. 排定執行順序
|
|
243
|
-
# 3. 並行執行無依賴任務
|
|
244
|
-
# 4. 追蹤狀態
|
|
245
|
-
pass
|
|
246
|
-
```
|
|
247
|
-
|
|
248
|
-
## 數據模型
|
|
249
|
-
|
|
250
|
-
### Lock 數據結構
|
|
251
|
-
```yaml
|
|
252
|
-
lock:
|
|
253
|
-
resource: string # 被鎖定的資源路徑
|
|
254
|
-
agent_id: string # 擁有鎖的 Agent ID
|
|
255
|
-
lock_type: enum # read | write | exclusive
|
|
256
|
-
acquired_at: timestamp
|
|
257
|
-
expires_at: timestamp
|
|
258
|
-
token: uuid # 鎖定憑證
|
|
259
|
-
```
|
|
260
|
-
|
|
261
|
-
### Message 數據結構
|
|
262
|
-
```yaml
|
|
263
|
-
message:
|
|
264
|
-
id: uuid
|
|
265
|
-
topic: string
|
|
266
|
-
sender: string
|
|
267
|
-
payload: object
|
|
268
|
-
priority: int # 0-3 (P0 最高)
|
|
269
|
-
status: enum # pending | sent | acknowledged | failed
|
|
270
|
-
created_at: timestamp
|
|
271
|
-
retry_count: int
|
|
272
|
-
```
|
|
273
|
-
|
|
274
|
-
### Workflow 數據結構
|
|
275
|
-
```yaml
|
|
276
|
-
workflow:
|
|
277
|
-
name: string
|
|
278
|
-
tasks:
|
|
279
|
-
- id: string
|
|
280
|
-
type: enum # task | branch | parallel
|
|
281
|
-
depends_on: list # 依賴的任務 ID
|
|
282
|
-
execute: string # 命令或 Python 函數
|
|
283
|
-
timeout: int
|
|
284
|
-
retry: int
|
|
285
|
-
triggers: # 觸發條件
|
|
286
|
-
- type: enum # scheduled | event | manual
|
|
287
|
-
condition: string
|
|
288
|
-
```
|
|
289
|
-
|
|
290
|
-
## 依賴關係
|
|
291
|
-
- `permission_manager.py` - 被其他模組調用以驗證權限
|
|
292
|
-
- `lock_manager.py` - 被 workflow_engine.py 和外部 API 調用
|
|
293
|
-
- `message_queue.py` - 支援 Agent 間通訊
|
|
294
|
-
- `conflict_resolver.py` - 被 workflow_engine.py 在合併變更時調用
|
|
295
|
-
- `workflow_engine.py` - 最高層級,調用其他模組
|
|
296
|
-
|
|
297
|
-
## 測試策略
|
|
298
|
-
1. 單元測試 - 各模組獨立測試
|
|
299
|
-
2. 整合測試 - 模組間協作測試
|
|
300
|
-
3. 性能測試 - 並發、吞吐量、延遲
|
|
301
|
-
4. 壓力測試 - 極限情況、死鎖、超時
|
|
302
|
-
5. 回歸測試 - 確保修改不破壞現有功能
|
|
303
|
-
|
|
304
|
-
## 部署考慮
|
|
305
|
-
- 使用 SQLite 作為本地持久化存儲(支援多進程訪問)
|
|
306
|
-
- 使用 threading/asyncio 實現並發
|
|
307
|
-
- 使用 Python logging 進行詳細日誌記錄
|
|
308
|
-
- 使用 pydantic 進行數據驗證
|
|
309
|
-
- 考慮使用 APScheduler 實現定時任務和超時機制
|
|
310
|
-
|
|
311
|
-
dependencies:
|
|
312
|
-
- .team/scope_matrix.yaml
|
|
313
|
-
- .team/orchestrator/
|
|
314
|
-
- .team/tests/
|
|
315
|
-
|
|
316
|
-
estimated_hours: 40
|
|
317
|
-
complexity: high
|
|
318
|
-
tags:
|
|
319
|
-
- orchestrator
|
|
320
|
-
- coordination
|
|
321
|
-
- multi-agent
|
|
322
|
-
- backend
|
|
323
|
-
- python
|
|
324
|
-
- core-system
|
|
325
|
-
|
|
326
|
-
subtasks:
|
|
327
|
-
- id: SUBTASK_101_001
|
|
328
|
-
title: 設計系統架構和數據模型
|
|
329
|
-
status: pending
|
|
330
|
-
estimated_hours: 3
|
|
331
|
-
|
|
332
|
-
- id: SUBTASK_101_002
|
|
333
|
-
title: 實作權限管理器
|
|
334
|
-
status: pending
|
|
335
|
-
estimated_hours: 8
|
|
336
|
-
depends_on: [SUBTASK_101_001]
|
|
337
|
-
|
|
338
|
-
- id: SUBTASK_101_003
|
|
339
|
-
title: 實作檔案鎖定管理器
|
|
340
|
-
status: pending
|
|
341
|
-
estimated_hours: 10
|
|
342
|
-
depends_on: [SUBTASK_101_001]
|
|
343
|
-
|
|
344
|
-
- id: SUBTASK_101_004
|
|
345
|
-
title: 實作衝突解決器
|
|
346
|
-
status: pending
|
|
347
|
-
estimated_hours: 8
|
|
348
|
-
depends_on: [SUBTASK_101_001]
|
|
349
|
-
|
|
350
|
-
- id: SUBTASK_101_005
|
|
351
|
-
title: 實作訊息佇列系統
|
|
352
|
-
status: pending
|
|
353
|
-
estimated_hours: 8
|
|
354
|
-
depends_on: [SUBTASK_101_001]
|
|
355
|
-
|
|
356
|
-
- id: SUBTASK_101_006
|
|
357
|
-
title: 實作工作流引擎
|
|
358
|
-
status: pending
|
|
359
|
-
estimated_hours: 12
|
|
360
|
-
depends_on: [SUBTASK_101_001, SUBTASK_101_002, SUBTASK_101_003, SUBTASK_101_004]
|
|
361
|
-
|
|
362
|
-
- id: SUBTASK_101_007
|
|
363
|
-
title: 編寫完整測試套件
|
|
364
|
-
status: pending
|
|
365
|
-
estimated_hours: 12
|
|
366
|
-
depends_on: [SUBTASK_101_002, SUBTASK_101_003, SUBTASK_101_004, SUBTASK_101_005, SUBTASK_101_006]
|
|
367
|
-
|
|
368
|
-
- id: SUBTASK_101_008
|
|
369
|
-
title: 文檔與類型檢查
|
|
370
|
-
status: pending
|
|
371
|
-
estimated_hours: 4
|
|
372
|
-
depends_on: [SUBTASK_101_007]
|
|
373
|
-
|
|
374
|
-
deliverables:
|
|
375
|
-
- .team/orchestrator/permission_manager.py
|
|
376
|
-
- .team/orchestrator/lock_manager.py
|
|
377
|
-
- .team/orchestrator/conflict_resolver.py
|
|
378
|
-
- .team/orchestrator/message_queue.py
|
|
379
|
-
- .team/orchestrator/workflow_engine.py
|
|
380
|
-
- .team/orchestrator/__init__.py
|
|
381
|
-
- .team/orchestrator/models.py (數據模型)
|
|
382
|
-
- .team/orchestrator/exceptions.py (自定義異常)
|
|
383
|
-
- .team/tests/test_permission_manager.py
|
|
384
|
-
- .team/tests/test_lock_manager.py
|
|
385
|
-
- .team/tests/test_conflict_resolver.py
|
|
386
|
-
- .team/tests/test_message_queue.py
|
|
387
|
-
- .team/tests/test_workflow_engine.py
|
|
388
|
-
- .team/docs/ORCHESTRATOR_GUIDE.md
|
|
389
|
-
- .team/docs/API_REFERENCE.md
|
|
390
|
-
|
|
391
|
-
notes: |
|
|
392
|
-
此任務是 .team 協調系統的核心實作,完成後將支援多 Agent 並行開發的完整協調功能。
|
|
393
|
-
|
|
394
|
-
關鍵里程碑:
|
|
395
|
-
1. 第 1 週 - 架構設計 + 權限/鎖定管理器
|
|
396
|
-
2. 第 2 週 - 衝突解決器 + 訊息佇列
|
|
397
|
-
3. 第 3 週 - 工作流引擎 + 完整測試
|
|
398
|
-
4. 第 4 週 - 優化 + 文檔完善 + 部署準備
|
|
399
|
-
|
|
400
|
-
風險項目:
|
|
401
|
-
- 死鎖檢測的複雜性 - 需要仔細的圖論算法實作
|
|
402
|
-
- 並發性能 - 需要大量性能測試和優化
|
|
403
|
-
- 數據一致性 - SQLite 多進程訪問需要正確的鎖定策略
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
# TASK_102: Designer Team & SRE Team 建立
|
|
2
|
-
# Schema: dev/schemas/TASK.schema.json
|
|
3
|
-
|
|
4
|
-
id: "TASK_102"
|
|
5
|
-
title: "Designer Team & SRE Team 建立"
|
|
6
|
-
description: |
|
|
7
|
-
建立完整的 Designer Team 和 SRE Team 兩個團隊結構,包含團隊定義、10 個成員(各 5 人)、權限矩陣與工作流程。
|
|
8
|
-
|
|
9
|
-
**背景**:
|
|
10
|
-
.team 系統已完成 Product Manager Team(MVP)、Backend Team 和 Frontend Team。現在需要建立設計與基礎設施團隊,補全跨職能協作結構。
|
|
11
|
-
|
|
12
|
-
**目標**:
|
|
13
|
-
- Designer Team:展示設計流程、協作規範與交付物管理
|
|
14
|
-
- SRE Team:展示基礎設施管理、監控、安全與部署流程
|
|
15
|
-
|
|
16
|
-
priority: "P1"
|
|
17
|
-
status: "pending"
|
|
18
|
-
agent_type: "developer"
|
|
19
|
-
source: "F-009"
|
|
20
|
-
feature_ids:
|
|
21
|
-
- "F-009"
|
|
22
|
-
|
|
23
|
-
dependencies:
|
|
24
|
-
- "TASK_098" # Product Manager Team 結構參考
|
|
25
|
-
- "TASK_099" # Backend Team 結構參考
|
|
26
|
-
- "TASK_100" # Frontend Team 結構參考
|
|
27
|
-
|
|
28
|
-
scope_paths:
|
|
29
|
-
- ".team/designer/"
|
|
30
|
-
- ".team/sre/"
|
|
31
|
-
|
|
32
|
-
requirements:
|
|
33
|
-
- "建立 .team/designer/TEAM.yaml(Designer Team 團隊定義)"
|
|
34
|
-
- "建立 Designer Team 5 個成員定義文件(design_lead, ui_designer, ux_researcher, design_system_specialist, doc_specialist)"
|
|
35
|
-
- "建立 .team/sre/TEAM.yaml(SRE Team 團隊定義)"
|
|
36
|
-
- "建立 SRE Team 5 個成員定義文件(sre_lead, devops_engineer, monitoring_specialist, security_specialist, doc_specialist)"
|
|
37
|
-
- "建立 .team/designer/permissions/scope_matrix.yaml(設計團隊權限矩陣)"
|
|
38
|
-
- "建立 .team/designer/permissions/lock_policy.yaml(設計團隊鎖定政策)"
|
|
39
|
-
- "建立 .team/designer/workflows/design_system_development.yaml(設計系統開發流程)"
|
|
40
|
-
- "建立 .team/designer/workflows/ui_design_review.yaml(UI 設計審查流程)"
|
|
41
|
-
- "建立 .team/designer/communication/ 目錄結構"
|
|
42
|
-
- "建立 .team/sre/permissions/scope_matrix.yaml(SRE 團隊權限矩陣)"
|
|
43
|
-
- "建立 .team/sre/permissions/lock_policy.yaml(SRE 團隊鎖定政策)"
|
|
44
|
-
- "建立 .team/sre/workflows/deployment.yaml(部署流程)"
|
|
45
|
-
- "建立 .team/sre/workflows/incident_response.yaml(應急響應流程)"
|
|
46
|
-
- "建立 .team/sre/communication/ 目錄結構"
|
|
47
|
-
|
|
48
|
-
acceptance_criteria:
|
|
49
|
-
- ".team/designer/TEAM.yaml 定義了 5 個成員、協作規則與交付物標準"
|
|
50
|
-
- "所有 5 個 Designer 成員定義文件存在於 .team/designer/members/ 目錄"
|
|
51
|
-
- ".team/designer/permissions/scope_matrix.yaml 定義每個成員的權限範圍(如 UI Designer 只能寫 dashboard/src/components/design/)"
|
|
52
|
-
- ".team/designer/workflows/design_system_development.yaml 包含至少 5 個階段(需求收集 → 組件設計 → 代碼生成 → 測試 → 發布)"
|
|
53
|
-
- ".team/designer/workflows/ui_design_review.yaml 定義了設計審查流程(自檢 → 設計評審 → 開發反饋 → 迭代 → 交付)"
|
|
54
|
-
- ".team/sre/TEAM.yaml 定義了 5 個成員、協作規則與 SLA 標準"
|
|
55
|
-
- "所有 5 個 SRE 成員定義文件存在於 .team/sre/members/ 目錄"
|
|
56
|
-
- ".team/sre/permissions/scope_matrix.yaml 定義每個成員的權限範圍(如 DevOps Engineer 能寫 .infrastructure/,Security Specialist 能寫 .security/)"
|
|
57
|
-
- ".team/sre/workflows/deployment.yaml 包含完整部署流程(代碼提交 → CI/CD → 測試 → 預發布 → 生產部署 → 驗證)"
|
|
58
|
-
- ".team/sre/workflows/incident_response.yaml 定義應急響應流程(告警 → 告知 → 診斷 → 恢復 → 事後分析)"
|
|
59
|
-
- "Designer Team 和 SRE Team 的權限不會與 Frontend/Backend Team 衝突"
|
|
60
|
-
- "兩個團隊都配置了溝通頻道(slack_channel, email_list, standups)"
|
|
61
|
-
|
|
62
|
-
technical_notes:
|
|
63
|
-
- "參考 .team/product_manager/、.team/backend/、.team/frontend/ 的結構設計"
|
|
64
|
-
- "Designer Team 成員權限範圍應限制在 dashboard/src/components/design/、.design/、dashboard/docs/design/ 等路徑"
|
|
65
|
-
- "SRE Team 成員權限範圍應限制在 .infrastructure/、.security/、.monitoring/、supabase/、dev/pipeline/ 等路徑"
|
|
66
|
-
- "設計系統開發流程應包含:需求收集 → 設計規範 → 組件設計 → 代碼生成 → 測試驗證"
|
|
67
|
-
- "UI 設計審查流程應包含:設計師自檢 → 團隊評審 → 前端開發反饋 → 設計迭代 → 最終交付"
|
|
68
|
-
- "部署流程應包含完整的 GitOps 實踐、藍綠部署或金絲雀部署策略"
|
|
69
|
-
- "應急響應流程應定義 MTTR(平均恢復時間)、MTTD(平均檢測時間)等 SLA 目標"
|
|
70
|
-
|
|
71
|
-
estimated_hours: 8
|
|
72
|
-
complexity: "high"
|
|
73
|
-
|
|
74
|
-
related_tasks:
|
|
75
|
-
- "TASK_098" # Product Manager Team 完善
|
|
76
|
-
- "TASK_099" # Backend Team 建立
|
|
77
|
-
- "TASK_100" # Frontend Team 建立
|
|
78
|
-
- "TASK_101" # 可能的 QA Team(未來)
|
|
79
|
-
|
|
80
|
-
metadata:
|
|
81
|
-
created_at: "2026-02-06T18:00:00+08:00"
|
|
82
|
-
created_by: "Product Manager Agent (Lead)"
|
|
83
|
-
feature: "F-009 多角色團隊協作系統"
|
|
84
|
-
tags:
|
|
85
|
-
- "team-system"
|
|
86
|
-
- "designer-team"
|
|
87
|
-
- "sre-team"
|
|
88
|
-
- "cross-functional"
|
|
89
|
-
- "workflow-design"
|
|
90
|
-
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
# TASK_103: 整合測試與文件 - Claude Code Integration
|
|
2
|
-
# Schema: dev/schemas/TASK.schema.json
|
|
3
|
-
|
|
4
|
-
id: "TASK_103"
|
|
5
|
-
title: "整合測試與文件 - Claude Code Integration"
|
|
6
|
-
description: |
|
|
7
|
-
整合所有團隊系統(Product Manager、Backend、Frontend Teams),實作與 Claude Code Task tool 的整合,
|
|
8
|
-
建立端到端測試腳本與更新完整文檔。
|
|
9
|
-
|
|
10
|
-
**背景**:
|
|
11
|
-
.team 系統的各個團隊已建立完成(TASK_098-TASK_102),現在需要:
|
|
12
|
-
1. 實作與 Claude Code Task tool 的深度整合
|
|
13
|
-
2. 建立完整的端到端測試套件
|
|
14
|
-
3. 驗證多團隊並行開發場景
|
|
15
|
-
4. 測試權限衝突與解決機制
|
|
16
|
-
5. 更新專案文檔與集成指南
|
|
17
|
-
|
|
18
|
-
**目標**:
|
|
19
|
-
讓 .team 系統成為完全可用的生產級協作框架,支援 Claude Code 直接調用。
|
|
20
|
-
|
|
21
|
-
priority: "P1"
|
|
22
|
-
status: "pending"
|
|
23
|
-
agent_type: "developer"
|
|
24
|
-
source: "F-009"
|
|
25
|
-
feature_ids:
|
|
26
|
-
- "F-009"
|
|
27
|
-
|
|
28
|
-
dependencies:
|
|
29
|
-
- "TASK_098"
|
|
30
|
-
- "TASK_099"
|
|
31
|
-
- "TASK_100"
|
|
32
|
-
- "TASK_101"
|
|
33
|
-
- "TASK_102"
|
|
34
|
-
|
|
35
|
-
scope_paths:
|
|
36
|
-
- ".team/"
|
|
37
|
-
- "dev/pipeline/"
|
|
38
|
-
- ".claude/commands/"
|
|
39
|
-
- "CLAUDE.md"
|
|
40
|
-
- ".team/README.md"
|
|
41
|
-
|
|
42
|
-
requirements:
|
|
43
|
-
- "實作 Claude Code Task tool 整合層 (.team/integration/claude_task_adapter.py)"
|
|
44
|
-
- "建立完整的 E2E 測試套件 (dev/scripts/test_team_workflow.py)"
|
|
45
|
-
- "實作多團隊並行開發測試場景 (test_multi_team_parallel.py)"
|
|
46
|
-
- "實作權限衝突測試與解決機制 (test_permission_conflicts.py)"
|
|
47
|
-
- "建立 .team/README.md - 團隊系統完整指南"
|
|
48
|
-
- "更新 CLAUDE.md - 加入團隊系統呼叫說明與範例"
|
|
49
|
-
- "建立集成檢查清單 (.team/INTEGRATION_CHECKLIST.md)"
|
|
50
|
-
- "實作團隊狀態監控 (.team/orchestrator/team_monitor.py)"
|
|
51
|
-
- "建立故障排查指南 (.team/TROUBLESHOOTING.md)"
|
|
52
|
-
- "建立 MCP Server 工具定義 (.claude/mcp/team_tools.md)"
|
|
53
|
-
|
|
54
|
-
acceptance_criteria:
|
|
55
|
-
- "Claude Code Task tool 能成功調用 .team 系統(通過 claude_task_adapter.py)"
|
|
56
|
-
- "E2E 測試套件涵蓋 Product Manager、Backend、Frontend Teams 的完整工作流程"
|
|
57
|
-
- "測試成功執行多團隊並行開發場景,驗證無衝突且任務順序正確"
|
|
58
|
-
- "權限衝突測試驗證系統能正確檢測並報告權限違規"
|
|
59
|
-
- ".team/README.md 包含系統架構、使用指南、API 文檔、最佳實踐"
|
|
60
|
-
- "CLAUDE.md 更新包含 /team 命令說明與各個團隊的調用示例"
|
|
61
|
-
- "集成檢查清單覆蓋所有團隊、工作流程、權限、通信模式"
|
|
62
|
-
- "所有測試通過並產生報告 (test_results_<date>.json)"
|
|
63
|
-
|
|
64
|
-
technical_notes:
|
|
65
|
-
- "Claude Task tool 整合應支援異步任務回調與進度追蹤"
|
|
66
|
-
- "測試應使用臨時 .team 結構避免污染生產環境"
|
|
67
|
-
- "並行測試應驗證 LOCK_STATE.json 的正確性"
|
|
68
|
-
- "權限測試應包含邊界情況(如部分路徑匹配、萬用字符等)"
|
|
69
|
-
- "監控工具應每 10 秒檢查一次 AGENT_STATE.json 並記錄狀態轉換"
|
|
70
|
-
- "所有測試應產生可機器讀取的 JSON 報告"
|
|
71
|
-
- "故障排查指南應包含常見 10+ 個問題與解決方案"
|
|
72
|
-
|
|
73
|
-
estimated_hours: 8
|
|
74
|
-
complexity: "very_complex"
|
|
75
|
-
|
|
76
|
-
related_tasks:
|
|
77
|
-
- "TASK_098" # Product Manager Team
|
|
78
|
-
- "TASK_099" # Backend Team
|
|
79
|
-
- "TASK_100" # Frontend Team
|
|
80
|
-
- "TASK_101" # QA/SRE Teams (假設存在)
|
|
81
|
-
- "TASK_102" # Designer Team (假設存在)
|
|
82
|
-
|
|
83
|
-
metadata:
|
|
84
|
-
created_at: "2026-02-06T18:00:00+08:00"
|
|
85
|
-
created_by: "Product Manager Agent"
|
|
86
|
-
feature: "F-009 多角色團隊協作系統"
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
id: TASK_128
|
|
2
|
-
title: 整合測試與文件 - E2E 測試與部署指南
|
|
3
|
-
description: |
|
|
4
|
-
建立 Agent Coordination 系統的整合測試套件、E2E 測試、部署文件與故障排查指南。
|
|
5
|
-
|
|
6
|
-
**背景**:
|
|
7
|
-
複雜分散式系統需要完整測試與文件確保可靠性。
|
|
8
|
-
|
|
9
|
-
**目標**:
|
|
10
|
-
1. 建立整合測試(API 測試)
|
|
11
|
-
2. 建立 E2E 測試(多 Agent 協調場景)
|
|
12
|
-
3. 建立部署文件(安裝步驟、配置說明)
|
|
13
|
-
4. 建立故障排查指南(常見問題與解決方案)
|
|
14
|
-
|
|
15
|
-
priority: P1
|
|
16
|
-
status: pending
|
|
17
|
-
agent_type: qa
|
|
18
|
-
source: "User Request - Agent Coordination 系統整合"
|
|
19
|
-
spec_version: "1.0.0"
|
|
20
|
-
feature_ids: []
|
|
21
|
-
|
|
22
|
-
dependencies:
|
|
23
|
-
- "TASK_121"
|
|
24
|
-
- "TASK_122"
|
|
25
|
-
- "TASK_123"
|
|
26
|
-
- "TASK_124"
|
|
27
|
-
- "TASK_125"
|
|
28
|
-
- "TASK_126"
|
|
29
|
-
- "TASK_127"
|
|
30
|
-
|
|
31
|
-
scope_paths:
|
|
32
|
-
- "dashboard/src/app/agent-coordination/__tests__/"
|
|
33
|
-
- "dashboard/docs/agent-coordination/"
|
|
34
|
-
- "dashboard/scripts/test_agent_coordination.ps1"
|
|
35
|
-
|
|
36
|
-
requirements:
|
|
37
|
-
- "建立 API 整合測試(測試所有 API Routes)"
|
|
38
|
-
- "建立 Lock 機制測試(測試鎖定、衝突、死鎖檢測)"
|
|
39
|
-
- "建立 Messaging 測試(測試訊息發送、接收、過濾)"
|
|
40
|
-
- "建立 WebSocket 測試(測試連線、推送、重連)"
|
|
41
|
-
- "建立 E2E 測試(測試多 Agent 協調場景)"
|
|
42
|
-
- "建立 SETUP.md 文件(安裝步驟)"
|
|
43
|
-
- "建立 API.md 文件(API 參考)"
|
|
44
|
-
- "建立 ARCHITECTURE.md 文件(架構說明)"
|
|
45
|
-
- "建立 TROUBLESHOOTING.md 文件(故障排查)"
|
|
46
|
-
- "建立測試執行腳本(test_agent_coordination.ps1)"
|
|
47
|
-
|
|
48
|
-
acceptance_criteria:
|
|
49
|
-
- id: AC-128-1
|
|
50
|
-
type: command
|
|
51
|
-
description: "所有 API 整合測試通過"
|
|
52
|
-
command: "npm test -- agent-coordination"
|
|
53
|
-
timeout_seconds: 60
|
|
54
|
-
- id: AC-128-2
|
|
55
|
-
type: file_exists
|
|
56
|
-
description: "SETUP.md 文件已建立"
|
|
57
|
-
target: "dashboard/docs/agent-coordination/SETUP.md"
|
|
58
|
-
- id: AC-128-3
|
|
59
|
-
type: file_exists
|
|
60
|
-
description: "TROUBLESHOOTING.md 文件已建立"
|
|
61
|
-
target: "dashboard/docs/agent-coordination/TROUBLESHOOTING.md"
|
|
62
|
-
- id: AC-128-4
|
|
63
|
-
type: manual
|
|
64
|
-
description: "E2E 測試通過(3 個 Agent 並行協調場景)"
|
|
65
|
-
|
|
66
|
-
technical_notes:
|
|
67
|
-
- "使用 Jest + Supertest 進行 API 測試"
|
|
68
|
-
- "使用 Socket.IO Client 進行 WebSocket 測試"
|
|
69
|
-
- "E2E 測試使用獨立測試環境(test.env)"
|
|
70
|
-
- "測試覆蓋率目標:80%+"
|
|
71
|
-
- "文件使用 Markdown 格式"
|
|
72
|
-
- "API 文件使用 OpenAPI 格式(可選)"
|
|
73
|
-
|
|
74
|
-
estimated_hours: 24
|
|
75
|
-
complexity: medium
|
|
76
|
-
|
|
77
|
-
related_tasks:
|
|
78
|
-
- "TASK_126"
|
|
79
|
-
- "TASK_127"
|
|
80
|
-
|
|
81
|
-
metadata:
|
|
82
|
-
created_at: "2026-02-07T13:00:00+08:00"
|
|
83
|
-
created_by: "Product Manager Team"
|