Files
nexus/wiki/sources/project-state-management.md
2026-04-27 12:03:03 +08:00

64 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "Project State Management System: Event-Driven Alternative to Kanban"
type: source
tags: [project-state, automation, ai, workflow]
date: 2026-04-27
---
## Source File
- [[raw/Agent/usecases/project-state-management.md]]
## Summary用中文描述
- 核心主题:用事件驱动系统替代传统 Kanban 看板,实现项目状态的自动化追踪与上下文保留
- 问题域Kanban 看板易失效(忘记移动卡片)、上下文丢失(无法追溯决策原因)、无代码变更与项目进度的自动关联
- 方法/机制:
- PostgreSQL/SQLite 存储项目状态projects 表 + events 表 + blockers 表)
- AI Agent 解析自然语言命令,自动生成 progress/blocker/decision/pivot 事件
- 每日 Cron 任务扫描 Git 提交gh CLI将 commit 链接到项目事件
- Discord/Telegram 频道接收更新通知和响应查询
- 每日站会摘要自动生成
- 结论/价值:用自然对话替代手动看板维护,保留完整决策历史,实现"项目为什么这样"的即时查询能力
## Key Claims用中文描述
- 自然语言对话("完成了X被Y阻塞")→ 自动触发项目状态转换,无需手动拖拽看板
- 项目状态由事件序列自动推导,而非手动维护的快照
- Git 提交自动扫描并关联到项目事件,实现代码变更与进度的可追溯链接
- 每日站会摘要由 AI Agent 根据过去 24 小时事件和提交自动生成
- Sub-agent 并行分析各项目状态,在 Sprint 规划时提供优先级建议
## Key Quotes
> "Kanban boards become stale. You waste time updating cards instead of doing work. Context gets lost—three months later, you can't remember why you made a key decision." — 痛点描述
> "Instead of dragging cards, you chat with your assistant: 'Finished the auth flow, starting on the dashboard.' The system logs the event, updates project state, and preserves context." — 核心交互模式
> "Git commits are automatically scanned and linked to projects. Your daily standup summary writes itself." — 自动化价值总结
## Key Concepts
- [[EventSourcing]]:本系统的底层架构模式 —— 所有状态变更作为不可变事件序列持久化,通过重放事件重建任意时间点状态
- [[Kanban]]:本系统要替代的传统方案 —— 静态看板需手动更新,无法保留决策上下文
- [[ProjectState]]:本系统的核心抽象 —— 项目任意时间点的完整快照,由事件序列自动驱动更新
- 事件类型progress / blocker / decision / pivot与 [[EventSourcing]] 中的事件类型定义完全一致
## Key Entities
- Discord项目状态频道#project-state—— 接收事件更新通知、响应状态查询、发布每日站会摘要
- Telegram备选消息平台 —— 同样用于更新推送和自然语言查询接口
- GitHub CLIgh每日 Cron 扫描 Git 提交 —— 根据分支名或提交信息将 commit 关联到项目
- PostgreSQL / SQLite项目状态数据库 —— 存储 projects、events、blockers 三张核心表
- Cron定时任务调度器 —— 每日 9 AM 触发站会摘要生成
- Sub-agents并行项目分析器 —— Sprint 规划时并行分析各项目状态并提供优先级建议
## Connections
- [[ProjectState]] ← derived_from ← **EventSourcing**[[ProjectState]] 由事件溯源模式驱动)
- **Project State Management** ← uses ← [[EventSourcing]](事件溯源是本系统的技术基础)
- [[ProjectState]] ← uses ← **Discord**Discord 承载事件通知和查询接口)
- [[ProjectState]] ← uses ← **gh CLI**GitHub CLI 实现提交与项目的自动关联)
- **Project State Management** ← extends ← [[Vibe-Kanban]](事件驱动管理是 Vibe-Kanban 的进阶形态)
- [[Kanban]] ← alternative_to ← **Project State Management**冲突Kanban 静态可视化 vs 事件驱动自动追踪)
## Contradictions
- 与 [[Kanban]] 冲突:
- 冲突点:状态更新机制 —— Kanban 依赖手动拖拽卡片,事件驱动系统依赖自然语言对话自动记录
- 当前观点:手动看板易失效、丢失上下文;事件驱动自动追踪且保留完整历史
- 对方观点Kanban 提供实时可视化,多人协作场景下状态一目了然,无需依赖 AI 解析准确性
- 与 [[Vibe-Kanban]] 关系Vibe-Kanban 是本地化的事件驱动看板实验,本系统是其在 Discord/Telegram 多渠道 + Git 集成 + 每日摘要方向的完整工程实现