{"actions":{"bootstrapAndRun":{"effect":"installs rote if missing, inspects, prepares, and asks before running","href":"https://play.modiqo.ai/install?play=adityasingh/migration-blast-radius@0.1.0","method":"GET","rel":"https://rote.dev/rels/bootstrap-and-run","requiresConsent":true,"responseMediaType":"text/x-shellscript"},"inspect":{"command":"rote play inspect https://play.modiqo.ai/adityasingh/migration-blast-radius@0.1.0","effect":"read-only"},"installCliOnly":{"effect":"installs the rote CLI, nothing else","href":"https://play.modiqo.ai/install","method":"GET","rel":"https://rote.dev/rels/install-cli","requiresConsent":true,"responseMediaType":"text/x-shellscript"},"run":{"command":"rote play run https://play.modiqo.ai/adityasingh/migration-blast-radius@0.1.0","effect":"executes the play locally after consent","headless":{"approvalAssertion":"--yes","approvalRequiredBeforeInvocation":true,"commandTemplate":"rote play run https://play.modiqo.ai/adityasingh/migration-blast-radius@0.1.0 <name=value...> --yes","stdinPolicy":"never pipe input to automate the interactive Ready selector"},"requiresConsent":true}},"description":"Read-only migration blast-radius analysis. Given a repository, migration description, and target version, discovers Node/runtime manifests, maps API surface and dependency usage, identifies Rust equivalents where applicable, assesses config/build/test impact, and produces a risk-ranked ordered migration plan. Never modifies files. Supports nodejs-to-rust and generic dependency migrations.","distribution":{"digest":"sha256:6bbefaf8ad992361e49a5ab209c6680c9742a32761f653b1ee1aff768ee22c58","mediaType":"application/vnd.modiqo.rote-flow","size":8264,"verifiedBy":"rote verifies the downloaded archive against this digest before it runs"},"effects":{"credentialsProvidedBy":"runner","credentialsRemainLocal":true,"declaredWrites":[],"publisherReceivesCredentials":false},"id":"https://play.modiqo.ai/adityasingh/migration-blast-radius@0.1.0","inputPolicy":{"optionalWithDefault":"show_default_and_accept_override","optionalWithoutDefault":"omit_unless_supplied","required":"ask","secrets":"collect_locally_outside_conversation"},"links":{"docs":"https://rote.dev","page":"https://play.modiqo.ai/adityasingh/migration-blast-radius@0.1.0","protocol":"https://play.modiqo.ai/.well-known/rote","self":"https://play.modiqo.ai/adityasingh/migration-blast-radius@0.1.0.json"},"name":"migration-blast-radius","owner":{"kind":"user","slug":"adityasingh"},"parameters":[{"description":"Path to the repository root to analyze","input":{"allowCustom":true,"choices":[],"label":"Repository"},"name":"repository","required":true,"type":"string"},{"description":"Migration identifier or description (e.g. nodejs-to-rust, express, mongoose)","input":{"allowCustom":true,"choices":[],"label":"Migration"},"name":"migration","required":true,"type":"string"},{"description":"Current runtime or dependency version if known (auto-detected from manifests when omitted)","input":{"allowCustom":true,"choices":[],"label":"Current version"},"name":"current_version","required":false,"type":"string"},{"description":"Target runtime or dependency version (e.g. rust, 5.x)","input":{"allowCustom":true,"choices":[],"label":"Target version"},"name":"target_version","required":true,"type":"string"}],"preparation":[{"action":{"command":"rote play inspect https://play.modiqo.ai/adityasingh/migration-blast-radius@0.1.0 --json","effect":"read-only"},"step":1,"type":"inspect_local_readiness"},{"references":["/parameters"],"step":2,"type":"collect_parameters"},{"references":["/parameters","/requirements","/effects"],"step":3,"type":"review"},{"consentBoundary":"the user approves the exact play and parameter values","references":["/parameters","/requirements","/effects"],"step":4,"type":"obtain_run_consent"},{"action":{"command":"rote play run https://play.modiqo.ai/adityasingh/migration-blast-radius@0.1.0","headlessCommandTemplate":"rote play run https://play.modiqo.ai/adityasingh/migration-blast-radius@0.1.0 <name=value...> --yes"},"preservesAcquisitionBoundaries":["adapter_selection","oauth_dcr","google_discovery","static_token_setup","runtime_security_checks"],"requiresConsent":true,"step":5,"type":"run"}],"producedBy":{"roteVersion":"0.78.0"},"publishedAt":"2026-09-02T19:41:03.422524+00:00","reference":"adityasingh/migration-blast-radius@0.1.0","requirements":{"adapters":[],"browser":{"dependencies":[],"runtime":false,"signIn":false},"localTools":["python3","rg","git","npm"],"roteCli":{"minimumVersion":"0.62.0"},"sessions":false},"resolution":"pinned","schema":"rote.play.v1","stats":{"downloads":2,"installs":0},"steps":{"count":7,"names":["discover_manifests","map_rust_equivalents","scan_api_surface","scan_config_deploy","scan_runtime_usage","scan_tests","validate_inputs"]},"title":"migration-blast-radius","type":"play","version":"0.1.0","visibility":"public"}