Files
cnc_wams/wasm-port/docs/host-runtime-boundary-handoff.md

4.8 KiB

Host/runtime boundary release handoff

This document is the short release-gate handoff for blocked LinuxCNC runtime families in the WASM/browser port. It summarizes current host readiness, promotion blockers, opt-in probe dispatch state, native evidence acceptance, and the rule that blocked runtime families remain blocked on this host.

Detailed references:

  • docs/full-process-boundary-design.md
  • docs/sim-configs-coverage-matrix.md
  • docs/sim-configs-coverage-handoff.md
  • tests/wasm/node/verify_sim_configs_inventory_wasm.mjs

Current blocked runtime families

The current hard blocked families are:

  • L4-USER-M-PROCESS
  • L4-TOOL-DB
  • L4-PYTHON-REMAP

Current host readiness is summarized by:

  • build/wasm/sim-configs-inventory/runtime-boundary-host-readiness-rollup.tsv
  • build/wasm/sim-configs-inventory/runtime-boundary-promotion-blockers.tsv
  • build/wasm/sim-configs-inventory/runtime-boundary-opt-in-probe-dispatch-rollup.tsv
  • build/wasm/sim-configs-inventory/runtime-boundary-native-evidence-acceptance-gate.tsv
  • build/wasm/sim-configs-inventory/runtime-boundary-opt-in-probe-skip-evidence-rollup.tsv
  • build/wasm/sim-configs-inventory/blocked-runtime-promotion-lock.tsv

Current rollup state:

host_readiness_status=host_blocked_for_all_opt_in_native_probes
family_count=3
host_ready_family_count=0
host_blocked_family_count=3
blocked_families=L4-PYTHON-REMAP,L4-TOOL-DB,L4-USER-M-PROCESS
missing_host_requirements=halcmd,halrun,linuxcnc,milltask
ready_opt_in_command_count=0
execution_enabled=0
promotion_allowed=0

Promotion blockers

Each blocked family currently has promotion_ready=0, execution_enabled=0, and promotion_allowed=0.

The current blocker keys are:

host_runtime_requirements_missing
native_runtime_probe_not_passed
native_pass_evidence_not_ready
node_inventory_gate_not_complete
browser_smoke_gate_not_complete
promotion_lock_active
manual_lock_update_required

The next unblock action is to provide the missing host runtime requirements for the relevant family. Providing host commands is not enough to promote a row; it only allows the next opt-in probe gate to be considered.

Opt-in probe dispatch

The current dispatch rollup is:

dispatch_status=dispatch_blocked_for_all_opt_in_native_probes
probe_count=3
dispatch_allowed_count=0
dispatch_blocked_count=3
dispatch_actions=skip_missing_host_requirements
execution_enabled=0
promotion_allowed=0

These commands remain blocked on this host:

ENABLE_MILLTURN_USER_M_RUNTIME_PROBE=1 bash wasm-port/tests/native/probe_millturn_user_m_runtime.sh
ENABLE_TOOL_DB_RUNTIME_PROBE=1 bash wasm-port/tests/native/probe_tool_db_runtime.sh
ENABLE_PYTHON_REMAP_RUNTIME_PROBE=1 bash wasm-port/tests/native/probe_python_remap_runtime.sh

Do not run them unless the generated preflight, family readiness, dispatch plan, and dispatch rollup all permit the specific family.

Native evidence acceptance

runtime-boundary-native-evidence-acceptance-gate.tsv currently records:

  • current_probe_status=skipped_missing_host_runtime
  • native_evidence_status=pending_until_native_pass
  • skip_evidence_status=skip_valid_until_host_requirements_available
  • node_gate_status=blocked_until_native_pass_evidence
  • browser_gate_status=blocked_until_node_gate_complete
  • native_evidence_gate=blocked_until_host_requirements_available
  • evidence_acceptance_allowed=0

A skipped opt-in probe is not a native pass. It only proves that this host is correctly blocked until the required LinuxCNC runtime commands are available.

Release gate

Use this gate when touching blocked runtime family reports, host readiness, or promotion policy:

git diff --check
wasm-port/tools/verify_vendor_sync.sh
wasm-port/tools/verify_no_standalone_cnc_semantics.sh
SKIP_INTERP_BUILD=1 wasm-port/tests/wasm/node/verify_sim_configs_inventory_wasm.sh
wasm-port/tests/docs/node/verify_host_runtime_boundary_docs.sh
wasm-port/tests/docs/node/verify_sim_configs_coverage_docs.sh
wasm-port/tests/host/verify_host_smokes.sh

The host aggregate must include:

sim_configs_wasm_node_inventory=ok
host_runtime_boundary_docs_node_smoke=ok
sim_configs_coverage_docs_node_smoke=ok
host_wasm_opfs_browser_smokes=ok

Promotion rule

No blocked family may be promoted until all of these are true:

  1. Host readiness allows the family-specific opt-in probe.
  2. The explicit opt-in probe passes natively with LinuxCNC-owned runtime behavior.
  3. Native evidence acceptance allows the pass evidence.
  4. Node/WASM inventory proof passes after native evidence.
  5. Browser/host proof passes after Node/WASM proof.
  6. verify_no_standalone_cnc_semantics.sh still passes.
  7. blocked-runtime-promotion-lock.tsv, docs, and tracker records are updated deliberately.

Until then, L4-USER-M-PROCESS, L4-TOOL-DB, and L4-PYTHON-REMAP remain blocked, inventory-only runtime families.