Repository navigation
Description
Split from tracker #1889 (mcpx: runtimes, languages and dependencies) during its code-side triage (queue task 2784, 2026-10-29): this is the relocated child corresponding to dezren39/darwin-nix#101. Seven of the tracker's eight children arrived in the 2026-10-28 relocation with their own code issues (#1911, #1913, #1908, #1915, #1919, #1917, #1921); this one did not — no code issue covers it (title/subject searches return only the tracker itself). Filed so the child exists and is tracked, per the tracker's own split.
What this child is (from #1889)
docs/runtimes.md — compare the execution options and their features. Last for content, first for its probe suite, which is the evidence base for #1911's claims and the guard against them going stale.
- Phase 0 — start now, blocks nothing. The capability-probe harness: five one-line TypeScript files per runtime, plus package-resolution and type-check probes. It is the measurement that mcpx: how the JavaScript runtime is chosen, what each does with TypeScript, and an automatic validate/compile step #1911's syntax table, this issue's generated matrix, and the mcpx: --runtime node rejects TypeScript that Node runs, because of one flag (strip-types) #263 regression test all assert against. It can run in the existing mcpx CI job, which already installs deno, bun and node, with the look-up-and-skip pattern the e2e runtime tests already use.
- Phase 6 — finalised. The comparison doc can only compare options once they exist. Its prose sections (how to set the runtime, the decision list) can be written in phase 1; the Python, environment and dependency rows land as their issues (mcpx: Python as a first-class script language, 1:1 with TypeScript #1917, mcpx: accept a flake ref as a program and as an execution environment #1921, mcpx: where a script's packages come from -- npm/deno/bun dependency configuration chain #1913) do.
Ease S (prose) / M (with the probe suite); impact medium — "the answer to the most-asked question and the guard against the docs going stale" (#1889 table).
Current state (verified 2026-10-29, origin/main 2c4e743)
pkgs/mcpx/docs/runtimes.mdexists (171 lines) but covers runtime choice, permission profiles and presets — it has no generated feature-comparison matrix and no probe suite behind it.- No capability-probe harness exists in
pkgs/mcpxCI or tests asserting per-runtime TypeScript/package-resolution behaviour as a matrix (the e2e runtime tests pin runtimes individually; they are not the probe suite this issue specifies).
Acceptance
- Capability-probe harness exists (five one-line TS probes per runtime + package-resolution and type-check probes), runs in mcpx CI with look-up-and-skip for absent runtimes
-
docs/runtimes.mdgains the feature-comparison matrix generated from / asserted against the probe results, plus the phase-1 prose (how to set the runtime, decision list) - Rows for Python (mcpx: Python as a first-class script language, 1:1 with TypeScript #1917), flake environments (mcpx: accept a flake ref as a program and as an execution environment #1921) and dependencies (mcpx: where a script's packages come from -- npm/deno/bun dependency configuration chain #1913) are added as those issues land, or explicitly marked pending with their issue links
Parent: #1889. Related: #1911 (its syntax table asserts against these probes), #263 (closed — its regression test is one of the assertions).
Activity
developing-today commentedon Oct 29, 2026
CODE-1027
dezren39 commentedon Nov 3, 2026
🤖 Agent note · triaged — CONFIRMED on current main
origin/mainb963332437.pkgs/mcpx/docs/runtimes.mdis 171 lines with headings only for Choosing a runtime (:8), Permission profiles (:57) and Presets (:143) — grep formatrix|probe|feature|python|flakereturns nothing, so there is no feature-comparison matrix. There is also no capability-probe harness:pkgs/mcpx/internal/e2e/runtime_test.goloops deno/bun/node throughtestsupport.RequireBinaryand asserts round-trip and session isolation, which is per-runtime pinning, not the five-probe matrix this issue specifies.pkgs/mcpx/internal/testsupport/require.goimplementsMCPX_TEST_REQUIREso a missing runtime fails rather than silently skips (:10–:24,MissingRequired:29) — exactly the "look up and skip" discipline the issue asks for..github/workflows/mcpx.ymlalready installs deno (denoland/setup-denov2.0.5, :173), bun (oven-sh/setup-bunv2.2.0, :176) and node 24 (:177), and setsMCPX_TEST_REQUIRE: deno,bun,node,python3(:187). No new CI setup or leg is required for the probe suite to run.status/waiting-dependency, and mcpx: where a script's packages come from -- npm/deno/bun dependency configuration chain #1913 is closed — mark those rows pending-with-links rather than waiting on them, and Phase 0 + the JS/TS matrix + phase-1 prose can land now.gh pr list --search "2129 OR runtimes.md OR capability probe"returns only unrelated fix(id): enforce participant limit on journal restore (#2958) #4292; nothing is held or Drew-owned on this subject.repo-health:v1:fix:developing-today/code:issue:2129, 45 min) covering the probe harness plus the matrix and phase-1 prose, with the JS/TS rows only and the Python/flake/dependency rows explicitly marked pending. Issue stays open.dezren39 commentedon Nov 3, 2026
Picked up by queue worker lane E (task 8069, small_fix) — implementing the phase-0 capability-probe harness and the runtimes.md comparison matrix.
dezren39 commentedon Nov 3, 2026
Task 8069 (small_fix) complete: probe harness + runtimes.md matrix landed in PR #4963 (merged, 77d347a). All probes pass on deno/bun/node; MCPX_TEST_REQUIRE fail-not-skip verified; Codex review failed to run (usage limits) with zero findings — dispositioned on PR #4963.
feat(mcpx): runtime capability-probe suite + probe-verified runtimes.…
dezren39 commentedon Nov 3, 2026
agent-note:v1
state: triaged (coverage pass)
Coverage pass 2026-11-03: reviewed in the fleet-wide per-issue pass (drift / overlap / already-handled / stale / blockers / ordering). Verdict: still live; queued in repo-health-code-pilot as triage at priority 30 (priority/none). If this is already handled at current main, the triage closes it with evidence; if it needs splitting, the triage files the split.
Found via: coverage pass 2026-11-03