fj pr create --fill / --fill-first: derive title and body from commits #165

Closed
opened 2026-06-15 15:00:44 +00:00 by stephen · 0 comments
Owner

Problem

fj pr create requires --title plus a body, retyping what the commits already contain. gh pr create --fill / --fill-first automate it.

Acceptance criteria

  • --fill: title from the branch's commit subjects, body from their messages (single commit -> its subject + body; multiple -> a list of subjects).
  • --fill-first: title and body from the first commit only.
  • Derived purely from git log <base>..<head>; no new API call.
  • Explicit --title / --body / -F override the filled values.
  • Clear error when there are no commits between base and head.

Value

Removes the most common create friction; one-command PRs in scripts and interactive use.

Priority

p1 (high value, low risk, client-side only).

Dependencies / sequencing

None. Shares the create body-resolution path with #172; build this first.

Overlap

Shares body-population plumbing with #172 (create --template). Distinct features, not a merge; sequence #165 then #172.

## Problem `fj pr create` requires `--title` plus a body, retyping what the commits already contain. `gh pr create --fill` / `--fill-first` automate it. ## Acceptance criteria - [ ] `--fill`: title from the branch's commit subjects, body from their messages (single commit -> its subject + body; multiple -> a list of subjects). - [ ] `--fill-first`: title and body from the first commit only. - [ ] Derived purely from `git log <base>..<head>`; no new API call. - [ ] Explicit `--title` / `--body` / `-F` override the filled values. - [ ] Clear error when there are no commits between base and head. ## Value Removes the most common create friction; one-command PRs in scripts and interactive use. ## Priority p1 (high value, low risk, client-side only). ## Dependencies / sequencing None. Shares the create body-resolution path with #172; build this first. ## Overlap Shares body-population plumbing with #172 (`create --template`). Distinct features, not a merge; sequence #165 then #172.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
rasterstate/fj#165
No description provided.