@openmixer/plugin-qualify 0.19.1 → 0.20.1

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.
Files changed (55) hide show
  1. package/bin/plugin-qualify-records-package.mjs +9 -7
  2. package/bin/plugin-qualify.mjs +36 -1
  3. package/dist/distributed-records.d.ts +16 -3
  4. package/dist/distributed-records.js +38 -4
  5. package/dist/distributed-records.js.map +1 -1
  6. package/dist/index.d.ts +2 -0
  7. package/dist/index.js +2 -0
  8. package/dist/index.js.map +1 -1
  9. package/dist/judged-layer.d.ts +91 -0
  10. package/dist/judged-layer.js +144 -0
  11. package/dist/judged-layer.js.map +1 -0
  12. package/dist/judgement-line.d.ts +6 -0
  13. package/dist/judgement-line.js +20 -0
  14. package/dist/judgement-line.js.map +1 -0
  15. package/dist/measurement/cli.d.ts +2 -0
  16. package/dist/measurement/cli.js +25 -2
  17. package/dist/measurement/cli.js.map +1 -1
  18. package/dist/measurement/format.d.ts +2 -0
  19. package/dist/measurement/format.js +5 -0
  20. package/dist/measurement/format.js.map +1 -1
  21. package/dist/probe-merge.js +6 -0
  22. package/dist/probe-merge.js.map +1 -1
  23. package/dist/probe-runner.d.ts +4 -0
  24. package/dist/probe-runner.js +12 -3
  25. package/dist/probe-runner.js.map +1 -1
  26. package/dist/qualification-record.d.ts +15 -1
  27. package/dist/qualification-record.js +27 -5
  28. package/dist/qualification-record.js.map +1 -1
  29. package/dist/qualify-isolated.d.ts +5 -3
  30. package/dist/qualify-isolated.js +6 -4
  31. package/dist/qualify-isolated.js.map +1 -1
  32. package/dist/qualify-sync.d.ts +8 -3
  33. package/dist/qualify-sync.js +25 -15
  34. package/dist/qualify-sync.js.map +1 -1
  35. package/dist/records-package.d.ts +31 -4
  36. package/dist/records-package.js +149 -24
  37. package/dist/records-package.js.map +1 -1
  38. package/fixtures/records-rpi5-0.19.1/http___drumkv1.sourceforge.net_lv2@0.2-7d179bdcf9e5.default.probe.json +58 -0
  39. package/fixtures/records-rpi5-0.19.1/http___drumkv1.sourceforge.net_lv2@0.2-7d179bdcf9e5.default.qualification.json +305 -0
  40. package/fixtures/records-rpi5-0.19.1/http___samplv1.sourceforge.net_lv2@0.2-c9cd8fb3102f.default.probe.json +58 -0
  41. package/fixtures/records-rpi5-0.19.1/http___samplv1.sourceforge.net_lv2@0.2-c9cd8fb3102f.default.qualification.json +301 -0
  42. package/package.json +2 -2
  43. package/src/distributed-records.ts +41 -4
  44. package/src/index.ts +2 -0
  45. package/src/judged-layer.ts +197 -0
  46. package/src/judgement-line.ts +22 -0
  47. package/src/measurement/cli.ts +26 -2
  48. package/src/measurement/format.ts +8 -0
  49. package/src/probe-merge.ts +4 -0
  50. package/src/probe-runner.ts +16 -6
  51. package/src/qualification-record.ts +40 -6
  52. package/src/qualify-isolated.ts +6 -4
  53. package/src/qualify-sync.ts +27 -15
  54. package/src/records-package.ts +156 -25
  55. package/tools/lv2-measure.mjs +21 -2
@@ -1,10 +1,11 @@
1
1
  import { firstInstanceKb, perInstanceKb } from "./memory-budget.js";
2
2
  import { mkdirSync, readFileSync } from "node:fs";
3
3
  import { join } from "node:path";
4
- import { sha256Hex, PROBE_OK } from "./probe-output.js";
4
+ import { sha256Hex, PROBE_NOT_ATTEMPTED, PROBE_OK } from "./probe-output.js";
5
5
  import { writeFileWhole } from "./whole-file.js";
6
6
  import { HOSTING_CODE } from "./hosting-codes.js";
