@pmelab/gtd 28.0.0 → 28.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gtd",
3
- "version": "28.0.0",
3
+ "version": "28.2.0",
4
4
  "description": "Drive the gtd loop inside Claude Code: agent turns run as subagents, gtd decides every beat",
5
5
  "author": {
6
6
  "name": "Philipp Melab"
package/README.md CHANGED
@@ -336,16 +336,18 @@ questions one at a time, answers your own questions about the plan or the diff,
336
336
  records what you decide in the steering file the way the step asks, and moves
337
337
  the process on only when you say so; a review you leave untouched signs off.
338
338
  While a step runs you can keep asking; requests for changes wait for the next
339
- rest. When the process finishes, Claude offers to squash it into one commit and
340
- open its pull request (or run `/gtd ship`). A process can change hands at any
341
- gate: ask Claude to hand it off (or run `/gtd throw @dev`) and it opens a draft
342
- pull request assigned to them, and `/gtd catch <pr>` picks it up exactly where
343
- it waits, so whoever wrote the requirements can hand the architecture to someone
344
- else. Ship, hand-off and throw answer at once and run in the background, with
345
- progress on the status line; they report by waking Claude, a toast, a transcript
346
- line and a push notification, and a failed push or `gh` call reports as a
347
- failure. While a ship or hand-off runs or is queued, `/gtd catch`, the doors,
348
- `/gtd <requirements>` and bare `/gtd` wait for its report. See
339
+ rest. When the process finishes, Claude offers to squash it and open its pull
340
+ request(s) (or run `/gtd ship`; `GTD_SHIP_MODE` picks one stacked pull request
341
+ per slice or one commit per slice, see the [driver doc](docs/driver.md)). A
342
+ process can change hands at any gate: ask Claude to hand it off (or run
343
+ `/gtd throw @dev`) and it opens a draft pull request assigned to them, and
344
+ `/gtd catch <pr>` picks it up exactly where it waits, so whoever wrote the
345
+ requirements can hand the architecture to someone else. Ship, hand-off and throw
346
+ answer at once and run in the background, with progress on the status line; they
347
+ report by waking Claude, a toast, a transcript line and a push notification, and
348
+ a failed push or `gh` call reports as a failure. While a ship or hand-off runs
349
+ or is queued, `/gtd catch`, the doors, `/gtd <requirements>` and bare `/gtd`
350
+ wait for its report. See
349
351
  [Inside Claude Code](https://github.com/pmelab/gtd/blob/main/docs/driver.md#inside-claude-code-the-gtd-mod).
350
352
 
351
353
  ### Then let an agent build your own
@@ -623,9 +625,9 @@ When a process finishes, the landing that closes it also keeps the whole run
623
625
  behind a ref, `refs/gtd/history/<entry>`, so a squash or a deleted branch
624
626
  doesn't lose it. `/gtd ship` pushes this process's own ref to origin alongside
625
627
  the branch (never the others) and writes a `Gtd-History: <ref>` trailer on the
626
- squash commit. The push is forced, so it replaces origin's copy of that one ref.
627
- If that push fails, the ship fails and nothing is squashed. Recover the full
628
- trail with `gtd history fetch | sh`, then `gtd history show <ref>`.
628
+ commit of every slice. The push is forced, so it replaces origin's copy of that
629
+ one ref. If that push fails, the ship fails and nothing is squashed. Recover the
630
+ full trail with `gtd history fetch | sh`, then `gtd history show <ref>`.
629
631
 
630
632
  ```sh
631
633
  gtd history list # one line per kept process
@@ -694,7 +696,9 @@ listed in the
694
696
  `gtd slices` lists the spans a flow's `slice()` calls mark. It refuses (exit 1)
695
697
  when HEAD neither closes nor sits inside a process, or when today's config
696
698
  disagrees with history about the process; a version mismatch only warns on
697
- stderr.
699
+ stderr. `gtd summary --slice <name>` prints the closing-message prompt for one
700
+ of those slices — its own range, human commits and cost — and inherits those
701
+ refusals; an unknown name is refused with every valid slice listed.
698
702
 
699
703
  ## License
700
704
 
@@ -119,7 +119,7 @@ function trouble(w: Wake) {
119
119
  function finished(w: Wake) {
120
120
  return [
121
121
  `gtd finished the process on branch ${w.branch}.`,
122
- `Tell the person in two or three lines what was built (read the branch's commits), then ask whether to combine it into one commit and open its pull request. On yes, call ${TOOL.ship}.`,
122
+ `Tell the person in two or three lines what was built (read the branch's commits), then ask whether to squash it and open its pull request(s). On yes, call ${TOOL.ship}.`,
123
123
  ]
124
124
  }
125
125
 
@@ -593,7 +593,7 @@ async function shipNow($: $, isDry: boolean, isInTurn: boolean) {
593
593
  isInTurn,
594
594
  async () => {
595
595
  $.ui.status(isDry ? "previewing the pull request…" : "opening the pull request…")
596
- return ship(shipIo($), isDry)
596
+ return ship(shipIo($), isDry, await $.env.get("GTD_SHIP_MODE"))
597
597
  },
598
598
  async (shipped) => {
599
599
  // a failed ship leaves the run as it was; a dry run changes nothing