{"actions":{"bootstrapAndRun":{"effect":"installs rote if missing, inspects, prepares, and asks before running","href":"https://play.modiqo.ai/install?play=varunloni23/code-expiry-radar@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/varunloni23/code-expiry-radar@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/varunloni23/code-expiry-radar@0.1.0","effect":"executes the play locally after consent","headless":{"approvalAssertion":"--yes","approvalRequiredBeforeInvocation":true,"commandTemplate":"rote play run https://play.modiqo.ai/varunloni23/code-expiry-radar@0.1.0 <name=value...> --yes","stdinPolicy":"never pipe input to automate the interactive Ready selector"},"requiresConsent":true}},"description":"Turns temporary-code comments into a bounded expiry radar. Scans an inert bundled demo or regular UTF-8 blobs tracked by a local repository's HEAD, detects expired and future date contracts plus version-conditioned, issue-conditioned, malformed-date, and unbounded temporary markers, and adds bounded git-blame provenance when available. Reports direct file/line evidence, scan gaps, truncation, limits, and uncertainty. Read-only and offline; never executes repository code, invokes hooks or checkout filters, changes files, resolves remote issues, or claims runtime reachability.","distribution":{"digest":"sha256:c63018c17a6f03e608d644ca4ff21875ee71f660ae196eaa69d16cfdfc3a2839","mediaType":"application/vnd.modiqo.rote-flow","size":32402,"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/varunloni23/code-expiry-radar@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/varunloni23/code-expiry-radar@0.1.0","protocol":"https://play.modiqo.ai/.well-known/rote","self":"https://play.modiqo.ai/varunloni23/code-expiry-radar@0.1.0.json"},"name":"code-expiry-radar","owner":{"kind":"user","slug":"varunloni23"},"parameters":[{"default":"demo","description":"Use 'demo' for the bundled cold-start example, or provide an absolute path to a readable non-bare git worktree. Real mode reads raw regular UTF-8 blobs from HEAD only; it ignores uncommitted worktree content and never executes repository code.","example":"demo","input":{"allowCustom":true,"choices":[],"label":"Repository snapshot"},"name":"repo","required":false,"type":"string"},{"default":"today","description":"Calendar boundary for dated contracts. Use 'today' or an exact ISO date (YYYY-MM-DD). A deadline equal to this date is classified as expired/due.","example":"2026-08-31","input":{"allowCustom":true,"choices":[],"label":"Evaluate deadlines as of"},"name":"as_of","required":false,"type":"string"},{"default":25,"description":"Maximum highest-priority findings returned in structured output. Valid range is 1 through 100. The scanner still counts matching markers inside its completed file and byte bounds.","example":25,"input":{"allowCustom":true,"choices":[{"label":"10 — concise","value":10},{"label":"25 — recommended","value":25},{"label":"50 — extended","value":50}],"label":"Returned finding cap"},"name":"max_findings","required":false,"type":"integer"}],"preparation":[{"action":{"command":"rote play inspect https://play.modiqo.ai/varunloni23/code-expiry-radar@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/varunloni23/code-expiry-radar@0.1.0","headlessCommandTemplate":"rote play run https://play.modiqo.ai/varunloni23/code-expiry-radar@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.79.0"},"publishedAt":"2026-09-04T15:20:07.603063+00:00","reference":"varunloni23/code-expiry-radar@0.1.0","requirements":{"adapters":[],"browser":{"dependencies":[],"runtime":false,"signIn":false},"localTools":["python3","git"],"roteCli":{"minimumVersion":"0.62.0"},"sessions":false},"resolution":"pinned","schema":"rote.play.v1","stats":{"downloads":3,"installs":0},"steps":{"count":2,"names":["scan_expiry","validate_input"]},"title":"code-expiry-radar","type":"play","version":"0.1.0","visibility":"public"}