openxiangda-skill-kit 2.0.0-alpha.140 → 2.0.0-alpha.144

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/dist/index.js CHANGED
@@ -91,7 +91,7 @@ export async function validateSkills(skillsRoot) {
91
91
  }
92
92
  }
93
93
  }
94
- const commandReference = resolve(referencesRoot, 'commands.md');
94
+ const commandReference = resolve(referencesRoot, documentationReferenceFile('cli'));
95
95
  if ((await isFile(commandReference)) &&
96
96
  (await readFile(commandReference, 'utf8')) !==
97
97
  renderDevkitCommandReference({
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openxiangda-skill-kit",
3
- "version": "2.0.0-alpha.140",
3
+ "version": "2.0.0-alpha.144",
4
4
  "description": "OpenXiangda 2.0 中文 AI 技能的校验、分发与安装。",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -17,7 +17,7 @@
17
17
  "README.md"
18
18
  ],
19
19
  "dependencies": {
20
- "openxiangda-devkit-core": "2.0.0-alpha.115"
20
+ "openxiangda-devkit-core": "2.0.0-alpha.118"
21
21
  },
22
22
  "devDependencies": {
23
23
  "tsx": "4.23.12",
@@ -11,10 +11,12 @@ description: 使用 OpenXiangda 2.0 开发、检查和交付应用,适用于
11
11
 
12
12
  ```bash
13
13
  pnpm dlx openxiangda@__OPENXIANGDA_VERSION__ login --base-url <平台地址>
14
- pnpm dlx openxiangda@__OPENXIANGDA_VERSION__ create <应用目录>
14
+ pnpm dlx openxiangda@__OPENXIANGDA_VERSION__ create <应用目录> --base-url <同一平台地址>
15
15
  pnpm dlx openxiangda@__OPENXIANGDA_VERSION__ skill install --force
16
16
  ```
17
17
 
18
+ 创建前把产品要求的目标平台明确带入命令,不从旧登录态推断站点。已有工作区从原绑定恢复,平台不一致时先解决登录与目标,不改 link 文件跨站创建。
19
+
18
20
  进入既有项目后使用项目锁定的 `pnpm openxiangda`,先读 `context --json`。全局 Skill 的版本不代表项目版本;资料以项目 `docs` 或 MCP docs_read 返回的版本为准。不要调用可能属于 1.x 的裸全局命令,也不用 latest/alpha 替代精确版本。
19
21
 
20
22
  ## 按任务选择资料
@@ -24,7 +26,7 @@ pnpm dlx openxiangda@__OPENXIANGDA_VERSION__ skill install --force
24
26
  | 任务 | 参考 |
25
27
  | --- | --- |
26
28
  | 安装、登录、创建、连接开发 | [开始开发](references/getting-started.md) |
27
- | 理解需求与选择能力 | [开发流程](references/discovery.md)、[架构](references/architecture.md) |
29
+ | 理解需求与选择能力 | [开发流程](references/development.md)、[架构](references/concepts.md) |
28
30
  | 模型、CRUD、字段与移动表单 | [业务模块](references/application-foundation.md)、[字段](references/field-components.md) |
29
31
  | 页面、标准组件与扩展 | [前端](references/frontend.md) |
30
32
  | 角色、行和字段权限 | [数据与权限](references/data-authz.md) |
@@ -33,11 +35,19 @@ pnpm dlx openxiangda@__OPENXIANGDA_VERSION__ skill install --force
33
35
  | 自定义事务、校验或外部集成 | [按需后端](references/backend.md) |
34
36
  | 管理成员或查看有效流程参数 | [应用管理](references/administration.md) |
35
37
  | 检查、部署、生产发布与故障恢复 | [验收](references/testing.md)、[交付](references/delivery.md) |
36
- | 需求记录与版本升级 | [可选 AppSpec](references/appspec.md)、[升级](references/upgrading.md) |
37
- | 选择 CLI/MCP 操作 | [命令](references/commands.md)、[MCP](references/mcp.md) |
38
+ | 需求记录与版本升级 | [全流程记录](references/appspec.md)、[升级](references/upgrading.md) |
39
+ | 选择 CLI/MCP 操作 | [命令](references/cli.md)、[MCP](references/mcp.md) |
38
40
 
39
41
  用户仅要求分析时不自动创建或发布。无行为变化不创建需求/架构记录;按实际风险决定验证深度。技术细节在已有要求内处理,新的业务含义、权限扩大或未授权外部变更才需要用户决定,已有明确授权不重复请求。
40
42
 
43
+ ## 引导开发并持续记录
44
+
45
+ 每轮先读取当前 AppSpec、相关能力、活动变更与契约。把模糊需求整理为角色、规则、页面、数据、权限与可观察结果;关键业务未知项先澄清,可逆技术细节自行决定。确认过的规则继续有效,不要求用户反复确认。
46
+
47
+ 总纲维护领域与模型关系、PC/移动任务页面、页面/操作/行/字段权限、多角色组合和容量预算。新增功能先评估影响,普通 CRUD、流程、消息等复用平台能力。明确数据量、分页/索引、请求次数、并发/批量和延迟目标,避免无界全量读取、逐行请求与无限重试。
48
+
49
+ 本轮 ChangeSpec 关联需求依据、方案、任务、源码、AC 场景和验收证据;多个变更时用提交说明 `AppSpec: <ID>` 指明本次交付。测试发布前完成设计和计划,部署后按实际角色、拒绝路径和性能样本验收。生产使用绑定测试运行及包摘要的 `appspec/verification/<运行ID>.json`。更新当前规则后归档,保留未覆盖项、失败原因、发布指针和交接。不可编造需求确认或通过结果;参见 [AppSpec](references/appspec.md)。
50
+
41
51
  ## 使用当前事实
42
52
 
43
53
  MCP 从项目锁定的 CLI 启动:
@@ -46,7 +56,7 @@ MCP 从项目锁定的 CLI 启动:
46
56
  pnpm exec openxiangda --mcp-stdio --cwd <workspace>
47
57
  ```
48
58
 
49
- 先读取 workspace_context,再按需调用 docs_read、contract_describe、administration_context 或 workflow_node_configurations。`openxiangda://workspace/contracts` 提供契约索引;按 selector 读取正文,aiCatalogDigest 随当前声明生成。字段、角色、管理员运行参数和部署状态都取自当前结果,不把示例值当成平台默认值。
59
+ 先读取 workspace_context,再按需调用 docs_read、contract_describe、administration_context 或 workflow_node_configurations。docs_read 不传 topic 时返回目录,使用其中的 id 读取正文;主题 ID 与本 Skill 参考文件名一致,例如命令专题为 cli。`openxiangda://workspace/contracts` 提供契约索引;按 selector 读取正文,aiCatalogDigest 随当前声明生成。字段、角色、管理员运行参数和部署状态都取自当前结果,不把示例值当成平台默认值。
50
60
 
51
61
  平台拥有身份、授权、业务数据、环境和部署状态。应用只声明自己的模型、页面和规则;普通 CRUD 走 Data API,标准审批和通知按需声明,真实业务动作才启用 Nest。编译器生成契约,应用不改生成输出、不维护第二份权限或能力目录。菜单建议只供初次复制到应用声明,不是运行时自动发现。
52
62
 
@@ -54,6 +64,8 @@ pnpm exec openxiangda --mcp-stdio --cwd <workspace>
54
64
 
55
65
  ## 完成与失败
56
66
 
57
- 只验证时运行 check/check_app;授权部署时直接 deploy/deploy_app,它已经包含检查。生产显式复用成功测试运行。登录、创建及长期 dev 使用 CLI/终端。提交返回运行 ID 后继续读取状态和日志,分别记录本地验证、部署激活和真实业务验收。
67
+ 开发开始先同步绑定仓库的远端默认主分支。开发完成包括源码、生成契约与必要记录的提交、推送和主线整合;发布从干净且同步的主分支冻结候选。任务分支已推送不代表进入主线。同一工作区保持一个写者,不覆盖其他会话未提交内容。日常 dev/check 可验证未提交源码。
68
+
69
+ 只验证时运行 check/check_app;授权部署时直接 deploy/deploy_app,它已经包含检查并默认跟踪平台完成,长步骤持续反馈阶段和耗时。生产显式复用成功测试运行。观察中断用 status <运行ID> --watch 或 deployment_status.watch 继续查询原运行。登录、创建及长期 dev 使用 CLI/终端,分别记录本地验证、部署激活和真实业务验收。
58
70
 
59
71
  失败保留错误码、指针与原候选。结果不确定先查平台,不生成新的随机幂等键掩盖原运行;仅执行平台允许的恢复。升级项目后刷新资料并重启旧 MCP 连接。
@@ -1,92 +1,102 @@
1
- # AppSpec:轻量业务活规格
1
+ # AppSpec:需求、设计与交付记录
2
2
 
3
- AppSpec OpenXiangda 2.0 应用的可选辅助层:把当前业务目标、稳定需求、验收场景和本次变化
4
- 放在 Git 中,让人和 AI 都能先理解意图,再修改实现。它不参与 AppPackage,不改变平台协议,
5
- 也不会成为 `dev/check/deploy` 的发布门禁。
6
-
7
- AppSpec 仅面向 2.0。工具不会读取、识别、导入或迁移 1.x 的 `openspec/`、SDD、表单、页面、
8
- 函数或发布记录。
3
+ AppSpec 是默认开发流程中的业务记录,保存在应用 Git 仓库。AI 负责整理需求、分析架构和性能、维护记录;产品经理主要说明目标与业务规则。当前总纲、实现声明、实际验收和平台部署各有自己的事实来源,不能互相替代。
9
4
 
10
5
  ## 最小结构
11
6
 
12
7
  ```text
13
8
  appspec/
14
- app.md
15
- capabilities/ # 按需
16
- changes/active/ # 按需
17
- changes/history/ # close 时生成
18
- decisions/ # 只有架构决定才需要
9
+ app.md # 当前有效目标、规则、架构、页面、权限、容量
10
+ capabilities/ # 复杂后再按业务能力拆分,不要求小应用创建
11
+ changes/active/ # 本轮需求、设计、任务、验收与交接
12
+ changes/history/ # 完成后的变更,按年保存
13
+ decisions/ # 需要长期引用的架构决定
14
+ verification/ # 绑定测试版本的业务验收报告
19
15
  ```
20
16
 
21
- 新应用默认只有一份简短 `app.md`。普通的小改动不需要补齐多份 proposal、design、tasks evidence。
17
+ 简单应用维护总纲和一份短变更即可。业务规则使用 `### REQ-*`,可观察验收使用 `#### AC-*`;ID 稳定,变更引用当前总纲或能力中的规则。声明和生成契约保存模型、字段与接口,AppSpec 不复制 Schema 全集。截图、请求轨迹等证据保留实际文件或 HTTPS 引用,不提交凭据和敏感业务数据。
22
18
 
23
- 启用 AppSpec 后,按变化风险选择需要保留的记录:
19
+ ## 从模糊需求到实现
24
20
 
25
- | 风险 | 维护方式 |
26
- | --- | --- |
27
- | L0:没有行为变化 | 不创建记录 |
28
- | L1:局部行为变化 | 一份短 ChangeSpec |
29
- | L2:跨资源、权限或状态变化 | 增加正反验收、数据影响和回滚 |
30
- | L3:身份、迁移、并发或外部副作用 | 再增加失败/幂等、资源边界和 ADR |
21
+ 1. 读取 `context --json`、相关 `spec context <ID> --json`,核对已有规则、活动变更和影响范围。
22
+ 2. 把需求整理为角色、场景、输入、规则、输出、异常和非目标。会改变权限、数据归属或难以恢复的业务决定先澄清;可逆技术细节自行选择并记录假设,已有确认持续有效。
23
+ 3. 总纲说明领域与模型关系、PC/移动任务页面、平台能力归属、页面/操作/行/字段权限和多角色组合。普通 CRUD、身份、审批和消息复用平台所有者。
24
+ 4. 写明数据规模、增长、分页、必要索引、请求次数、延迟目标、并发与批量边界。区分估算、目标和实测;避免全量读后在浏览器聚合、逐行请求和无限重试。
25
+ 5. 本次 ChangeSpec 说明为什么、需求依据、方案与影响、任务与实现、性能预算及验收计划。复杂变化补数据与权限、失败/幂等、回滚和 ADR。状态按实际进展维护,不能把草稿自动标成用户已确认。
26
+ 6. 实施、检查、测试部署、真实角色验收、生产晋级后,把持续有效规则合回当前总纲或能力规格,记录剩余问题并归档。
31
27
 
32
- ## 命令
28
+ `未确认问题` 下的 `- [ ]` 表示正式交付阻断项。非阻断假设另写说明。只有章节、一个 `passed` 标记或 AI 的判断,均不能证明业务验收实际发生。
29
+
30
+ ## 命令与阶段边界
33
31
 
34
32
  ```bash
35
- # 在旧的 2.0 应用中按需启用;新模板已经包含 app.md
36
33
  pnpm openxiangda spec init
37
-
38
- # 长期能力与稳定需求
39
- pnpm openxiangda spec add-capability CAP-BOOKING \
40
- --title "预约管理" --resources bookings
41
-
42
- # 本次变化,默认 L1
43
- pnpm openxiangda spec new booking-window \
44
- --title "限制可预约时段" \
45
- --capabilities CAP-BOOKING \
46
- --resources bookings
47
-
48
- # 给人或 AI 读取相关的当前上下文
34
+ pnpm openxiangda spec new booking-window --title "限制可预约时段" --risk L2
49
35
  pnpm openxiangda spec context booking-window --json
50
-
51
- # 主动执行严格文档检查;普通应用 check 仍不被 AppSpec 阻断
52
36
  pnpm openxiangda spec check
53
-
54
- # 完成后归档;根据已确认业务意图记录长期内容已合入当前规格,平台发布状态仍由 DeploymentRun 负责
55
- pnpm openxiangda spec close booking-window \
56
- --current-spec merged \
57
- --summary "已通过真实角色验收"
58
37
  ```
59
38
 
60
- AI-native 客户端可以读取 `openxiangda://workspace/appspec` 或调用 `appspec_context`。AppSpec
61
- 有格式或引用问题时,这两个入口返回 advisory;只有显式 `spec check` 把确定性结构问题作为失败。
62
-
63
- 不传 selector 时,context v2 只返回应用总纲正文与能力、活跃变更、ADR、历史变更的有界索引;AI
64
- 再用稳定 capability/change/ADR ID 读取相关正文。历史变更 ID 也可直接选择。相关正文最多返回 256 KiB,
65
- 超出预算的文档仍保留在索引并给出 warning。`workspaceDigest` 标识全部 AppSpec 与实时合同,
66
- `selectionDigest` 只标识应用总纲、当前 selector 的相关正文和实时合同。
39
+ 有且仅有一个活动变更时自动关联。多个活动变更或引用历史记录时,在本次 Git 提交说明中加入 `AppSpec: booking-window`。格式、无行为重构可引用已有记录,在提交说明写清不改变业务行为的依据,无需制造重复文档;新的行为变化仍要更新相应变更。
67
40
 
68
- 每份新 ChangeSpec 都以 `currentSpec: pending` 开始。关闭前根据已确认的业务意图与实际完成情况记录:
41
+ | 操作 | 实际要求 |
42
+ | --- | --- |
43
+ | dev、只读分析 | 可以研究和预览,不能把原型当作已完成交付 |
44
+ | 普通 check / check_app | 技术验证照常进行,需求与设计缺口作为单独诊断返回 |
45
+ | spec check | 严格检查当前文档、关联变更和测试发布前的完整性 |
46
+ | 测试 deploy / deploy_app | 总纲、设计、需求依据、性能预算、AC 计划完整;尚不要求线上业务验收报告 |
47
+ | 生产晋级 | 读取指定成功测试运行的同一制品,并核对绑定该版本的实际验收报告 |
48
+ | spec close | 当前长期规则已回写,“验证与发布”和“交接”有实际结论;未发布、取消和未覆盖项明确说明 |
49
+
50
+ 发布前提交、推送并合入远端默认主分支。测试部署之后的验收报告是后续提交,生产仍复用原测试包,不因主线新增报告而重新构建。参见[发布与恢复](delivery.md)。
51
+
52
+ ## 测试版本的验收报告
53
+
54
+ 按实际观察建立 `appspec/verification/<测试运行ID>.json`。以下仅展示格式,示例数值和结果不能作为真实证据;报告必须覆盖测试版本 AC 计划,失败和未测场景不能冒充通过。
55
+
56
+ ```json
57
+ {
58
+ "schemaVersion": "openxiangda.business-verification/v1",
59
+ "appCode": "booking-app",
60
+ "changeId": "booking-window",
61
+ "sourceDeploymentId": "实际测试运行ID",
62
+ "packageDigest": "实际包的64位SHA256",
63
+ "recordedAt": "实际记录时间ISO8601",
64
+ "scenarios": [
65
+ {
66
+ "id": "AC-BOOKING-001",
67
+ "status": "passed",
68
+ "actor": "实际测试身份及角色",
69
+ "observation": "实际操作、数据条件和观察到的结果",
70
+ "evidence": [".openxiangda/evidence/booking-001.png"]
71
+ }
72
+ ],
73
+ "performance": [
74
+ {
75
+ "scenario": "实际测量的页面或接口链路",
76
+ "sample": "测试环境、数据量、样本次数与测量口径",
77
+ "targetMs": 2000,
78
+ "observedMs": 450,
79
+ "evidence": [".openxiangda/evidence/performance.json"]
80
+ }
81
+ ]
82
+ }
83
+ ```
69
84
 
70
- - `merged`:仍然有效的 ADDED/MODIFIED/REMOVED 结果已经进入 `app.md` 或 CapabilitySpec;
71
- - `not-applicable`:本次变化不改变长期业务规格。
85
+ 本地证据路径必须位于工作区内且文件存在;长期报告也可引用 HTTPS 证据。工具核对引用格式、版本绑定、场景覆盖与数值,不替代对截图、业务含义或外部证据真实性的评估。授权角色成功和禁止角色拒绝分别验证;支持范围之外的渠道在需求范围与未覆盖清单中明确说明。
72
86
 
73
- AI 可在既有授权范围内整理和归档;业务意图不明确时先澄清。`spec close` 只约束 AppSpec 归档;它不会成为普通
74
- `check/dev/deploy` 门禁。L2/L3 的必需章节如果为空或仍是默认占位内容,显式 `spec check`/`spec close`
75
- 失败,普通应用检查仍只显示 warning。
87
+ ```bash
88
+ pnpm openxiangda spec verify --deployment <测试运行ID>
89
+ # 报告也可显式指定;生产晋级按运行 ID 读取默认路径
90
+ pnpm openxiangda spec verify --deployment <测试运行ID> --evidence appspec/verification/<测试运行ID>.json
91
+ pnpm openxiangda spec close booking-window --current-spec merged --summary "实际完成情况与剩余事项"
92
+ ```
76
93
 
77
- ## 事实边界
94
+ MCP `appspec_verify` 读取同一报告与运行事实。`spec verify` 根据当前关联需求核对;生产晋级另外从测试源码提交读取原计划,因此主线后续需求不能冒充旧版本已测内容。不得伪造用户确认、测试身份、执行结果或部署成功。官方工具的记录门槛不代表平台所有直接接口都强制执行了同一业务流程。
78
95
 
79
- - AppSpec:业务意图、当前有效需求、可观察验收和变更原因。
80
- - `openxiangda.config.ts`:资源、字段、页面、权限、动作和模块声明。
81
- - 编译合同与代码:实际技术行为。
82
- - 测试和验收证据:实现是否真的符合需求。
83
- - 平台:版本、部署、环境和运行状态。
96
+ ## 新任务找回上下文
84
97
 
85
- 如果 AppSpec 与实时合同冲突,工具会指出冲突,但不会让普通构建失败。先核对已确认的业务意图,再
86
- 修改 AppSpec 或实现;不要让 AI 静默选择其中一边。
98
+ `context` / `workspace_context` 默认返回总纲、相关变更索引、阶段缺口和下一步。`spec context` / `appspec_context` 的 context v3 默认只返回总纲正文及有界索引,按稳定 ID 加载相关能力、变更和 ADR 正文。当前资料最多 128 文件、2 MiB,正文上下文最多 256 KiB,超出时明确诊断。
87
99
 
88
- ## 能否只凭最终文档重建应用
100
+ 历史与当前资料独立预算,每页 50 条,使用 `--history-offset 50` 或 MCP `historyOffset` 翻页。历史索引仅读取头部,稳定历史 ID 可直接读取页外正文;归档增加不会挤掉当前资料。索引读取上限为 256 个年份目录、10 万个记录名和 5 秒,达到预算给出提示,文件不会删除。`workspaceDigest` 对应当前资料与实时契约,分页不改变它;`selectionDigest` 对应选中的具体正文与契约。
89
101
 
90
- 可以较高程度复现业务规则和页面流程,但不能保证像素、性能、外部系统细节和历史缺陷完全一致。
91
- 最可靠的“可重建包”是:当前 AppSpec + `openxiangda.config.ts` + 必要自定义动作 + 测试 + 外部接口
92
- 合同。关闭后的历史 ChangeSpec 主要解释演进原因,新项目通常只需当前规格。
102
+ 当前仓库规格不等于生产已上线功能。环境使用哪个版本从平台读取;历史用于解释演进原因,后续实现优先遵循当前有效规则。旧 2.0 应用升级后补齐实际记录,不导入 1.x SDD,也不自动生成虚假确认或验收。
@@ -21,6 +21,6 @@
21
21
  | `pnpm openxiangda rollback` | 远端变更 | 回滚测试或生产环境 |
22
22
  | `pnpm openxiangda login` | 本地写入 | 通过平台浏览器授权登录 |
23
23
  | `pnpm openxiangda skill` | 本地写入 | 安装当前版本的 AI Skill |
24
- | `pnpm openxiangda spec` | 本地写入 | 维护可选的 AppSpec 需求与变更辅助 |
24
+ | `pnpm openxiangda spec` | 本地写入 | 维护需求、设计、变更与业务验收记录 |
25
25
 
26
26
  只验证时运行 check;部署测试环境时直接运行 deploy,它已包含检查、测试和构建。生产使用 deploy --environment production --from <测试运行ID>;加 --dry-run 只读预览。登录、创建和长期 dev 进程由 CLI 管理。
@@ -4,8 +4,14 @@
4
4
 
5
5
  ## 测试部署
6
6
 
7
+ 发布前,先将本轮源码、生成契约及必要记录合入并推送仓库的远端默认主分支,然后从干净且同步的主分支工作区发布。工具从 origin 的远端 HEAD 识别主分支,不把任务分支的 upstream 当作主线。未提交、未推送、未合并或落后主线的问题会在构建和上传前返回;工具不会自动合并分支或覆盖其他会话的改动。
8
+
9
+ 开发开始时先同步主线并读取项目现状,开发完成包括提交、推送与主线整合。每个工作区保持一个写者;需要并行时使用独立目录并明确各任务范围。日常 dev/check 仍可验证未提交源码。没有 Git 远端的项目应先建立并绑定仓库再发布。
10
+
7
11
  准备部署时直接执行 deploy,它已经包含兼容性预检、生成、检查、测试和构建。只想检查代码时使用 [check](testing.md),无需在 deploy 前重复运行全套检查。
8
12
 
13
+ 测试发布还会核对 [AppSpec](appspec.md) 的需求依据、架构、权限、性能预算和验收计划。缺失时给出具体记录位置,先补实际设计;首次测试部署不要求预先完成线上业务验收。
14
+
9
15
  ```bash
10
16
  pnpm openxiangda deploy --dry-run --json
11
17
  pnpm openxiangda deploy
@@ -13,9 +19,19 @@ pnpm openxiangda status --json
13
19
  pnpm openxiangda logs <deployment-id> --json
14
20
  ```
15
21
 
16
- 默认目标为 `test`,平台内部标识为 `preproduction`。只读预览不生成构建产物、不上传制品、不提交 DeploymentRun;因此预览成功不能证明代码已通过检查。正式部署先读取目标平台的 `configurationCompatibility`,把当前完整声明和契约交给平台编译器预检;失败时停止后续步骤。只有启用了自定义 Nest 后端的应用才需要构建后端镜像及对应 Docker 环境。
22
+ 默认目标为 `test`,平台内部标识为 `preproduction`。只读预览不生成构建产物、不上传制品、不提交 DeploymentRun;因此预览成功不能证明代码已通过检查。正式检查使用本地完整校验,再通过目标平台的 `configurationCompatibility` 核对同源规则、密钥、已有物理模型和登录提供方等只读条件;失败时停止后续步骤。只有启用了自定义 Nest 后端的应用才需要构建后端镜像及对应 Docker 环境。
23
+
24
+ 生成的不可变 AppVersion 绑定前端、可选后端、配置契约和制品摘要。默认提交后持续跟踪同一运行,直到平台成功、失败或取消,最多观察 15 分钟。`--no-wait` 只提交,适用于已有状态跟踪器的自动化;此时返回运行 ID 不代表部署完成。
17
25
 
18
- 生成的不可变 AppVersion 绑定前端、可选后端、配置契约和制品摘要。提交结果返回运行 ID,后续通过 status/logs 查询平台真实结果。网络响应不确定时先查询原运行,不凭本地输出创建重复部署。
26
+ 构建、上传及平台执行都会显示当前阶段和耗时,长步骤每 10 秒反馈一次。平台的准备、部署、切换和健康检查状态来自原运行。观察超时或连接中断不会取消部署或重建候选,使用下面的命令继续跟踪:
27
+
28
+ ```bash
29
+ pnpm openxiangda status <deployment-id> --watch
30
+ ```
31
+
32
+ 网络响应不确定时先查询原运行,不凭本地输出创建重复部署。平台部署成功后,仍需执行真实角色的业务验收。
33
+
34
+ 相同源码候选重试时,工具会重新核对本地验证证据、封存清单和制品字节,复用仍有效的构建结果及后端镜像;已上传内容按摘要查询并复用。只有环境条件改变时不需要重建源码制品。输出损坏、输入变化或缓存缺失时自动回到正式检查和构建。缓存位于 `.openxiangda/build/`,不是新的部署状态源;提交响应不确定时使用原候选和幂等键,已有失败运行按其 recovery 恢复。
19
35
 
20
36
  ## 测试环境验收
21
37
 
@@ -35,13 +51,17 @@ pnpm openxiangda logs <deployment-id> --json
35
51
 
36
52
  生产必须复用已成功部署到测试环境的同一版本,不能从当前源码直接重建:
37
53
 
54
+ 先按真实操作保存 `appspec/verification/<测试运行ID>.json` 并提交、推送到主线。晋级会从测试源码提交读取原验收计划,核对报告的运行 ID、包摘要、AC 场景与性能证据;主线后来的需求不改变已测范围。
55
+
56
+ 该版本的源码提交必须仍包含在权威远端主分支中。主分支后来有新提交,不会改变本次晋级的制品。若任务分支采用 squash/rebase 合并,应在最终主线提交上重新冻结并验证测试候选,不能继续晋级合并前的提交。
57
+
38
58
  ```bash
39
59
  pnpm openxiangda deploy --environment production --from <test-deployment-id> --dry-run --json
40
60
  pnpm openxiangda deploy --environment production --from <test-deployment-id>
41
61
  pnpm openxiangda status --json
42
62
  ```
43
63
 
44
- 预览会读取测试运行及晋级条件,返回源运行、版本与摘要。测试运行失败、版本缺失或条件不符时直接失败。平台在真正晋级时再次权威校验。生产参数不接受测试环境的 `environmentId` 或 `idempotencyKey`。已有生产发布授权时可继续执行;授权不明确时先准备版本、预览及验收证据,再确认具体发布对象。
64
+ 预览会精确读取指定测试运行的封存配置并核对生产密钥、模型和登录条件,返回源运行、版本与摘要。主线后来变化或版本较旧,不会使预检改用当前源码或最近版本列表。测试运行失败、版本缺失或条件不符时直接失败。平台在真正晋级时再次权威校验。生产参数不接受测试环境的 `environmentId` 或 `idempotencyKey`。已有生产发布授权时可继续执行;授权不明确时先准备版本、预览及验收证据,再确认具体发布对象。
45
65
 
46
66
  ## 失败、重试与回滚
47
67
 
@@ -67,6 +87,10 @@ stop 保留数据与配置,start 从当前不可变版本恢复。不要把暂
67
87
 
68
88
  CLI 的 `--json` 输出单个 `openxiangda.cli-result/v2` 对象;失败包含 code、message、retryable、remediation、nextCommand,以及适用的 pointer/details。自动化依据 code 和结构化字段决策,不解析中文描述。
69
89
 
90
+ `check`、`deploy` 和持续状态观察的结果带 `data.execution`,包含本次操作 ID、总耗时及各阶段状态和耗时。阶段进度写到 stderr,保持 `--json` 的 stdout 可解析;`--json-events` 则通过 `command.status` 返回同源结构化进度。MCP 客户端提供 `progressToken` 时收到标准进度通知;不订阅通知仍能从最终结果读取阶段摘要。MCP `deploy_app.wait` 默认 true,`deployment_status.watch` 可继续观察原运行。
91
+
70
92
  兼容性错误会列出当前工具链与目标平台的版本、能力和契约要求。按定位修复声明或升级目标平台,不删除真实业务要求、改写摘要或绕过权限来让预检通过。应用所需能力由规范化声明派生,应用不能手写一份能力列表冒充平台支持。
71
93
 
72
- MCP 的 check_app、deployment_plan、deploy_app 使用与 CLI 相同的环境与生产晋级参数规则。完整参数以[CLI](commands.md)与[MCP](mcp.md)为准。
94
+ `OPENXIANGDA_CONFIGURATION_VALIDATOR_MISMATCH` 表示工具链与平台的校验实现不配套,应按发布说明升级对应版本;它会在构建、镜像推送和制品上传前出现。模型类型不能原地替换时,按提示设计新字段及数据转换;必需密钥缺失时配置目标环境后继续,不修改源码伪装问题已解决。
95
+
96
+ MCP 的 check_app、deployment_plan、deploy_app 使用与 CLI 相同的环境与生产晋级参数规则。完整参数以[CLI](cli.md)与[MCP](mcp.md)为准。
@@ -25,4 +25,4 @@
25
25
 
26
26
  开发使用 `pnpm openxiangda dev`,过程中运行必要的聚焦测试。交接前按[检查与验收](testing.md)验证;授权发布后按[交付](delivery.md)部署。失败保留错误码、位置和原始候选,依据平台恢复指令继续。
27
27
 
28
- [AppSpec](appspec.md)只记录需要长期保留的业务意图,不复制字段 Schema、生成契约和部署状态。小应用可只维护简短 app.md,无行为变化不创建 ChangeSpec。
28
+ [AppSpec](appspec.md)保存业务意图、设计与交付记录,不复制字段 Schema、生成契约和部署状态。简单应用维护总纲与一份短变更;无行为变化可引用已有记录。每轮先读取当前规则、澄清业务、评估架构、权限和性能,随后实施与验证,发布后更新当前规格及交接。测试部署前需要设计和验收计划,生产晋级前需要绑定测试运行及包摘要的实际验收报告。
@@ -1,7 +1,7 @@
1
1
  # 前端架构
2
2
 
3
3
  状态:Vite/Refine 已成为 OpenXiangda 2.0 唯一默认前端栈。决策与实测见
4
- [核心架构](architecture.md)。
4
+ [核心架构](concepts.md)。
5
5
 
6
6
  ## 默认技术栈
7
7
 
@@ -13,13 +13,15 @@ OpenXiangda 2.0 默认生成 React 应用和共享契约。普通 CRUD、标准
13
13
  ```bash
14
14
  pnpm dlx openxiangda@__OPENXIANGDA_VERSION__ skill install --force
15
15
  pnpm dlx openxiangda@__OPENXIANGDA_VERSION__ login --base-url https://platform.example.com
16
- pnpm dlx openxiangda@__OPENXIANGDA_VERSION__ create my-app
16
+ pnpm dlx openxiangda@__OPENXIANGDA_VERSION__ create my-app --base-url https://platform.example.com
17
17
  cd my-app
18
18
  pnpm openxiangda context --json
19
19
  pnpm openxiangda dev
20
20
  ```
21
21
 
22
- 将示例平台地址替换为自己的地址。`create` 会创建本地目录、安装依赖,并用当前登录身份绑定和初始化远端应用。初始化中断后重试同一命令;不要使用内部 provision 接口另建应用。创建操作应在用户要求创建应用的范围内执行。
22
+ 将两处示例平台地址替换为同一个目标地址。`create` 先核对目标与当前登录平台,再创建本地目录、安装依赖并初始化远端应用;新应用不会自动沿用文件中最后登录的站点。CI 使用原有成对的 `OPENXIANGDA_BASE_URL` 和 `OPENXIANGDA_TOKEN` 时,可以由该显式地址指定目标。
23
+
24
+ 初始化中断后重试同一命令;已有目录会核对原平台绑定,不能通过 `create` 改绑到其他站点。地址不一致时先检查目标并登录正确的平台,不修改 link 文件绕过检查,也不要使用内部 provision 接口另建应用。创建操作应在用户要求创建应用的范围内执行。
23
25
 
24
26
  进入项目后使用 `pnpm openxiangda`,由项目依赖和锁文件决定版本。查看使用资料运行 `pnpm openxiangda docs`;查看单一主题运行 `pnpm openxiangda docs frontend`。安装到其他 AI 工具时使用 `skill install --destination <Skill根目录>`。
25
27
 
@@ -30,17 +32,19 @@ apps/web 页面与应用入口
30
32
  packages/contracts 平台编译器生成的契约
31
33
  modules 业务模型、页面选择和模块声明
32
34
  openxiangda.config.ts 应用装配、导航、权限和按需能力
33
- appspec 可选的业务意图和验收记录
35
+ appspec 需求、架构、变更和验收记录
34
36
  AGENTS.md 平台约定与项目自有说明
35
37
  ```
36
38
 
37
39
  以实际模板输出为准。资源与页面通过模块声明组合,不创建 `platform/data`。`apps/server` 仅在启用后端时初始化;后续保留用户业务代码。
38
40
 
41
+ AppSpec 随开发持续维护:测试发布前补齐总纲、关联变更与验收计划,部署后记录真实业务结果,生产晋级核对该测试版本的验收报告。普通开发和检查可用于逐步补齐资料。具体步骤见[全流程记录](appspec.md)。
42
+
39
43
  ## 连接开发 {#connected-development}
40
44
 
41
45
  `dev` 监听本机回环地址,页面通过同源代理访问平台测试数据。浏览器不持久化平台凭据。终端和页面显示当前环境;只有生产环境时会持续提示生产数据风险。开发数据写入仍是远端真实写入,按任务范围操作。
42
46
 
43
- 纯 CRUD 修改优先使用标准模型、字段和页面;跨模型事务或外部副作用再选择后端。角色、行和字段权限在平台执行。详见[开发流程](discovery.md)、[模型与标准 CRUD](application-foundation.md)和[按需后端](backend.md)。
47
+ 纯 CRUD 修改优先使用标准模型、字段和页面;跨模型事务或外部副作用再选择后端。角色、行和字段权限在平台执行。详见[开发流程](development.md)、[模型与标准 CRUD](application-foundation.md)和[按需后端](backend.md)。
44
48
 
45
49
  ## 检查与交付 {#delivery}
46
50
 
@@ -13,7 +13,7 @@ MCP 使用项目锁定的根包;在客户端配置下列 stdio 启动参数,
13
13
  }
14
14
  ```
15
15
 
16
- 客户端负责启动进程。登录、创建应用和长期运行的 dev 服务使用 [CLI](commands.md)。依赖升级后重启 MCP 进程。首先读取 workspace_context,再按任务读取 docs_read 和相关契约。MCP 不自动部署;在用户已授权范围内执行修改,无需重复确认。
16
+ 客户端负责启动进程。登录、创建应用和长期运行的 dev 服务使用 [CLI](cli.md)。依赖升级后重启 MCP 进程。首先读取 workspace_context,再按任务读取 docs_read 和相关契约。MCP 不自动部署;在用户已授权范围内执行修改,无需重复确认。
17
17
 
18
18
  ## 读取资源
19
19
 
@@ -86,7 +86,7 @@ MCP 使用项目锁定的根包;在客户端配置下列 stdio 启动参数,
86
86
 
87
87
  ## appspec_context
88
88
 
89
- 读取业务需求。按需读取 AppSpec 索引或指定稳定 ID 的正文。它是可选业务意图,不是发布门禁。
89
+ 读取业务需求。读取当前规格、开发阶段缺口、分页历史或指定稳定 ID 的正文;测试发布核对设计与计划,生产晋级核对实际验收。
90
90
 
91
91
  - 只读:是
92
92
  - 可替换文件或改变远端状态:否
@@ -103,11 +103,48 @@ MCP 使用项目锁定的根包;在客户端配置下列 stdio 启动参数,
103
103
  "description": "能力、变更或 ADR 的稳定 ID",
104
104
  "type": "string",
105
105
  "minLength": 1
106
+ },
107
+ "historyOffset": {
108
+ "default": 0,
109
+ "description": "历史索引偏移,每页 50 条",
110
+ "type": "integer",
111
+ "minimum": 0,
112
+ "maximum": 9007199254740991
106
113
  }
107
114
  }
108
115
  }
