修正 text14 续接记录顺序

This commit is contained in:
2026-06-16 10:25:59 +08:00
parent 904f906f86
commit 6c087499fd

View File

@@ -3001,109 +3001,36 @@ project_release_gate=ok
继续只做实质能力推进。优先选择真实 browser/UI workflow 或外部 shell 可消费能力; 继续只做实质能力推进。优先选择真实 browser/UI workflow 或外部 shell 可消费能力;
如果继续 release 路径,必须继续产出可调用 API、可验证 workflow、可执行 gate 或可消费 artifact。 如果继续 release 路径,必须继续产出可调用 API、可验证 workflow、可执行 gate 或可消费 artifact。
四十一、2026-06-16 继续执行记录:release artifact URL browser workflow gate 三十八、2026-06-16 继续执行记录:workflow overview release readiness artifact browser API
本轮继续按“每批必须产出可调用 API、可验证 workflow、可执行 gate、或真实 UI/browser 能力”推进, 本轮继续按“每批必须产出可调用 API、可验证 workflow、可执行 gate、或真实 UI/browser 能力”推进,
上一批 release readiness artifact URL workflow 提升为独立可执行 browser gate并纳入 project project release readiness artifact validation 从 SDK/host workflow 推进到真实 browser workflow overview
release readiness artifact 的 required gates。外部 CI 现在可以单独验证 workflow overview iframe iframe API。外部 shell 现在可以 workflow overview iframe 传入 readiness artifact JSON并获得稳定的
从 URL fetch artifact、validate、render 和 mount 的真实 browser 能力 只读 validation report
完成内容:
- 新增真实 browser gate
- `tests/browser/release_artifact_url_workflow_smoke.html`
- `tests/browser/verify_release_artifact_url_workflow_browser.sh`
- 新 gate 验证:
- missing URL 返回结构化 blocked
- missing DOM 返回结构化 blocked 且 validation ready
- ready DOM 下 fetch `tests/fixtures/project-release-readiness-ready.json`
- validation gateCount 为 10
- render-state 和 mount result 为 ready
- 输出 `browser_release_artifact_url_workflow_smoke=ok`
- `runtime/sdk/src/project-release-readiness.js` 的 required release gates 新增:
- `release-artifact-url-browser`
- `verify_project_release_gate.sh` 在 browser INI smoke 后运行新 browser gate
- `write_project_release_readiness_artifact.mjs` 写入新 gate result 和 observed output
- `verify_project_release_readiness_artifact.mjs` 期望 `gateCount=10`
- `tests/fixtures/project-release-readiness-ready.json` 新增第 10 个 gate
- `verify_sdk_surface.mjs`、`verify_ini_panel_ui_shell.mjs`、workflow overview browser smoke、
shell integration browser smoke 同步 `gateCount=10`
- `docs/project-release-handoff.md` 和 `verify_project_release_handoff_docs.mjs` 记录新 gate
- `PROJECT_COMPLETION_TRACKER.md` 同步 latest completed batch 和 release gate wrapper 状态;
- 清理 `text14.txt` 尾部重复中文编号,使续接记录标题保持唯一;
- 未新增控制按钮;
- 未执行 release gate/action-plan 以外的 CNC 行为;
- 未解析 G-code
- 未解释 canonical events
- 未新增 JS CNC 语义;
- 未运行 opt-in runtime probes
- 未 promotion blocked runtime family
- 未改变 LinuxCNC interpreter、tool、parameter、planner、kinematics、remap 或 LinuxCNC-owned
runtime semantics。
验证已通过(先行 targeted
```bash
wasm-port/tests/browser/verify_release_artifact_url_workflow_browser.sh
wasm-port/tests/sdk/node/verify_sdk_surface.sh
wasm-port/tests/ui/node/verify_ini_panel_ui_shell.sh
wasm-port/tests/docs/node/verify_project_release_handoff_docs.sh
wasm-port/tests/host/verify_project_release_readiness_artifact.sh wasm-port/tests/fixtures/project-release-readiness-ready.json
SKIP_INI_BUILD=1 SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_ini_panel_browser.sh
wasm-port/tests/ui/node/verify_ui_node_smokes.sh
git diff --check
```
关键输出:
```text
browser_release_artifact_url_workflow_smoke=ok
sdk_surface_node_smoke=ok
ini_panel_ui_shell_node_smoke=ok
project_release_handoff_docs_node_smoke=ok
project_release_readiness_artifact_node_smoke=ok
browser_ini_shell_integration_workflow_smoke=ok
ui_node_smokes=ok
```
下一步工作计划:
继续只做实质能力推进。优先选择可执行 gate、SDK/API surface、或真实 browser workflow
不要做只整理断言或局部常量化的批次。
四十、2026-06-16 继续执行记录workflow overview release readiness artifact URL workflow
本轮继续按“每批必须产出可调用 API、可验证 workflow、可执行 gate、或真实 UI/browser 能力”推进,
把 release readiness artifact validation 从 JSON 字符串调用推进到真实 browser URL 加载 workflow。外部
shell 现在可以让 workflow overview iframe fetch artifact JSON URL、复用 validation/display/render/mount
链路,并得到结构化 ready/blocked workflow result。
完成内容: 完成内容:
- `ui-shell.js` 新增: - `ui-shell.js` 新增:
- `loadIniPanelShellWorkflowOverviewReleaseReadinessArtifactUrl()` - `validateIniPanelShellWorkflowOverviewReleaseReadinessArtifactJson()`
- `createIniPanelShellWorkflowOverviewContract().methodNames` 新增: - `createIniPanelShellWorkflowOverviewContract().methodNames` 新增:
- `loadWorkflowOverviewReleaseReadinessArtifactUrl` - `validateWorkflowOverviewReleaseReadinessArtifactJson`
- `createIniPanelLaunchApiManifest().methods` 和 `launch.html` 暴露:
- `loadWorkflowOverviewReleaseReadinessArtifactUrl()`
- `workflow-overview.html` 的 `linuxCncIniPanelWorkflowOverviewApi` 暴露: - `workflow-overview.html` 的 `linuxCncIniPanelWorkflowOverviewApi` 暴露:
- `loadWorkflowOverviewReleaseReadinessArtifactUrl()` - `validateWorkflowOverviewReleaseReadinessArtifactJson()`
- 新 workflow - 该 API
- fetch artifact URL - 解析 project release readiness artifact JSON
- 复用 `validateIniPanelShellWorkflowOverviewReleaseReadinessArtifactJson()` - 复用 SDK `createProjectReleaseReadinessArtifactValidation()`
- 生成 display view-model 和 render-state - 返回 `ini-panel-shell-workflow-overview-release-readiness-artifact-validation`
- 可选 mount 到 caller-owned DOM - 返回 `phase/ready/missing/error/artifactApiName/artifactVersion/gateCount/rows/validation`
- 对缺 URL、缺 fetch、HTTP failure、DOM missing 和 validation blocked 返回结构化 blocked result - 对 malformed JSON 返回结构化 blocked result
- `runtime/sdk/src/index.js` re-export 新 URL workflow helper - `runtime/sdk/src/index.js` re-export workflow overview artifact validation wrapper
- 新增 `tests/fixtures/project-release-readiness-ready.json`,用于真实 browser HTTP fetch smoke - `verify_ini_panel_ui_shell.mjs` 覆盖 ready artifact 和 malformed JSON
- `verify_ini_panel_ui_shell.mjs` 覆盖 ready URL workflow、missing DOM、HTTP blocked - `verify_ini_panel_shell_integration_manifest.mjs` 覆盖 contract/readiness 新 method
- `verify_ini_panel_shell_integration_manifest.mjs` 覆盖 workflow overview contract/readiness 新 method - `ini_panel_workflow_overview_smoke.html` 在真实 iframe 中调用新 API
- `verify_ini_panel_launch_api_manifest.mjs` 覆盖 launch API manifest 和 browser namespace 暴露 - `ini_panel_shell_integration_workflow_smoke.html` 从外部 shell iframe 调用新 API
- `verify_sdk_surface.mjs` 覆盖 SDK export 和可调用 URL workflow - `docs/panel-entry.md`、`docs/project-release-handoff.md`、`runtime/sdk/README.md` 记录外部调用方式
- `ini_panel_workflow_overview_smoke.html` 在真实 workflow overview iframe 中 fetch fixture artifact 并 mount - `verify_ini_panel_entry_docs.mjs`、`verify_project_release_handoff_docs.mjs`、`verify_sdk_surface.mjs`
- `ini_panel_shell_integration_workflow_smoke.html` 从外部 shell 验证 iframe URL workflow 和 launch API 转发 覆盖新 API
- `docs/panel-entry.md`、`docs/project-release-handoff.md`、`runtime/sdk/README.md` 记录新 URL workflow - `PROJECT_COMPLETION_TRACKER.md` 同步 latest completed batch 和 Browser/UI workflow 状态
- `PROJECT_COMPLETION_TRACKER.md` 同步 latest completed batch、SDK/API surface 和 Browser/UI workflow 状态;
- 未新增控制按钮; - 未新增控制按钮;
- 未执行 release gate/action-plan - 未执行 release gate/action-plan
- 未解析 G-code - 未解析 G-code
@@ -3114,16 +3041,20 @@ shell 现在可以让 workflow overview iframe fetch artifact JSON URL、复用
- 未改变 LinuxCNC interpreter、tool、parameter、planner、kinematics、remap 或 LinuxCNC-owned - 未改变 LinuxCNC interpreter、tool、parameter、planner、kinematics、remap 或 LinuxCNC-owned
runtime semantics。 runtime semantics。
验证已通过(先行 targeted 验证已通过:
```bash ```bash
git diff --check
wasm-port/tests/sdk/node/verify_sdk_surface.sh wasm-port/tests/sdk/node/verify_sdk_surface.sh
wasm-port/tests/ui/node/verify_ini_panel_ui_shell.sh wasm-port/tests/ui/node/verify_ini_panel_ui_shell.sh
wasm-port/tests/ui/node/verify_ini_panel_shell_integration_manifest.sh wasm-port/tests/ui/node/verify_ini_panel_shell_integration_manifest.sh
wasm-port/tests/ui/node/verify_ini_panel_launch_api_manifest.sh
wasm-port/tests/ui/node/verify_ini_panel_entry_docs.sh wasm-port/tests/ui/node/verify_ini_panel_entry_docs.sh
wasm-port/tests/ui/node/verify_ui_node_smokes.sh
SKIP_INI_BUILD=1 SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_ini_panel_browser.sh SKIP_INI_BUILD=1 SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_ini_panel_browser.sh
wasm-port/tests/docs/node/verify_project_release_handoff_docs.sh wasm-port/tests/docs/node/verify_project_release_handoff_docs.sh
wasm-port/tools/verify_vendor_sync.sh
wasm-port/tools/verify_no_standalone_cnc_semantics.sh
wasm-port/tests/host/verify_project_release_gate.sh
``` ```
关键输出: 关键输出:
@@ -3132,17 +3063,21 @@ wasm-port/tests/docs/node/verify_project_release_handoff_docs.sh
sdk_surface_node_smoke=ok sdk_surface_node_smoke=ok
ini_panel_ui_shell_node_smoke=ok ini_panel_ui_shell_node_smoke=ok
ini_panel_shell_integration_manifest_node_smoke=ok ini_panel_shell_integration_manifest_node_smoke=ok
ini_panel_launch_api_manifest_node_smoke=ok
ini_panel_entry_docs_node_smoke=ok ini_panel_entry_docs_node_smoke=ok
ui_node_smokes=ok
browser_ini_workflow_overview_smoke=ok browser_ini_workflow_overview_smoke=ok
browser_ini_shell_integration_workflow_smoke=ok browser_ini_shell_integration_workflow_smoke=ok
project_release_handoff_docs_node_smoke=ok project_release_handoff_docs_node_smoke=ok
vendor sync up to date
standalone CNC semantics guard complete
project_release_readiness_artifact_node_smoke=ok
project_release_gate=ok
``` ```
下一步工作计划: 下一步工作计划:
继续只做实质能力推进。优先选择真实 browser/UI workflow、SDK/API surface、或可执行 release/host gate 继续只做实质能力推进。优先选择真实 browser/UI workflow 或外部 shell 可消费能力
不要做只整理断言或局部常量化的批次 如果继续 release 路径,必须继续产出可调用 API、可验证 workflow、可执行 gate 或可消费 artifact
三十九、2026-06-16 继续执行记录workflow overview release readiness artifact DOM workflow 三十九、2026-06-16 继续执行记录workflow overview release readiness artifact DOM workflow
@@ -3230,36 +3165,39 @@ project_release_gate=ok
继续只做实质能力推进。优先选择真实 browser/UI workflow 或外部 shell 可消费能力; 继续只做实质能力推进。优先选择真实 browser/UI workflow 或外部 shell 可消费能力;
如果继续 release 路径,必须继续产出可调用 API、可验证 workflow、可执行 gate 或可消费 artifact。 如果继续 release 路径,必须继续产出可调用 API、可验证 workflow、可执行 gate 或可消费 artifact。
三十八、2026-06-16 继续执行记录workflow overview release readiness artifact browser API 四十、2026-06-16 继续执行记录workflow overview release readiness artifact URL workflow
本轮继续按“每批必须产出可调用 API、可验证 workflow、可执行 gate、或真实 UI/browser 能力”推进, 本轮继续按“每批必须产出可调用 API、可验证 workflow、可执行 gate、或真实 UI/browser 能力”推进,
project release readiness artifact validation 从 SDK/host workflow 推进到真实 browser workflow overview 把 release readiness artifact validation 从 JSON 字符串调用推进到真实 browser URL 加载 workflow。外部
iframe API。外部 shell 现在可以 workflow overview iframe 传入 readiness artifact JSON,并获得稳定的 shell 现在可以 workflow overview iframe fetch artifact JSON URL、复用 validation/display/render/mount
只读 validation report。 链路,并得到结构化 ready/blocked workflow result。
完成内容: 完成内容:
- `ui-shell.js` 新增: - `ui-shell.js` 新增:
- `validateIniPanelShellWorkflowOverviewReleaseReadinessArtifactJson()` - `loadIniPanelShellWorkflowOverviewReleaseReadinessArtifactUrl()`
- `createIniPanelShellWorkflowOverviewContract().methodNames` 新增: - `createIniPanelShellWorkflowOverviewContract().methodNames` 新增:
- `validateWorkflowOverviewReleaseReadinessArtifactJson` - `loadWorkflowOverviewReleaseReadinessArtifactUrl`
- `createIniPanelLaunchApiManifest().methods` 和 `launch.html` 暴露:
- `loadWorkflowOverviewReleaseReadinessArtifactUrl()`
- `workflow-overview.html` 的 `linuxCncIniPanelWorkflowOverviewApi` 暴露: - `workflow-overview.html` 的 `linuxCncIniPanelWorkflowOverviewApi` 暴露:
- `validateWorkflowOverviewReleaseReadinessArtifactJson()` - `loadWorkflowOverviewReleaseReadinessArtifactUrl()`
- 该 API - 新 workflow
- 解析 project release readiness artifact JSON - fetch artifact URL
- 复用 SDK `createProjectReleaseReadinessArtifactValidation()` - 复用 `validateIniPanelShellWorkflowOverviewReleaseReadinessArtifactJson()`
- 返回 `ini-panel-shell-workflow-overview-release-readiness-artifact-validation` - 生成 display view-model 和 render-state
- 返回 `phase/ready/missing/error/artifactApiName/artifactVersion/gateCount/rows/validation` - 可选 mount 到 caller-owned DOM
- 对 malformed JSON 返回结构化 blocked result - 对缺 URL、缺 fetch、HTTP failure、DOM missing 和 validation blocked 返回结构化 blocked result
- `runtime/sdk/src/index.js` re-export workflow overview artifact validation wrapper - `runtime/sdk/src/index.js` re-export 新 URL workflow helper
- `verify_ini_panel_ui_shell.mjs` 覆盖 ready artifact 和 malformed JSON - 新增 `tests/fixtures/project-release-readiness-ready.json`,用于真实 browser HTTP fetch smoke
- `verify_ini_panel_shell_integration_manifest.mjs` 覆盖 contract/readiness 新 method - `verify_ini_panel_ui_shell.mjs` 覆盖 ready URL workflow、missing DOM、HTTP blocked
- `ini_panel_workflow_overview_smoke.html` 在真实 iframe 中调用新 API - `verify_ini_panel_shell_integration_manifest.mjs` 覆盖 workflow overview contract/readiness 新 method
- `ini_panel_shell_integration_workflow_smoke.html` 从外部 shell iframe 调用新 API - `verify_ini_panel_launch_api_manifest.mjs` 覆盖 launch API manifest 和 browser namespace 暴露
- `docs/panel-entry.md`、`docs/project-release-handoff.md`、`runtime/sdk/README.md` 记录外部调用方式 - `verify_sdk_surface.mjs` 覆盖 SDK export 和可调用 URL workflow
- `verify_ini_panel_entry_docs.mjs`、`verify_project_release_handoff_docs.mjs`、`verify_sdk_surface.mjs` - `ini_panel_workflow_overview_smoke.html` 在真实 workflow overview iframe 中 fetch fixture artifact 并 mount
覆盖新 API - `ini_panel_shell_integration_workflow_smoke.html` 从外部 shell 验证 iframe URL workflow 和 launch API 转发
- `PROJECT_COMPLETION_TRACKER.md` 同步 latest completed batch 和 Browser/UI workflow 状态 - `docs/panel-entry.md`、`docs/project-release-handoff.md`、`runtime/sdk/README.md` 记录新 URL workflow
- `PROJECT_COMPLETION_TRACKER.md` 同步 latest completed batch、SDK/API surface 和 Browser/UI workflow 状态;
- 未新增控制按钮; - 未新增控制按钮;
- 未执行 release gate/action-plan - 未执行 release gate/action-plan
- 未解析 G-code - 未解析 G-code
@@ -3270,20 +3208,16 @@ iframe API。外部 shell 现在可以向 workflow overview iframe 传入 readin
- 未改变 LinuxCNC interpreter、tool、parameter、planner、kinematics、remap 或 LinuxCNC-owned - 未改变 LinuxCNC interpreter、tool、parameter、planner、kinematics、remap 或 LinuxCNC-owned
runtime semantics。 runtime semantics。
验证已通过: 验证已通过(先行 targeted
```bash ```bash
git diff --check
wasm-port/tests/sdk/node/verify_sdk_surface.sh wasm-port/tests/sdk/node/verify_sdk_surface.sh
wasm-port/tests/ui/node/verify_ini_panel_ui_shell.sh wasm-port/tests/ui/node/verify_ini_panel_ui_shell.sh
wasm-port/tests/ui/node/verify_ini_panel_shell_integration_manifest.sh wasm-port/tests/ui/node/verify_ini_panel_shell_integration_manifest.sh
wasm-port/tests/ui/node/verify_ini_panel_launch_api_manifest.sh
wasm-port/tests/ui/node/verify_ini_panel_entry_docs.sh wasm-port/tests/ui/node/verify_ini_panel_entry_docs.sh
wasm-port/tests/ui/node/verify_ui_node_smokes.sh
SKIP_INI_BUILD=1 SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_ini_panel_browser.sh SKIP_INI_BUILD=1 SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_ini_panel_browser.sh
wasm-port/tests/docs/node/verify_project_release_handoff_docs.sh wasm-port/tests/docs/node/verify_project_release_handoff_docs.sh
wasm-port/tools/verify_vendor_sync.sh
wasm-port/tools/verify_no_standalone_cnc_semantics.sh
wasm-port/tests/host/verify_project_release_gate.sh
``` ```
关键输出: 关键输出:
@@ -3292,18 +3226,84 @@ wasm-port/tests/host/verify_project_release_gate.sh
sdk_surface_node_smoke=ok sdk_surface_node_smoke=ok
ini_panel_ui_shell_node_smoke=ok ini_panel_ui_shell_node_smoke=ok
ini_panel_shell_integration_manifest_node_smoke=ok ini_panel_shell_integration_manifest_node_smoke=ok
ini_panel_launch_api_manifest_node_smoke=ok
ini_panel_entry_docs_node_smoke=ok ini_panel_entry_docs_node_smoke=ok
ui_node_smokes=ok
browser_ini_workflow_overview_smoke=ok browser_ini_workflow_overview_smoke=ok
browser_ini_shell_integration_workflow_smoke=ok browser_ini_shell_integration_workflow_smoke=ok
project_release_handoff_docs_node_smoke=ok project_release_handoff_docs_node_smoke=ok
vendor sync up to date
standalone CNC semantics guard complete
project_release_readiness_artifact_node_smoke=ok
project_release_gate=ok
``` ```
下一步工作计划: 下一步工作计划:
继续只做实质能力推进。优先选择真实 browser/UI workflow 或外部 shell 可消费能力 继续只做实质能力推进。优先选择真实 browser/UI workflow、SDK/API surface、或可执行 release/host gate
如果继续 release 路径,必须继续产出可调用 API、可验证 workflow、可执行 gate 或可消费 artifact。 不要做只整理断言或局部常量化的批次。
四十一、2026-06-16 继续执行记录release artifact URL browser workflow gate
本轮继续按“每批必须产出可调用 API、可验证 workflow、可执行 gate、或真实 UI/browser 能力”推进,
把上一批 release readiness artifact URL workflow 提升为独立可执行 browser gate并纳入 project
release readiness artifact 的 required gates。外部 CI 现在可以单独验证 workflow overview iframe
从 URL fetch artifact、validate、render 和 mount 的真实 browser 能力。
完成内容:
- 新增真实 browser gate
- `tests/browser/release_artifact_url_workflow_smoke.html`
- `tests/browser/verify_release_artifact_url_workflow_browser.sh`
- 新 gate 验证:
- missing URL 返回结构化 blocked
- missing DOM 返回结构化 blocked 且 validation ready
- ready DOM 下 fetch `tests/fixtures/project-release-readiness-ready.json`
- validation gateCount 为 10
- render-state 和 mount result 为 ready
- 输出 `browser_release_artifact_url_workflow_smoke=ok`
- `runtime/sdk/src/project-release-readiness.js` 的 required release gates 新增:
- `release-artifact-url-browser`
- `verify_project_release_gate.sh` 在 browser INI smoke 后运行新 browser gate
- `write_project_release_readiness_artifact.mjs` 写入新 gate result 和 observed output
- `verify_project_release_readiness_artifact.mjs` 期望 `gateCount=10`
- `tests/fixtures/project-release-readiness-ready.json` 新增第 10 个 gate
- `verify_sdk_surface.mjs`、`verify_ini_panel_ui_shell.mjs`、workflow overview browser smoke、
shell integration browser smoke 同步 `gateCount=10`
- `docs/project-release-handoff.md` 和 `verify_project_release_handoff_docs.mjs` 记录新 gate
- `PROJECT_COMPLETION_TRACKER.md` 同步 latest completed batch 和 release gate wrapper 状态;
- 清理 `text14.txt` 尾部重复中文编号,使续接记录标题保持唯一;
- 未新增控制按钮;
- 未执行 release gate/action-plan 以外的 CNC 行为;
- 未解析 G-code
- 未解释 canonical events
- 未新增 JS CNC 语义;
- 未运行 opt-in runtime probes
- 未 promotion blocked runtime family
- 未改变 LinuxCNC interpreter、tool、parameter、planner、kinematics、remap 或 LinuxCNC-owned
runtime semantics。
验证已通过(先行 targeted
```bash
wasm-port/tests/browser/verify_release_artifact_url_workflow_browser.sh
wasm-port/tests/sdk/node/verify_sdk_surface.sh
wasm-port/tests/ui/node/verify_ini_panel_ui_shell.sh
wasm-port/tests/docs/node/verify_project_release_handoff_docs.sh
wasm-port/tests/host/verify_project_release_readiness_artifact.sh wasm-port/tests/fixtures/project-release-readiness-ready.json
SKIP_INI_BUILD=1 SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_ini_panel_browser.sh
wasm-port/tests/ui/node/verify_ui_node_smokes.sh
git diff --check
```
关键输出:
```text
browser_release_artifact_url_workflow_smoke=ok
sdk_surface_node_smoke=ok
ini_panel_ui_shell_node_smoke=ok
project_release_handoff_docs_node_smoke=ok
project_release_readiness_artifact_node_smoke=ok
browser_ini_shell_integration_workflow_smoke=ok
ui_node_smokes=ok
```
下一步工作计划:
继续只做实质能力推进。优先选择可执行 gate、SDK/API surface、或真实 browser workflow
不要做只整理断言或局部常量化的批次。