@xulthekl/team-flow 0.44.0 → 0.46.0
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/.claude/always/phase-guard.md +1 -1
- package/.claude-plugin/marketplace.json +3 -3
- package/.claude-plugin/plugin.json +2 -2
- package/.codex-plugin/plugin.json +2 -2
- package/.cursor-plugin/marketplace.json +1 -1
- package/.cursor-plugin/plugin.json +2 -2
- package/.github/plugin/marketplace.json +2 -2
- package/AGENTS.md +8 -7
- package/CHANGELOG.md +32 -0
- package/GEMINI.md +1 -1
- package/INSTALL.md +1 -1
- package/README.md +3 -3
- package/agents/architecture-design.md +1 -1
- package/docs/README_en.md +1 -1
- package/docs/solutions/INDEX.md +2 -0
- package/docs/solutions/cross-phase/2026-08-18-no-summary.md +17 -0
- package/docs/solutions/cross-phase/2026-08-19-no-summary.md +17 -0
- package/gemini-extension.json +2 -2
- package/hooks/session-start +2 -2
- package/llms.txt +1 -1
- package/package.json +2 -2
- package/plugin.json +2 -2
- package/scripts/guard/checks/delegation-status.mjs +56 -0
- package/scripts/guard/checks/test-gate-exemptions.mjs +13 -0
- package/scripts/guard/checks/test-matrix-complete.mjs +6 -0
- package/scripts/guard/checks/test-matrix-ready.mjs +6 -0
- package/scripts/guard/checks/tests-passing.mjs +6 -1
- package/scripts/guard/guard.mjs +3 -1
- package/scripts/lib/cmd-state.mjs +3 -0
- package/scripts/lib/config-loader.mjs +11 -0
- package/scripts/lib/conventions-generator.mjs +91 -0
- package/scripts/lib/execution-plan.mjs +2 -1
- package/scripts/lib/execution-recommendation.mjs +20 -3
- package/scripts/lib/glaf4-delegation.mjs +488 -0
- package/scripts/lib/glaf4-evidence-export.mjs +267 -0
- package/scripts/lib/state-loader.mjs +13 -0
- package/scripts/lib/test-matrix-export.mjs +151 -8
- package/scripts/team-flow.mjs +6 -0
- package/skills/architecture-design/SKILL.md +1 -1
- package/skills/architecture-design/references/s3.5-architecture-template.md +1 -1
- package/skills/architecture-design/references/s3.5-product-architecture.md +2 -2
- package/skills/contract-builder/SKILL.md +2 -2
- package/skills/contract-builder/references/glaf4-delegation.md +130 -0
- package/skills/project-initialize/SKILL.md +61 -0
- package/skills/project-initialize/references/architecture-choice.md +55 -0
- package/skills/project-initialize/references/glaf4-initialize-delegation.md +55 -0
- package/skills/project-initialize/references/service-layout.md +63 -0
- package/skills/workflow-bootstrap/SKILL.md +1 -1
- package/skills/workflow-orchestrator/SKILL.md +12 -6
- package/skills/workflow-orchestrator/references/s3-plan-pipeline.md +2 -2
- package/skills/workflow-orchestrator/references/s4-split-validate.md +1 -1
- package/skills/workflow-orchestrator/references/state-model.md +2 -2
- package/skills/workflow-start/SKILL.md +7 -1
- package/skills/workflow-start/references/routing-rules.md +12 -12
- package/templates/execution-contract.md +13 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "team-flow",
|
|
3
|
-
"description": "Unified workflow plugin: team-flow + compound-engineering core subset + architecture-design + prototype + workflow-orchestrator + workflow-bootstrap + e2e + session-handoff + workflow-feedback + business-analysis.
|
|
3
|
+
"description": "Unified workflow plugin: team-flow + compound-engineering core subset + architecture-design + prototype + workflow-orchestrator + workflow-bootstrap + e2e + session-handoff + workflow-feedback + business-analysis. 26 skills + 16 agents, one install.",
|
|
4
4
|
"owner": {
|
|
5
5
|
"name": "LT",
|
|
6
6
|
"url": "https://github.com/LT"
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
"plugins": [
|
|
9
9
|
{
|
|
10
10
|
"name": "team-flow",
|
|
11
|
-
"description": "8-state spec workflow + compound global compounding + architecture-design (4A/DDD) + local HTML prototype + product-level orchestration + bootstrap + e2e + session handoff + workflow feedback + independent business analysis.
|
|
12
|
-
"version": "0.
|
|
11
|
+
"description": "8-state spec workflow + compound global compounding + architecture-design (4A/DDD) + local HTML prototype + product-level orchestration + bootstrap + e2e + session handoff + workflow feedback + independent business analysis. 26 skills + 16 agents with embedded TDD, SDD, code review, debugging, delta spec sync, and design-system-driven prototyping.",
|
|
12
|
+
"version": "0.46.0",
|
|
13
13
|
"source": "./",
|
|
14
14
|
"author": {
|
|
15
15
|
"name": "LT",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "team-flow",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Unified workflow plugin: team-flow (spec-driven dev: TDD/SDD/code-review/debugging) + compound-engineering core subset (brainstorm/plan/compound/strategy/ideate/proof, global compounding) + architecture-design (4A+DDD incremental design & global compounding) + prototype (local HTML prototype, zero external deps) + e2e (Playwright E2E, AC-driven) + workflow-orchestrator (product-level workflow orchestration) + workflow-bootstrap (existing project onboarding) + session-handoff (context transfer) + workflow-feedback (issue tracking) + business-analysis (independent requirement/scenario artifact).
|
|
3
|
+
"version": "0.46.0",
|
|
4
|
+
"description": "Unified workflow plugin: team-flow (spec-driven dev: TDD/SDD/code-review/debugging) + compound-engineering core subset (brainstorm/plan/compound/strategy/ideate/proof, global compounding) + architecture-design (4A+DDD incremental design & global compounding) + prototype (local HTML prototype, zero external deps) + e2e (Playwright E2E, AC-driven) + workflow-orchestrator (product-level workflow orchestration) + workflow-bootstrap (existing project onboarding) + session-handoff (context transfer) + workflow-feedback (issue tracking) + business-analysis (independent requirement/scenario artifact). 26 skills + 16 agents, one install.",
|
|
5
5
|
"source": "./",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "LT",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "team-flow",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.46.0",
|
|
4
4
|
"description": "Spec-first workflow that bridges OpenSpec-style planning and Superpowers-style execution discipline.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "MageByte",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"interface": {
|
|
27
27
|
"displayName": "team-flow",
|
|
28
28
|
"shortDescription": "Spec-first workflow with guarded execution.",
|
|
29
|
-
"longDescription": "A self-contained Codex workflow plugin with
|
|
29
|
+
"longDescription": "A self-contained Codex workflow plugin with 26 skills for intent exploration, planning artifacts, execution contracts, TDD execution, review gates, systematic debugging, closure, delta spec sync, and independent business analysis.",
|
|
30
30
|
"developerName": "MageByte",
|
|
31
31
|
"category": "Developer Tools",
|
|
32
32
|
"composerIcon": "./assets/icon.svg",
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "team-flow",
|
|
3
3
|
"displayName": "team-flow",
|
|
4
|
-
"description": "Unified workflow plugin: team-flow (spec-driven dev: TDD/SDD/code-review/debugging) + compound-engineering core subset (brainstorm/plan/compound/strategy/ideate/proof, global compounding) + architecture-design (4A+DDD incremental design & global compounding) + prototype (local HTML prototype, zero external deps) + e2e (Playwright E2E, AC-driven) + workflow-orchestrator (product-level workflow orchestration) + workflow-bootstrap (existing project onboarding) + session-handoff (context transfer) + workflow-feedback (issue tracking) + business-analysis (independent requirement/scenario artifact).
|
|
5
|
-
"version": "0.
|
|
4
|
+
"description": "Unified workflow plugin: team-flow (spec-driven dev: TDD/SDD/code-review/debugging) + compound-engineering core subset (brainstorm/plan/compound/strategy/ideate/proof, global compounding) + architecture-design (4A+DDD incremental design & global compounding) + prototype (local HTML prototype, zero external deps) + e2e (Playwright E2E, AC-driven) + workflow-orchestrator (product-level workflow orchestration) + workflow-bootstrap (existing project onboarding) + session-handoff (context transfer) + workflow-feedback (issue tracking) + business-analysis (independent requirement/scenario artifact). 26 skills + 16 agents, one install.",
|
|
5
|
+
"version": "0.46.0",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "LT",
|
|
8
8
|
"url": "https://github.com/LT"
|
|
@@ -6,13 +6,13 @@
|
|
|
6
6
|
},
|
|
7
7
|
"metadata": {
|
|
8
8
|
"description": "Unified workflow plugins and skills for AI coding agents (team-flow: team-flow + compound + architecture-design + prototype).",
|
|
9
|
-
"version": "0.
|
|
9
|
+
"version": "0.46.0"
|
|
10
10
|
},
|
|
11
11
|
"plugins": [
|
|
12
12
|
{
|
|
13
13
|
"name": "team-flow",
|
|
14
14
|
"description": "Unified workflow with planning artifacts, execution contracts, TDD, review gates, systematic debugging, delta spec sync, architecture-design, independent business analysis, and local HTML prototyping.",
|
|
15
|
-
"version": "0.
|
|
15
|
+
"version": "0.46.0",
|
|
16
16
|
"source": ".",
|
|
17
17
|
"author": {
|
|
18
18
|
"name": "LT",
|
package/AGENTS.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# AGENTS.md · team-flow
|
|
2
2
|
|
|
3
|
-
> team-flow 统一插件 = **team-flow**(spec 驱动开发)+ **compound-engineering 核心子集**(全局复利)+ **architecture-design**(4A+DDD 增量设计)+ **prototype**(本地 HTML 原型)+ **e2e**(AC 驱动 Playwright E2E)+ **workflow-orchestrator**(产品级编排)+ **workflow-bootstrap**(既有项目接入)。一次安装,七套能力协同(
|
|
3
|
+
> team-flow 统一插件 = **team-flow**(spec 驱动开发)+ **compound-engineering 核心子集**(全局复利)+ **architecture-design**(4A+DDD 增量设计)+ **prototype**(本地 HTML 原型)+ **e2e**(AC 驱动 Playwright E2E)+ **workflow-orchestrator**(产品级编排)+ **workflow-bootstrap**(既有项目接入)。一次安装,七套能力协同(26 skills + 16 agents),支持 9 安装面(Claude Code, Cursor, OpenAI Codex CLI/App, GitHub Copilot CLI, Gemini CLI, OpenCode, WorkBuddy, Trae, ima-copilot)。
|
|
4
4
|
|
|
5
5
|
## What This Is
|
|
6
6
|
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
### 身份与依赖关系
|
|
14
14
|
|
|
15
|
-
- **team-flow**(本插件):Claude Code / Cursor 等宿主的插件实体(`plugin.json` name = `team-flow`),包含
|
|
15
|
+
- **team-flow**(本插件):Claude Code / Cursor 等宿主的插件实体(`plugin.json` name = `team-flow`),包含 26 个 skills + 16 个 agents + hooks + templates
|
|
16
16
|
- **@xulthekl/team-flow**(npm 底座包):team-flow 的 CLI 工具层(`package.json` name = `@xulthekl/team-flow`,bin = `tf` / `team-flow`),提供状态机、校验、复利 CLI 等运行时能力
|
|
17
17
|
- 关系:team-flow 插件 **包含** @xulthekl/team-flow npm 包作为底座(同一仓库、同一版本)。skills 中的 `tf ...` 调用的是已全局安装的 @xulthekl/team-flow CLI,版本由 session-start hook 自动同步
|
|
18
18
|
- 历史身份(已废弃):`spec-superflow`(npm 包名,0.11.0 后停止发布)/ `ssf`(CLI 前缀)/ `.spec-superflow.yaml`(状态文件)—— 详见设计增强方案 v0.9 §27
|
|
@@ -33,7 +33,7 @@ node --test tests/e2e.test.mjs --test-name-pattern="parseDeltaSpec"
|
|
|
33
33
|
npm run validate
|
|
34
34
|
```
|
|
35
35
|
|
|
36
|
-
## 能力概览(十套合一,
|
|
36
|
+
## 能力概览(十套合一,26 skills)
|
|
37
37
|
|
|
38
38
|
### 1. team-flow(底座,9 skills)
|
|
39
39
|
spec 驱动开发过程。8 态变更机:`exploring → specifying → bridging → approved-for-build → executing → closing`(另有 `debugging` 侧路径 + `abandoned` 终态)。
|
|
@@ -61,7 +61,7 @@ spec 驱动开发过程。8 态变更机:`exploring → specifying → bridgin
|
|
|
61
61
|
- 用法:`/e2e [原型|集成|验收] [spec路径]`
|
|
62
62
|
|
|
63
63
|
### 6. workflow-orchestrator(1 skill,产品级编排,v0.7 重设计 + v0.15.0 多需求)
|
|
64
|
-
- 编排产品级工作流:S1 路径路由(含需求选择)→ S2 PRD+原型(循环上提,orchestrator 直接编排,**冻结前 PRD 完整性评审**)→
|
|
64
|
+
- 编排产品级工作流:S1 路径路由(含需求选择)→ S2 PRD+原型(循环上提,orchestrator 直接编排,**冻结前 PRD 完整性评审**)→ **ARCH 产品级架构设计(v0.36.0:architecture-design product 模式 8 步 → iterations/vN/architecture.md 快照 → 评审门 PASS 才进 S3;2026-08-19 上移 S3 前,S3 计划/S4 拆分是最终任务拆分须基于架构)** → S3 ce-plan(pipeline 快速路径,**入口问定 plan_mode**,基于 ARCH 架构定稿)→ S4 拆分验证+分发 → S5 全局监控
|
|
65
65
|
- v0.7 关键变更:原型循环从 ce-brainstorm 内部上提到 orchestrator 层直接编排;新增反馈环路(vN 内修订+变更履历,非升版);新增增量入口(S1 路径路由器,**7 种入口路径**,v0.20.0 增「原型补跑/重跑」);S5 多 change 并行时必选
|
|
66
66
|
- **v0.20.0**:S1 路由新增第 7 种入口「原型补跑/重跑」(PRD 冻结 ∧ prototype 缺失/需重做 → 部分重入 S2 原型循环,PRD 不动、保留有效 S3/S4);后台子代理等待范式(依赖完成通知,禁 TaskOutput 轮询)(设计 §22)
|
|
67
67
|
- **v0.15.0 多需求并行**:`.team-flow/registry.yaml` 注册表 + 每需求一份 `.team-flow/requirements/<req-id>/orchestrator.yaml`,状态天然隔离
|
|
@@ -143,8 +143,8 @@ STRATEGY.md CONCEPTS.md 产品策略(BA) / 领域词汇
|
|
|
143
143
|
S3 计划阶段 → ce-plan(pipeline 快速路径,入口问定 plan_mode)
|
|
144
144
|
plan.md:change 拆分 + 依赖 DAG + 高阶技术方向(不含接口清单)
|
|
145
145
|
反馈环路:plan 暴露 PRD 问题可回退 S2
|
|
146
|
-
[ARCH 产品级架构设计(v0.36.0
|
|
147
|
-
→ docs/architecture/iterations/vN/architecture.md(6 产物快照,预测态不写全局)→ 评审门 PASS 才进
|
|
146
|
+
[ARCH 产品级架构设计(v0.36.0;2026-08-19 上移 S3 前)] → architecture-design product 模式 8 步设计
|
|
147
|
+
→ docs/architecture/iterations/vN/architecture.md(6 产物快照,预测态不写全局)→ 评审门 PASS 才进 S3
|
|
148
148
|
skip 须物化(iterations/vN/SKIPPED);旧项目首轮 arch_baseline 缺失 → 逆向重建
|
|
149
149
|
S4 拆分验证与分发 → arch-readiness 门(快照覆盖 change 触及 BC)→ change-split-auditor 审计(必选门禁)→ 创建 change → 进入 team-flow
|
|
150
150
|
并行策略建议 + 验收标准预分配;反馈环路:依赖图不可执行可回退 S3
|
|
@@ -174,7 +174,7 @@ STRATEGY.md CONCEPTS.md 产品策略(BA) / 领域词汇
|
|
|
174
174
|
全局作为下一 change / 下一 PRD 版本的 grounding → 闭环
|
|
175
175
|
```
|
|
176
176
|
|
|
177
|
-
## Skills 索引(
|
|
177
|
+
## Skills 索引(26 个)
|
|
178
178
|
|
|
179
179
|
| Skill | 归属 | 用途 |
|
|
180
180
|
|---|---|---|
|
|
@@ -203,6 +203,7 @@ STRATEGY.md CONCEPTS.md 产品策略(BA) / 领域词汇
|
|
|
203
203
|
| session-handoff | 会话交接 | 上下文腐化时压缩会话为交接文档(v0.16.0) |
|
|
204
204
|
| workflow-feedback | 工作流反馈 | 工作流问题结构化记录(v0.16.0) |
|
|
205
205
|
| business-analysis | 独立业务分析 | 将任意输入整理为 requirement/vN/business-analysis.md(独立外挂,v0.44.0) |
|
|
206
|
+
| project-initialize | 项目初始化引导 | 工作空间代码服务为空时:架构选择(glaf4/前端分离/单体微服务/拆分)→ 服务命名确认 → 创建服务子目录 → 委托初始化(glaf4 走 glaf4-dev,非 glaf4 走内置引导)(v0.45.0) |
|
|
206
207
|
|
|
207
208
|
### 触发域分层(v0.12.0 新增)
|
|
208
209
|
|
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,38 @@ All notable changes to `team-flow` will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
The format loosely follows Keep a Changelog.
|
|
6
6
|
|
|
7
|
+
## [0.46.0] - 2026-08-19
|
|
8
|
+
|
|
9
|
+
### Added(PROJECT_INITIALIZE 场景 + project-initialize skill + ARCH 上移,v0.46.0)
|
|
10
|
+
|
|
11
|
+
设计来源:`docs/plan/glaf4-dev-integration-design.md` v2.1 §6.5(2026-08-19 LT 定案)
|
|
12
|
+
|
|
13
|
+
- **新增 `project-initialize` skill**:产品级初始化引导流程——识别需初始化 → 引导新会话 → 架构选择(glaf4 体系/前端分离/单体微服务/拆分)→ 服务命名确认 → team-flow 创建空服务子目录(git init + .gitignore)→ 委托初始化(glaf4 走 glaf4-dev PROJECT_INITIALIZE,非 glaf4 走 workflow-bootstrap B1.5);3 references(architecture-choice / service-layout / glaf4-initialize-delegation)
|
|
14
|
+
- **触发接入**(编排层 Pre-check 检测驱动,不靠用户显式触发):
|
|
15
|
+
- orchestrator ARCH 评审 PASS 后、S3 前:Pre-check 1 服务初始化检测(场景①)
|
|
16
|
+
- workflow-start Route to build-executor 前:Pre-check 2 服务缺漏检测(场景②,AskUserQuestion 区分"未拉取 git pull"vs"需要初始化")
|
|
17
|
+
- **ARCH 上移 S3 前**(LT 决策):S3 计划/S4 拆分是最终任务拆分须基于架构——orchestrator / CLAUDE.md SOP / architecture-design / state-model / s3-plan-pipeline 统一"PASS 才进 S3"
|
|
18
|
+
- **实证闭合**:gen-service 空目录冲突(run 树 .glaf4-dev 存在 → `out dir not empty` BLOCKED)+ 环境就绪(JDK8 + 本地 gtmc-glaf4-starter-parent + 空目录生成 92 文件)
|
|
19
|
+
- **双评审修复**:skill-reviewer(B1 gen-service 缓解补 .git/.gitignore 白名单化 + M1 bootstrap 契约 + M2 触发场景)+ code-reviewer(F1-F3 ARCH 残留/计数同步)
|
|
20
|
+
- skill 计数 25→26 全平台同步(plugin.json / .claude-plugin / .cursor-plugin / .codex-plugin / gemini-extension / README / AGENTS)
|
|
21
|
+
- 708/708 测试通过
|
|
22
|
+
|
|
23
|
+
## [0.45.0] - 2026-08-18
|
|
24
|
+
|
|
25
|
+
### Added(glaf4-dev 集成增强,v0.45.0)
|
|
26
|
+
|
|
27
|
+
设计来源:`docs/plan/glaf4-dev-integration-design.md` v2.1(glaf4-dev 统一开发技能族 v0.3.0,生产+测试全委托)
|
|
28
|
+
|
|
29
|
+
- **运行时探测**(接口①):`tf glaf4-delegation detect <root>` 三态检测(is_glaf4_java / glaf4_dev_available / delegation_mode)+ 写 `.team-flow/team-flow.config.json` 的 `glaf4_dev` 段;git root ≠ target_root 时写 git root 冗余副本(多服务 OR 聚合 enabled + delegation_mode 保留);config-loader 查找链补 git root `.team-flow/`
|
|
30
|
+
- **test-matrix-export v2**(接口②):支持 test-matrix-vnext(schema_version 2.0)——模块名从 case.target 推导、kind→work_mode 映射(REFACTOR→TDD 记 footer)、write_targets 数组多行拆分 + `#方法` 锚点、case_id 与 rewriteIndex 正则兼容 WARN、`validateSchemaVersion` 版本门(未知版本显式 BLOCK)
|
|
31
|
+
- **S1 guard 改造**(接口③):`EXECUTION_MODES` 扩入 `glaf4-delegation`;execution-recommendation 补 recommend 链(glaf4DelegationAvailable 注入 available_modes + 白名单改引用单一真相源);cmd-execution 支持 `--mode glaf4-delegation --wave w1:serial:delegate` 单 wave 计划
|
|
32
|
+
- **证据回灌**(接口④):`tf glaf4-evidence-export` 聚合 glaf4-dev run 终局 PASS 证据(模式→证据阶段映射、每 batch 最终 GREEN、executed_classes 去重、surefire 兼容行、total=0 边界、environment_error 分流)→ `tf test record --from` 落盘
|
|
33
|
+
- **委托协议 CLI**:`tf glaf4-delegation`(confirm DP-4 委托确认 5 项 + write-set.json 落盘 + 契约段 diff WARN;verify-write-set 门禁级对账;verify-tasks 审计;record-partial 落 partial writes;reset 删 plan 重走 DP-4)
|
|
34
|
+
- **delegation-status guard 维度**:executing:closing 校验 `delegation_status`(failed 阻断直到人工重置;retry_count≥3 提示上限)
|
|
35
|
+
- **skip 禁令**:glaf4-delegation 模式禁 `test_matrix_skipped`(唯一例外 TEST_BOOTSTRAP),三个测试门禁统一接入
|
|
36
|
+
- **GLAF4 Delegation 段**:contract-builder SKILL 重写 GLAF4 路由 + `references/glaf4-delegation.md`(骨架矩阵先行时序 + closing 时序协议)+ `templates/execution-contract.md` 段占位;workflow-start 路由从 glaf4-tests → glaf4-dev 实施委托
|
|
37
|
+
- **四轮覆盖度评审闭环**:2 阻塞(C1 探测断链/C2 版本契约)+ 5 Important(模板表头盲区/嵌套工程根/多服务污染/detect 接线/mode last-write-wins)+ 12 Minor 全修,707/707 测试通过
|
|
38
|
+
|
|
7
39
|
## [0.44.0] - 2026-08-17
|
|
8
40
|
|
|
9
41
|
### Added(独立 business-analysis skill/agent,v0.44.0)
|
package/GEMINI.md
CHANGED
|
@@ -8,7 +8,7 @@ The workflow is self-contained and does not require OpenSpec or Superpowers at r
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
<!-- team-flow-phase-guard-start -->
|
|
11
|
-
# team-flow v0.
|
|
11
|
+
# team-flow v0.46.0 | 阶段: {{state}} | 工作流: {{workflow}}
|
|
12
12
|
当前阶段允许的操作由 workflow-start 路由规则定义。
|
|
13
13
|
禁止跨越 DP gate 进入下一阶段。变更范围以 execution-contract.md 的 Intent Lock 为准。
|
|
14
14
|
<!-- team-flow-phase-guard-end -->
|
package/INSTALL.md
CHANGED
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# team-flow
|
|
2
2
|
|
|
3
|
-
> 当前版本:`v0.
|
|
3
|
+
> 当前版本:`v0.46.0`
|
|
4
4
|
|
|
5
5
|
> 统一插件:**team-flow**(spec 驱动开发)+ **compound-engineering 核心子集**(全局复利)+ **architecture-design**(4A+DDD 增量设计)+ **prototype**(本地 HTML 原型)+ **e2e**(AC 驱动 E2E)+ **workflow-orchestrator**(产品级编排)+ **workflow-bootstrap**(既有项目接入)。一次安装,七套能力协同。
|
|
6
6
|
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
git clone <your-repo> && <cli> plugin install ./team-flow
|
|
35
35
|
```
|
|
36
36
|
|
|
37
|
-
> 不同宿主 CLI 的安装子命令略有差异(如 Claude Code 为 `/plugin add`,Cursor 为 `plugin install`)。以宿主文档为准;本插件提供单一 `plugin.json`,一次安装即加载全部
|
|
37
|
+
> 不同宿主 CLI 的安装子命令略有差异(如 Claude Code 为 `/plugin add`,Cursor 为 `plugin install`)。以宿主文档为准;本插件提供单一 `plugin.json`,一次安装即加载全部 26 个 skills。
|
|
38
38
|
|
|
39
39
|
## 配置(插件层扩展字段)
|
|
40
40
|
|
|
@@ -70,7 +70,7 @@ specs/<cap>/ 每变更设计/任务/契约 + learnings.md
|
|
|
70
70
|
STRATEGY.md CONCEPTS.md 策略 / 领域词汇
|
|
71
71
|
```
|
|
72
72
|
|
|
73
|
-
## 十套能力(
|
|
73
|
+
## 十套能力(26 skills)
|
|
74
74
|
|
|
75
75
|
- **team-flow**(9):workflow-start / need-explorer / spec-writer / contract-builder / build-executor / code-reviewer / spec-merger / release-archivist / bug-investigator
|
|
76
76
|
- **compound 核心子集**(6):ce-brainstorm / ce-plan / ce-compound / ce-strategy / ce-ideate / ce-proof
|
|
@@ -28,7 +28,7 @@ You are an independent architecture designer. You read the change brief, plan, e
|
|
|
28
28
|
| change(默认) | workflow-start(exploring→specifying) | 五项检查 | `changes/<name>/architecture/` 三件套 + sql/ | 产品级快照(BC 边界/聚合注册表),只引用不重定义 |
|
|
29
29
|
| product | workflow-orchestrator S3.5(ARCH 阶段) | 8 步全系统结构级设计(无五项检查) | `docs/architecture/iterations/vN/architecture.md`(6 产物) | 本快照是产品级唯一事实源 |
|
|
30
30
|
|
|
31
|
-
**product 模式**:按 `references/s3.5-product-architecture.md` SOP(8 步)+ `references/s3.5-architecture-template.md` 模板 + `references/s3.5-loading-protocol.md` 加载协议;产出经 architecture-reviewer product 视角评审(`review_mode: product`)PASS 才进 S4
|
|
31
|
+
**product 模式**:按 `references/s3.5-product-architecture.md` SOP(8 步)+ `references/s3.5-architecture-template.md` 模板 + `references/s3.5-loading-protocol.md` 加载协议;产出经 architecture-reviewer product 视角评审(`review_mode: product`)PASS 才进 S3(2026-08-19:ARCH 上移 S3 前,原"进 S4");时序 P1:只写快照不写全局。
|
|
32
32
|
|
|
33
33
|
## Inputs
|
|
34
34
|
|
package/docs/README_en.md
CHANGED
|
@@ -126,7 +126,7 @@ npm install -g team-flow
|
|
|
126
126
|
|
|
127
127
|
### Version
|
|
128
128
|
|
|
129
|
-
- Current: `v0.
|
|
129
|
+
- Current: `v0.46.0`
|
|
130
130
|
- v0.9.1 highlights: DP-4 execution-mode recommendations, a portable runtime across 17 platforms, and a raw-package smoke with no plugin-root variable.
|
|
131
131
|
- Self-contained — no OpenSpec or Superpowers runtime required
|
|
132
132
|
- Upstream: [Fission-AI/OpenSpec](https://github.com/Fission-AI/OpenSpec), [obra/superpowers](https://github.com/obra/superpowers)
|
package/docs/solutions/INDEX.md
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
<!-- 每条一行,按 severity 降序,≤150 行硬上限 -->
|
|
3
3
|
| date | phase | domain | type | severity | summary | file |
|
|
4
4
|
|------|-------|--------|------|----------|---------|------|
|
|
5
|
+
| 2026-08-19 | cross-phase | general | insight | medium | (no summary) | cross-phase/2026-08-19-no-summary.md |
|
|
6
|
+
| 2026-08-18 | cross-phase | general | insight | medium | (no summary) | cross-phase/2026-08-18-no-summary.md |
|
|
5
7
|
| 2026-08-17 | cross-phase | general | insight | medium | (no summary) | cross-phase/2026-08-17-no-summary.md |
|
|
6
8
|
| 2026-08-07 | cross-phase | general | insight | medium | (no summary) | cross-phase/2026-08-07-no-summary.md |
|
|
7
9
|
| 2026-08-06 | cross-phase | general | insight | medium | (no summary) | cross-phase/2026-08-06-no-summary.md |
|
package/gemini-extension.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "team-flow",
|
|
3
|
-
"description": "Unified workflow plugin: team-flow (spec-driven dev) + compound-engineering core subset + architecture-design (4A/DDD) + prototype (local HTML) + business-analysis (independent requirement/scenario artifact).
|
|
4
|
-
"version": "0.
|
|
3
|
+
"description": "Unified workflow plugin: team-flow (spec-driven dev) + compound-engineering core subset + architecture-design (4A/DDD) + prototype (local HTML) + business-analysis (independent requirement/scenario artifact). 26 skills, one install.",
|
|
4
|
+
"version": "0.46.0",
|
|
5
5
|
"contextFileName": "GEMINI.md"
|
|
6
6
|
}
|
package/hooks/session-start
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
|
-
# v0.
|
|
2
|
+
# v0.46.0: auto-sync CLI version with plugin version
|
|
3
3
|
set -e
|
|
4
4
|
|
|
5
5
|
# ═══════════════════════════════════════════════════════════════
|
|
6
6
|
# Plugin version (update this when releasing new versions)
|
|
7
7
|
# ═══════════════════════════════════════════════════════════════
|
|
8
|
-
PLUGIN_VERSION="0.
|
|
8
|
+
PLUGIN_VERSION="0.46.0"
|
|
9
9
|
|
|
10
10
|
# ═══════════════════════════════════════════════════════════════
|
|
11
11
|
# Step 1: Auto-sync CLI version with plugin version
|
package/llms.txt
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
## Overview
|
|
4
4
|
spec-superflow is a self-contained workflow integration plugin for Claude Code, Cursor, OpenAI Codex CLI/App, GitHub Copilot CLI, Gemini CLI, OpenCode, WorkBuddy, and Trae. It merges spec-driven planning artifacts (proposal, specs, design, tasks) with disciplined execution guardrails (TDD, review gates, controlled handoff) into one unified workflow.
|
|
5
5
|
|
|
6
|
-
Current version: v0.
|
|
6
|
+
Current version: v0.46.0.
|
|
7
7
|
|
|
8
8
|
## Key Documents
|
|
9
9
|
- README.md: Chinese homepage with full usage guide and FAQ
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xulthekl/team-flow",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Unified plugin (
|
|
3
|
+
"version": "0.46.0",
|
|
4
|
+
"description": "Unified plugin (26 skills + 16 agents) integrating team-flow, compound-engineering, architecture-design, prototype, design-system, workflow-orchestrator, workflow-bootstrap, e2e, session-handoff, workflow-feedback, business-analysis for multi-agent coding tools.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"bin": {
|
package/plugin.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "team-flow",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Unified workflow plugin: team-flow (spec-driven dev: TDD/SDD/code-review/debugging) + compound-engineering core subset (brainstorm/plan/compound/strategy/ideate/proof, global compounding) + architecture-design (4A+DDD incremental design & global compounding) + prototype (local HTML prototype, zero external deps) + e2e (Playwright E2E, AC-driven) + workflow-orchestrator (product-level workflow orchestration) + workflow-bootstrap (existing project onboarding) + session-handoff (context transfer) + workflow-feedback (issue tracking) + business-analysis (independent requirement/scenario artifact).
|
|
3
|
+
"version": "0.46.0",
|
|
4
|
+
"description": "Unified workflow plugin: team-flow (spec-driven dev: TDD/SDD/code-review/debugging) + compound-engineering core subset (brainstorm/plan/compound/strategy/ideate/proof, global compounding) + architecture-design (4A+DDD incremental design & global compounding) + prototype (local HTML prototype, zero external deps) + e2e (Playwright E2E, AC-driven) + workflow-orchestrator (product-level workflow orchestration) + workflow-bootstrap (existing project onboarding) + session-handoff (context transfer) + workflow-feedback (issue tracking) + business-analysis (independent requirement/scenario artifact). 26 skills + 16 agents, one install.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "LT"
|
|
7
7
|
},
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
// scripts/guard/checks/delegation-status.mjs — GLAF4 委托状态位 guard(v2.1 §6.7)
|
|
2
|
+
//
|
|
3
|
+
// 规则(v2.1 §6.7 委托失败恢复闭环):
|
|
4
|
+
// - execution_mode !== 'glaf4-delegation' → pass(透明,不干预非委托 change)
|
|
5
|
+
// - delegation_status === 'success' → pass(委托已成功完成)
|
|
6
|
+
// - delegation_status === 'failed' → FAIL(阻断 closing 直到人工重置——三选一恢复)
|
|
7
|
+
// - delegation_status 缺失 / null / in_progress → FAIL(委托未成功完成,closing 前必须终局)
|
|
8
|
+
//
|
|
9
|
+
// 设计原则:
|
|
10
|
+
// - 与 compound-captured 同属"状态位约束"维度,确保 delegation_status 有 guard 约束力
|
|
11
|
+
// (否则状态位无约束力,三选一恢复全靠人工纪律)
|
|
12
|
+
// - 状态位经 `tf state set delegation_status <in_progress|success|failed>` 程序化写入
|
|
13
|
+
|
|
14
|
+
import { readState } from '../../lib/state-loader.mjs';
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Check GLAF4 委托状态位(executing:closing 维度)
|
|
18
|
+
* @param {string} changeDir
|
|
19
|
+
* @returns {{ pass: boolean, failures: string[] }}
|
|
20
|
+
*/
|
|
21
|
+
export function checkDelegationStatus(changeDir) {
|
|
22
|
+
const state = readState(changeDir);
|
|
23
|
+
|
|
24
|
+
// 非 glaf4-delegation 模式:透明放行(可选接入,非 GLAF4 项目完全不受影响,v2.1 §8)
|
|
25
|
+
if (state.execution_mode !== 'glaf4-delegation') {
|
|
26
|
+
return { pass: true, failures: [] };
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
if (state.delegation_status === 'success') {
|
|
30
|
+
return { pass: true, failures: [] };
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const failures = [];
|
|
34
|
+
if (state.delegation_status === 'failed') {
|
|
35
|
+
// I3(2026-08-18):retry_count 封顶 3 机械提示——达到上限必须走降级/转人工,不再允许重试
|
|
36
|
+
const retryCount = Number.isInteger(state.delegation_retry_count) ? state.delegation_retry_count : 0;
|
|
37
|
+
const atLimit = retryCount >= 3;
|
|
38
|
+
failures.push(
|
|
39
|
+
'GLAF4 委托状态位为 failed——closing 前必须人工处置(v2.1 §6.7 三选一):'
|
|
40
|
+
+ (atLimit
|
|
41
|
+
? `⚠️ delegation_retry_count=${retryCount} 已达上限 3——禁止继续重试,必须走 ② 降级 build-executor(glaf4-delegation reset 删 plan 重走 DP-4)或 ③ 标记阻塞转人工排障。`
|
|
42
|
+
: `① 重试(delegation_retry_count 封顶 3,当前 ${retryCount})② 降级 build-executor(glaf4-delegation reset 删 plan 重走 DP-4)③ 标记阻塞转人工排障。`)
|
|
43
|
+
+ '处置后 `tf state set delegation_status success`(或重置为 in_progress 继续委托)。'
|
|
44
|
+
);
|
|
45
|
+
} else if (state.delegation_status === 'in_progress') {
|
|
46
|
+
failures.push(
|
|
47
|
+
'GLAF4 委托状态位仍为 in_progress——委托 run 尚未终局,closing 前必须完成委托并回灌证据后置为 success。'
|
|
48
|
+
);
|
|
49
|
+
} else {
|
|
50
|
+
failures.push(
|
|
51
|
+
'GLAF4 委托状态位缺失(delegation_status 未记录)——glaf4-delegation 模式 change 必须先完成委托,'
|
|
52
|
+
+ '证据回灌 + 对账通过后 `tf state set delegation_status success`。'
|
|
53
|
+
);
|
|
54
|
+
}
|
|
55
|
+
return { pass: false, failures };
|
|
56
|
+
}
|
|
@@ -32,6 +32,19 @@ export function skipMissingReason(state) {
|
|
|
32
32
|
return state?.test_matrix_skipped === 'true' && !hasExplicitSkip(state);
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
+
/**
|
|
36
|
+
* v2.1 §6.3 skip 禁令:glaf4-delegation 模式禁止 test_matrix_skipped(唯一例外 TEST_BOOTSTRAP 零测试)。
|
|
37
|
+
* 防止"矩阵权威在 glaf4-dev"被误读为"矩阵可 skip"导致零测试证据关闭(测试门三道短路后门)。
|
|
38
|
+
* @returns {string|null} 违规原因(null = 无违规)
|
|
39
|
+
*/
|
|
40
|
+
export function glaf4SkipViolation(state) {
|
|
41
|
+
if (state?.execution_mode !== 'glaf4-delegation') return null;
|
|
42
|
+
if (state?.test_matrix_skipped !== 'true') return null;
|
|
43
|
+
// 唯一例外:TEST_BOOTSTRAP 零测试(reason 显式声明)
|
|
44
|
+
if (/TEST_BOOTSTRAP/.test(state?.test_matrix_skip_reason || '')) return null;
|
|
45
|
+
return 'glaf4-delegation 模式禁止 test_matrix_skipped(唯一例外 TEST_BOOTSTRAP 零测试,skip_reason 须显式声明 TEST_BOOTSTRAP)';
|
|
46
|
+
}
|
|
47
|
+
|
|
35
48
|
export const SKIP_REASON_HINT =
|
|
36
49
|
"test_matrix_skipped=true requires test_matrix_skip_reason — record it: "
|
|
37
50
|
+ "tf state set <dir> test_matrix_skip_reason '<why this change needs no test matrix>'";
|
|
@@ -10,6 +10,7 @@ import { computeTestMatrixHash } from '../../lib/hash.mjs';
|
|
|
10
10
|
import {
|
|
11
11
|
isLegacyChange,
|
|
12
12
|
skipMissingReason,
|
|
13
|
+
glaf4SkipViolation,
|
|
13
14
|
SKIP_REASON_HINT,
|
|
14
15
|
contractDeclaresTestMatrix,
|
|
15
16
|
readTestMatrixFile,
|
|
@@ -28,6 +29,11 @@ export function checkTestMatrixComplete(changeDir) {
|
|
|
28
29
|
|
|
29
30
|
// Step 2 — 显式 skip:必须附理由(可审计豁免)。
|
|
30
31
|
if (state.test_matrix_skipped === 'true') {
|
|
32
|
+
// v2.1 §6.3 skip 禁令:glaf4-delegation 模式禁止 skip(唯一例外 TEST_BOOTSTRAP)
|
|
33
|
+
const glaf4Violation = glaf4SkipViolation(state);
|
|
34
|
+
if (glaf4Violation) {
|
|
35
|
+
return { pass: false, failures: [glaf4Violation] };
|
|
36
|
+
}
|
|
31
37
|
if (skipMissingReason(state)) {
|
|
32
38
|
return { pass: false, failures: [SKIP_REASON_HINT] };
|
|
33
39
|
}
|
|
@@ -8,6 +8,7 @@ import { readState } from '../../lib/state-loader.mjs';
|
|
|
8
8
|
import {
|
|
9
9
|
isLegacyChange,
|
|
10
10
|
skipMissingReason,
|
|
11
|
+
glaf4SkipViolation,
|
|
11
12
|
SKIP_REASON_HINT,
|
|
12
13
|
contractDeclaresTestMatrix,
|
|
13
14
|
readTestMatrixFile,
|
|
@@ -26,6 +27,11 @@ export function checkTestMatrixReady(changeDir) {
|
|
|
26
27
|
|
|
27
28
|
// Exemption 2:显式 skip(必须附理由)。
|
|
28
29
|
if (state.test_matrix_skipped === 'true') {
|
|
30
|
+
// v2.1 §6.3 skip 禁令:glaf4-delegation 模式禁止 skip(唯一例外 TEST_BOOTSTRAP)
|
|
31
|
+
const glaf4Violation = glaf4SkipViolation(state);
|
|
32
|
+
if (glaf4Violation) {
|
|
33
|
+
return { pass: false, failures: [glaf4Violation] };
|
|
34
|
+
}
|
|
29
35
|
if (skipMissingReason(state)) {
|
|
30
36
|
return { pass: false, failures: [SKIP_REASON_HINT] };
|
|
31
37
|
}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
import fs from 'node:fs';
|
|
10
10
|
import path from 'node:path';
|
|
11
11
|
import { readState } from '../../lib/state-loader.mjs';
|
|
12
|
-
import { isLegacyChange, skipMissingReason, SKIP_REASON_HINT } from './test-gate-exemptions.mjs';
|
|
12
|
+
import { isLegacyChange, skipMissingReason, glaf4SkipViolation, SKIP_REASON_HINT } from './test-gate-exemptions.mjs';
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
* 解析结构化 test_result:
|
|
@@ -68,6 +68,11 @@ export function checkTestsPassing(changeDir) {
|
|
|
68
68
|
|
|
69
69
|
// 显式 skip(必须附理由)。
|
|
70
70
|
if (state.test_matrix_skipped === 'true') {
|
|
71
|
+
// v2.1 §6.3 skip 禁令:glaf4-delegation 模式禁止 skip(唯一例外 TEST_BOOTSTRAP)
|
|
72
|
+
const glaf4Violation = glaf4SkipViolation(state);
|
|
73
|
+
if (glaf4Violation) {
|
|
74
|
+
return { pass: false, failures: [glaf4Violation] };
|
|
75
|
+
}
|
|
71
76
|
if (skipMissingReason(state)) {
|
|
72
77
|
return { pass: false, failures: [SKIP_REASON_HINT] };
|
|
73
78
|
}
|
package/scripts/guard/guard.mjs
CHANGED
|
@@ -18,6 +18,7 @@ import { checkTestMatrixComplete } from './checks/test-matrix-complete.mjs';
|
|
|
18
18
|
import { checkTestMatrixReady } from './checks/test-matrix-ready.mjs';
|
|
19
19
|
import { checkArchReadiness } from './checks/arch-readiness.mjs';
|
|
20
20
|
import { checkArchSnapshot } from './checks/arch-snapshot.mjs';
|
|
21
|
+
import { checkDelegationStatus } from './checks/delegation-status.mjs';
|
|
21
22
|
|
|
22
23
|
// Transition matrix: <from>:<to> → required check dimensions
|
|
23
24
|
const TRANSITION_CHECKS = {
|
|
@@ -37,7 +38,7 @@ const TRANSITION_CHECKS = {
|
|
|
37
38
|
'approved-for-build:executing': ['artifacts-exist', 'contract-fresh', 'dp-gate-passed', 'execution-plan-ready', 'test-matrix-ready'],
|
|
38
39
|
// v0.35.0 (v0.14 §59.4): arch-snapshot 新增——"先快照后回写"的强制化(legacy 豁免)。
|
|
39
40
|
// 仅在 full workflow 挂;hotfix/tweak 沿用 §59.4 豁免(紧急/微调不挂)。
|
|
40
|
-
'executing:closing': ['tasks-complete', 'tests-passing', 'specs-merged', 'execution-plan-ready', 'execution-reviews-passed', 'compound-captured', 'test-matrix-complete', 'arch-snapshot'],
|
|
41
|
+
'executing:closing': ['tasks-complete', 'tests-passing', 'specs-merged', 'execution-plan-ready', 'execution-reviews-passed', 'compound-captured', 'test-matrix-complete', 'arch-snapshot', 'delegation-status'],
|
|
41
42
|
|
|
42
43
|
// Debugging side-path
|
|
43
44
|
'executing:debugging': [],
|
|
@@ -188,6 +189,7 @@ async function main() {
|
|
|
188
189
|
'test-matrix-ready': (dir) => checkTestMatrixReady(dir),
|
|
189
190
|
'arch-readiness': (dir) => checkArchReadiness(dir),
|
|
190
191
|
'arch-snapshot': (dir) => checkArchSnapshot(dir),
|
|
192
|
+
'delegation-status': (dir) => checkDelegationStatus(dir),
|
|
191
193
|
};
|
|
192
194
|
|
|
193
195
|
const checks = [];
|
|
@@ -21,6 +21,9 @@ const SETTABLE_FIELDS = [
|
|
|
21
21
|
'dp_1_result', 'dp_1_timestamp', 'dp_1_decisions', 'dp_1_confirmed',
|
|
22
22
|
'dp_2_result', 'dp_2_timestamp', 'dp_2_decisions', 'dp_2_confirmed',
|
|
23
23
|
'dp_3_result', 'dp_3_timestamp', 'dp_3_decisions', 'dp_3_confirmed',
|
|
24
|
+
// v2.1 §6.6/§6.7:GLAF4 委托决策与状态位(dp_4_result 仍由 tf execution plan --confirm 程序化写入,不在列表)
|
|
25
|
+
'dp_4_glaf4_mode', 'dp_4_write_set_hash',
|
|
26
|
+
'delegation_status', 'delegation_retry_count', 'delegation_partial_writes',
|
|
24
27
|
'dp_5_result', 'dp_5_timestamp', 'dp_5_decisions', 'dp_5_confirmed',
|
|
25
28
|
'dp_6_result', 'dp_6_timestamp', 'dp_6_decisions', 'dp_6_confirmed',
|
|
26
29
|
'dp_7_result', 'dp_7_timestamp', 'dp_7_decisions', 'dp_7_confirmed',
|
|
@@ -28,6 +28,13 @@ const DEFAULTS = {
|
|
|
28
28
|
// 各 skill 上下文加载时按 phase 过滤注入
|
|
29
29
|
// 示例: { database: ".team-flow/conventions/db-design.md", ... }
|
|
30
30
|
},
|
|
31
|
+
glaf4_dev: {
|
|
32
|
+
// glaf4-dev 运行时探测结果(v2.1 §4 接口①)
|
|
33
|
+
// contract-builder 产出 execution-contract 时实时探测写入;delegation_mode 由用户/编排开关
|
|
34
|
+
enabled: false,
|
|
35
|
+
version: null,
|
|
36
|
+
delegation_mode: 'auto',
|
|
37
|
+
},
|
|
31
38
|
};
|
|
32
39
|
|
|
33
40
|
export const MODEL_PROFILES = Object.freeze([
|
|
@@ -89,6 +96,10 @@ function findConfigFile(startDir) {
|
|
|
89
96
|
encoding: 'utf-8',
|
|
90
97
|
stdio: ['pipe', 'pipe', 'pipe'],
|
|
91
98
|
}).trim();
|
|
99
|
+
// v2.1 评审 C1(2026-08-18):git root 优先查 .team-flow/(writeGlaf4DevConfig 落点,
|
|
100
|
+
// contract-builder 在工程根写探测结果,changeDir 子目录需经此读到),再查 legacy 位置。
|
|
101
|
+
const gitTeamFlowDir = join(gitRoot, '.team-flow', 'team-flow.config.json');
|
|
102
|
+
if (existsSync(gitTeamFlowDir)) return gitTeamFlowDir;
|
|
92
103
|
const gitPath = join(gitRoot, 'team-flow.config.json');
|
|
93
104
|
if (existsSync(gitPath)) return gitPath;
|
|
94
105
|
} catch {
|