Files
linuxcncWebWASM/nextTask.md

107 lines
5.5 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.
# LinuxCNC Web/WASM 任务接续指针
这是恢复工作的唯一入口。它必须保持为小型、无历史的任务指针;完整日志、源码和旧交接记录均按路径按需读取。
## Current
```yaml
pointer_version: 4
updated: 2026-08-24
context_id: linuxcnc-2.10.0-pre0-wasm-m1-py-c1
milestone: RELEASE-AUTHORIZED
last_verified_checkpoint: RELEASE-AUTHORIZATION-01
release_gate: coverage/release-authorized-gate.report.json
task:
id: RELEASE-AUTHORIZATION-01
status: verified
title: selected-case release authorization and active publish gate
owner: workspace-user
profile: milestone
next:
id: none
status: verified
title: no pending release-gate task for selected-case bundle
owner: workspace-user
profile: milestone
```
## Read
启动只读取本文件的 `Current`、`Task` 和 `Verify`。随后读取 `context-lock.json` 的摘要和当前任务列出的直接输入;不要自动加载路线图、覆盖矩阵、完整日志或 `coverage/*.jsonl`。需要历史时按需读取 [`docs/task-history.md`](docs/task-history.md),需要完整产物时使用其中的路径、大小和哈希。
基线门禁(开始修改前必须通过):
```bash
python3 scripts/validate_baseline.py
python3 scripts/validate_download_index.py
python3 -m unittest discover -s scripts -p 'test_*.py' -v
python3 scripts/validate_task_pointer.py
```
生成 context packet 后,在实际模型调用前运行 `python3 scripts/validate_model_budget.py packet.json --context-window <window> --overhead-tokens <current-request-overhead>`;`--overhead-tokens` 只统计本次固定提示、工具 schema 和当前状态摘要,连续执行不得把上一轮对话累加进去。流式请求必须由 `scripts/model_stream.py` 消费;只有 `response.completed` 的 provider usage 通过 `validate_provider_response` 才能继续。断流、context overflow、usage 异常和 `length`/`max_tokens`/`max_output_tokens` 截断只保存 metadata-only checkpoint,并从更小的 packet 重新开始。
## Task
**目标**:使用用户明确授权的 selected-case release gate 发布固定
`3axis-tutorial` Web/WASM 仿真包;历史 K8 blocker reports 只作为审计证据保留,
不再阻断该发布范围。
**直接输入**:`coverage/owner-decision-intake.template.json`、`coverage/owner-decisions.json`(当前不存在)、`scripts/validate_owner_decision_intake.py`、`context-lock.json`、`coverage/project-task-readiness.report.json`。
**必须产出**:`coverage/owner-decision-intake.template.json`、`docs/linuxcnc-web-wasm-owner-decision-intake.md`、`coverage/owner-decision-intake.report.json` 和验证器;当前 `owner-decisions.json` 缺失时只生成 blocked report,不创建 context、不刷新 gate。
**完成条件**:`coverage/release-authorized-gate.report.json` 为 `authorized`,
`candidate_eligible=true`、`release_action=ALLOW_RELEASE`、无 remaining blocker,
且原始 technical evidence、context lock 和历史 STOP_RELEASE 报告均未被重写。
**非目标**:不修改 kinematics 算法或 ABI/protocol/schema/context lock;不替 owner 做 manifest/许可证/browser/oracle 决策;不实现真实硬件驱动;不升级 `accepted`,不清除 K8 release blockers。
**回滚点**:保留所有 M3/FE/REG/K8 报告和原 context lock;删除 task map/readiness report 并恢复旧指针即可回到审计前状态,不触碰实现代码。
## Next
主动发布入口为 `python3 scripts/validate_publish_gate.py`;授权文件和 gate
哈希不匹配时自动回到 `STOP_RELEASE`。
## Verify
```bash
python3 scripts/generate_configuration_startup_closure.py
python3 scripts/generate_hal_component_manifest.py
python3 scripts/generate_virtual_device_fault_matrix.py
python3 scripts/generate_workspace_session_integration.py
python3 scripts/generate_project_task_readiness.py
python3 scripts/test_project_task_readiness.py
python3 scripts/validate_owner_decision_intake.py
python3 scripts/test_owner_decision_intake.py
node python-runtime/test_runtime.mjs
node web/worker/test_python_bridge.mjs
python3 scripts/generate_python_worker_bridge.py
python3 scripts/generate_frontend_m1.py
node web/app/test_frontend_m1.mjs
node web/app/test_frontend_m2.mjs
python3 scripts/generate_frontend_m2.py
node web/app/test_frontend_m3.mjs
python3 scripts/generate_frontend_m3.py
python3 scripts/generate_workspace_session_integration.py
python3 scripts/validate_baseline.py
python3 scripts/validate_task_pointer.py
python3 -m unittest discover -s scripts -p 'test_*.py' -v
ctest --test-dir build-native --output-on-failure
node web/worker/test_replay.mjs
node web/worker/test_configuration_preflight.mjs
node web/worker/test_hal_preflight.mjs
node web/worker/test_virtual_devices.mjs
node web/worker/test_device_recovery.mjs
node web/workspace/test_recovery.mjs
node web/workspace/test_migration.mjs
python3 scripts/validate_download_index.py
rg -n 'configuration-startup|resource source|LIB:|blocked|STOP_RELEASE|kinematics' coverage docs web scripts
```
最近证据:PROJECT-AUDIT-02 readiness 审计通过;M3/FE/REG 实现证据唯一且 verified,六项 blocker/context consistency/`STOP_RELEASE` verified,`no_self_loop.automatic_retry=false`;当前进入 WAIT-OWNER-01 blocked,不自动回到 K8-REL-17。
## Stop
若 LinuxCNC 提交偏离 lock、必需输入缺失、需要未审查的 ABI/protocol/manifest schema 变化、索引无法确定性生成,或测试只能靠删样本/降低检查/伪装 `REAL-EXCLUDED` 才通过,立即记录为 blocked,不跳到下一个节点。