@rness/cli 0.15.0 → 0.16.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/README.md CHANGED
@@ -119,9 +119,10 @@ the files a given agent needs, for the agents the team declares in
119
119
  A new document takes the collection's first status (`Proposed` for an
120
120
  ADR, `Draft` otherwise) and the next number of the local checkout; two
121
121
  branches can pick the same one. Each skill records its session: it adds
122
- the Claude Code session id to `sessions:` in the front matter of what it
123
- writes or closes — an edit made without a skill leaves none. No skill
124
- commits.
122
+ `{ id: <session id>, agent: <model> }` to `sessions:` in the front matter
123
+ of what it writes or closes. The agent is the model it runs as, as Claude
124
+ Code names it (`Claude Opus 5.5`): no variable gives it to a skill. An
125
+ edit made without a skill leaves none. No skill commits.
125
126
  - rness owns values, not files: what is missing is added, nothing else is
126
127
  touched, and a file it cannot parse is reported, never rewritten.
127
128
  `sync --check` and `validate` report a missing value. Removing an agent
@@ -234,17 +235,22 @@ in its Settings`.
234
235
  collection fields' options: every contract status plus the ones found in
235
236
  `.rness/`, in lifecycle order, at most 50), `Collection` (one option per tab of
236
237
  `rness status`; not `Type`, which is GitHub's own issue-type field and
237
- filter), `Agent` (`working`), `Session` (`claude · 1a2b3c4d`, plus the
238
- agent type for a subagent), `Path` and `Sessions` — the document's
239
- `sessions:` (see "Agent targets"), joined by `, `, written by sync and
240
- never cleared: which sessions wrote a specification or implemented a plan,
241
- after they ended (`claude --resume <id>` reopens one on the machine it ran
242
- on). A board made before 0.15.0 gains `Sessions` at its next sync. A board per directory, named as
238
+ filter), `Agent` (`working`), `Working session` (`claude · 1a2b3c4d`,
239
+ plus the agent type for a subagent: the session working on the document
240
+ now, cleared when it ends), `Path`, and `Session history` — the
241
+ document's `sessions:` (see "Agent targets"), each `Claude Opus 5.5 ·
242
+ <id>` (the id alone for an entry without its agent), joined by `, `,
243
+ written by sync and never cleared: which sessions wrote a specification
244
+ or implemented a plan, after they ended (`claude --resume <id>` reopens
245
+ one on the machine it ran on). A board made before 0.15.0 gains
246
+ `Session history` at its next sync; one from 0.15 has its `Session` and
247
+ `Sessions` renamed in place, values and views kept (`renamed field
248
+ Session → Working session`). A board per directory, named as
243
249
  `rness status` names its tab, filtered on its `Collection`, its columns
244
250
  that collection's own steps: each collection has its own status field
245
251
  (`ADR status`, `Specs status`, …; a directory without statuses is columned
246
252
  by `Status`, which holds them all for the `All` table). `pulse sync`
247
- remakes a board built by an earlier version (its URL changes once); a `Working` table, filtered on `Agent: working`. A first view named `View 1` (GitHub's default) becomes `All` when no `All` exists, on create and on sync, showing Title, Collection, Status and Session. Options are coloured (statuses by lifecycle: blue proposed, purple approved, yellow in progress, red blocked or rejected, yellow superseded, green done, gray abandoned; collections and `working` too); a sync recolours rness's options and leaves other options' colours alone. rness does
253
+ remakes a board built by an earlier version (its URL changes once); a `Working` table, filtered on `Agent: working`. A first view named `View 1` (GitHub's default) becomes `All` when no `All` exists, on create and on sync, showing Title, Collection, Status and Working session. Options are coloured (statuses by lifecycle: blue proposed, purple approved, yellow in progress, red blocked or rejected, yellow superseded, green done, gray abandoned; collections and `working` too); a sync recolours rness's options and leaves other options' colours alone. rness does
248
254
  not set the project's visibility: the project gets GitHub's default for a
249
255
  new organization project, which is private (`public: false`). Verified
250
256
  with Claude Code 2.1.284 on 2026-09-29.
@@ -310,6 +316,13 @@ added to project`) may change a field of rness's items; the next sync
310
316
  `the pulse needs the project scope: run rness login` or