109
116
  ```
110
117
 
118
+ ## appspec_verify
119
+
120
+ 核对业务验收报告。读取成功测试运行与 Git 中的真实验收报告,核对版本绑定、场景结果和性能证据;不自动编造或执行验收。
121
+
122
+ - 只读:是
123
+ - 可替换文件或改变远端状态:否
124
+ - 幂等:否
125
+
126
+ 输入参数:
127
+
128
+ ```json
129
+ {
130
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
131
+ "type": "object",
132
+ "properties": {
133
+ "deploymentId": {
134
+ "type": "string",
135
+ "minLength": 1
136
+ },
137
+ "evidencePath": {
138
+ "description": "appspec/verification/*.json;省略时按运行 ID 读取",
139
+ "type": "string"
140
+ }
141
+ },
142
+ "required": [
143
+ "deploymentId"
144
+ ]
145
+ }
146
+ ```
147
+
111
148
  ## docs_read
112
149
 
113
150
  读取中文使用资料。不传 topic 返回当前版本的主题和章节目录;传 topic/section 读取对应正文。
@@ -206,7 +243,7 @@ MCP 使用项目锁定的根包;在客户端配置下列 stdio 启动参数,
206
243
 
207
244
  ## check_app
208
245
 
209
- 检查完整应用。先做目标平台兼容性预检,再生成、静态检查、测试和构建;会写本地文件,前置失败即停止。
246
+ 检查完整应用。先在本地完成完整配置校验,默认核对平台同源规则与只读环境条件,再生成、静态检查、测试和构建。local 仅用于本地或 CI 验证,不证明目标环境可部署;正式 deploy 始终预检平台。会写本地文件,前置失败即停止。
210
247
 
211
248
  - 只读:否
212
249
  - 可替换文件或改变远端状态:是
@@ -227,6 +264,11 @@ MCP 使用项目锁定的根包;在客户端配置下列 stdio 启动参数,
227
264
  "test",
228
265
  "production"
229
266
  ]
267
+ },
268
+ "local": {
269
+ "default": false,
270
+ "description": "仅本地完整检查;结果 validationScope=local,不核对现场条件",
271
+ "type": "boolean"
230
272
  }
231
273
  }
232
274
  }
@@ -268,6 +310,11 @@ MCP 使用项目锁定的根包;在客户端配置下列 stdio 启动参数,
268
310
  "idempotencyKey": {
269
311
  "description": "测试部署幂等键,省略时由包摘要派生",
270
312
  "type": "string"
313
+ },
314
+ "wait": {
315
+ "default": true,
316
+ "description": "默认跟踪平台运行至完成,最多 15 分钟;false 只提交,随后必须查询状态",
317
+ "type": "boolean"
271
318
  }
272
319
  },
273
320
  "additionalProperties": false
@@ -362,7 +409,7 @@ MCP 使用项目锁定的根包;在客户端配置下列 stdio 启动参数,
362
409
 
363
410
  ## deploy_app
364
411
 
365
- 部署或晋级应用。test 包含检查、按需后端镜像构建、密封和提交;production 必须用 from 复用成功测试版本。已有明确授权无需再次确认。返回运行 ID 后继续读状态,提交成功不代表验收完成。
412
+ 部署或晋级应用。test 包含检查、按需后端镜像构建、密封和提交;production 必须用 from 复用成功测试版本。已有明确授权无需再次确认。默认持续报告进度并等待平台部署完成,真实业务验收另行执行。观察中断后继续查询原运行。
366
413
 
367
414
  - 只读:否
368
415
  - 可替换文件或改变远端状态:是
@@ -396,6 +443,11 @@ MCP 使用项目锁定的根包;在客户端配置下列 stdio 启动参数,
396
443
  "idempotencyKey": {
397
444
  "description": "测试部署幂等键,省略时由包摘要派生",
398
445
  "type": "string"
446
+ },
447
+ "wait": {
448
+ "default": true,
449
+ "description": "默认跟踪平台运行至完成,最多 15 分钟;false 只提交,随后必须查询状态",
450
+ "type": "boolean"
399
451
  }
400
452
  },
401
453
  "additionalProperties": false
@@ -404,7 +456,7 @@ MCP 使用项目锁定的根包;在客户端配置下列 stdio 启动参数,
404
456
 
405
457
  ## deployment_status
406
458
 
407
- 查询部署状态。查询指定或最近部署,平台状态和恢复决定是权威。
459
+ 查询部署状态。查询指定或最近部署,平台状态和恢复决定是权威;watch 跟踪原运行,不重新构建或部署。
408
460
 
409
461
  - 只读:是
410
462
  - 可替换文件或改变远端状态:否
@@ -421,6 +473,11 @@ MCP 使用项目锁定的根包;在客户端配置下列 stdio 启动参数,
421
473
  "description": "省略时查询最近部署",
422
474
  "type": "string",
423
475
  "minLength": 1
476
+ },
477
+ "watch": {
478
+ "default": false,
479
+ "description": "持续跟踪原运行至结束,最多 15 分钟",
480
+ "type": "boolean"
424
481
  }
425
482
  }
426
483
  }
@@ -25,7 +25,18 @@ User-Agent 或浏览器指纹猜测同一个人。
25
25
 
26
26
  ```ts