7
7
  import { MEASUREMENT_UNMEASURED_REASONS } from "@openmixer/omx-contract";
8
+ import { judgementRules, latencyMsOf, LATENCY_LINE_MS } from "./judgement-line.js";
8
9
  export const QUALIFICATION_RECORD_SCHEMA = "plugin-qualify.qualification-record/1";
9
10
  /**
10
11
  * The profile each format's isolated tier is judged under: omx-clap-host for both, an LV2 plugin through plugin-hostd's
@@ -63,12 +64,19 @@ export function memoryOfCell(p) {
63
64
  const per = p.memory.unmeasuredReason === undefined ? perInstanceKb(p.memory) : undefined;
64
65
  return { memory: { ...p.memory, ...(first === undefined ? {} : { firstInstanceKb: first }), ...(per === undefined ? {} : { perInstanceKb: per }) } };
65
66
  }
67
+ /** A grid point as the record writes it: its footprint, its latency or why there is none, and the latency in milliseconds. */
68
+ export function gridPointOf(output, p) {
69
+ const latency = latencyOfCell(output, p);
70
+ const frames = latency.measuredFrames;
71
+ return { ...p, ...memoryOfCell(p), latency, ...(frames === undefined ? {} : { latencyMs: latencyMsOf(frames, p.rate) }) };
72
+ }
66
73
  /** The unmeasured word of a cell whose run did not end well, by its outcome code. */
67
74
  const OUTCOME_WORD = {
68
75
  "probe.crashed": word("probeCrashed"),
69
76
  "probe.timeout": word("probeTimeout"),
70
77
  "probe.refused-instantiation": word("refusedInstantiation"),
71
78
  "probe.non-finite-output": word("nonFiniteOutput"),
79
+ [PROBE_NOT_ATTEMPTED]: word("notAttempted"),
72
80
  };
