All posts

Split Large PRs Without Losing the Thread

Anyone who has shepherded a large feature branch through code review knows the feeling: the diff is enormous, reviewers are overwhelmed, and merging feels like defusing a bomb. The instinct is always to split the work — but keeping those smaller PRs organized and traceable is a problem all of its own.

Intent now makes that easier. You can create additional pull requests in a repository that is already linked to an in-progress changeset, letting you break a big piece of work into multiple reviewable chunks without losing the single source of truth that ties them all together.

PRs Are the New Subtasks

If you've lived in Jira for the past decade, you know the subtask. It's how you broke big issues into trackable pieces of work — manually created, manually updated, and perpetually out of sync with what was actually happening in the codebase.

In Intent, pull requests play that role — and they do it automatically. Each PR linked to a changeset is a unit of work. When you hit Start Work, Intent creates a branch and opens a draft PR for every linked repository in one go. From that point on, Intent watches those PRs. Every few minutes it polls your git provider and syncs their state back to the changeset — no webhooks to configure, no manual status updates. When the last PR is merged and any outstanding todos are checked off, the changeset completes itself. No one has to remember to close the ticket.

This is the key difference from the subtask world: the work tracking is driven by what actually happens in the code, not by what someone remembered to click.

The Problem With "Just Split It"

Splitting work across multiple PRs is great advice in theory. In practice, you end up with several branches to track, PR descriptions that go stale, and no single place that shows the full picture of what's being delivered. For large migrations, multi-part features, or any work where PRs depend on each other, that fragmentation has a real cost.

Previously in Intent, once a repository was linked to a changeset, there was no way to open a second PR in that same repository. You were either working in one branch or adding a completely separate repository. This new capability closes that gap.

How It Works

The entry point is a new "Add PR" button in the Pull Requests section of a changeset's detail view. It's visible only when the changeset is in progress and you have write access — no button, no accidental clicks.

Clicking it opens an inline form where you:

  • Select a repository from those already linked to the changeset.
  • Enter a branch suffix — free text like migrations, cleanup, or part-2.

Intent derives the full branch name automatically and previews it in the form so you can confirm before submitting. On submit, Intent:

  1. Creates a new branch off the repository's default branch.
  2. Commits all current spec files and the changeset description to that branch — keeping it consistent with the original PR.
  3. Opens a draft PR against the default branch, using the same title and description format as the original.
  4. Links the new PR to the changeset so it appears immediately in the PR list — and enters the automatic polling cycle.

If the branch name already exists on the git provider, you'll see a clear error and can adjust the suffix to retry.

What Stays Consistent

Every additional PR is a full participant in the changeset:

  • Carries the full spec context — all spec files and the changeset description are committed to the new branch from the start.
  • Participates in the completion check — Intent won't auto-complete a changeset until every linked PR is merged, regardless of how many there are.
  • Appears alongside the original in the changeset's PR list with no special distinction.

Keeping Big Work Manageable

Breaking work into smaller PRs is one of the most effective ways to maintain review quality and keep momentum on a project. The challenge has always been doing it without creating a scattered mess. By anchoring multiple PRs to a single changeset — and letting merged PRs drive progress automatically — Intent keeps the full scope of the work visible while still letting teams review and merge in manageable pieces. Subtask discipline, without the subtask busywork.