Files
linuxcncWebWASM/nextTask.md

101 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: 3
updated: 2026-08-21
context_id: linuxcnc-2.10.0-pre0-wasm-m1-py-c1
milestone: K8
last_verified_checkpoint: OWNER-INTAKE-01
task:
id: WAIT-OWNER-01
status: blocked
title: pause until external owner decisions or new lock input
owner: WS-5
profile: milestone
next:
id: OWNER-INPUT-01
status: blocked
title: six owner decisions or new locked context input required
owner: WS-5
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
**目标**:等待六项 owner decision 或新的 locked context input;期间不重跑 K8 release gate、不创建新 context、不重复执行已完成 implementation matrix。
**直接输入**:`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。
**完成条件**:模板精确包含六项 blocker;缺失、重复、未知、context mismatch、字段不全和非 approve decision 均 blocked;完整六项 approve 只代表 intake shape verified,gate refresh 仍 blocked,必须另经新 context 审查;`context-lock.json` 不被验证器修改。
**非目标**:不修改 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
本任务是 external wait,不执行自动重试;owner 将 decision 文件放置为 `coverage/owner-decisions.json` 后运行 `python3 scripts/validate_owner_decision_intake.py`。只有验证通过并完成新 context 审查后,才重新打开 K8 release task。
## 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,不跳到下一个节点。