Skip to content

Add bridge launch overrides for tests and bump Pi runtime to v0.1.4#417

Merged
mmprotest merged 1 commit into
mmprotest/implement-pi-integration-as-external-adapterfrom
mmprotest/fix-npm-test-failures-before-release
Jun 29, 2026
Merged

Add bridge launch overrides for tests and bump Pi runtime to v0.1.4#417
mmprotest merged 1 commit into
mmprotest/implement-pi-integration-as-external-adapterfrom
mmprotest/fix-npm-test-failures-before-release

Conversation

@mmprotest

Copy link
Copy Markdown
Owner

Motivation

  • Extension tests on Windows failed with spawn EFTYPE because tests passed a fake bridge path that is not directly executable on Node's spawn without using shell:true.
  • The runtime release moved from 0.1.3 to 0.1.4 and tests/docs needed to reflect the new runtime version.
  • Ensure tests can run fake bridge scripts via process.execPath while keeping production bridge launch semantics unchanged.

Description

  • Added BridgeLaunchOptions (fields executableOverride?: string and bridgeArgsOverride?: string[]) and threaded them into BridgeProcessOptions so launches may override the executable and args (file: integrations/pi-villani/src/process.ts).
  • Made VillaniBridgeProcess use the launch overrides when present, while preserving production defaults of spawn(executable, ['bridge','--stdio'], { shell: false, ... }) (file: integrations/pi-villani/src/process.ts).
  • Threaded bridgeLaunchOptions through assertBridgePing() and runVillani() and added a helper bridgeLaunchOptions(ctx) to read overrides from ctx (file: integrations/pi-villani/src/index.ts).
  • Updated extension tests to call bridgePing() and runVillani() with bridgeLaunchOptions: { executableOverride: process.execPath, bridgeArgsOverride: [fakeScript] } so fake bridge scripts are launched as node fakeScript (file: integrations/pi-villani/src/extension.test.ts).
  • Bumped Pi runtime version constant to 0.1.4 and updated README/docs to reference v0.1.4 so version consistency tests derive expected names from VILLANI_RUNTIME_VERSION (file: integrations/pi-villani/src/runtimeConfig.ts, README.md, docs/release.md).
  • No changes were made to runner behaviour, model proxy behaviour, bridge protocol semantics, or UI copy.

Testing

  • Ran cd integrations/pi-villani && npm run build which compiles TypeScript successfully.
  • Ran cd integrations/pi-villani && npm test which executed the test suite (91 tests) and all tests passed (# pass 91 # fail 0).
  • Ran cd integrations/pi-villani && npm pack --dry-run which produced a pack listing for @mmprotest/pi-villani@0.1.4 successfully.

Codex Task

@mmprotest mmprotest merged commit d76029f into mmprotest/implement-pi-integration-as-external-adapter Jun 29, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant