@rasensio/aidlc-content 1.63.0 → 1.65.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.
package/docs/roadmap.md CHANGED
@@ -148,7 +148,10 @@ Each item goes through these steps:
148
148
  boundary or the release boundary, or parks the item on a hard stop. A start that
149
149
  fails parks the item with `parked — could not start: <error>` and autopilot goes straight on to
150
150
  the next ready item; the parked one does not count toward `--items`. Retrying the same item every
151
- pass is what held a whole `--all` run on one item for five hours.
151
+ pass is what held a whole `--all` run on one item for five hours. An agent that exits with an
152
+ error within 30 seconds of launch parks the item with `agent failed to launch (exit <code>):`
153
+ and the first line it printed, so a flag the agent no longer accepts names itself instead of
154
+ reading as a failed build.
152
155
  3. **Your review, after each paused phase.** When a phase in `pause_after` is complete and
153
156
  unapproved, the item waits as `awaiting-review` — not parked. Read the artifact in the item's
154
157
  worktree, then `aidlc autopilot approve <instance>`; the next pass waits at the next paused
@@ -185,8 +188,8 @@ never edits a rank or a dependency: deciding what is agreed work stays a person'
185
188
  six questions on its own. Each is a list with one choice marked recommended:
186
189
 
187
190
  - **The agent, and what it may do.** Claude Code limited to editing files and running git, pnpm,
188
- node and read-only shell tools (recommended); Claude Code with full access; Codex in full-auto
189
- mode; or a command you type. This decides what an unattended agent may do on your machine, so
191
+ node and read-only shell tools (recommended); Claude Code with full access; Codex editing and
192
+ running commands inside its `workspace-write` sandbox; or a command you type. This decides what an unattended agent may do on your machine, so
190
193
  it is never picked for you: with no terminal, setup needs `--agent <preset>` or
191
194
  `--non-interactive`.
192
195
  - **How many items build at once** — two (recommended) or one.
@@ -225,6 +228,7 @@ autopilot:
225
228
  pause_after: [requirements, design] # or [] for no pauses
226
229
  stop_at: pr # or merge, or release
227
230
  release: repo-script # or merge-only — a preset name, never a command
231
+ notify: false # no desktop notifications; leave it out for them on
228
232
  ```
229
233
 
230
234
  **Upgrading changes nothing on its own.** A config with no `stop_at` and no `pause_after` behaves
@@ -247,6 +251,21 @@ fills only what is missing with the recommended choice.
247
251
  **Watching and stopping.** `aidlc autopilot status` shows the active run and each item's step, pull
248
252
  request, CI failure count and last error, and for an item waiting on you: the phase, its worktree and
249
253
  the `aidlc autopilot approve` command, or the pull request number to merge.
254
+ `aidlc autopilot status --watch` follows the run live: every 2 seconds it redraws one line per item —
255
+ its roadmap title, step, lifecycle phase, tasks done, how long it has been in its step, pull request
256
+ and CI state, and the last thing autopilot said about it, with its age — until the run ends. It only
257
+ reads, and Ctrl-C ends the view, never the run. Off a terminal (piped, or called by an agent) it
258
+ prints the view once and returns.
259
+
260
+ **Notifications.** A run sends a desktop notification (`osascript` on macOS, `notify-send` on Linux)
261
+ when an item is parked, fails — "release failed" or "queue halted" where that applies — waits for
262
+ your review or your merge, or is merged, released or closed, and when the run finishes. Each is sent
263
+ once, when it happens: a queue halted for hours notifies once, and nothing in the run waits on a
264
+ notification. `notify: false` in the team's `.aidlc/config.yaml` (above) or in this machine's
265
+ `config.json` turns them off; the machine's value wins. The run log likewise keeps the events and
266
+ drops the heartbeat: a line the previous pass already wrote, such as `nothing ready in the backlog`,
267
+ is not written again until it stops and comes back.
268
+
250
269
  `aidlc autopilot stop` (or `/aidlc-autopilot-stop`) ends the
251
270
  run at its next step: nothing further is started, merged or released, and agents already running
252
271
  finish their item. `aidlc autopilot pause` freezes the run and its agents where they are —
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rasensio/aidlc-content",
3
- "version": "1.63.0",
3
+ "version": "1.65.0",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -30,7 +30,7 @@ The CLI does the work. This skill starts it and says how to watch and stop it. D
30
30
  - *a run is already active* → report its pid and offer `aidlc autopilot stop` first.
31
31
  - *the run is paused* → offer `aidlc autopilot resume`.
32
32
 
33
- 5. **Report**, in six short lines: what it is doing (how many items), the `stops:` line `run` printed verbatim, the log file, `aidlc autopilot status` to watch, `aidlc autopilot pause` before the machine sleeps (`aidlc autopilot resume` after), and `/aidlc-autopilot-stop` (or `aidlc autopilot stop`) to stop. When the stops line says none are set, say plainly that every item will be merged and released with no review, and name `aidlc autopilot setup` as what changes that.
33
+ 5. **Report**, in six short lines: what it is doing (how many items), the `stops:` line `run` printed verbatim, the log file, `aidlc autopilot status --watch` to watch (one line per item, live, until the run ends), `aidlc autopilot pause` before the machine sleeps (`aidlc autopilot resume` after), and `/aidlc-autopilot-stop` (or `aidlc autopilot stop`) to stop. When the stops line says none are set, say plainly that every item will be merged and released with no review, and name `aidlc autopilot setup` as what changes that.
34
34
 
35
35
  6. **Where it stops for a person.** Two stops, both set in `aidlc autopilot setup` or `aidlc init` and on by default:
36
36
  - **After a phase** — the agent stops when a phase in `pause_after` completes (requirements and design by default). The item waits as `awaiting-review`; it is *not* parked. The user reads the artifact in the item's worktree, then `aidlc autopilot approve <instance>` carries it on.
@@ -38,7 +38,7 @@ The CLI does the work. This skill starts it and says how to watch and stop it. D
38
38
 
39
39
  One run can change both without touching the saved setup: `aidlc autopilot run --items 3 --stop-at merge` or `--pause-after design` (`--pause-after none` for no pauses, `--stop-at release` for the old merge-and-release). The flags apply to the items that run starts; an item already in flight keeps the stops it started with. A config saved before stops existed keeps today's behaviour — no pauses, merge and release — until somebody sets them.
40
40
 
41
- When the user asks what is waiting for them, run `aidlc autopilot status`: it names the phase, the worktree and the exact approve command for each waiting item.
41
+ When the user asks what is waiting for them, run `aidlc autopilot status`: it names the phase, the worktree and the exact approve command for each waiting item. When they ask how the items are getting on, run `aidlc autopilot status --watch`: called from here it prints each item's phase, tasks done, time in its step and last event once, and returns.
42
42
 
43
43
  7. **Pause and resume.** When the user is stepping away or closing the laptop, run `aidlc autopilot pause`; when they are back, `aidlc autopilot resume`. Report what each printed. If pause says a pass is in progress — a merge or a release — run it again a minute later rather than stopping the run.
44
44
 
@@ -49,6 +49,7 @@ The CLI does the work. This skill starts it and says how to watch and stop it. D
49
49
  - An agent that loses the network exits, and is parked. Sleep cuts the network, so a run on a laptop needs `aidlc autopilot pause` first: it freezes the run and its agents where they are, and `aidlc autopilot resume` carries on.
50
50
  - Before each merge, brings the item's branch up to date with main and waits for CI on the new head. A conflict with main goes back to the item's agent, twice at most, then the item is parked. A pull request someone merged by hand is dropped from tracking.
51
51
  - Halts the merge queue when a step fails. Running `aidlc autopilot run` again retries a failure that came before the merge; a failed release is for a person — `aidlc autopilot status` shows the error. `aidlc autopilot forget <instance>` stops tracking an item finished by hand.
52
+ - Sends a desktop notification, once each, when an item is parked, fails, waits for the user, or is done, and when the run ends. `notify: false` under `autopilot:` in `.aidlc/config.yaml` turns them off.
52
53
  - Ends when the asked-for items are each released or parked, or, with `--all`, when nothing is ready and nothing is in flight. An item waiting for a person keeps its run alive, so the run is still there to carry the item on after an approval or a merge.
53
54
 
54
55
  ## Exit Criteria