@xulthekl/team-flow 0.64.0 → 0.65.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 +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/.cursor-plugin/marketplace.json +1 -1
- package/.cursor-plugin/plugin.json +1 -1
- package/.github/plugin/marketplace.json +2 -2
- package/CHANGELOG.md +29 -0
- package/GEMINI.md +1 -1
- package/INSTALL.md +1 -1
- package/README.md +1 -1
- package/agents/architecture-design.md +1 -1
- package/agents/architecture-reviewer.md +2 -2
- package/docs/README_en.md +1 -1
- package/docs/team-flow /344/275/277/347/224/250/350/257/264/346/230/216/357/274/210/347/240/224/345/217/221/345/233/242/351/230/237/347/211/210/357/274/211.md" +1 -1
- package/gemini-extension.json +1 -1
- package/hooks/session-start +2 -2
- package/llms.txt +1 -1
- package/package.json +1 -1
- package/plugin.json +1 -1
- package/scripts/guard/checks/arch-gate-exemptions.mjs +5 -3
- package/scripts/guard/checks/arch-readiness.mjs +1 -1
- package/scripts/guard/checks/arch-snapshot.mjs +5 -3
- package/scripts/lib/arch-merge.mjs +384 -50
- package/scripts/lib/arch-parse.mjs +5 -2
- package/scripts/lib/arch-registry.mjs +523 -0
- package/scripts/lib/arch-scan-code.mjs +518 -0
- package/scripts/lib/cmd-arch.mjs +9 -1
- package/scripts/lib/cmd-doctor.mjs +1 -1
- package/scripts/lib/config-loader.mjs +20 -0
- package/scripts/team-flow.mjs +3 -0
- package/skills/architecture-design/SKILL.md +29 -11
- package/skills/architecture-design/chapters/ch04-entity-to-aggregate.md +18 -7
- package/skills/architecture-design/chapters/ch06-integration.md +12 -3
- package/skills/architecture-design/glossary.md +5 -1
- package/skills/architecture-design/references/adr-templates.md +56 -0
- package/skills/architecture-design/references/context-map-8.md +47 -0
- package/skills/architecture-design/references/ddd-evented-playbook.md +41 -0
- package/skills/architecture-design/references/s3.5-architecture-template.md +36 -4
- package/skills/architecture-design/references/s3.5-loading-protocol.md +5 -4
- package/skills/architecture-design/references/s3.5-product-architecture.md +6 -6
- package/skills/architecture-design/templates/architecture.md +20 -0
- package/skills/ce-compound/references/concepts-vocabulary.md +1 -1
- package/skills/ce-compound/references/full-mode-workflow.md +2 -2
- package/skills/ce-compound/references/lightweight-mode.md +1 -1
- package/skills/release-archivist/SKILL.md +21 -0
- package/skills/release-archivist/references/closing-procedures.md +1 -1
- package/skills/workflow-orchestrator/SKILL.md +2 -2
|
@@ -171,6 +171,7 @@ If implementation diverged from the contract, return to `bridging` before closur
|
|
|
171
171
|
**planned(v0.64.0:回写与审查全前置,transition 是最后一步——closing 段 light 维度在 transition 时一次性校验,④⑤ 后置会死锁,B-13):**
|
|
172
172
|
```
|
|
173
173
|
① tf arch-merge <change-dir> --light ← 有架构 surface 才跑;持久源 = 最小 architecture.md(+api/database delta)
|
|
174
|
+
⚠ 前置 ①-pre 语义段照跑(产 .arch-delta.json)——--light 只是消费方,**不得绕过 delta 校验**(P3 M-5 回指)
|
|
174
175
|
② tf test-merge <change-dir> --light ← 有测试触碰才跑;changelog 首行写 change:<name> 归因锚
|
|
175
176
|
③ tf solutions capture <args> --source "change:<name>" ← 必执行(归因 = --source;含「无新增决策」空捕获;禁 compound_skipped 自清)
|
|
176
177
|
④ final-review.md 复核(≥5 行;**回写之后**核验台账条目 vs diff 抽样,B-01/D5)
|
|
@@ -194,6 +195,26 @@ If implementation diverged from the contract, return to `bridging` before closur
|
|
|
194
195
|
|
|
195
196
|
**架构快照门禁(arch-snapshot,v0.36.0 / v0.36.3)**:本轮迭代产品级架构快照 `iterations/vN/architecture.md` 必须已落盘("先快照后回写"强制化)。**FAIL 升级路径**:回 orchestrator 的 ARCH 阶段补快照;存量升级在途 change(快照缺失但 change 有增量产物)→ WARN 兜底放行;`arch_baseline` 缺失 → WARN 不阻断。hotfix/tweak 豁免(不挂该维度)。判定逻辑见插件内 `scripts/guard/checks/arch-gate-exemptions.mjs`(引用,非调用)。
|
|
196
197
|
|
|
198
|
+
### ①-pre · 语义段:产 `architecture/.arch-delta.json`(O8 两段式,P0-B'' · 在 ① 之前执行)
|
|
199
|
+
|
|
200
|
+
在 `tf arch-merge` **之前**,从本 change 的架构制品语义抽取结构化增量,写入
|
|
201
|
+
`changes/<name>/architecture/.arch-delta.json`(schema:`delta_version: 1` + `change` + `generated_at` +
|
|
202
|
+
`entries[]`,每条 = `kind/op/key/fields`,kind ∈ `aggregate|bounded_context|subdomain|table|endpoint|event|context_map`,
|
|
203
|
+
op ∈ `new|extend|refactor|retire`——权威定义见**工作区设计文档**(非本插件运行时)`docs/plan/ddd-purity-and-arch-merge-design.md` §5.4-4c):
|
|
204
|
+
|
|
205
|
+
- **必填纪律(A8 机械层,两类处置不同——P4 Major 修正)**:`new`/`extend` 必带 `evidence`(指向本 change 制品出处,
|
|
206
|
+
如 `architecture.md:§3.2`;含引用文件存在性)——**软着陆期 evidence 类缺失/路径不存在 → WARN 且条目照常消费**,
|
|
207
|
+
v0.66.0 起 abort;`retire`/`refactor` 必带 `reason`(`refactor` 另必带 `prev_key`)——**此二者属结构错误,
|
|
208
|
+
缺失立即 abort(无软着陆豁免,结构坏无法安全消费)**。
|
|
209
|
+
- **物理事实无需穷举**:DDL 新表、api.md 新端点由确定段**机械补种**(漏登记会 WARN 提示);
|
|
210
|
+
但**语义意图只经本制品**——`retire`/`refactor`/字段富化/事件(`event`,经 `fields.owner_aggregate` 挂宿主)/
|
|
211
|
+
上下文映射(`context_map`,经 `fields.source_bc` 挂宿主)**漏写不会被补种**。
|
|
212
|
+
- **基线/既有键上写 `new` 会被软着陆降级为 `extend`**(R3-3)——扩展既有聚合直接写 `extend`。
|
|
213
|
+
- **确定段零 LLM**:`tf arch-merge` 读本制品 → schema 校验 → 合并进 `docs/architecture/.registry/registry.json`
|
|
214
|
+
(首次自动 seed 既有基线,红牌 12)→ 从 registry 生成下游产物。`--light` 不得绕过本制品的校验。
|
|
215
|
+
- **缺失 = 软着陆期合法**(arch-merge 自动走 legacy 重算路径并登记 WARN);**新 change SHOULD 产出**,
|
|
216
|
+
v0.66.0 起 MUST(硬切,退出条件见设计方案 §5.4-7)。direct 分支跳过回写,不产 delta。
|
|
217
|
+
|
|
197
218
|
### ① Architecture Merge (v0.10 §28-§31) — MUST run first(legacy/full 序列;planned 走上方 ⚠ 块 ① `--light`,direct 跳过)
|
|
198
219
|
|
|
199
220
|
Merge change-level architecture artifacts to the global `docs/architecture/` baseline **before** the state transition and before any other post-verification step:
|
|
@@ -16,7 +16,7 @@ tf prototype-sync <change-dir>
|
|
|
16
16
|
>
|
|
17
17
|
> ① **门禁只能在转换点校验**:`executing→closing` 现挂 `arch-merged` guard 维度——转换时校验全局 `docs/architecture/ARCHITECTURE.md` 已含本 change 增量(marker 区来源列 `change:<name>` **或** 演进日志锚 `### change:<name>`,双通道)。**未回写则转换被拒**。故 arch-merge 必须先于转换执行。
|
|
18
18
|
> ② **原顺序下"未回写"在状态机层面不可见**:旧序把 arch-merge 放在转换**之后**,而 `VALID_STATES` 无 `closed`、`closing→closed` 转换不存在 → arch-merge 在状态机上**没有任何锚点**,其成败无门禁考核。这是"架构变更必须合并进台账"这条原则长期停留在**文档承诺**而非**代码强制**的机制原因。
|
|
19
|
-
> ③ **与 `arch-snapshot` 不冲突**:两者同挂本转换(`arch-snapshot` 是 v0.36.0 的"先快照后回写"),但**维度之间无数据依赖**——`arch-snapshot` 只读 `docs/architecture/iterations/`,`arch-merge`
|
|
19
|
+
> ③ **与 `arch-snapshot` 不冲突**:两者同挂本转换(`arch-snapshot` 是 v0.36.0 的"先快照后回写"),但**维度之间无数据依赖**——`arch-snapshot` 只读 `docs/architecture/iterations/`,`arch-merge` 自 P0-B'-① 起(ddd-purity v1.5)**只读不写**该目录(seedFromSnapshots 读快照聚合),不构成数据依赖(P4 skill-reviewer 修正:原「全流程不触碰(已逐行核对)」已过期)。"先快照后回写"仍是语义前提(快照在 ARCH 阶段产出,早于整个 closing)。
|
|
20
20
|
> ④ **逃生通道**:若本 change 确无架构增量可回写,登记 `tf state set <change-dir> arch_merge_skipped true` + `arch_merge_skip_reason "<理由>"`,该维度即豁免。注意:跳过键**只豁免门禁维度**,不改变 `tf arch-merge` 命令自身的退出码——命令的失败按 **owner 归属**判定,非本 change 的解析失配只报 WARN,不会阻断你(v0.53.0 §115.8)。
|
|
21
21
|
|
|
22
22
|
If `prototype-sync` reports conflicts, list them in the closing summary and flag for manual resolution. Do not block closing on prototype-sync conflicts (advisory level).
|
|
@@ -93,7 +93,7 @@ prd_draft → user_review → prototype_loop → prd_frozen → completed
|
|
|
93
93
|
|
|
94
94
|
产品级架构设计:基于迭代版本 vN 产出覆盖所有模块的整体详细架构(预测态快照,P1:只写快照不写全局)。**ARCH 在 S3 之前**——计划(S3)与拆分(S4)是最终任务拆分,必须基于架构定稿(聚合/服务/模块)进行。
|
|
95
95
|
|
|
96
|
-
**场景判定(入口三态)**:全新项目 → 正向设计(首轮不可跳过);旧项目首轮(`arch_baseline` 缺失)→ 逆向重建 L0 骨架 → 渐进深化;已建档 + 迭代无结构性变更 → 跳过(**skip 必须物化**:写 `docs/architecture/iterations/vN/SKIPPED` 标记 + 理由,判定者=编排器+用户确认)。
|
|
96
|
+
**场景判定(入口三态)**:全新项目 → 正向设计(首轮不可跳过);旧项目首轮(`arch_baseline` 缺失)→ 逆向重建 L0 骨架 → 渐进深化;已建档 + 迭代无结构性变更 → 跳过(**skip 必须物化**:写 `docs/architecture/iterations/vN/SKIPPED.md` 标记 + 理由,判定者=编排器+用户确认)。
|
|
97
97
|
|
|
98
98
|
**执行**:调用 architecture-design skill 的 **product 模式**子代理(8 步设计:限界上下文/聚合注册表/指令事件/状态机/概念 ER/时序),产出 `docs/architecture/iterations/vN/architecture.md`(6 产物,provenance 标注)。
|
|
99
99
|
|
|
@@ -214,7 +214,7 @@ plan_hash: sha256:<plan.md 内容摘要> # 检测产品层改动后变更层
|
|
|
214
214
|
- **后台子代理等待范式(v0.20.0)**:派发后台子代理(prototype-builder / reviewer / architecture-design 等长任务)后**依赖完成通知(`<task-notification>`)再行动**,**禁止反复 `TaskOutput(block=true)` 阻塞轮询**——其对长任务超时返回会倾泻完整子代理 transcript,撑爆主上下文、抵消"只编排"的轻上下文优势。长任务派发后可先处理可并行工作或结束本轮等待通知,**不空转死等**;确需中途观察用 `block=false` 轻量查询(仍返转录,尽量不用)。(设计 §22.2)
|
|
215
215
|
- **不跳过 PRD 冻结**:PRD 必须经原型循环(或显式跳过)后才能进 ce-plan
|
|
216
216
|
- **不跳过拆分审计**:change-split-auditor 审计 verdict = PASS 是创建 change 脚手架的前置条件(S4 必选门禁)
|
|
217
|
-
- **架构门禁(v0.36.0)**:ARCH 阶段 skip 必须物化(`iterations/vN/SKIPPED` +
|
|
217
|
+
- **架构门禁(v0.36.0)**:ARCH 阶段 skip 必须物化(`iterations/vN/SKIPPED.md` + 理由;存量无扩展名 SKIPPED 门禁亦识别);arch-readiness(S4 拆分:快照覆盖 change 触及 BC)与 arch-snapshot(change closing)为 guard 门禁,`arch_baseline` 缺失 → WARN 不 FAIL(存量豁免)
|
|
218
218
|
- **路由是建议非决定**:S1 路由判断必须用户确认;重规划必须 DP-R 阻塞确认
|
|
219
219
|
- **回退必写 replan_log**:active → pending 回退必须记录;受影响制品归档为 .revN,重入不读旧制品
|
|
220
220
|
- **不阻断流程**:所有复利操作为 advisory 级——INDEX 缺失/读取失败时 CLI 输出一行 WARN 并返回空结果,**不阻断流程**(v0.57.0 前为完全静默)
|