#!/usr/bin/env node const assert = require("assert"); const cp = require("child_process"); const fs = require("fs"); const path = require("path"); const repo = path.resolve(__dirname, ".."); const sdkRuntime = fs.readFileSync( path.join(repo, "crates/clusterflux-sdk/src/sdk_runtime.rs"), "utf8" ); assert.doesNotMatch( sdkRuntime, /"type": "launch_task"/, "native SDK code must not submit external TaskV1 work" ); assert.match( sdkRuntime, /native SDK task spawning requires coordinator EntrypointV1 execution/ ); cp.execFileSync("node", ["scripts/cli-local-run-smoke.js"], { cwd: repo, stdio: "inherit", }); cp.execFileSync( "cargo", ["test", "-p", "clusterflux-node", "wasmtime_runtime_runs_named_task_export"], { cwd: repo, stdio: "inherit" } ); cp.execFileSync( "cargo", [ "test", "-p", "clusterflux-coordinator", "signed_active_wasm_task_can_spawn_and_join_child_in_its_process_only", ], { cwd: repo, stdio: "inherit" } ); console.log("Wasmtime assignment smoke passed");