find-unplanned-issues

$npx mdskill add remotion-dev/remotion/find-unplanned-issues

Audits Remotion GitHub issues for missing masterplan ancestry and cleans closed ones.

  • Finds open issues lacking a masterplan parent or ancestor in the hierarchy.
  • Depends on authenticated gh CLI and runs via bun script.
  • Classifies issues as no parent or no masterplan ancestor, with exceptions.
  • Outputs human-readable or JSON reports and supports --check for CI.

SKILL.md

.github/skills/find-unplanned-issuesView on GitHub ↗
---
name: find-unplanned-issues
description: 'Audit and clean the Remotion GitHub masterplan hierarchy. Use when finding open issues that lack a masterplan ancestor, identifying orphaned issues that need a parent, or recursively removing closed issues from the masterplan rooted at issue #9081.'
---

# Find unplanned issues

Run the bundled read-only audit from the repository root:

```sh
bun .agents/skills/find-unplanned-issues/scripts/find-unplanned-issues.ts
```

The script treats an issue as planned when its title contains `masterplan` or any
issue in its parent chain has a title containing `masterplan`. Masterplan issues
themselves are omitted from the report. Repository-specific exceptions are also
omitted; currently, issue #8375 is exempt because the long-running CI flake
tracker intentionally stands on its own. Results distinguish between:

- `no parent`: the open issue has no parent at all.
- `no masterplan ancestor`: the issue has a parent, but following the complete
  parent chain does not reach a masterplan.

Use a different repository or machine-readable output when needed:

```sh
bun .agents/skills/find-unplanned-issues/scripts/find-unplanned-issues.ts --repo owner/repo
bun .agents/skills/find-unplanned-issues/scripts/find-unplanned-issues.ts --json
```

Pass `--check` for automation. It exits with status 1 when unplanned issues are
found and 0 when every non-exempt open issue belongs to a masterplan.

The audit requires an authenticated `gh` CLI that supports the `parent` JSON
field. It only reads issue data. To fix findings, use the `issue-management`
skill and verify each relationship after editing it.

## Remove closed issues from the masterplan

Preview all closed descendants of the root masterplan recursively:

```sh
bun .agents/skills/find-unplanned-issues/scripts/prune-closed-masterplan-issues.ts
```

The default root is <https://github.com/remotion-dev/remotion/issues/9081>.
Override it only when intentionally auditing a different hierarchy:

```sh
bun .agents/skills/find-unplanned-issues/scripts/prune-closed-masterplan-issues.ts \
  --root https://github.com/owner/repo/issues/123
```

The command is a dry run unless `--apply` is passed. During application, process
closed issues deepest-first and verify every relationship after changing it. If
a closed issue has open children, move those children to its parent before
removing the closed issue so open work stays in the masterplan.

```sh
bun .agents/skills/find-unplanned-issues/scripts/prune-closed-masterplan-issues.ts --apply
```

Use `--json` for a machine-readable dry-run report. Never pass `--apply` merely
to test the script; it changes live GitHub issue relationships.

More from remotion-dev/remotion

SkillDescription
add-bugAdd a new Remotion bug entry to packages/bugs/api/[v].ts. Use when the user describes a bug and affected Remotion versions that should be surfaced through the bugs API.
add-cli-optionAdd a new Remotion CLI or config option by creating an AnyRemotionOption, registering CLI parsing, wiring config setters, and updating documentation. Use when adding or converting command-line flags or Remotion options.
add-effectAdd a new effect to @remotion/effects, including implementation, package exports, docs, demos, preview images, Remotion skill updates, formatting, and builds.
add-expertAdd a new expert to the Remotion experts page
add-new-packageAdd a new package to the Remotion monorepo, including package scaffolding, monorepo registration, documentation, build scripts, and release checklist updates. Use when creating a new @remotion package.
add-sfxAdd a new sound effect to @remotion/sfx
add-webcodecs-bugAdd a browser WebCodecs bug to the Remotion Mediabunny WebCodecs bugs docs page. Use when given a Chromium, WebKit, or Firefox issue URL that should be tracked in packages/docs/docs/mediabunny/webcodecs-bugs.mdx, especially when needing to look up the issue title, filing date, reporter, and resolution state before editing the MDX table.
canvas-capture-extensionRebuild, install, and reload the private Remotion Canvas Capture unpacked Chrome extension. Use when the extension needs to be restored after a Codex worktree was deleted, rebuilt after source changes, moved to its durable install directory, or reloaded in Chrome or Chrome Canary.
checkoutCheckout a requested branch or ref in the Remotion repo, rename the current task to the associated PR title when running in Codex, then install dependencies and build. Use when the user asks to checkout a ref and prepare the workspace.
convertStart the local @remotion/convert app and open it in the Codex browser. Use when the user invokes /convert or $convert, asks to launch convert.remotion.dev locally, or wants to inspect the Convert package UI.