{"actions":{"bootstrapAndRun":{"effect":"installs rote if missing, inspects, prepares, and asks before running","href":"https://play.modiqo.ai/install?play=mahesh/tech-debt@1.7.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/mahesh/tech-debt@1.7.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/mahesh/tech-debt@1.7.0","effect":"executes the play locally after consent","headless":{"approvalAssertion":"--yes","approvalRequiredBeforeInvocation":true,"commandTemplate":"rote play run https://play.modiqo.ai/mahesh/tech-debt@1.7.0 <name=value...> --yes","stdinPolicy":"never pipe input to automate the interactive Ready selector"},"requiresConsent":true}},"description":"Finds five classes of technical debt in one local Git repository or every immediate child repository of a parent directory, attributes each line with Git blame, computes UTC age, and reports per-repository tables sorted oldest first plus a hotspot view that says who owns the debt, which directories concentrate it, and how old it is. Classes are TODO/FIXME/HACK marker comments, linter and type-checker suppressions (eslint-disable, @ts-ignore, noqa, type ignore, pylint disable, pragma no cover, nosec, nolint, rubocop disable, SuppressWarnings, pragma warning disable, Rust allow, NOSONAR and more), skipped or expected-failure tests (pytest skip/xfail, unittest skip, it.skip/xdescribe/test.todo, t.Skip, JUnit Disabled/Ignore, .NET Skip, RSpec xit, Rust ignore, PHPUnit markTestSkipped) matched only inside test files, debug leftovers (debugger statement, console.trace, pdb/ipdb set_trace, breakpoint(), Ruby binding.pry/byebug, PHP var_dump/dd) matched everywhere, and swallowed exceptions (a bare except that only pa","distribution":{"digest":"sha256:d800e7e60f7762b6319b1d3c5e331a43d6cb5f057be62d2f5ee51e7fc641dddf","mediaType":"application/vnd.modiqo.rote-flow","size":41010,"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/mahesh/tech-debt@1.7.0","inputPolicy":{"optionalWithDefault":"show_default_and_accept_override","optionalWithoutDefault":"omit_unless_supplied","required":"ask","secrets":"collect_locally_outside_conversation"},"license":"MIT","links":{"docs":"https://rote.dev","page":"https://play.modiqo.ai/mahesh/tech-debt@1.7.0","protocol":"https://play.modiqo.ai/.well-known/rote","self":"https://play.modiqo.ai/mahesh/tech-debt@1.7.0.json"},"name":"tech-debt","owner":{"kind":"user","slug":"mahesh"},"parameters":[{"default":".","description":"Path to one Git repository or a parent directory whose immediate children are Git repositories; relative paths use the invoking shell directory and the default is '.'.","input":{"allowCustom":true,"choices":[],"label":"Root"},"name":"root","required":false,"type":"string"},{"default":"[\"TODO\",\"FIXME\",\"HACK\"]","description":"JSON string array of 2-32 character marker names for the marker-comment class.","input":{"allowCustom":true,"choices":[],"label":"Markers json"},"name":"markers_json","required":false,"type":"string"},{"default":"true","description":"Whether to scan for linter, type-checker, coverage and security suppressions: true or false.","input":{"allowCustom":true,"choices":[],"label":"Include suppressions"},"name":"include_suppressions","required":false,"type":"string"},{"default":"true","description":"Whether to scan test files for skipped, disabled or expected-failure tests: true or false.","input":{"allowCustom":true,"choices":[],"label":"Include skipped tests"},"name":"include_skipped_tests","required":false,"type":"string"},{"default":"true","description":"Whether to scan for interactive-debugger and trace statements left in source, everywhere (not test-scoped): true or false.","input":{"allowCustom":true,"choices":[],"label":"Include debug leftovers"},"name":"include_debug_leftovers","required":false,"type":"string"},{"default":"true","description":"Whether to scan for exception handlers that discard the error with no log, re-raise or real handling, everywhere (not test-scoped): true or false.","input":{"allowCustom":true,"choices":[],"label":"Include swallowed exceptions"},"name":"include_swallowed_exceptions","required":false,"type":"string"},{"default":"true","description":"Whether to include non-ignored untracked source files: true or false.","input":{"allowCustom":true,"choices":[],"label":"Include untracked"},"name":"include_untracked","required":false,"type":"string"},{"default":"[]","description":"JSON string array of additional directory names to exclude.","input":{"allowCustom":true,"choices":[],"label":"Extra exclude dirs json"},"name":"extra_exclude_dirs_json","required":false,"type":"string"},{"default":2097152,"description":"Maximum bytes per source file, from 1 through 16777216.","input":{"allowCustom":true,"choices":[],"label":"Max file bytes"},"name":"max_file_bytes","required":false,"type":"integer"},{"default":50000,"description":"Maximum Git-visible files per repository, from 1 through 500000; a repository above the bound fails closed.","input":{"allowCustom":true,"choices":[],"label":"Max files"},"name":"max_files","required":false,"type":"integer"},{"default":5000,"description":"Maximum matching lines per repository and debt class, from 1 through 100000; a repository above the bound fails closed.","input":{"allowCustom":true,"choices":[],"label":"Max comments"},"name":"max_comments","required":false,"type":"integer"},{"description":"Optional ISO-8601 timestamp with timezone for reproducible age calculations; empty uses run start.","input":{"allowCustom":true,"choices":[],"label":"As of utc"},"name":"as_of_utc","required":false,"type":"string"},{"default":10,"description":"How many owners and hotspot directories to list in the hotspot view, from 1 through 100.","input":{"allowCustom":true,"choices":[],"label":"Top n"},"name":"top_n","required":false,"type":"integer"},{"description":"Optional git ref (tag, branch or commit, e.g. v1.2.0 or HEAD~20) to diff against; every class reports debt added, removed and persisting since that ref. Empty disables the delta. A ref missing in one repository of a collection is reported as unavailable for that repository, not fatal.","input":{"allowCustom":true,"choices":[],"label":"Since ref"},"name":"since_ref","required":false,"type":"string"}],"preparation":[{"action":{"command":"rote play inspect https://play.modiqo.ai/mahesh/tech-debt@1.7.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/mahesh/tech-debt@1.7.0","headlessCommandTemplate":"rote play run https://play.modiqo.ai/mahesh/tech-debt@1.7.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:54:53.317259+00:00","reference":"mahesh/tech-debt@1.7.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":9,"names":["discover_repositories","probe_environment","run_self_check","scan_debug_leftovers","scan_repository","scan_skipped_tests","scan_suppressions","scan_swallowed_exceptions","verify_collection"]},"title":"tech-debt","type":"play","version":"1.7.0","visibility":"public"}