311
317
  `cannot reach GitHub: …`. Two sessions marking one plan both write; the
312
318
  last wins.
319
+ - **One issue per document**: before making an issue, `pulse sync` reads
320
+ the open issues of `.rness` labelled `rness` (one request per 100, and
321
+ only when it has one to make). One whose body starts with the document's
322
+ first line was made by an earlier sync, whose item the board's listing
323
+ did not show yet. It is added to the board instead of made again, and
324
+ the output says `adopted 1 issue already made for its document`. Seen on
325
+ 2026-09-30: two syncs 18 s apart made two issues for one document.
313
326
  - **Rate**: rness sends one request at a time. A new document costs an
314
327
  issue, its addition to the board, up to five fields, then its body. An
315
328
  unchanged document costs nothing but its share of the listing, which
@@ -345,7 +358,7 @@ repository, the board).
345
358
  `contract`, `provider`, `org`, `agents`, `pulse`, `repos`, `scopes`.
346
359
  - A provider _written_ in `rness.json` that this version cannot talk to
347
360
  (`gitlab`) is refused by `validate`, `create`, `login` and `pulse`:
348
- `provider "gitlab" is not supported by @rness/cli 0.15.0 (supported:
361
+ `provider "gitlab" is not supported by @rness/cli 0.16.0 (supported:
349
362
  github)`. `add`, `sync` and the local commands never refuse. `null` is not a
350
363
  value: an absent key means none.
351
364
 
@@ -522,6 +535,37 @@ per repository, the files to commit there.
522
535
  Exit codes: 0 success, 1 failure, 2 usage — or a refusal without a TTY.
523
536
  `RNESS_DEBUG=1` adds stack traces; `RNESS_NO_DELEGATE=1` skips the delegation.
524
537
 
538
+ ## 0.16.0 — Working session and Session history; the agent in the history
539
+
540
+ - Agent Pulse's session fields are renamed so that the names say what
541
+ they hold: `Session` becomes `Working session` (the session working on
542
+ a document now) and `Sessions` becomes `Session history` (every session
543
+ that changed it). The first `pulse sync` with 0.16.0 renames them in
544
+ place: values, ids and views stay. Until then, marks use whichever name
545
+ the board has. See "Pulse".
546
+ - `Session history` names each session's agent: `Claude Opus 5.5 ·
547
+ 1e9cb41b-…`. The lifecycle skills now record `{ id, agent }` in
548
+ `sessions:`; a bare id, as 0.15 wrote it, still reads, and shows alone.
549
+ `rness upgrade` rewrites the four skills: commit `.claude/skills/rness/`
550
+ in each repository. See "Agent targets".
551
+ - Blocks are unchanged.
552
+
553
+ ## 0.15.1 — upgrade names every file to commit
554
+
555
+ - `rness upgrade`'s next steps name every file the new version's sync
556
+ wrote in a repository. They used to be listed from the running copy,
557
+ which does not know the files a newer release adds: 0.13.0 named two of
558
+ the plugin's six files after syncing with 0.14.0. The running copy now
559
+ asks the copy it installed. This applies to upgrades run by 0.15.1 or
560
+ later; from an older copy, commit `.claude/skills/rness/` whole, as the
561
+ changelog of each release says.
562
+ - Agent Pulse no longer gives a document a second issue when two syncs
563
+ follow each other within seconds. The second one's listing of the board
564
+ may not show the item the first one added yet. Before making an issue,
565
+ `pulse sync` now looks for an open issue of `.rness` already made for the
566
+ document, and adds that one (`adopted 1 issue`). See "Pulse".
567
+ - Blocks are unchanged.
568
+
525
569
  ## 0.15.0 — Agent Pulse follows a status change; the sessions are kept
526
570
 
527
571
  - An edit that changes a document's status syncs Agent Pulse at once: its
package/dist/bin/rness.js CHANGED
@@ -6,7 +6,7 @@ import {
6
6
  findDelegate,
7
7
  reportError,
8
8
  run
9
- } from "../chunk-HGT7BIWK.js";
9
+ } from "../chunk-ABCO6D6B.js";
10
10
 
11
11
  // src/bin/rness.ts
12
12
  import { pathToFileURL } from "url";