按接续文件text31持续推进
结论:已将五轴TRT的boat-xyzac与xyzac_switchkins加入browser diagnostics evidence expansion,candidateCount提升到5且全部ready;inventory baseline继续保持82/82/77/0,promotionAllowed仍为false。
This commit is contained in:
@@ -9,7 +9,7 @@ turn-by-turn continuation notes and next-batch execution records.
|
||||
## Current Status
|
||||
|
||||
- Active continuation file: `text32.txt`
|
||||
- Latest completed batch: remaining 77 SKIP promotion audit
|
||||
- Latest completed batch: five-axis TRT browser diagnostics evidence expansion
|
||||
- Latest relevant commit: use `git log -1 --oneline` after each committed batch
|
||||
- Working tree at tracker creation: clean
|
||||
- Required policy: LinuxCNC remains the only CNC semantic source
|
||||
@@ -45,7 +45,7 @@ The project is complete for the current scope when all of the following are true
|
||||
| Simulation test program library | Active | Built-in browser simulation programs live in `wasm-port/runtime/ui/simulation/programs/`, one module per program, exported through `programs/index.js`; `verify_real_simulation_programs.sh` checks directory-backed inventory, IDs, defaults, and playback contracts. |
|
||||
| Vendor/source guard | Stable | `verify_vendor_sync.sh` and standalone semantic guard are required every batch. |
|
||||
| Interpreter WASM smoke | Stable | `interp_wasm_node_smoke=ok`. |
|
||||
| Sim config inventory | Stable with skips | `executed=82`, `passed=82`, `skipped=77`, `unexpected_fail=0`; `docs/sim-configs-coverage-handoff.md` records the release-gate baseline. The 2026-06-20 remaining-skip audit found 2 skipped main-program rows and 0 rows with `promotion_allowed=1`, so the baseline must not change without new LinuxCNC-owned native/Node/browser proof. |
|
||||
| Sim config inventory | Stable with skips | `executed=82`, `passed=82`, `skipped=77`, `unexpected_fail=0`; `docs/sim-configs-coverage-handoff.md` records the release-gate baseline. The 2026-06-20 remaining-skip audit found 2 skipped main-program rows and 0 rows with `promotion_allowed=1`, so the baseline must not change without new LinuxCNC-owned native/Node/browser proof. Browser diagnostics evidence expansion now includes five ready source-derived REP candidates: `woodpecker-on-abort`, `puma-cube`, `melfa-example`, `trt-boat-xyzac`, and `trt-xyzac-switchkins`, all with `promotionAllowed=false`. |
|
||||
| Native nc_files baseline | Stable | Last recorded Layer 1: `total 107`, `pass 101`, `expected_fail 6`, `unexpected_fail 0`. |
|
||||
| Native sim configs baseline | Stable | Last recorded Layer 2: `total 159`, `pass 151`, `expected_fail 8`, `unexpected_fail 0`. |
|
||||
| OPFS/session persistence | Stable for current scope | Browser smoke passes, SDK re-exports OPFS/session helpers including `readMachineSessionReadiness()` and `createMachineSessionPersistenceSummary()`, the UI exposes `getMachineSessionPersistenceSummary()`, and `docs/opfs-session-persistence.md` defines the project-level release gate. |
|
||||
|
||||
131
text32.txt
131
text32.txt
@@ -148,3 +148,134 @@ wasm-port/tests/sdk/node/verify_sdk_surface.sh
|
||||
SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_real_simulation_browser.sh
|
||||
wasm-port/tools/verify_no_standalone_cnc_semantics.sh
|
||||
```
|
||||
|
||||
六、本轮接续推进:五轴 TRT browser diagnostics evidence expansion
|
||||
|
||||
执行时间:2026-06-20 CST
|
||||
|
||||
已按上面的下一步计划推进,不改 inventory baseline,不把 77 个 SKIP
|
||||
强行 promotion。
|
||||
|
||||
新增 browser diagnostics evidence expansion 候选:
|
||||
|
||||
```text
|
||||
trt-boat-xyzac
|
||||
gcode=linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/boat-xyzac.ngc
|
||||
ini=linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.ini
|
||||
remap_subs=428remap.ngc,429remap.ngc,430remap.ngc
|
||||
currentNodeInventoryStatus=PASS
|
||||
currentMatrixBrowserStatus=REP
|
||||
targetBrowserEvidence=browser-diagnostics-expansion
|
||||
promotionAllowed=false
|
||||
|
||||
trt-xyzac-switchkins
|
||||
gcode=linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzac_switchkins.ngc
|
||||
ini=linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.ini
|
||||
remap_subs=428remap.ngc,429remap.ngc,430remap.ngc
|
||||
currentNodeInventoryStatus=PASS
|
||||
currentMatrixBrowserStatus=REP
|
||||
targetBrowserEvidence=browser-diagnostics-expansion
|
||||
promotionAllowed=false
|
||||
```
|
||||
|
||||
当前 evidence expansion report:
|
||||
|
||||
```text
|
||||
candidateCount=5
|
||||
readyCandidateCount=5
|
||||
inventoryBaselineUnchanged=true
|
||||
promotionAllowed=false
|
||||
```
|
||||
|
||||
覆盖面:
|
||||
|
||||
```text
|
||||
woodpecker-on-abort
|
||||
puma-cube
|
||||
melfa-example
|
||||
trt-boat-xyzac
|
||||
trt-xyzac-switchkins
|
||||
```
|
||||
|
||||
已更新:
|
||||
|
||||
```text
|
||||
PROJECT_COMPLETION_TRACKER.md
|
||||
wasm-port/runtime/sdk/src/linuxcnc-hal.js
|
||||
wasm-port/runtime/sdk/src/project-release-readiness.js
|
||||
wasm-port/runtime/ui/simulation diagnostics artifact smoke
|
||||
wasm-port/tests/browser/ini_panel_workflow_overview_smoke.html
|
||||
wasm-port/tests/browser/real_simulation_page_smoke.html
|
||||
wasm-port/tests/docs/node/verify_sim_configs_coverage_docs.mjs
|
||||
wasm-port/tests/sdk/node/verify_sdk_surface.mjs
|
||||
wasm-port/tests/ui/node/verify_ini_panel_ui_shell.mjs
|
||||
wasm-port/docs/sim-config-coverage-promotion-analysis.md
|
||||
```
|
||||
|
||||
已运行验证:
|
||||
|
||||
```text
|
||||
git diff --check
|
||||
wasm-port/tests/sdk/node/verify_sdk_surface.sh
|
||||
wasm-port/tests/sdk/node/verify_project_release_artifact_url_workflow.sh
|
||||
wasm-port/tests/sdk/node/verify_project_release_gate_manifest.sh
|
||||
wasm-port/tests/ui/node/verify_ini_panel_ui_shell.sh
|
||||
SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_real_simulation_browser.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_release_artifact_url_workflow_browser.sh
|
||||
wasm-port/tests/docs/node/verify_sim_configs_coverage_docs.sh
|
||||
SKIP_INTERP_BUILD=1 wasm-port/tests/wasm/node/verify_sim_configs_inventory_wasm.sh
|
||||
wasm-port/tools/verify_no_standalone_cnc_semantics.sh
|
||||
```
|
||||
|
||||
结果:
|
||||
|
||||
```text
|
||||
sdk_surface_node_smoke=ok
|
||||
project_release_gate_manifest_node_smoke=ok
|
||||
project_release_artifact_url_workflow_node_smoke=ok
|
||||
project_batch_acceptance_workflow_node_smoke=ok
|
||||
ini_panel_ui_shell_node_smoke=ok
|
||||
browser_real_simulation_page_smoke=ok
|
||||
browser_ini_opfs_smoke=ok
|
||||
browser_ini_control_page_smoke=ok
|
||||
browser_ini_launch_smoke=ok
|
||||
browser_ini_workflow_overview_smoke=ok
|
||||
browser_ini_shell_integration_workflow_smoke=ok
|
||||
browser_release_artifact_url_workflow_smoke=ok
|
||||
sim_configs_coverage_docs_node_smoke=ok
|
||||
sim_configs_wasm_node_inventory=ok
|
||||
standalone CNC semantics guard complete
|
||||
```
|
||||
|
||||
七、下一步工作计划
|
||||
|
||||
继续沿 browser diagnostics / release evidence 方向推进,不改变
|
||||
`82/82/77/0` inventory baseline。
|
||||
|
||||
优先建议:
|
||||
|
||||
```text
|
||||
1. 把 evidence expansion 从“候选 report/API/smoke”推进到更可见的 UI
|
||||
surface:
|
||||
- real simulation diagnostics panel 显示 evidence expansion ready count;
|
||||
- INI workflow overview URL summary 显示 5 个 ready candidates 的完整列表
|
||||
或 drilldown;
|
||||
- 保持 summary preview 的前三项兼容现有 UI。
|
||||
|
||||
2. 继续扩展五轴 TRT family 的 browser diagnostics evidence:
|
||||
- boat-xyzbc.ngc
|
||||
- impeller-7bl-xyzac.ngc
|
||||
- xyzac_switchkins_test_1.ngc
|
||||
- xyzac_switchkins_test_2.ngc
|
||||
- xyzac_switchkins_test_3.ngc
|
||||
- xyzbc_switchkins.ngc
|
||||
|
||||
3. 每新增一批都必须满足:
|
||||
- currentNodeInventoryStatus=PASS;
|
||||
- currentMatrixBrowserStatus=REP;
|
||||
- targetBrowserEvidence=browser-diagnostics-expansion;
|
||||
- promotionAllowed=false;
|
||||
- inventoryBaselineUnchanged=true;
|
||||
- real browser diagnostics artifact smoke 覆盖。
|
||||
```
|
||||
|
||||
@@ -693,6 +693,41 @@ surfaces. They do not add virtual HAL runtime capability, do not alter
|
||||
`promotion-candidates.tsv`, and do not change the inventory baseline or any
|
||||
hard-block lock.
|
||||
|
||||
## 2026-06-20 Five-Axis TRT Evidence Expansion
|
||||
|
||||
After the remaining 77 SKIP audit confirmed there are no directly promotable
|
||||
skipped main-program rows, the next evidence batch expanded browser diagnostics
|
||||
coverage for already passing representative rows instead of changing the
|
||||
inventory baseline.
|
||||
|
||||
The virtual HAL sim-config evidence expansion report now requires these
|
||||
five-axis TRT rows:
|
||||
|
||||
```text
|
||||
trt-boat-xyzac
|
||||
linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/boat-xyzac.ngc
|
||||
|
||||
trt-xyzac-switchkins
|
||||
linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzac_switchkins.ngc
|
||||
```
|
||||
|
||||
Both rows use the LinuxCNC-owned `xyzac-trt.ini` machine context and the
|
||||
vendored `428remap.ngc`, `429remap.ngc`, and `430remap.ngc` remap
|
||||
subroutines. They remain:
|
||||
|
||||
```text
|
||||
currentNodeInventoryStatus=PASS
|
||||
currentMatrixBrowserStatus=REP
|
||||
targetBrowserEvidence=browser-diagnostics-expansion
|
||||
promotionAllowed=false
|
||||
inventoryBaselineUnchanged=true
|
||||
```
|
||||
|
||||
The real browser simulation diagnostics artifact now validates that the
|
||||
evidence expansion report has `candidateCount=5` and `readyCandidateCount=5`,
|
||||
including the two TRT rows above. The inventory baseline remains
|
||||
`executed=82 passed=82 skipped=77 unexpected_fail=0`.
|
||||
|
||||
## Boundary Statement
|
||||
|
||||
This analysis relies on the improved virtual HAL only for Web simulation
|
||||
|
||||
@@ -471,6 +471,48 @@ export const VIRTUAL_HAL_SIM_CONFIG_EVIDENCE_EXPANSION_CANDIDATES = Object.freez
|
||||
blockedKind: "-",
|
||||
evidence: "MELFA example has current representative coverage and can receive explicit browser diagnostics evidence without unlocking any hard runtime family.",
|
||||
}),
|
||||
Object.freeze({
|
||||
id: "trt-boat-xyzac",
|
||||
label: "TRT boat XYZAC",
|
||||
simConfigTarget: "five-axis-trt",
|
||||
sourceFiles: Object.freeze([
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.ini",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/boat-xyzac.ngc",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/428remap.ngc",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/429remap.ngc",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/430remap.ngc",
|
||||
]),
|
||||
iniPath: "linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.ini",
|
||||
gcodePath: "linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/boat-xyzac.ngc",
|
||||
currentNodeInventoryStatus: "PASS",
|
||||
currentMatrixBrowserStatus: "REP",
|
||||
dependencyClass: "hal_process,halui_mdi_process,ui_process",
|
||||
targetBrowserEvidence: "browser-diagnostics-expansion",
|
||||
promotionAllowed: false,
|
||||
blockedKind: "-",
|
||||
evidence: "The LinuxCNC table-rotary-tilting boat XYZAC demo is already covered as a five-axis representative; this row adds explicit browser diagnostics evidence without changing inventory counts.",
|
||||
}),
|
||||
Object.freeze({
|
||||
id: "trt-xyzac-switchkins",
|
||||
label: "TRT XYZAC switchkins",
|
||||
simConfigTarget: "five-axis-trt",
|
||||
sourceFiles: Object.freeze([
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.ini",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzac_switchkins.ngc",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/428remap.ngc",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/429remap.ngc",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/430remap.ngc",
|
||||
]),
|
||||
iniPath: "linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.ini",
|
||||
gcodePath: "linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzac_switchkins.ngc",
|
||||
currentNodeInventoryStatus: "PASS",
|
||||
currentMatrixBrowserStatus: "REP",
|
||||
dependencyClass: "hal_process,halui_mdi_process,ui_process",
|
||||
targetBrowserEvidence: "browser-diagnostics-expansion",
|
||||
promotionAllowed: false,
|
||||
blockedKind: "-",
|
||||
evidence: "The LinuxCNC table-rotary-tilting XYZAC switchkins demo is already a browser representative row; this evidence expansion binds it into release diagnostics only.",
|
||||
}),
|
||||
]);
|
||||
|
||||
export const VIRTUAL_HAL_SIM_CONFIG_MACRO_LOAD_FIXTURES = Object.freeze([
|
||||
|
||||
@@ -462,6 +462,26 @@ const REQUIRED_EVIDENCE_EXPANSION_CANDIDATES = [
|
||||
"linuxcnc/configs/sim/axis/vismach/melfa-sim/remap_subs/428remap.ngc",
|
||||
],
|
||||
},
|
||||
{
|
||||
id: "trt-boat-xyzac",
|
||||
sourceFiles: [
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.ini",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/boat-xyzac.ngc",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/428remap.ngc",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/429remap.ngc",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/430remap.ngc",
|
||||
],
|
||||
},
|
||||
{
|
||||
id: "trt-xyzac-switchkins",
|
||||
sourceFiles: [
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.ini",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzac_switchkins.ngc",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/428remap.ngc",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/429remap.ngc",
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/430remap.ngc",
|
||||
],
|
||||
},
|
||||
];
|
||||
|
||||
const REQUIRED_MACRO_LOAD_FIXTURES = [
|
||||
@@ -664,8 +684,8 @@ function isVirtualHalSimConfigEvidenceExpansionReportReady(report) {
|
||||
expansionReport.webSimulationSatisfied === true &&
|
||||
expansionReport.inventoryBaselineUnchanged === true &&
|
||||
expansionReport.promotionAllowed === false &&
|
||||
expansionReport.candidateCount === 3 &&
|
||||
expansionReport.readyCandidateCount === 3 &&
|
||||
expansionReport.candidateCount === REQUIRED_EVIDENCE_EXPANSION_CANDIDATES.length &&
|
||||
expansionReport.readyCandidateCount === REQUIRED_EVIDENCE_EXPANSION_CANDIDATES.length &&
|
||||
arrayOrEmpty(expansionReport.missingCandidates).length === 0 &&
|
||||
arrayOrEmpty(expansionReport.promotionAllowedViolations).length === 0 &&
|
||||
arrayOrEmpty(expansionReport.blockedCandidateIds).length === 0 &&
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
<script type="module">
|
||||
import {
|
||||
VIRTUAL_HAL_SIM_CONFIG_SOURCE_TARGETS,
|
||||
VIRTUAL_HAL_SIM_CONFIG_EVIDENCE_EXPANSION_CANDIDATES,
|
||||
createVirtualHalCommandScriptFixtureReport,
|
||||
createVirtualHalMillturnUserMProcessBoundaryReport,
|
||||
createVirtualHalMotionControllerMatrixReport,
|
||||
@@ -23,6 +24,8 @@
|
||||
|
||||
const VIRTUAL_HAL_MOTION_MATRIX_MANIFEST_ENTRIES =
|
||||
VIRTUAL_HAL_SIM_CONFIG_SOURCE_TARGETS.flatMap((target) => target.sourceFiles ?? []);
|
||||
const VIRTUAL_HAL_EVIDENCE_EXPANSION_MANIFEST_ENTRIES =
|
||||
VIRTUAL_HAL_SIM_CONFIG_EVIDENCE_EXPANSION_CANDIDATES.flatMap((candidate) => candidate.sourceFiles ?? []);
|
||||
|
||||
function assertEqual(actual, expected, label) {
|
||||
if (actual !== expected) {
|
||||
@@ -395,7 +398,7 @@
|
||||
const diagnosticsEvidenceExpansion = createVirtualHalSimConfigEvidenceExpansionReport({
|
||||
manifestEntries: [
|
||||
...VIRTUAL_HAL_MOTION_MATRIX_MANIFEST_ENTRIES,
|
||||
"linuxcnc/configs/sim/axis/vismach/puma/puma_cube.ini",
|
||||
...VIRTUAL_HAL_EVIDENCE_EXPANSION_MANIFEST_ENTRIES,
|
||||
],
|
||||
motionControllerMatrix: diagnosticsMotionControllerMatrix,
|
||||
});
|
||||
|
||||
@@ -668,6 +668,26 @@
|
||||
!diagnosticsArtifact.virtualHalSimConfigSourceCoverage?.sourceFiles?.includes("linuxcnc/configs/sim/qtdragon/qtdragon_xyz45/qtdragon_xyza.ini") ||
|
||||
!diagnosticsArtifact.virtualHalSimConfigSourceCoverage?.sourceFiles?.includes("linuxcnc/configs/sim/qtdragon_hd/qtdragon_hd_z_compensation/qtdragon_hd_z_compensation.ini") ||
|
||||
diagnosticsArtifact.virtualHalSimConfigPromotionCandidates?.complete !== true ||
|
||||
diagnosticsArtifact.virtualHalSimConfigEvidenceExpansion?.complete !== true ||
|
||||
diagnosticsArtifact.virtualHalSimConfigEvidenceExpansion?.candidateCount !== 5 ||
|
||||
diagnosticsArtifact.virtualHalSimConfigEvidenceExpansion?.readyCandidateCount !== 5 ||
|
||||
diagnosticsArtifact.virtualHalSimConfigEvidenceExpansion?.promotionAllowed !== false ||
|
||||
!diagnosticsArtifact.virtualHalSimConfigEvidenceExpansion?.rows?.some((row) =>
|
||||
row.id === "trt-boat-xyzac" &&
|
||||
row.currentNodeInventoryStatus === "PASS" &&
|
||||
row.currentMatrixBrowserStatus === "REP" &&
|
||||
row.targetBrowserEvidence === "browser-diagnostics-expansion" &&
|
||||
row.promotionAllowed === false &&
|
||||
row.sourceFiles?.includes("linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/boat-xyzac.ngc")
|
||||
) ||
|
||||
!diagnosticsArtifact.virtualHalSimConfigEvidenceExpansion?.rows?.some((row) =>
|
||||
row.id === "trt-xyzac-switchkins" &&
|
||||
row.currentNodeInventoryStatus === "PASS" &&
|
||||
row.currentMatrixBrowserStatus === "REP" &&
|
||||
row.targetBrowserEvidence === "browser-diagnostics-expansion" &&
|
||||
row.promotionAllowed === false &&
|
||||
row.sourceFiles?.includes("linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzac_switchkins.ngc")
|
||||
) ||
|
||||
diagnosticsArtifact.virtualHalPromotionCandidateSummary?.ready !== true ||
|
||||
diagnosticsArtifact.virtualHalPromotionCandidateSummary?.preferredCandidateId !== "qtdragon-multi-joint-on-abort" ||
|
||||
diagnosticsArtifact.virtualHalPromotionCandidateSummary?.candidateCount !== 8 ||
|
||||
|
||||
@@ -71,10 +71,15 @@ for (const phrase of [
|
||||
"axis/external_offsets/queuebuster.ngc",
|
||||
"Web Simulation Improvements From Virtual HAL",
|
||||
"2026-06-20 Remaining Skip Promotion Audit",
|
||||
"2026-06-20 Five-Axis TRT Evidence Expansion",
|
||||
"remaining_skipped_main_program_promotion_allowed=0",
|
||||
"direct_inventory_promotion_rows=0",
|
||||
"axis/vismach/millturn/example.ngc",
|
||||
"incremental_repetition_g533.ngc",
|
||||
"trt-boat-xyzac",
|
||||
"trt-xyzac-switchkins",
|
||||
"candidateCount=5",
|
||||
"readyCandidateCount=5",
|
||||
"Browser and Node simulation no longer need host `halcmd`, `halrun`, or a",
|
||||
"servo-period stepping",
|
||||
"8 diagnostics-ready candidates across 3 families and 17 source files",
|
||||
|
||||
@@ -1084,7 +1084,7 @@ assert.equal(virtualHalRuntime.getSimConfigPromotionCandidateReport({
|
||||
simConfigSourceCoverage: simConfigSourceCoverageReport,
|
||||
motionControllerMatrix: manifestCheckedMotionControllerMatrixReport,
|
||||
}).complete, true);
|
||||
assert.equal(VIRTUAL_HAL_SIM_CONFIG_EVIDENCE_EXPANSION_CANDIDATES.length, 3);
|
||||
assert.equal(VIRTUAL_HAL_SIM_CONFIG_EVIDENCE_EXPANSION_CANDIDATES.length, 5);
|
||||
const simConfigEvidenceExpansionReport = createVirtualHalSimConfigEvidenceExpansionReport({
|
||||
manifestText: sourceManifestText,
|
||||
simConfigSourceCoverage: simConfigSourceCoverageReport,
|
||||
@@ -1098,8 +1098,8 @@ assert.equal(simConfigEvidenceExpansionReport.complete, true);
|
||||
assert.equal(simConfigEvidenceExpansionReport.webSimulationSatisfied, true);
|
||||
assert.equal(simConfigEvidenceExpansionReport.inventoryBaselineUnchanged, true);
|
||||
assert.equal(simConfigEvidenceExpansionReport.promotionAllowed, false);
|
||||
assert.equal(simConfigEvidenceExpansionReport.candidateCount, 3);
|
||||
assert.equal(simConfigEvidenceExpansionReport.readyCandidateCount, 3);
|
||||
assert.equal(simConfigEvidenceExpansionReport.candidateCount, 5);
|
||||
assert.equal(simConfigEvidenceExpansionReport.readyCandidateCount, 5);
|
||||
assert.equal(simConfigEvidenceExpansionReport.promotionAllowedViolations.length, 0);
|
||||
assert.equal(
|
||||
simConfigEvidenceExpansionReport.rows.some((row) =>
|
||||
@@ -1111,6 +1111,30 @@ assert.equal(
|
||||
),
|
||||
true,
|
||||
);
|
||||
assert.equal(
|
||||
simConfigEvidenceExpansionReport.rows.some((row) =>
|
||||
row.id === "trt-boat-xyzac" &&
|
||||
row.currentMatrixBrowserStatus === "REP" &&
|
||||
row.targetBrowserEvidence === "browser-diagnostics-expansion" &&
|
||||
row.promotionAllowed === false &&
|
||||
row.sourceFiles.includes(
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/boat-xyzac.ngc",
|
||||
)
|
||||
),
|
||||
true,
|
||||
);
|
||||
assert.equal(
|
||||
simConfigEvidenceExpansionReport.rows.some((row) =>
|
||||
row.id === "trt-xyzac-switchkins" &&
|
||||
row.currentMatrixBrowserStatus === "REP" &&
|
||||
row.targetBrowserEvidence === "browser-diagnostics-expansion" &&
|
||||
row.promotionAllowed === false &&
|
||||
row.sourceFiles.includes(
|
||||
"linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzac_switchkins.ngc",
|
||||
)
|
||||
),
|
||||
true,
|
||||
);
|
||||
assert.equal(VIRTUAL_HAL_SIM_CONFIG_MACRO_LOAD_FIXTURES.length >= 2, true);
|
||||
assert.equal(VIRTUAL_HAL_SIM_CONFIG_MACRO_LOAD_BLOCKED_FIXTURES.length >= 2, true);
|
||||
assert.equal(VIRTUAL_HAL_SIM_CONFIG_MACRO_LOAD_AUDIT_CANDIDATES.length >= 2, true);
|
||||
|
||||
@@ -9,6 +9,7 @@ import {
|
||||
createProjectReleaseReadinessReport,
|
||||
} from "../../../runtime/sdk/src/project-release-readiness.js";
|
||||
import {
|
||||
VIRTUAL_HAL_SIM_CONFIG_EVIDENCE_EXPANSION_CANDIDATES,
|
||||
VIRTUAL_HAL_SIM_CONFIG_SOURCE_TARGETS,
|
||||
createVirtualHalCommandScriptFixtureReport,
|
||||
createVirtualHalMillturnUserMProcessBoundaryReport,
|
||||
@@ -164,6 +165,8 @@ import {
|
||||
|
||||
const VIRTUAL_HAL_MOTION_MATRIX_MANIFEST_ENTRIES =
|
||||
VIRTUAL_HAL_SIM_CONFIG_SOURCE_TARGETS.flatMap((target) => target.sourceFiles ?? []);
|
||||
const VIRTUAL_HAL_EVIDENCE_EXPANSION_MANIFEST_ENTRIES =
|
||||
VIRTUAL_HAL_SIM_CONFIG_EVIDENCE_EXPANSION_CANDIDATES.flatMap((candidate) => candidate.sourceFiles ?? []);
|
||||
|
||||
const __dirname = dirname(fileURLToPath(import.meta.url));
|
||||
const root = resolve(__dirname, "../../..");
|
||||
@@ -1460,7 +1463,7 @@ const releaseReadinessPromotionCandidates = createVirtualHalSimConfigPromotionCa
|
||||
const releaseReadinessEvidenceExpansion = createVirtualHalSimConfigEvidenceExpansionReport({
|
||||
manifestEntries: [
|
||||
...VIRTUAL_HAL_MOTION_MATRIX_MANIFEST_ENTRIES,
|
||||
"linuxcnc/configs/sim/axis/vismach/puma/puma_cube.ini",
|
||||
...VIRTUAL_HAL_EVIDENCE_EXPANSION_MANIFEST_ENTRIES,
|
||||
],
|
||||
motionControllerMatrix: releaseReadinessMotionControllerMatrix,
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user