You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Probe runner: the LV2 child, so lv2_measure runs under the runner like clap-qualify #76
The probe-output spec (openmixer docs/design/specs/2026-10-17-probe-output-interface.md §6, stage 1) has the runner run TODAY's probers as its child and translate their output: clap-qualify (probe and scan modes) AND lv2_measure. plugin-hostd-probe run (#72, PR #73) takes --child clap-qualify only, so an LV2 plugin has no limited probe and plugin-qualify still runs lv2_measure under a bare spawnSync timeout (spec F2, F3).
Wanted: the runner accepts an lv2:<uri> plugin and runs plugin-qualify's lv2_measure as the child under the same portable limits, translating its JSONL passes into behaviour and grid[].rtSafety (spec §6 table, sweep-jsonl.ts the translator), with the stress plugin's crash, hang and fork tests repeated through an LV2 fixture, each with its sabotage arm. Settles the rest of stage 1. Tracked by openmixer#1858.
Decision (2026-10-18): the runner drives the LV2 passes itself, with the arguments the probe protocol gives. The real child is looked up at run time at /usr/libexec/plugin-qualify/lv2_measure. plugin-qualify is not a package dependency of plugin-hostd: qualify builds against hostd, so a dependency back would be a cycle. A fake LV2 child is acceptable, and the crash, hang and fork tests require one. Going ahead.
Version 1 of the probe runs the quick measurement pass only. The deep lifecycle pass and the soak stay in plugin-qualify's orchestration. They move into the runner only when the probe protocol document (The probe protocol document, version 1: probe-protocol.json and --protocol on the runner #78, which waits for omx-contract#94) declares which plugins get them and for how long. No flag for them now.
A plugin of which nothing can be pinned exits 2 with no document, and the refusal is a code on stderr. The schema stays strict, and the runner never invents a hash.
Activity
linuxnow commentedon Oct 18, 2026
Decision (2026-10-18): the runner drives the LV2 passes itself, with the arguments the probe protocol gives. The real child is looked up at run time at /usr/libexec/plugin-qualify/lv2_measure. plugin-qualify is not a package dependency of plugin-hostd: qualify builds against hostd, so a dependency back would be a cycle. A fake LV2 child is acceptable, and the crash, hang and fork tests require one. Going ahead.
linuxnow commentedon Oct 18, 2026
Rulings (2026-10-18):
plugin-hostd-probe: an LV2 plugin of which nothing is pinned is refus…
Merge pull request #90 from FreeMixer/fix/76-lv2-child