@openmixer/plugin-qualify 0.10.1 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +52 -10
- package/bin/plugin-qualify.mjs +61 -28
- package/dist/clap-loader.d.ts +1 -1
- package/dist/clap-loader.js +3 -3
- package/dist/clap-loader.js.map +1 -1
- package/dist/clap-qualify.d.ts +60 -51
- package/dist/clap-qualify.js +143 -91
- package/dist/clap-qualify.js.map +1 -1
- package/dist/cost-fields.d.ts +26 -0
- package/dist/cost-fields.js +30 -0
- package/dist/cost-fields.js.map +1 -1
- package/dist/hosting-codes.d.ts +1 -0
- package/dist/hosting-codes.js +1 -0
- package/dist/hosting-codes.js.map +1 -1
- package/dist/hosting-suitability.d.ts +22 -3
- package/dist/hosting-suitability.js +25 -5
- package/dist/hosting-suitability.js.map +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/judge-cli.d.ts +41 -0
- package/dist/judge-cli.js +114 -0
- package/dist/judge-cli.js.map +1 -0
- package/dist/measurement/cli.d.ts +7 -0
- package/dist/measurement/cli.js +14 -0
- package/dist/measurement/cli.js.map +1 -1
- package/dist/measurement/format.d.ts +44 -4
- package/dist/measurement/format.js +46 -3
- package/dist/measurement/format.js.map +1 -1
- package/dist/measurement/probe-json.js +4 -0
- package/dist/measurement/probe-json.js.map +1 -1
- package/dist/measurement/sweep-jsonl.js +2 -1
- package/dist/measurement/sweep-jsonl.js.map +1 -1
- package/dist/measurement/vocabulary.d.ts +9 -0
- package/dist/measurement/vocabulary.js +33 -0
- package/dist/measurement/vocabulary.js.map +1 -1
- package/dist/probe-judge.d.ts +65 -0
- package/dist/probe-judge.js +217 -0
- package/dist/probe-judge.js.map +1 -0
- package/dist/probe-output-fixtures.d.ts +25 -0
- package/dist/probe-output-fixtures.js +134 -0
- package/dist/probe-output-fixtures.js.map +1 -0
- package/dist/probe-output.d.ts +153 -0
- package/dist/probe-output.js +374 -0
- package/dist/probe-output.js.map +1 -0
- package/dist/probe-runner.d.ts +79 -0
- package/dist/probe-runner.js +191 -0
- package/dist/probe-runner.js.map +1 -0
- package/dist/qualification-record.d.ts +82 -0
- package/dist/qualification-record.js +85 -0
- package/dist/qualification-record.js.map +1 -0
- package/dist/qualify-cli.js +1 -1
- package/dist/qualify-cli.js.map +1 -1
- package/dist/qualify-declarations.d.ts +11 -2
- package/dist/qualify-declarations.js +14 -4
- package/dist/qualify-declarations.js.map +1 -1
- package/fixtures/clap-scan/fake.json +30 -6
- package/fixtures/probe-output/memory-limit-refused.json +190 -0
- package/fixtures/probe-output/plugin-crash.json +236 -0
- package/fixtures/probe-output/success-msi.json +363 -0
- package/package.json +5 -1
- package/src/clap-loader.ts +3 -2
- package/src/clap-qualify.ts +179 -138
- package/src/cost-fields.ts +39 -0
- package/src/hosting-codes.ts +1 -0
- package/src/hosting-suitability.ts +42 -7
- package/src/index.ts +5 -0
- package/src/judge-cli.ts +133 -0
- package/src/measurement/cli.ts +20 -0
- package/src/measurement/format.ts +80 -2
- package/src/measurement/probe-json.ts +4 -0
- package/src/measurement/sweep-jsonl.ts +2 -1
- package/src/measurement/vocabulary.ts +38 -0
- package/src/probe-judge.ts +272 -0
- package/src/probe-output-fixtures.ts +146 -0
- package/src/probe-output.ts +511 -0
- package/src/probe-runner.ts +244 -0
- package/src/qualification-record.ts +149 -0
- package/src/qualify-cli.ts +1 -1
- package/src/qualify-declarations.ts +16 -4
- package/tools/benchmark.py +116 -13
- package/tools/lv2-measure.mjs +2 -0
package/README.md
CHANGED
|
@@ -37,7 +37,7 @@ npm install -g @openmixer/plugin-qualify
|
|
|
37
37
|
|
|
38
38
|
The npm package ships the TypeScript command only, not the native tools. The CLAP prober, the LV2 measurer and
|
|
39
39
|
the interposer come with the RPM or DEB, or from `make -C native` in a checkout; with the npm package alone,
|
|
40
|
-
point `OMX_CLAP_QUALIFY`, `OMX_LV2_MEASURE` and `OMX_RT_INTERPOSE` at them, or CLAP qualification and the LV2
|
|
40
|
+
point `OMX_CLAP_QUALIFY`, `OMX_LV2_MEASURE` and `OMX_RT_INTERPOSE` at them (the probe runner is plugin-hostd's, `OMX_PROBE_RUNNER`), or CLAP qualification and the LV2
|
|
41
41
|
hosting dimensions refuse with "no CLAP prober at ...".
|
|
42
42
|
|
|
43
43
|
The GitHub release also carries the packed tarball, `openmixer-plugin-qualify-<version>.tgz`. To run from a
|
|
@@ -68,7 +68,9 @@ plugin-qualify --help # every option and its default
|
|
|
68
68
|
`--no-host-sweep` measures offline only, without mod-host. The `Containerfile` builds an image
|
|
69
69
|
with lilv, mod-host and the ASan mod-host, if you do not want to install them yourself.
|
|
70
70
|
|
|
71
|
-
|
|
71
|
+
A named LV2 plugin is measured the same way as a CLAP one: through the probe runner, then judged from the probe
|
|
72
|
+
output it writes (`plugin-qualify judge` below). Exit code: `0` every plugin qualified, `1` some did not, `2`
|
|
73
|
+
something could not be measured.
|
|
72
74
|
|
|
73
75
|
## CLAP plugins: the RT-safety verdict
|
|
74
76
|
|
|
@@ -82,6 +84,12 @@ plugin-qualify --out ./out ./my-fx.clap # and its RT-safety documents
|
|
|
82
84
|
CLAP_PATH=~/my-clap plugin-qualify --all # every CLAP on the search path
|
|
83
85
|
```
|
|
84
86
|
|
|
87
|
+
Each plugin is measured by plugin-hostd's probe runner, `plugin-hostd-probe` (from the `plugin-hostd` package, 0.4.0 or later, which
|
|
88
|
+
the RPM and DEB require;
|
|
89
|
+
`OMX_PROBE_RUNNER` names it when it is not on `PATH`). The runner starts the prober under limits (a wall clock
|
|
90
|
+
that kills the whole process tree, CPU time, memory, files), and plugin-qualify waits for the runner and reads
|
|
91
|
+
the document it writes, the probe output. Nothing in plugin-qualify times a prober out on its own any more.
|
|
92
|
+
|
|
85
93
|
`--all` walks the standard CLAP search path through the same scanner: each directory `CLAP_PATH`
|
|
86
94
|
names (colon-separated), then `~/.clap`, then `/usr/lib/clap`, which is the system directory on every
|
|
87
95
|
distribution and architecture. A plugin id found twice keeps its first place on that path. LV2 plugins
|
|
@@ -100,15 +108,49 @@ count of its own: a chord, the pitch bent and a controller moved, pressure, the
|
|
|
100
108
|
burst of 32 note ons in one block and their offs, all notes off, in the dialect its note input
|
|
101
109
|
reads (CLAP's, else MIDI's). An allocation, lock or syscall while it plays is **unsuitable**
|
|
102
110
|
(`hosting.rt-safety.violations-under-notes`); an instrument that could not be played under the
|
|
103
|
-
interposer is **unknown** (`hosting.rt-safety.notes-unmeasured`). `--out` writes
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
`
|
|
107
|
-
reads the same verdict under both. Each line also carries the plugin's pin, an
|
|
108
|
-
`integrity` block: the `.clap`'s SHA-256 by its file name and the parameter-layout fingerprint
|
|
109
|
-
`omx-layout/1:<sha256>`, both computed through plugin-hostd's `pin.h`, which is what a console
|
|
111
|
+
interposer is **unknown** (`hosting.rt-safety.notes-unmeasured`). `--out` writes the qualification records and the probe outputs they judged (see
|
|
112
|
+
"Judging a probe output" below), one pair per plugin binary and offered host extensions. Each plugin's pin is
|
|
113
|
+
an `integrity` block in the probe output: the `.clap`'s SHA-256 by its file name and the parameter-layout
|
|
114
|
+
fingerprint `omx-layout/1:<sha256>`, both computed through plugin-hostd's `pin.h`, which is what a console
|
|
110
115
|
hands plugin-hostd as `pin_set` before it adds the plugin. `OMX_CLAP_QUALIFY` and `OMX_RT_INTERPOSE`
|
|
111
|
-
name the prober and the interposer when they are not the installed ones or the checkout's
|
|
116
|
+
name the prober and the interposer the runner starts when they are not the installed ones or the checkout's
|
|
117
|
+
own build.
|
|
118
|
+
|
|
119
|
+
## Judging a probe output
|
|
120
|
+
|
|
121
|
+
The probe output is the document `plugin-hostd-probe run` writes: one binary and one offer, the steps the
|
|
122
|
+
prober reached and how each ended, and the figures per rate and quantum, with no verdict in it. plugin-qualify
|
|
123
|
+
reads it with `readProbeOutput`, which refuses a document of a major version it does not know
|
|
124
|
+
(`probe.format.major-unknown`), a document that carries a verdict, and a document whose derived fields disagree
|
|
125
|
+
with the fields they are computed from (`probe.format.derived-mismatch`): `machine.class.cstatesLimited` and
|
|
126
|
+
`machine.profile.meetsProtocol` are recomputed from `cpuidle[]`, the governor and `unmet[]`, never trusted.
|
|
127
|
+
|
|
128
|
+
```
|
|
129
|
+
plugin-hostd-probe run --out out/plate.probe.json ./example-plate.clap org.example.plate
|
|
130
|
+
plugin-qualify judge --host-profile omx-clap-host --qualification-dir ./qualification out/plate.probe.json
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
`judge` writes, into the qualification directory (`--qualification-dir`, else `$XDG_STATE_HOME/omx/qualification`,
|
|
134
|
+
else `~/.local/state/omx/qualification`), the qualification record `<id>@<version>-<sha256 first 12>.<offer>.qualification.json`
|
|
135
|
+
and, beside it, a byte copy of the probe output it judged, `<same name>.probe.json`, because the probe directory
|
|
136
|
+
may be wiped. The record names that copy and its SHA-256 in `probe`, with the run's protocol, reason and machine
|
|
137
|
+
class, so a reference figure and a local one are told apart. The record holds, for each host profile, the verdict
|
|
138
|
+
(`rating`, `hosting`, the deciding reason code and every reason) and the cost reasons at that profile's rate and
|
|
139
|
+
quantum, and the figures as measured. Exit `0` every plugin qualified, `1` some did not, `2` something could not
|
|
140
|
+
be read or judged.
|
|
141
|
+
|
|
142
|
+
The verdict is the same one `plugin-qualify` gives CLAP plugins today, the real-time-safety one, now for LV2 as
|
|
143
|
+
well; cost is reported beside it, not folded into it. Cost is read at the profile's rate AND quantum: a pair the
|
|
144
|
+
document does not hold reads `hosting.cost.unmeasured-at-rate-and-quantum`, and two quanta of one plugin that cost
|
|
145
|
+
differently give two different cost reasons. Only a measurement of the old format, which keeps one figure per
|
|
146
|
+
rate, is read per rate. A run that did not end `probe.ok` is `unknown`, with the run's outcome code as the reason.
|
|
147
|
+
|
|
148
|
+
An instrument costs nothing until a voice plays, so its cost is taken with notes held down, at velocity 127,
|
|
149
|
+
spread across the keyboard, while every parameter is swept: as many notes as the voice capacity the plugin
|
|
150
|
+
declares (CLAP `voice-info`, basis `declared`), or, when it declares none, the count `--probe-notes` gives
|
|
151
|
+
(basis `probe`; LV2 declares none). Each rate's figure says how many notes it held and why (`voices: { held,
|
|
152
|
+
basis, capacity }`). An instrument with no count to hold is not timed (`voices-unknown`).
|
|
153
|
+
|
|
112
154
|
|
|
113
155
|
The prober also scans: `OMX_CLAP_SCAN=native/build/clap-qualify` makes it the scanner, and its scan
|
|
114
156
|
keeps what a console needs to draw a third-party plugin's controls: an enum parameter's labels (as
|
package/bin/plugin-qualify.mjs
CHANGED
|
@@ -5,32 +5,36 @@
|
|
|
5
5
|
* `plugin-qualify` — the entry point. Every decision is a
|
|
6
6
|
* pure function in `src/qualify-cli.ts`; this file only reads argv, prints and exits.
|
|
7
7
|
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* (`tools/lv2-measure.mjs`) for a named subset and the mod-host hosting sweep from this entry
|
|
14
|
-
* point. Until then a run that would measure an LV2 refuses and says which step is missing.
|
|
8
|
+
* Every named plugin, CLAP or LV2, is measured by plugin-hostd's probe runner (`plugin-hostd-probe`,
|
|
9
|
+
* named by `OMX_PROBE_RUNNER` when it is not on `PATH`), which keeps the deadline and the limits, and is
|
|
10
|
+
* judged from the probe output it writes: the verdict and the qualification record, per host profile.
|
|
11
|
+
* `--all` finds the CLAP plugins on the standard CLAP search path (`CLAP_PATH`, then `~/.clap`, then
|
|
12
|
+
* `/usr/lib/clap`). `plugin-qualify judge` judges probe outputs already written.
|
|
15
13
|
*/
|
|
16
|
-
import { closeSync, fsyncSync, mkdirSync, openSync,
|
|
17
|
-
import { dirname
|
|
14
|
+
import { closeSync, fsyncSync, mkdirSync, openSync, readFileSync, renameSync, writeSync } from "node:fs";
|
|
15
|
+
import { dirname } from "node:path";
|
|
18
16
|
|
|
19
17
|
import {
|
|
20
18
|
ClapScanError,
|
|
21
19
|
EXIT_CODE,
|
|
22
20
|
clapLoader,
|
|
23
21
|
clapPinEntries,
|
|
22
|
+
defaultQualificationDir,
|
|
23
|
+
judgeExitCode,
|
|
24
|
+
judgeFiles,
|
|
25
|
+
judgeHelpText,
|
|
26
|
+
parseJudgeArgs,
|
|
24
27
|
discoverAllTargets,
|
|
25
28
|
exitCodeFor,
|
|
26
29
|
helpText,
|
|
27
30
|
lv2Loader,
|
|
28
31
|
parseQualifyArgs,
|
|
29
32
|
pinsFile,
|
|
30
|
-
|
|
33
|
+
qualificationRecordOf,
|
|
34
|
+
qualifyTargets,
|
|
31
35
|
resolveHostProfiles,
|
|
32
36
|
resolveTargets,
|
|
33
|
-
|
|
37
|
+
writeQualification,
|
|
34
38
|
textTable,
|
|
35
39
|
} from "../dist/index.js";
|
|
36
40
|
|
|
@@ -58,6 +62,33 @@ function writePins(path, file) {
|
|
|
58
62
|
process.stderr.write(`plugin-qualify: ${file.written.length} pin${file.written.length === 1 ? "" : "s"} written to ${path}\n`);
|
|
59
63
|
}
|
|
60
64
|
|
|
65
|
+
if (process.argv[2] === "judge") {
|
|
66
|
+
const j = parseJudgeArgs(process.argv.slice(3));
|
|
67
|
+
if (!j.ok) {
|
|
68
|
+
process.stderr.write(`plugin-qualify judge: ${j.error}\n\n${judgeHelpText()}`);
|
|
69
|
+
process.exit(EXIT_CODE.couldNotMeasure);
|
|
70
|
+
}
|
|
71
|
+
if (j.args.help) {
|
|
72
|
+
process.stdout.write(judgeHelpText());
|
|
73
|
+
process.exit(EXIT_CODE.allQualified);
|
|
74
|
+
}
|
|
75
|
+
const hosts = resolveHostProfiles(j.args.hostProfiles);
|
|
76
|
+
if (!hosts.ok) {
|
|
77
|
+
for (const r of hosts.refused) process.stderr.write(`plugin-qualify judge: --host-profile ${r.spec}: ${r.problem}\n`);
|
|
78
|
+
process.exit(EXIT_CODE.couldNotMeasure);
|
|
79
|
+
}
|
|
80
|
+
const dir = j.args.qualificationDir ?? defaultQualificationDir(process.env);
|
|
81
|
+
const result = judgeFiles(j.args.files, { profiles: hosts.profiles, dir });
|
|
82
|
+
for (const f of result.failures) process.stderr.write(`plugin-qualify judge: ${f.file}: ${f.problem}\n`);
|
|
83
|
+
for (const r of result.records) process.stderr.write(`plugin-qualify judge: record ${r.recordPath}\n`);
|
|
84
|
+
process.stdout.write(
|
|
85
|
+
j.args.format === "json"
|
|
86
|
+
? `${JSON.stringify(result.records.map((r) => JSON.parse(readFileSync(r.recordPath, "utf8"))), null, 2)}\n`
|
|
87
|
+
: textTable(result.verdicts),
|
|
88
|
+
);
|
|
89
|
+
process.exit(judgeExitCode(result));
|
|
90
|
+
}
|
|
91
|
+
|
|
61
92
|
const parsed = parseQualifyArgs(process.argv.slice(2));
|
|
62
93
|
if (!parsed.ok) {
|
|
63
94
|
process.stderr.write(`plugin-qualify: ${parsed.error}\n\n${helpText()}`);
|
|
@@ -90,23 +121,25 @@ try {
|
|
|
90
121
|
process.exit(EXIT_CODE.couldNotMeasure);
|
|
91
122
|
}
|
|
92
123
|
for (const p of plugins) process.stderr.write(`plugin-qualify: target ${p.uri}${p.bundle ? ` (${p.bundle})` : ""}\n`);
|
|
93
|
-
if (plugins.length
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
124
|
+
if (plugins.length === 0) {
|
|
125
|
+
process.stderr.write("plugin-qualify: no plugin to measure\n");
|
|
126
|
+
process.exit(EXIT_CODE.couldNotMeasure);
|
|
127
|
+
}
|
|
128
|
+
if (parsed.args.all) {
|
|
129
|
+
process.stderr.write("plugin-qualify: --all qualified the CLAP plugins on the search path (no LV2 bundle is on the LV2 path)\n");
|
|
130
|
+
}
|
|
131
|
+
const pass = qualifyTargets(plugins, { rates: parsed.args.rates, profiles: profiles.profiles });
|
|
132
|
+
for (const f of pass.failures) process.stderr.write(`plugin-qualify: ${f.uri}: ${f.problem}\n`);
|
|
133
|
+
if (parsed.args.out !== undefined) {
|
|
134
|
+
for (const run of pass.runs) {
|
|
135
|
+
const w = writeQualification(parsed.args.out, run.bytes, run.judgment);
|
|
136
|
+
process.stderr.write(`plugin-qualify: record ${w.recordPath}\n`);
|
|
102
137
|
}
|
|
103
|
-
if (parsed.args.pins !== undefined) writePins(parsed.args.pins, pinsFile(clapPinEntries(pass.documents, profiles.profiles[0].id)));
|
|
104
|
-
process.stdout.write(parsed.args.format === "json" ? `${JSON.stringify(pass.documents, null, 2)}\n` : textTable(pass.verdicts));
|
|
105
|
-
process.exit(exitCodeFor(pass.verdicts));
|
|
106
138
|
}
|
|
107
|
-
if (parsed.args.pins !== undefined)
|
|
108
|
-
process.
|
|
109
|
-
|
|
110
|
-
|
|
139
|
+
if (parsed.args.pins !== undefined) writePins(parsed.args.pins, pinsFile(clapPinEntries(pass.documents, profiles.profiles[0].id)));
|
|
140
|
+
process.stdout.write(
|
|
141
|
+
parsed.args.format === "json"
|
|
142
|
+
? `${JSON.stringify(pass.runs.map((r) => qualificationRecordOf(r.bytes, r.judgment)), null, 2)}\n`
|
|
143
|
+
: textTable(pass.verdicts),
|
|
111
144
|
);
|
|
112
|
-
process.exit(
|
|
145
|
+
process.exit(exitCodeFor(pass.verdicts));
|
package/dist/clap-loader.d.ts
CHANGED
|
@@ -146,7 +146,7 @@ export interface ClapLoaderOptions {
|
|
|
146
146
|
export declare function clapLoader(options?: ClapLoaderOptions): PluginLoader;
|
|
147
147
|
/**
|
|
148
148
|
* The directories `--all` walks, in order and once each: every non-empty entry of `CLAP_PATH`, then
|
|
149
|
-
* `~/.clap`, then `/usr/lib/clap
|
|
149
|
+
* `~/.clap`, then `/usr/lib/clap` (or the directory `OMX_CLAP_SYSTEM_DIR` names).
|
|
150
150
|
*/
|
|
151
151
|
export declare function clapSearchPath(env: Readonly<Record<string, string | undefined>>, home: string): string[];
|
|
152
152
|
export interface ClapDiscoverOptions extends ClapLoaderOptions {
|
package/dist/clap-loader.js
CHANGED
|
@@ -17,7 +17,7 @@ import { existsSync, readdirSync, statSync } from "node:fs";
|
|
|
17
17
|
import { homedir } from "node:os";
|
|
18
18
|
import { basename, dirname, join, resolve } from "node:path";
|
|
19
19
|
import { lv2BundlesOnPath } from "./lv2-loader.js";
|
|
20
|
-
import { CLAP_PATH_ENV, CLAP_SCAN_TIMEOUT_S, CLAP_SCAN_TOOL_DEFAULT, CLAP_SCAN_TOOL_ENV, CLAP_SYSTEM_DIR, CLAP_USER_DIR, } from "./qualify-declarations.js";
|
|
20
|
+
import { CLAP_PATH_ENV, CLAP_SCAN_TIMEOUT_S, CLAP_SCAN_TOOL_DEFAULT, CLAP_SCAN_TOOL_ENV, CLAP_SYSTEM_DIR, CLAP_SYSTEM_DIR_ENV, CLAP_USER_DIR, } from "./qualify-declarations.js";
|
|
21
21
|
/** The scanner's own name in its document — anything else is not its output. */
|
|
22
22
|
const SCANNER_NAME = "omx-clap-scan";
|
|
23
23
|
/** The same document from plugin-qualify's own prober (`native/clap-qualify --json`). */
|
|
@@ -281,11 +281,11 @@ export function clapLoader(options = {}) {
|
|
|
281
281
|
// --- the standard search path (`--all`) ----------------------------------------------------------
|
|
282
282
|
/**
|
|
283
283
|
* The directories `--all` walks, in order and once each: every non-empty entry of `CLAP_PATH`, then
|
|
284
|
-
* `~/.clap`, then `/usr/lib/clap
|
|
284
|
+
* `~/.clap`, then `/usr/lib/clap` (or the directory `OMX_CLAP_SYSTEM_DIR` names).
|
|
285
285
|
*/
|
|
286
286
|
export function clapSearchPath(env, home) {
|
|
287
287
|
const named = (env[CLAP_PATH_ENV] ?? "").split(":").filter((d) => d !== "");
|
|
288
|
-
return [...new Set([...named, join(home, CLAP_USER_DIR), CLAP_SYSTEM_DIR].map((d) => resolve(d)))];
|
|
288
|
+
return [...new Set([...named, join(home, CLAP_USER_DIR), env[CLAP_SYSTEM_DIR_ENV] || CLAP_SYSTEM_DIR].map((d) => resolve(d)))];
|
|
289
289
|
}
|
|
290
290
|
/**
|
|
291
291
|
* Every CLAP plugin on the standard search path, each directory resolved through {@link clapLoader}
|
package/dist/clap-loader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clap-loader.js","sourceRoot":"","sources":["../src/clap-loader.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"clap-loader.js","sourceRoot":"","sources":["../src/clap-loader.ts"],"names":[],"mappings":"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"}
|
package/dist/clap-qualify.d.ts
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { type HostingReason, type PluginClapMeasurement, type PluginNoteSweepMeasurement, type PluginRtSafetyMeasurement } from "./hosting-suitability.js";
|
|
1
|
+
import { type HostingReason, type PluginClapMeasurement, type PluginNoteSweepMeasurement, type PluginRtSafetyMeasurement, type PluginStabilityMeasurement, type QualifiedPlugin } from "./hosting-suitability.js";
|
|
2
2
|
import { type HostProfile } from "./host-profiles.js";
|
|
3
|
-
import type { PluginTarget } from "./loader.js";
|
|
4
3
|
import type { QualifyVerdict } from "./qualify-cli.js";
|
|
5
4
|
import { type SuitabilityRating } from "./rating.js";
|
|
6
|
-
import { type IntegrityMeasurement } from "./measurement/format.js";
|
|
5
|
+
import { type IntegrityMeasurement, type VoicesHeld } from "./measurement/format.js";
|
|
7
6
|
export declare class ClapQualifyError extends Error {
|
|
8
7
|
constructor(message: string);
|
|
9
8
|
}
|
|
@@ -21,6 +20,40 @@ export interface ClapNoteSweepReading extends PluginNoteSweepMeasurement {
|
|
|
21
20
|
export interface ClapProbedFacts extends PluginClapMeasurement {
|
|
22
21
|
readonly nonFinite: boolean;
|
|
23
22
|
}
|
|
23
|
+
/** One rate's cost: the block times in nanoseconds per sample, warm-up dropped, and the notes held for an instrument. */
|
|
24
|
+
export interface ClapCostFigure {
|
|
25
|
+
readonly nsPerSampleMedian: number;
|
|
26
|
+
readonly nsPerSampleP95: number;
|
|
27
|
+
readonly nsPerSampleMin: number;
|
|
28
|
+
readonly nsPerSampleMax: number;
|
|
29
|
+
/** The median of the dropped warm-up blocks: the evidence that dropping them was warranted. */
|
|
30
|
+
readonly warmupNsPerSampleMedian: number;
|
|
31
|
+
readonly blocks: number;
|
|
32
|
+
/** For an instrument: the notes held while it was timed. Absent for an effect. */
|
|
33
|
+
readonly voices?: VoicesHeld;
|
|
34
|
+
}
|
|
35
|
+
/** One rate the cost arm did not time, and why; an instrument's declared capacity is kept when it has one. */
|
|
36
|
+
export interface ClapCostUnmeasured {
|
|
37
|
+
readonly unmeasuredReason: string;
|
|
38
|
+
readonly unmeasuredDetail: string;
|
|
39
|
+
readonly voices?: {
|
|
40
|
+
readonly capacity: number;
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
export type ClapCostAtRate = ClapCostFigure | ClapCostUnmeasured;
|
|
44
|
+
export declare function isClapCostFigure(at: ClapCostAtRate): at is ClapCostFigure;
|
|
45
|
+
/**
|
|
46
|
+
* The cost arm: every rate timed with every parameter swept, an effect fed noise and an instrument
|
|
47
|
+
* holding notes (`notes-held`), each rate's figures or the reason it has none.
|
|
48
|
+
*/
|
|
49
|
+
export interface ClapCostReading {
|
|
50
|
+
readonly stimulus: "notes-held" | "noise";
|
|
51
|
+
readonly blockFrames: number;
|
|
52
|
+
readonly warmupBlocks: number;
|
|
53
|
+
/** The percentile `nsPerSampleP95` is taken at. */
|
|
54
|
+
readonly percentile: number;
|
|
55
|
+
readonly perRate: Readonly<Record<string, ClapCostAtRate>>;
|
|
56
|
+
}
|
|
24
57
|
/** One plugin's line from `clap-qualify`. */
|
|
25
58
|
export interface ClapQualifyLine {
|
|
26
59
|
readonly uri: string;
|
|
@@ -35,12 +68,31 @@ export interface ClapQualifyLine {
|
|
|
35
68
|
readonly rtSafety: ClapRtSafetyReading;
|
|
36
69
|
/** The note sweep: the plugin played through its note input, counted apart. */
|
|
37
70
|
readonly noteSweep: ClapNoteSweepReading;
|
|
71
|
+
/** The cost arm; absent when the plugin did not initialise and activate headless. */
|
|
72
|
+
readonly cost?: ClapCostReading;
|
|
38
73
|
/**
|
|
39
74
|
* The pin (spec §11): the `.clap`'s digest by its name in its directory and the layout fingerprint
|
|
40
75
|
* the prober computed through plugin-hostd's `pin.h`, or the reason it took none.
|
|
41
76
|
*/
|
|
42
77
|
readonly integrity: IntegrityMeasurement;
|
|
43
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* The cost arm's figures as the classifier's cost gate reads them, per rate: the median and the P95
|
|
81
|
+
* per sample, and the P95 as a fraction of one core at that rate. A rate the arm did not time is absent.
|
|
82
|
+
*/
|
|
83
|
+
export declare function clapCostPerRate(cost: ClapCostReading | undefined): Record<string, {
|
|
84
|
+
coreFractionP95: number;
|
|
85
|
+
nsPerSampleMedian: number;
|
|
86
|
+
nsPerSampleP95: number;
|
|
87
|
+
voices?: VoicesHeld;
|
|
88
|
+
}>;
|
|
89
|
+
/**
|
|
90
|
+
* A prober line as the plugin the full classifier (`classifyPluginHosting`) reads: the CLAP facts, the
|
|
91
|
+
* interposer's counts with the note sweep beside them, and the cost arm's figures per rate. The prober
|
|
92
|
+
* measures no stability (that is the soak's), so the caller passes what it has; without it the verdict
|
|
93
|
+
* is `unknown` on stability, never a pass.
|
|
94
|
+
*/
|
|
95
|
+
export declare function qualifiedPluginOfClapLine(line: ClapQualifyLine, stability?: PluginStabilityMeasurement): QualifiedPlugin;
|
|
44
96
|
/** One line of the prober's stdout, or a {@link ClapQualifyError} saying how it differs. */
|
|
45
97
|
export declare function parseClapQualifyLine(text: string): ClapQualifyLine;
|
|
46
98
|
/** Every non-empty line of the prober's stdout. */
|
|
@@ -49,9 +101,11 @@ export declare function parseClapQualifyOutput(stdout: string): ClapQualifyLine[
|
|
|
49
101
|
* The document's schema name; a reader refuses any other it does not know. `/2` is `/1` with
|
|
50
102
|
* `measured.noteSweep` added and the note sweep's reasons folded into `verdict` (a plugin with no
|
|
51
103
|
* note input gets none, so its `/2` verdict is its `/1` verdict); every `/1` field is unchanged, so
|
|
52
|
-
* a `/1` reader of `verdict.rating` and `verdict.rtSafe` reads a `/2` document right.
|
|
104
|
+
* a `/1` reader of `verdict.rating` and `verdict.rtSafe` reads a `/2` document right. `/3` is `/2`
|
|
105
|
+
* with `measured.cost` added (the cost arm, an instrument's with the notes it held), which no
|
|
106
|
+
* verdict reads.
|
|
53
107
|
*/
|
|
54
|
-
export declare const RT_SAFETY_DOCUMENT_SCHEMA = "plugin-qualify.rt-safety/
|
|
108
|
+
export declare const RT_SAFETY_DOCUMENT_SCHEMA = "plugin-qualify.rt-safety/3";
|
|
55
109
|
/**
|
|
56
110
|
* The RT-safety verdict of one plugin binary for one console: keyed by the binary's SHA-256 and
|
|
57
111
|
* the host profile id, so a verdict never outlives the bytes it was measured on. `measured` is what
|
|
@@ -82,6 +136,7 @@ export interface RtSafetyDocument {
|
|
|
82
136
|
readonly clap: ClapProbedFacts;
|
|
83
137
|
readonly rtSafety: ClapRtSafetyReading;
|
|
84
138
|
readonly noteSweep: ClapNoteSweepReading;
|
|
139
|
+
readonly cost?: ClapCostReading;
|
|
85
140
|
readonly integrity: IntegrityMeasurement;
|
|
86
141
|
};
|
|
87
142
|
}
|
|
@@ -96,27 +151,6 @@ export declare function rtSafetyDocument(line: ClapQualifyLine, profile?: HostPr
|
|
|
96
151
|
export declare function rtSafetyVerdict(doc: RtSafetyDocument): QualifyVerdict;
|
|
97
152
|
/** Where a document is written in `--out`: one file per binary and console. */
|
|
98
153
|
export declare function rtSafetyDocumentName(doc: RtSafetyDocument): string;
|
|
99
|
-
/** What a run of the prober gave back; `error` is a spawn failure, `signal` a death. */
|
|
100
|
-
export interface ClapQualifyRunResult {
|
|
101
|
-
readonly status: number | null;
|
|
102
|
-
readonly signal?: string | null;
|
|
103
|
-
readonly stdout: string;
|
|
104
|
-
readonly stderr?: string;
|
|
105
|
-
readonly error?: Error;
|
|
106
|
-
}
|
|
107
|
-
export type ClapQualifyRun = (tool: string, args: readonly string[], env: Readonly<Record<string, string | undefined>>, timeoutMs: number) => ClapQualifyRunResult;
|
|
108
|
-
export interface ClapQualifyOptions {
|
|
109
|
-
/** The rates the plugin is activated and swept at. */
|
|
110
|
-
readonly rates: readonly number[];
|
|
111
|
-
/** Runs the prober; the default spawns it. */
|
|
112
|
-
readonly run?: ClapQualifyRun;
|
|
113
|
-
/** Where the two settings are read from; the default is `process.env`. */
|
|
114
|
-
readonly env?: Readonly<Record<string, string | undefined>>;
|
|
115
|
-
/** Whether a file exists; the default asks the filesystem. */
|
|
116
|
-
readonly exists?: (path: string) => boolean;
|
|
117
|
-
/** The host extensions the prober offers beyond the console's, each one of {@link OMX_CLAP_HOST_CONFIGURED_EXTENSIONS}. */
|
|
118
|
-
readonly offer?: readonly string[];
|
|
119
|
-
}
|
|
120
154
|
/**
|
|
121
155
|
* The prober and the interposer this run uses: each its setting, else both from one place, the
|
|
122
156
|
* package's own build or else the first installed directory (`NATIVE_TOOL_DIRS`) holding them
|
|
@@ -126,22 +160,6 @@ export declare function clapQualifyTools(env: Readonly<Record<string, string | u
|
|
|
126
160
|
tool: string;
|
|
127
161
|
interposer: string;
|
|
128
162
|
};
|
|
129
|
-
/**
|
|
130
|
-
* Qualify the plugins of one `.clap` (all of them, or the one `id` names) under the interposer.
|
|
131
|
-
* Absent tools, a crash, a timeout, a load failure or an unreadable line throw: none of them is a
|
|
132
|
-
* measurement.
|
|
133
|
-
*/
|
|
134
|
-
export declare function qualifyClap(binaryPath: string, id: string | undefined, options: ClapQualifyOptions): ClapQualifyLine[];
|
|
135
|
-
/** What the CLAP pass of one run produced: a document per plugin and console, and a row per verdict. */
|
|
136
|
-
export interface ClapQualifyPass {
|
|
137
|
-
readonly documents: readonly RtSafetyDocument[];
|
|
138
|
-
readonly verdicts: readonly QualifyVerdict[];
|
|
139
|
-
/** Each target that could not be measured, with why; its verdict rows read `unknown`, unmeasured. */
|
|
140
|
-
readonly failures: readonly {
|
|
141
|
-
readonly uri: string;
|
|
142
|
-
readonly problem: string;
|
|
143
|
-
}[];
|
|
144
|
-
}
|
|
145
163
|
/**
|
|
146
164
|
* What the prober must offer beyond the console's extensions to measure for `profile`: the extra
|
|
147
165
|
* extensions of its list, when the prober can offer each and the list holds the console's; `undefined`
|
|
@@ -149,12 +167,3 @@ export interface ClapQualifyPass {
|
|
|
149
167
|
* is judged from the console's run and reads `unknown` there.
|
|
150
168
|
*/
|
|
151
169
|
export declare function proberOffer(profile: HostProfile): readonly string[] | undefined;
|
|
152
|
-
/**
|
|
153
|
-
* Qualify every CLAP target, one prober run per target and set of offered extensions (a crash takes
|
|
154
|
-
* only that plugin), and judge each line under every host profile, from the run that offered that
|
|
155
|
-
* profile's extensions. A target without a binary path (a bare `urn:clap:` id) has nothing to load
|
|
156
|
-
* and is a failure, never a pass.
|
|
157
|
-
*/
|
|
158
|
-
export declare function qualifyClapTargets(targets: readonly PluginTarget[], options: ClapQualifyOptions & {
|
|
159
|
-
readonly profiles?: readonly HostProfile[];
|
|
160
|
-
}): ClapQualifyPass;
|