73
81
  /**
74
82
  * Why a cell has no latency figure. A cell whose run failed: its outcome's word. A latency step at the cell that did not
@@ -113,6 +121,8 @@ export function qualificationBaseName(output) {
113
121
  }
114
122
  export const recordFileName = (output) => `${qualificationBaseName(output)}.qualification.json`;
115
123
  export const probeCopyFileName = (output) => `${qualificationBaseName(output)}.probe.json`;
124
+ /** A child's stderr beside the record, named by the first 12 of the SHA-256 the probe copy's `logs` cites it by. */
125
+ export const stderrCopyFileName = (output, sha256) => `${qualificationBaseName(output)}.stderr.${sha256.slice(0, 12)}.log`;
116
126
  function tierOf(judgment, host) {
117
127
  const v = judgment.hosts.find((h) => h.verdict.host === host)?.verdict;
118
128
  if (v === undefined)
@@ -160,13 +170,15 @@ export function buildQualificationRecord(judgment, copy, notMeasured = []) {
160
170
  tiers: tiersOf(judgment),
161
171
  cost: judgment.hosts.map((h) => ({ host: h.verdict.host, ...h.cost })),
162
172
  measurements: {
163
- grid: o.grid.map((p) => ({ ...p, ...memoryOfCell(p), latency: latencyOfCell(o, p) })),
173
+ grid: o.grid.map((p) => gridPointOf(o, p)),
164
174
  ...(o.behaviour === undefined ? {} : { behaviour: o.behaviour }),
165
175
  ...(unmeasuredFigures(o).length === 0 ? {} : { unmeasured: unmeasuredFigures(o) }),
166
176
  },
167
177
  ...(notMeasured.length === 0 ? {} : { notMeasured }),
168
178
  tool: o.run.tools,
169
179
  measuredAt: o.run.startedAt,
180
+ latencyLineMs: LATENCY_LINE_MS,
181
+ rules: judgementRules(),
170
182
  probe: {
171
183
  file: copy.file,
172
184
  sha256: copy.sha256,
@@ -195,30 +207,40 @@ export function rewriteRecord(path, record) {
195
207
  * record names the SHA-256 of the copy as it is on disk, read back, so a record never names bytes that
196
208
  * are not there. A rescan of the same binary and offer replaces both.
197
209
  */
198
- export function writeQualification(dir, probeBytes, judgment, notMeasured = []) {
210
+ export function writeQualification(dir, probeBytes, judgment, notMeasured = [], stderr = []) {
199
211
  mkdirSync(dir, { recursive: true });
212
+ // the children's own words first, as the probe copy cites them: a crash's reason is kept, not only its size
213
+ const stderrPaths = stderr
214
+ .filter((s) => s.length > 0)
215
+ .map((s) => {
216
+ const path = join(dir, stderrCopyFileName(judgment.output, sha256Hex(s)));
217
+ writeFileWhole(path, s);
218
+ return path;
219
+ });
200
220
  const probePath = join(dir, probeCopyFileName(judgment.output));
201
221
  writeFileWhole(probePath, probeBytes);
202
222
  const copy = readFileSync(probePath);
203
223
  const record = buildQualificationRecord(judgment, { file: probeCopyFileName(judgment.output), sha256: sha256Hex(copy), bytes: copy.length }, notMeasured);
204
224
  const recordPath = join(dir, recordFileName(judgment.output));
205
225
  writeFileWhole(recordPath, `${JSON.stringify(record, null, 2)}\n`);
206
- return { recordPath, probePath, record };
226
+ return { recordPath, probePath, record, stderrPaths };
207
227
  }
208
228
  /**
209
229
  * Runs that name the same binary and offer share one record file (a CLAP judged with and without the extra extensions
210
230
  * offered): their verdicts become one record over the first run's probe output, so the second is never written over the first.
211
231
  */
212
232
  export function mergeRunsByRecord(runs) {
233
+ // the stderr kept is the first run's, as its probe output is the copy that cites it
213
234
  const byName = new Map();
214
235
  for (const r of runs) {
215
236
  const name = qualificationBaseName(r.judgment.output);
216
237
  const first = byName.get(name);
217
238
  byName.set(name, first === undefined
218
- ? r
239
+ ? { bytes: r.bytes, judgment: r.judgment, stderr: r.stderr ?? [] }
219
240
  : {
220
241
  bytes: first.bytes,
221
242
  judgment: { ...first.judgment, hosts: [...first.judgment.hosts, ...r.judgment.hosts], documents: [...first.judgment.documents, ...r.judgment.documents] },
243
+ stderr: first.stderr,
222
244
  });
223
245
  }
224
246
  return [...byName.values()];
@@ -1 +1 @@
1
- {"version":3,"file":"qualification-record.js","sourceRoot":"","sources":["../src/qualification-record.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qualification-record.js","sourceRoot":"","sources":["../src/qualification-record.ts"],"names":[],"mappings":"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"}
@@ -48,11 +48,13 @@ export type IsolatedRunner = (uri: string, cell: GridCell, env: Readonly<Record<
48
48
  export declare function judgeIsolatedRun(run: IsolatedRunFacts): RunStep;
49
49
  /**
50
50
  * A verdict whose only gap is memory nobody measured: it reads `unknown` and every reason that is not `suitable` is
51
- * `hosting.memory.unmeasured`. Nothing says the plugin is unfit, so it is hosted in a worker of its own until its
52
- * footprint is measured, and the isolated step is what shows it running alone.
51
+ * `hosting.memory.unmeasured`, or a `conditional` one the isolated step answers (an RT violation seen in the run). Nothing
52
+ * says the plugin is unfit, so it is hosted in a worker of its own until its footprint is measured, and the isolated step
53
+ * is what shows it running alone. A conditional reason beside the memory gap owes the step as a conditional verdict does:
54
+ * whether one run saw a violation and another did not must not decide whether the step is run (#319).
53
55
  */
54
56
  export declare function memoryGapOnly(v: Pick<RecordVerdict, "measured" | "rating" | "reasons">): boolean;
55
- /** Whether a record's outcome calls for the isolated step: rated `conditional` by some host, a memory gap and nothing else, or a probe that crashed or hung. */
57
+ /** Whether a record's outcome calls for the isolated step: rated `conditional` by some host, a memory gap and nothing else unanswered, or a probe that crashed or hung. */
56
58
  export declare function owesIsolated(record: QualificationRecord): boolean;
57
59
  /**
58
60
  * The pin a record can give back to a plugin whose state lost it: the bytes the probe pinned, and the word of a decided
@@ -77,16 +77,18 @@ function figuresOf(run) {
77
77
  }
78
78
  /**
79
79
  * A verdict whose only gap is memory nobody measured: it reads `unknown` and every reason that is not `suitable` is
80
- * `hosting.memory.unmeasured`. Nothing says the plugin is unfit, so it is hosted in a worker of its own until its
81
- * footprint is measured, and the isolated step is what shows it running alone.
80
+ * `hosting.memory.unmeasured`, or a `conditional` one the isolated step answers (an RT violation seen in the run). Nothing
81
+ * says the plugin is unfit, so it is hosted in a worker of its own until its footprint is measured, and the isolated step
82
+ * is what shows it running alone. A conditional reason beside the memory gap owes the step as a conditional verdict does:
83
+ * whether one run saw a violation and another did not must not decide whether the step is run (#319).
82
84
  */
83
85
  export function memoryGapOnly(v) {
84
86
  if (!v.measured || v.rating !== "unknown")
85
87
  return false;
86
88
  const open = v.reasons.filter((r) => r.rating !== "suitable");
87
- return open.length > 0 && open.every((r) => r.code === HOSTING_CODE.memoryUnmeasured);
89
+ return open.some((r) => r.code === HOSTING_CODE.memoryUnmeasured) && open.every((r) => r.code === HOSTING_CODE.memoryUnmeasured || r.rating === "conditional");
88
90
  }
89
- /** Whether a record's outcome calls for the isolated step: rated `conditional` by some host, a memory gap and nothing else, or a probe that crashed or hung. */
91
+ /** Whether a record's outcome calls for the isolated step: rated `conditional` by some host, a memory gap and nothing else unanswered, or a probe that crashed or hung. */
90
92
  export function owesIsolated(record) {
91
93
  return PROBE_FAILED_HARD.has(record.probe.outcome) || record.verdicts.some((v) => v.measured && (v.rating === "conditional" || memoryGapOnly(v)));
92
94
  }
@@ -1 +1 @@
1
- {"version":3,"file":"qualify-isolated.js","sourceRoot":"","sources":["../src/qualify-isolated.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qualify-isolated.js","sourceRoot":"","sources":["../src/qualify-isolated.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,sDAAsD;AACtD;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAoB,MAAM,2BAA2B,CAAC;AAEnG,OAAO,EAAE,UAAU,EAAiB,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAChG,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,kDAAkD;AAClD,MAAM,CAAC,MAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAW,CAAC;AAErI,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAW,CAAC;AAExG,8DAA8D;AAC9D,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,OAAO,EAAE,kBAAkB;IAC3B,QAAQ,EAAE,oBAAoB;IAC9B,QAAQ,EAAE,oBAAoB;IAC9B,QAAQ,EAAE,oBAAoB;IAC9B,SAAS,EAAE,4BAA4B;IACvC,MAAM,EAAE,wBAAwB;IAChC,QAAQ,EAAE,4BAA4B;IACtC,MAAM,EAAE,kBAAkB;CAClB,CAAC;AAEX,kHAAkH;AAClH,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC;AAsBtE,sEAAsE;AACtE,MAAM,UAAU,gBAAgB,CAAC,GAAqB;IACpD,MAAM,IAAI,GAAG,CAAC,MAAc,EAAE,IAAa,EAAE,MAAe,EAAW,EAAE,CAAC,CAAC;QACzE,IAAI,EAAE,QAAQ,CAAC,QAAQ;QACvB,MAAM;QACN,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QACvC,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,GAAG,CAAE,EAAE,CAAC;KACtE,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IACzF,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAClG,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IACjG,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IACzF,IAAI,GAAG,CAAC,OAAO,KAAK,CAAC,IAAI,GAAG,CAAC,iBAAiB,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IACnH,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IACvF,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,GAAG,CAAC,gBAAgB,CAAC;QACpC,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,0DAA0D,CAAC,CAAC,CAAC,iBAAiB,MAAM,CAAC,MAAM,CAAC,cAAc,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,iCAAiC,CAAC,CAAC;IACnR,CAAC;IACD,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,SAAS,CAAC,GAAqB;IACtC,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,GAAG,CAAC,gBAAgB,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACvJ,OAAO;QACL,GAAG,CAAC,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,GAAG,CAAC,aAAa,EAAE,CAAC;QAChF,GAAG,CAAC,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC;QACvE,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;QACxD,GAAG,CAAC,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,EAAE,CAAC;KAC1F,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,CAAyD;IACrF,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACxD,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC;IAC9D,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,gBAAgB,IAAI,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC;AACjK,CAAC;AAED,2KAA2K;AAC3K,MAAM,UAAU,YAAY,CAAC,MAA2B;IACtD,OAAO,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,MAA2B;IACvD,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACzE,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,eAAe,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IACnF,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC;IACxC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxF,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3F,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;IAClH,OAAO,YAAY,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;AAC3E,CAAC;AAED,oGAAoG;AACpG,MAAM,UAAU,WAAW,CAAC,MAA2B;IACrD,OAAO,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,eAAe,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;AACvH,CAAC;AAED,8CAA8C;AAC9C,MAAM,UAAU,cAAc,CAAC,MAA2B;IACxD,OAAO;QACL,QAAQ,CAAC,IAAI;QACb,QAAQ,CAAC,QAAQ;QACjB,QAAQ,CAAC,KAAK;QACd,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACrD,CAAC;AACJ,CAAC;AAED,oIAAoI;AACpI,MAAM,UAAU,YAAY,CAAC,MAA2B;IACtD,IAAI,MAAM,CAAC,GAAG,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACxC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACzD,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,SAAS,CAAC,MAA2B,EAAE,eAAwB;IAC7E,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC;IAChF,OAAO;QACL,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;QACrC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE;QAClJ,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE;QACtD,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ;YACnC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;YACjJ,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,qGAAqG;AACrG,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAChC,MAAM,sBAAsB,GAAG,KAAK,CAAC;AAErC,6GAA6G;AAC7G,MAAM,UAAU,qBAAqB,CAAC,OAAoB,gBAAgB;IACxE,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;QACxB,MAAM,MAAM,GAAG,gBAAgB,CAAC,yBAAyB,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC;QACjF,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,EAAE,EAAE,CAAC;QAChG,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,aAAa,CAAC,QAAQ,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAC1I,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,mBAAmB,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAC,EAAE;gBAC9G,QAAQ,EAAE,MAAM;gBAChB,OAAO,EAAE,kBAAkB,GAAG,sBAAsB;gBACpD,UAAU,EAAE,SAAS;gBACrB,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,mBAAmB,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,wBAAwB,CAAC,EAAE,MAAM,EAAE;aACtF,CAAC,CAAC;YACH,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC,KAAK,EAAE,OAAO,IAAI,QAAQ,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC;YAChL,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAqB,CAAC;QAClD,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,oHAAoH;AACpH,MAAM,UAAU,YAAY,CAAC,MAA2B,EAAE,IAAY;IACpE,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACtE,OAAO,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC;AAC5F,CAAC;AAED,4HAA4H;AAC5H,MAAM,UAAU,YAAY,CAAC,GAAyB,EAAE,IAAa;IACnE,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;IACvC,IAAI,IAAI,CAAC,MAAM,KAAK,eAAe,CAAC,QAAQ;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IACtF,IAAI,IAAI,CAAC,MAAM,KAAK,eAAe,CAAC,OAAO;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IACpF,OAAO,IAAI,CAAC;AACd,CAAC;AAED,sGAAsG;AACtG,MAAM,UAAU,OAAO,CAAC,MAA2B,EAAE,GAAW;IAC9D,IAAI,MAAM,CAAC,GAAG,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;IACnD,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC;IACxE,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAC3F,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY,EAAE,MAA2B,EAAE,GAAW,EAAE,IAAc,EAAE,MAAsB,EAAE,GAAiD;IAChL,MAAM,MAAM,GAAG,CAAC,CAAU,EAAW,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,QAAQ,CAAC;IACrE,uHAAuH;IACvH,4HAA4H;IAC5H,MAAM,OAAO,GAAG,CAAC,CAAU,EAAW,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,eAAe,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,MAAM,IAAI,CAAC,CAAC,OAAO,EAAE,gBAAgB,KAAK,SAAS,CAAC,CAAC;IAChK,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAC/G,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC7C,IAAI,EAAE,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACvC,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;IACtD,MAAM,GAAG,GAAa,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;IACnH,MAAM,IAAI,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,CAAC;IAChC,cAAc,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC3D,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAChC,CAAC"}
@@ -3,7 +3,7 @@ import { type PinEntry } from "./pins-file.js";
3
3
  import { type PoolRunner } from "./qualify-pool.js";
4
4
  import { type PinFilesRun } from "./hostd-pin-files.js";
5
5
  import { type ProbeRun } from "./probe-runner.js";
6
- import { type GridSpec } from "./measurement-grid.js";
6
+ import { type GridCell, type GridSpec } from "./measurement-grid.js";
7
7
  import { type AdapterPassOptions } from "./qualify-adapter-pass.js";
8
8
  import { type IsolatedRunner } from "./qualify-isolated.js";
9
9
  import { type MemoryBound } from "./memory-bound.js";
@@ -87,7 +87,7 @@ export declare function parseSyncArgs(argv: readonly string[]): {
87
87
  };
88
88
  export declare function syncHelpText(): string;
89
89
  /** The settings of a run: a flag over the settings file over the default. */
90
- export declare function resolveSyncSettings(file: ReadonlyMap<string, string>, args: SyncArgs, env: Readonly<Record<string, string | undefined>>, home?: string, boardModel?: () => string | undefined): {
90
+ export declare function resolveSyncSettings(file: ReadonlyMap<string, string>, args: SyncArgs, env: Readonly<Record<string, string | undefined>>, home?: string, boardModel?: () => string | undefined, machineArch?: () => string | undefined): {
91
91
  ok: true;
92
92
  settings: SyncSettings;
93
93
  } | {
@@ -267,13 +267,18 @@ export declare function poolPass(ctx: SyncContext, state: SyncState): {
267
267
  readonly notAsked: number;
268
268
  readonly notRun: number;
269
269
  };
270
+ /**
271
+ * The cells a sync runs at, which a distributed set must hold to apply (#317): the grid's own cells when it names them
272
+ * (`grid 48000/512`), else the cells the host profile judges cost and memory at.
273
+ */
274
+ export declare function syncCells(settings: Pick<SyncSettings, "grid" | "hostProfile">): GridCell[];
270
275
  /** The pin file's text: every whole pin of the state, the worse verdict kept for a uri pinned twice. */
271
276
  export declare function syncPinsText(state: SyncState): string;
272
277
  /** The pin lines of `after` that `before` does not hold as they are. */
273
278
  export declare function changedPinLines(before: string, after: string): string[];
274
279
  /** The uris `before` pins that `after` no longer does: the plugins that went away. */
275
280
  export declare function removedPinUris(before: string, after: string): string[];
276
- /** `<id>@<version>-<binary sha first 12>`, the stem a qualification record, its probe copy and its descriptor share. */
281
+ /** `<id>@<version>-<binary sha first 12>`, the stem a qualification record, its probe copy, its children's stderr and its descriptor share. */
277
282
  export declare function recordStem(recordPath: string): string | undefined;
278
283
  /**
279
284
  * What a plugin the sync no longer finds, or finds as other bytes, leaves behind: its qualification record, the probe
@@ -23,7 +23,7 @@ import { createConnection } from "node:net";
23
23
  import { homedir, tmpdir } from "node:os";
24
24
  import { basename, dirname, join, resolve, sep } from "node:path";
25
25
  import { clapQualifyTools } from "./clap-qualify.js";
26
- import { DISTRIBUTED_DIR_SYSTEM, EMPTY_LAYER, applyDistributed, distributedUri, hostClassOfBoard, outcomeOfVerdict, matchDistributed, readBoardModel, readDistributedLayer } from "./distributed-records.js";
26
+ import { DISTRIBUTED_DIR_SYSTEM, EMPTY_LAYER, applyDistributed, distributedUri, hostClassOfBoard, hostClassOfMachine, outcomeOfVerdict, matchDistributed, readBoardModel, readMachine, readDistributedLayer } from "./distributed-records.js";
27
27
  import { clapSearchPath, parseClapScan } from "./clap-loader.js";
28
28
  import { HOSTING_CODE } from "./hosting-codes.js";
29
29
  import { shippedHostProfile } from "./host-profiles.js";
@@ -32,7 +32,7 @@ import { judgmentPinEntries, pinClearLine, pinLineUri, pinsFile } from "./pins-f
32
32
  import { POOL_RESULT, completePool, judgePoolRun, pinAfterPool, pinFromRecordWithPool, poolEnv, spawnedPoolRunner } from "./qualify-pool.js";
33
33
  import { hostdPinFiles } from "./hostd-pin-files.js";
34
34
  import { qualifyTargets } from "./probe-runner.js";
35
- import { GRID_FULL, parseGridSpec } from "./measurement-grid.js";
35
+ import { GRID_FULL, hostCells, parseGridSpec } from "./measurement-grid.js";
36
36
  import { adapterPass } from "./qualify-adapter-pass.js";
37
37
  import { ISOLATED_RESULT, baseSteps, completeIsolated, isolatedCell, missingSteps, judgeIsolatedRun, owesIsolated, pinAfterStep, spawnedIsolatedRunner } from "./qualify-isolated.js";
38
38
  import { lv2World, rejudgeRecord, rejudgeState, rejudgeToolName, memoryPass } from "./qualify-rejudge.js";
@@ -174,7 +174,7 @@ export function syncHelpText() {
174
174
  }
175
175
  const dirList = (text) => text.split(":").filter((d) => d !== "");
176
176
  /** The settings of a run: a flag over the settings file over the default. */
177
- export function resolveSyncSettings(file, args, env, home = homedir(), boardModel = readBoardModel) {
177
+ export function resolveSyncSettings(file, args, env, home = homedir(), boardModel = readBoardModel, machineArch = readMachine) {
178
178
  const get = (key) => args.values.get(key) ?? file.get(key);
179
179
  const state = env["XDG_STATE_HOME"] !== undefined && env["XDG_STATE_HOME"] !== "" ? env["XDG_STATE_HOME"] : join(home, ".local", "state");
180
180
  const place = (key, system, user) => {
@@ -230,7 +230,7 @@ export function resolveSyncSettings(file, args, env, home = homedir(), boardMode
230
230
  ? [DISTRIBUTED_DIR_SYSTEM]
231
231
  : [dataHome, ...dataDirs].map((d) => join(d, "omx", "qualification"));
232
232
  const classNamed = get("host_class");
233
- const hostClass = classNamed !== undefined && classNamed !== "" ? classNamed : hostClassOfBoard(boardModel());
233
+ const hostClass = classNamed !== undefined && classNamed !== "" ? classNamed : hostClassOfBoard(boardModel()) ?? hostClassOfMachine(machineArch());
234
234
  if (hostClass !== undefined && !/^[A-Za-z0-9][A-Za-z0-9._+-]*$/.test(hostClass))
235
235
  return { ok: false, error: `host_class ${hostClass} is not a directory name` };
236
236
  return {
@@ -569,8 +569,10 @@ export function refreshPins(ctx, state) {
569
569
  if (pin === undefined || pin.integrity.files === undefined)
570
570
  return plugin;
571
571
  const r = hostdPinFiles(pin.uri, ctx.settings.lv2Dirs, ctx.env, ...(ctx.pinFilesRun === undefined ? [] : [ctx.pinFilesRun]));
572
- if (!r.ok)
572
+ if (!r.ok) {
573
+ ctx.log(`${pin.uri}: pin files not refreshed: ${r.detail}`);
573
574
  return plugin;
575
+ }
574
576
  const old = new Map(pin.integrity.files.map((f) => [f.path, f.sha256]));
575
577
  const changed = r.files.filter((f) => old.has(f.path) && old.get(f.path) !== f.sha256).map((f) => f.path);
576
578
  const same = r.files.length === old.size && r.files.every((f) => old.get(f.path) === f.sha256);
@@ -625,8 +627,8 @@ const isolatedEnv = (ctx) => ({ ...ctx.env, [ADMIT_STEP_MS_ENV]: String(ctx.sett
625
627
  /** Each judged run of a pass as the plugins it qualified: the record written, the pin taken, the outcome. */
626
628
  function judgedPlugins(ctx, runs, describeProblem) {
627
629
  const host = ctx.settings.hostProfile.id;
628
- const entries = runs.map(({ bytes, judgment }) => {
629
- const { recordPath, record } = writeQualification(ctx.settings.qualificationDir, bytes, judgment, QUICK_NOT_MEASURED);
630
+ const entries = runs.map(({ bytes, judgment, stderr }) => {
631
+ const { recordPath, record } = writeQualification(ctx.settings.qualificationDir, bytes, judgment, QUICK_NOT_MEASURED, stderr);
630
632
  const steps = baseSteps(record, describeProblem);
631
633
  let pin = withHostdFiles(ctx, judgmentPinEntries(judgment, host)[0]);
632
634
  let { outcome, code } = outcomeOf(judgment, host);
@@ -828,7 +830,9 @@ export function isolatedPass(ctx, state) {
828
830
  return rest.outcome === "qualified" && rebuilt.verdict === "refused" ? { ...rest, outcome: "refused", pin: rebuilt } : { ...rest, pin: rebuilt };
829
831
  }
830
832
  ctx.log(`${p.uri}: isolated step ${done.step.result}${done.step.code === undefined ? "" : ` (${done.step.code})`}`);
831
- const pin = pinAfterStep(p.pin, done.step);
833
+ // a plugin the state holds no pin for is pinned from the record the step now completes: the bytes it names and the word
834
+ // the step earned (plugin-qualify#316: 38 plugins read hosting.memory.unmeasured and had none)
835
+ const pin = p.pin !== undefined ? pinAfterStep(p.pin, done.step) : withHostdFiles(ctx, pinFromRecordWithPool(done.record));
832
836
  const { pin: _pin, code: _code, ...rest } = p;
833
837
  if (done.step.result === ISOLATED_RESULT.isolated) {
834
838
  count.isolated++;
@@ -888,6 +892,13 @@ export function poolPass(ctx, state) {
888
892
  return { ...count, state: count.cores + count.off + count.notAsked + count.notRun === 0 ? state : { ...state, entries } };
889
893
  }
890
894
  // --- the distributed records ----------------------------------------------------------------------------------------
895
+ /**
896
+ * The cells a sync runs at, which a distributed set must hold to apply (#317): the grid's own cells when it names them
897
+ * (`grid 48000/512`), else the cells the host profile judges cost and memory at.
898
+ */
899
+ export function syncCells(settings) {
900
+ return settings.grid.kind === "cells" ? [...settings.grid.cells] : hostCells(settings.hostProfile);
901
+ }
891
902
  /** The layer a run reads: none under `--force` or `--no-distributed`, or without a host class. */
892
903
  function distributedLayerOf(settings, force, log) {
893
904
  if (force || !settings.distributed)
@@ -912,14 +923,13 @@ function takeDistributed(ctx, layer, item, files) {
912
923
  return undefined;
913
924
  const started = Date.now();
914
925
  const host = ctx.settings.hostProfile.id;
915
- const match = matchDistributed(layer, item, host, (paths) => digestFiles(item.root, paths, files));
926
+ const match = matchDistributed(layer, item, host, (paths) => digestFiles(item.root, paths, files), syncCells(ctx.settings));
916
927
  if (match.status === "none")
917
928
  return undefined;
918
- if (match.status === "ignored") {
919
- for (const line of match.lines)
920
- ctx.log(line);
929
+ for (const line of match.lines)
930
+ ctx.log(line);
931
+ if (match.status === "ignored")
921
932
  return undefined;
922
- }
923
933
  for (const r of match.records) {
924
934
  const missing = missingSteps(r.record);
925
935
  if (missing.length > 0) {
@@ -1008,9 +1018,9 @@ export function removedPinUris(before, after) {
1008
1018
  const now = pinLinesOf(after);
1009
1019
  return [...pinLinesOf(before).keys()].filter((uri) => !now.has(uri));
1010
1020
  }
1011
- /** `<id>@<version>-<binary sha first 12>`, the stem a qualification record, its probe copy and its descriptor share. */
1021
+ /** `<id>@<version>-<binary sha first 12>`, the stem a qualification record, its probe copy, its children's stderr and its descriptor share. */
1012
1022
  export function recordStem(recordPath) {
1013
- return /^(.*-[0-9a-f]{12})\.(?:[^.]+\.(?:qualification|probe)|unmeasured)\.json$/.exec(basename(recordPath))?.[1];
1023
+ return /^(.*-[0-9a-f]{12})\.(?:(?:[^.]+\.(?:qualification|probe)|unmeasured)\.json|[^.]+\.stderr\.[0-9a-f]{12}\.log)$/.exec(basename(recordPath))?.[1];
1014
1024
  }
1015
1025
  /**
1016
1026
  * A stem's id and binary hash, its version segment dropped: what a record and its descriptor share even when their