@mutmutco/pi-plugin 4.5.87 → 4.5.88

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mutmutco/pi-plugin",
3
- "version": "4.5.87",
3
+ "version": "4.5.88",
4
4
  "description": "MMI workflow skills and org gates delivery.",
5
5
  "author": {
6
6
  "name": "MMI Future",
@@ -27,9 +27,16 @@ Project. Partial reads exit nonzero; pass `--allow-partial` only when the dev ac
27
27
  Partition, as the CLI computes it:
28
28
 
29
29
  - **Yours** — assignee includes the viewer, status in `Todo · In Progress · In Review`.
30
- - **Free to claim** — status `Todo`, unassigned, and the viewer has push on the repo.
30
+ - **Free to claim** — status `Todo`, unassigned, and the viewer has push on the repo. Also any item in
31
+ any status whose claim stamp is stale: its session has done no work on it for 4 hours. A stale stamp
32
+ holds nothing; `board claim` takes it over without `--force` and names the old stamp.
31
33
  - **Taken** — someone else's, any active status.
32
34
 
35
+ Every stamped row names its session (`lane surface/session@host`), or `stale:<age>` when the stamp is
36
+ stale. Work means the stamp, an issue comment, a commit on the issue's branch, or an update to an open
37
+ PR that closes it. Any of these in the last 4 hours keeps the hold; a date that cannot be read counts as
38
+ work. A takeover keeps the old branch and PR and names them, so the new session continues them.
39
+
33
40
  ## Step 2 — render it
34
41
 
35
42
  Plain markdown, never a fenced block. Flat `-` lists under bold heads, never `##` headings, never tables.
@@ -100,8 +107,9 @@ Claim a whole batch in one call — it shares setup cost and returns per-item re
100
107
  mmi-cli oracle board claim <ref> <ref> <ref> --json
101
108
  ```
102
109
 
103
- Claiming validates `Todo` + unassigned, assigns the viewer, moves Status to `In Progress`, and stamps a
104
- lane-identity comment so other agents can attribute the hold. Any per-item failure exits nonzero — read
110
+ Claiming takes a card that is unassigned or assigned to the viewer, in `Todo`, `In Progress` or
111
+ `In Review`, unless another session still shows work on it in the last 4 hours (then it refuses). It assigns the viewer, moves Status to
112
+ `In Progress`, and stamps a lane-identity comment so other agents can attribute the hold. Any per-item failure exits nonzero — read
105
113
  the per-item results rather than assuming the batch took. **Route is `oracle board claim` only**; there is
106
114
  no `oracle issue claim` and no flat `board claim` — both refuse. Guessing either burns a call.
107
115