Skip to content

Roblox Studio MCP Multisession 0.4.0-rc.7

Pre-release
Pre-release

Choose a tag to compare

@KyberWolffe KyberWolffe released this 30 Jul 16:44
Immutable release. Only release title and notes can be modified.

Roblox Studio MCP Multisession 0.4.0-rc.7

0.4.0-rc.7 adds bounded transactional script creation and exact transaction-owned cleanup to the explicit-session Multisession MCP. It corrects the successful-creation cleanup-admission defect found in the rejected, unpublished rc.6 candidate.

Exact release identity

  • Tag: v0.4.0-rc.7
  • Commit: 63dd793f385ebb9c992fd325185acae07c27aa21
  • Source tree: f9f4921e779c4d46a4cef8bb1e3af3053337d947
  • Platform: native Apple-Silicon macOS
Release asset SHA-256 of uploaded file
roblox-studio-mcp-v2-0.4.0-rc.7-macos-arm64.tar.gz 2f116b0a072c59513e3a0f63857c2f0559a17ead5a8d06bb9d525ac00d59d7b8
roblox-studio-mcp-v2-0.4.0-rc.7-macos-arm64.tar.gz.sha256 dfce91f45171396820d49d22a2c5f55b7ccef356bd66069bc7879e2c5612e362
roblox-studio-mcp-v2-bootstrap-0.4.0-rc.7.py e4f35d878024a3c73d6276bc512236e1cad8637c98894da976b233d556cd346b
roblox-studio-mcp-v2-bootstrap-0.4.0-rc.7.py.sha256 17a3638a5b972532a520a02933c660971ec9799b26b4c369948b39c13df5236e
SHA256SUMS ab023fbab1198c704006287024705cb57a599b478a235c767d398fa9a86ca14e

Transactional script creation and cleanup

A revision-protected multi-edit transaction can now combine edits to existing exact script paths with expected-absent creation of bounded Script, LocalScript, or ModuleScript instances beneath an existing exact parent. Host and Studio preflight every target before mutation, reject stale revisions, duplicate or ambiguous paths, invalid class/name/source data, and preserve deterministic ordering and identity-bound prepare/apply receipts.

A successful creation returns a separate ten-minute cleanup authorization. studio_cleanup_multi_edit_v2 accepts only the original transaction ID, apply-receipt SHA-256, and cleanup-authorization SHA-256; callers cannot choose paths or deletion targets. Cleanup may remove only exact, unchanged instances proven created by that transaction in the same Studio/client/document/generation. Changed, moved, renamed, replaced, or decorated content is preserved. Expiry, reconnect, replay, wrong-session reuse, or impossible metadata fails closed. Direct and background-job results use the same identity and receipt fences.

Qualification

The exact source and archive passed 540 automated tests, deterministic double-build and archive audit, isolated install lifecycle, native Studio compilation/load/registration, same-session FIFO, concurrent cross-session isolation, adversarial CAS/replay/reconnect/expiry tests, and byte-for-byte rc.5 rollback proof.

The bounded live gate used only Custom MCP Test Place 1 (119127323538055) and Custom MCP Test Place 2 (126199173733750). Mixed edit/create and concurrent peer-job creation, expected-absent rejection, wrong-session reuse rejection before dispatch, exact read-back, source restoration, and transaction-owned cleanup all passed. The durable installed-path sanity then resolved both as distinct client/document identities in Edit with zero pending, uncertainty, recovery, or nonterminal jobs.

Machine-bound Studio plugin

The portable archive contains the exact renderer, template, and operation handlers; installation renders a host-specific .rbxmx with local broker identity and credentials. Its whole-file hash is therefore expected to differ across machines and from the isolated live-gate plugin.

For this qualification, the isolated plugin SHA-256 was fdb7de4e84322e06687736d7fd984f77170f22802bc49456232342ac9aeb4eb7; the installed host-specific plugin SHA-256 was 4b49c55f55df60f94c326e3f5c5b021e41a6041b39c4d1a49de466adb42d662a. The installed doctor and registration gate bound that render to the archive-manifest renderer (deb82a318f692ac0e0dcfeae59ab7e73320df0adabd8538d487669e06663a130), template (2ee26b4f2229ad4f11606ebd3826d6b8b9bfc321bc020a433b92e4fb020a8da7), and handlers (fbb1761fd17d8f55aca0a49101d3de4eab4501fe7bca23d3515f07bb9fea89e6). Neither plugin file is a portable release asset, and another correct installation will normally have a different plugin hash.

Install or upgrade

Fully close Roblox Studio before install, update, or rollback, handling any Save/Don't Save prompts yourself. Restart Codex and reopen Studio afterward.

For a fresh install or reinstall of the same version only, download and verify the exact bootstrap before running it:

/bin/bash -ceu 'd="$(mktemp -d)"; f="$d/roblox-studio-mcp-v2-bootstrap-${3#v}.py"; curl --fail --location --output "$f" "https://github.com/$1/$2/releases/download/$3/${f##*/}"; printf "%s  %s\n" "$4" "$f" | shasum -a 256 --check; python3 "$f" --owner "$1" --repo "$2" --tag "$3" --expected-sha256 "$5"; rm -- "$f"; rmdir -- "$d"' -- KyberWolffe roblox-studio-mcp-multisession v0.4.0-rc.7 e4f35d878024a3c73d6276bc512236e1cad8637c98894da976b233d556cd346b 2f116b0a072c59513e3a0f63857c2f0559a17ead5a8d06bb9d525ac00d59d7b8

Do not use the bootstrap to replace a different installed Multisession version. Upgrade an installed rc.5 through its canonical manager so rc.5 remains the immediate rollback:

"$HOME/Library/Application Support/RobloxStudioMCPv2/bin/roblox-studio-mcp-multisession-manage" update \
  --owner KyberWolffe \
  --repo roblox-studio-mcp-multisession \
  --tag v0.4.0-rc.7 \
  --expected-sha256 2f116b0a072c59513e3a0f63857c2f0559a17ead5a8d06bb9d525ac00d59d7b8

Rollback a retained rc.7-to-rc.5 installation with:

"$HOME/Library/Application Support/RobloxStudioMCPv2/bin/roblox-studio-mcp-multisession-manage" rollback \
  --to-version 0.4.0-rc.5 \
  --accept-current-version 0.4.0-rc.7

Experimental boundary

Every operational tool requires an explicit studio_id; discovery is the only exception. There is no active/global/default Studio route and no silent v1 fallback. This feature does not add arbitrary Luau, general instance deletion, or asset operations.

Capability parity remains incomplete: twelve P0 rows remain partial or deferred, and multi_edit remains v2_partial. Roblox Studio provides no cross-script atomic transaction, so rc.7 uses explicit prepare/apply/receipt semantics and quarantines outcomes it cannot prove. Cleanup cannot delete pre-existing or changed content and cannot dispatch new deletion after its original deadline. This is an experimental prerelease, not a full-parity or stable-release claim.