27
27
  export default defineOpenXiangdaApp({
28
- // ...app、authz、data...
28
+ app: { code: 'visitor-app', name: '访客预约' },
29
+ data: {
30
+ resources: [{
31
+ code: 'visitor-requests', name: '访客预约',
32
+ fields: [
33
+ { code: 'visitorName', label: '姓名', type: 'text.short', required: true },
34
+ { code: 'phone', label: '手机', type: 'text.short', required: true, maxLength: 32 },
35
+ { code: 'visitDate', label: '到访日期', type: 'date', required: true },
36
+ { code: 'photo', label: '照片', type: 'image', file: { maxCount: 1, maxSizeMb: 5, accept: ['image/jpeg', 'image/png'] } },
37
+ ],
38
+ }],
39
+ },
29
40
  frontend: {
30
41
  root: 'apps/web',
31
42
  routes: [
@@ -78,6 +89,11 @@ export default defineOpenXiangdaApp({
78
89
  必须覆盖该资源所有可写必填业务字段。`pnpm openxiangda check --json` 会拒绝动态路由、越界字段、
79
90
  缺失必填字段、未声明操作和非法重复校验。
80
91
 
92
+ 附件、图片、多选等多值字段使用数组,存储不允许 null;这不意味着用户必须填写。上例照片可选,
93
+ 可以省略或提交空数组,不放入 `requiredFields`。如果业务确实要求上传,资源字段声明 `required: true`,
94
+ 公开策略也必须将它列入 `requiredFields`;提交时省略、null 或空数组都会被拒绝。策略可以提出更严格的
95
+ 必填要求,但不能漏掉资源已有的必填业务字段。缺失覆盖的诊断会指出字段和 `fields`/`requiredFields` 路径。
96
+
81
97
  操作按页面实际需要最小声明:
82
98
 
83
99
  | 操作 | 含义 |
@@ -6,10 +6,18 @@
6
6
  pnpm openxiangda check --json
7
7
  ```
8
8
 
9
- 默认目标为测试环境。CLI MCP `check_app` 使用相同的环境映射:先验证配置与依赖,生成契约,并向目标平台执行只读兼容性预检,再运行应用静态检查、测试和构建。明确检查生产目标时指定 `--environment production`。
9
+ CI、离线开发或尚未发布的候选包使用 `pnpm openxiangda check --local --json`,MCP 对应 `check_app.local=true`。它仍执行完整纯规则、生成、静态检查、测试与构建,但不请求平台;结果明确为 `validationScope: local`,不能证明现场权限、密钥和模型兼容。默认 check 仍预检目标,正式 deploy 始终执行现场预检,不提供跳过参数。
10
+
11
+ 默认目标为测试环境。CLI 与 MCP `check_app` 使用同一执行器:先在本地完成配置和完整契约校验,再核对目标平台的校验实现与只读环境条件,随后生成文件、执行静态检查、测试和构建。明确检查生产目标时指定 `--environment production`。
12
+
13
+ 结果中的 AppSpec/lifecycle 单独列出需求与设计缺口;普通 check 可以继续验证尚未完成的实现。正式测试发布前核对总纲、关联变更、权限、性能预算和 AC 计划,测试部署之后再执行真实角色验收。生产晋级按 [AppSpec 报告](appspec.md)核对指定测试版本的实际结果。
14
+
15
+ 本地与平台使用同一份纯校验规则,并核对实现摘要和配置投影摘要。必需登录提供方、目标环境的密钥可用性、已有模型的物理字段约束和应用管理权限会在构建前检查;预检不读取密钥明文、不创建物理表、不修改环境。现场变化仍由平台在真正执行时复核。
10
16
 
11
17
  检查会写本地生成结果并按需初始化后端,不是只读操作。前置阶段失败后,下游阶段标为 skipped,不继续构建或上传。保留错误码、pointer、details 和下一步,修正原因后重试。
12
18
 
19
+ 源码、锁文件、依赖安装状态、工具链、构建环境和输出摘要均未变化时,检查自动复用已通过的 check/test/build,并在阶段结果标记 `reused: true`。目标平台的权限、密钥和模型条件每次重新预检。检查期间输入发生变化会停止并要求重新检查。缓存只保存摘要;缺少锁文件、外部本地依赖、符号链接、文件过多或无法核对时执行完整检查。手工修改 node_modules 不属于受支持的依赖管理方式,应修改依赖声明并重新安装。
20
+
13
21
  成功检查返回 `sealedArtifact.state: check-did-not-seal`、`sealed: false`、`usableForDeploy: false`。旧 AppPackage 不是当前检查结果。要发布测试环境可直接运行 deploy,它已包含完整检查;不要连续重复执行 check、test 和 build。
14
22
 
15
23
  ## 按变化范围验收 {#acceptance}
@@ -4,6 +4,10 @@
4
4
 
5
5
  先运行 `pnpm openxiangda context --json`,确认项目锁定的根包版本、平台绑定和启用能力。取得目标精确版本和变更说明,核对平台能力要求。应用只直接管理 openxiangda 根包,内部物理包组合由该发行确定。
6
6
 
7
+ 共享校验使用 `configuration-compatibility/v2` 描述,包含校验实现摘要。切换到这一契约时,平台和项目工具链需按同一发布说明配套升级。随后每次发布在构建前核对实现摘要;不要反复修改业务代码来处理工具版本不配套。
8
+
9
+ 引导式开发使用 workspace-context/v3 与 AppSpec context/v3。升级后按实际业务补齐总纲与关联变更;空模板不能正式测试发布,生产晋级需要原测试版本的验收计划和实际报告。旧候选缺少计划时建立新的测试候选并验收,不自动补写过去的确认或通过记录。普通 dev/check 仍可用于整理和验证尚未完成的项目。
10
+
7
11
  ## 更新项目 {#upgrade}
8
12
 
9
13
  更新项目的精确根包依赖并安装,提交相应锁文件;不要使用 latest、alpha 或范围版本代替明确版本。运行统一 check,处理实际契约变化,再在测试环境验证后晋级。