@kurrent/kcap 0.11.29 → 0.11.31

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,5 +1,5 @@
1
1
  {
2
2
  "name": "kcap",
3
- "version": "0.11.29",
3
+ "version": "0.11.31",
4
4
  "description": "Records and visualizes Claude Code sessions via kcap CLI hooks"
5
5
  }
@@ -163,7 +163,7 @@ The server enforces per-run budgets; watch for these in tool error responses:
163
163
  - **`400` starting `daemon_outdated:`** — the daemon's kcap is too old to host flow participants. Relay the server error's remediation verbatim — it names the outdated daemon; the fix: update kcap (`npm i -g @kurrent/kcap`), then `kcap daemon restart --name <its-name>` (works for detached and service-managed daemons alike — a raw `daemon stop` deliberately refuses a service-managed one; `kcap daemon status` lists names, and `--when-idle` defers the restart if the daemon is busy).
164
164
  - **`409` containing `participant_unreachable`** — that role's agent is in an ambiguous liveness state (its daemon disconnected or is restarting) or a possibly-live prior agent was spotted and the server is refusing to relaunch until its absence is proven, so it won't guess whether it's still alive rather than risk a duplicate launch. This is retryable — do not close the flow. Retry the send shortly; the server relaunches automatically once absence is proven, or ask the user to stop the participant (dashboard/API) and then re-send to force a fresh relaunch.
165
165
  - **Reserved-alias reviewer-model errors** (only when you passed `model`): `reviewer_model_protocol_required` — the server/daemon doesn't support a model override yet; drop `model` and retry, or tell the user to update. `reviewer_model_unavailable` — no resolver for that vendor recognizes the model; ask for a different one or drop the override. `model_vendor_mismatch` — the model belongs to a different vendor than the one selected; ask the user which vendor they meant. `reviewer_model_safe_settlement_required` — the server can't safely reapply this model on a heal/relaunch; close the flow and start a new one. `reviewer_model_unpriceable` — the model has no resolvable pricing to budget-check; ask for a differently-named/priced model.
166
- - **A round result of `unclear` whose text is exactly `participant_died` or `participant_stopped`** — that role's agent crashed or was stopped mid-round. The run stays **open**: address the same role again with `send_to_participant` and it relaunches automatically — the fresh agent has **no memory of prior rounds**, so restate any context it needs in your message; its earlier spend still counts against the run budget. No need to close and restart the flow. Other roles are unaffected and remain addressable in the meantime.
166
+ - **A round result of `unclear` whose text is exactly `participant_died`, `participant_stopped`, or `participant_parked`** — that role's agent crashed, was stopped, or was parked for resume mid-round. In every case the run stays **open** and you address the same role again with `send_to_participant` to continue. The difference is what the next round gets: for `participant_died`/`participant_stopped` a **fresh** agent relaunches with **no memory of prior rounds**, so restate any context it needs; for `participant_parked` the same agent **resumes with its prior context intact** (a resumable park frees the slot between rounds). Earlier spend still counts against the run budget. No need to close and restart the flow; other roles are unaffected and remain addressable. (An older server reports a park as `participant_stopped` — still a resubmit trigger, so this works across the rollout.)
167
167
 
168
168
  ## Workflow
169
169
 
@@ -148,7 +148,7 @@ After applying the role-surface safety gate, if `start_review_flow` / `submit_re
148
148
  - **`client_upgrade_required`, `flow_client_protocol_required`, or `flow_client_protocol_unsupported`** — update kcap; reserved review aliases fail closed on stale clients.
149
149
  - **`reserved_review_alias_shape`** — an admin changed a reserved alias to an invalid participant shape; restore exactly one participant named `reviewer`.
150
150
  - **`409` containing `participant_unreachable`** — the reviewer's liveness is ambiguous right now: either its daemon disconnected/is restarting, or the server positively spotted a possibly-live prior agent and is refusing to relaunch until its absence is proven (never launching a duplicate reviewer beside a possibly-live one). This is retryable — **do not close the flow.** Submit the round again shortly with `submit_review_round`; the server relaunches the reviewer automatically once absence is proven (via the daemon reconnecting/reporting, or the agent's death being confirmed). If it keeps failing across many retries, that points at the daemon itself needing attention, not at the flow needing to be restarted — ask the user to check daemon status, or stop the reviewer (dashboard/API) to force a fresh relaunch.
151
- - **A round result of `unclear` whose text is exactly `participant_died` or `participant_stopped`** — the reviewer crashed or was stopped mid-round. The run stays open: submit another round with `submit_review_round` and it relaunches automatically — the fresh reviewer has **no memory of prior rounds**, so restate any context it needs in your updated context; its earlier spend still counts against the run budget. No need to close and restart the flow.
151
+ - **A round result of `unclear` whose text is exactly `participant_died`, `participant_stopped`, or `participant_parked`** — the reviewer crashed, was stopped, or was parked for resume mid-round. In every case the run stays open and you **submit another round** with `submit_review_round` to continue — no need to close and restart the flow. The difference is what the next round gets: for `participant_died`/`participant_stopped` a **fresh** reviewer relaunches with **no memory of prior rounds**, so restate any context it needs; for `participant_parked` the same reviewer **resumes with its prior context intact** (a resumable park frees the slot between rounds). Earlier spend still counts against the run budget. (An older server that predates the park signal reports a park as `participant_stopped` — still a resubmit trigger, so this works across the rollout.)
152
152
 
153
153
  ## Workflow
154
154
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kurrent/kcap",
3
- "version": "0.11.29",
3
+ "version": "0.11.31",
4
4
  "description": "CLI companion for Kurrent Capacitor — records and visualizes Claude Code sessions",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "repository": {
@@ -14,17 +14,17 @@
14
14
  "postinstall": "node bin/postinstall.js"
15
15
  },
16
16
  "optionalDependencies": {
17
- "@kurrent/kcap-darwin-arm64": "0.11.29",
18
- "@kurrent/kcap-linux-arm64": "0.11.29",
19
- "@kurrent/kcap-linux-musl-arm64": "0.11.29",
20
- "@kurrent/kcap-linux-musl-x64": "0.11.29",
21
- "@kurrent/kcap-linux-x64": "0.11.29",
22
- "@kurrent/kcap-win-x64": "0.11.29"
17
+ "@kurrent/kcap-darwin-arm64": "0.11.31",
18
+ "@kurrent/kcap-linux-arm64": "0.11.31",
19
+ "@kurrent/kcap-linux-musl-arm64": "0.11.31",
20
+ "@kurrent/kcap-linux-musl-x64": "0.11.31",
21
+ "@kurrent/kcap-linux-x64": "0.11.31",
22
+ "@kurrent/kcap-win-x64": "0.11.31"
23
23
  },
24
24
  "files": [
25
25
  "bin/",
26
26
  "kcap/"
27
27
  ],
28
- "kcapReleaseCommit": "248874aa7073bb6b0f767b6714f244b297a212f9",
29
- "kcapReleaseTag": "v0.11.29"
28
+ "kcapReleaseCommit": "a5d92c4d975b8f3726da532b99dfc6a4aafd0255",
29
+ "kcapReleaseTag": "v0.11.31"
30
30
  }