@kurrent/kcap 0.11.38 → 0.11.40

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.38",
3
+ "version": "0.11.40",
4
4
  "description": "Records and visualizes Claude Code sessions via kcap CLI hooks"
5
5
  }
package/kcap/README.md CHANGED
@@ -39,7 +39,7 @@ Search, save, and update durable team memories — preferences, feedback, projec
39
39
  |------|-------------|
40
40
  | `search_memories` | Hybrid semantic + keyword search over memories visible to you |
41
41
  | `get_memory` | Fetch a memory's full content by id or slug |
42
- | `save_memory` | Save a new memory (`audience`, `slug`, `description`, `content`, `kind`); scoped to the cwd repo unless `global: true` |
42
+ | `save_memory` | Save a new memory (`audience`, `slug`, `description`, `content`, `kind`); scoped to the cwd repo unless `project: <slug>` (a project's repos) or `global: true` (org-wide) |
43
43
  | `update_memory` | Update an existing memory's description/content/kind |
44
44
  | `rescope_memory` | Change a memory's audience (e.g. promote user → team/org) |
45
45
  | `archive_memory` | Soft-delete a memory |
@@ -33,6 +33,9 @@ no breakdown.
33
33
  - The structure changed (a part was dropped, a dependency no longer holds) →
34
34
  retract it.
35
35
  - You want to see the current structure → read the topology.
36
+ - Two items describe the same work (a title-only item you created and the
37
+ issue/PR-keyed item the server minted) → merge yours into the keyed one.
38
+ - The session was attached to the wrong item → detach it.
36
39
 
37
40
  ## The flow
38
41
 
@@ -50,10 +53,27 @@ no breakdown.
50
53
  5. **Verify** with `get_work_item_topology` (pass the parent's `work_item_id`) —
51
54
  it returns the parent, parts, and dependencies you can see.
52
55
 
56
+ ## Duplicates and wrong attaches
57
+
58
+ A `new_title` declare made before a PR or issue existed becomes a duplicate once the
59
+ server mints the keyed item for that work. Do not declare a breakdown to connect the
60
+ two — that records structure that isn't there. Merge instead:
61
+
62
+ - `merge_work_item` with `work_item_id` = the title-only item and `into_work_item_id` =
63
+ the keyed item. The keyed item survives; the title item's sessions and links move to
64
+ it. Repeating a landed merge is a no-op.
65
+ - The server refuses (409) when a user marked either item standalone, rejected the
66
+ pairing, or the items belong to different tracker hierarchies. Stop and tell the
67
+ user — they can merge from the dashboard. Do not retry.
68
+ - `detach_work_item` removes this session from an item it was wrongly attached to. The
69
+ removal is durable for automated correlation; an attachment a user pinned cannot be
70
+ removed by an agent.
71
+
53
72
  ## Rules the server enforces
54
73
 
55
- - **Same repository.** A parent and its parts, and both ends of a relation, must
56
- live in the same repository. Cross-repo structure is rejected.
74
+ - **Visibility, not repository.** Every item you name must be visible to you.
75
+ Repository is display only: a part may live in a different repository than its
76
+ parent, and a relation may cross repositories.
57
77
  - **One parent per part.** A part can belong to at most one parent breakdown.
58
78
  - **No self-relation.** An item cannot block or be blocked by itself.
59
79
  - **Idempotent declares.** Re-declaring an existing part or relation is fine.
@@ -61,6 +81,8 @@ no breakdown.
61
81
  the server resolves the caller. Don't look for such arguments.
62
82
  - **Retract, don't delete.** Use `retract_work_breakdown` / `retract_work_relation`
63
83
  when the structure changes.
84
+ - **Merges defer to user facts.** A standalone confirmation or a rejected pairing a
85
+ user recorded blocks an agent merge; only a user can lift it.
64
86
 
65
87
  ## Tool reference
66
88
 
@@ -73,6 +95,8 @@ no breakdown.
73
95
  | `declare_work_relation` | `from_id`, `to_id`, `relation_kind` (`blocks`\|`blocked_by`) | Declare a dependency. |
74
96
  | `retract_work_relation` | `from_id`, `to_id`, `relation_kind` | Retract a dependency. |
75
97
  | `get_work_item_topology` | `work_item_id` | Read parent, parts, and dependencies (visibility-scoped). |
98
+ | `merge_work_item` | `work_item_id`, `into_work_item_id` | Merge a duplicate into the survivor (prefer the keyed item as survivor). |
99
+ | `detach_work_item` | `work_item_id` | Detach the session from a wrongly attached item. `session_id` defaults to `KCAP_SESSION_ID`. |
76
100
 
77
101
  ## Requirements
78
102
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kurrent/kcap",
3
- "version": "0.11.38",
3
+ "version": "0.11.40",
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.38",
18
- "@kurrent/kcap-linux-arm64": "0.11.38",
19
- "@kurrent/kcap-linux-musl-arm64": "0.11.38",
20
- "@kurrent/kcap-linux-musl-x64": "0.11.38",
21
- "@kurrent/kcap-linux-x64": "0.11.38",
22
- "@kurrent/kcap-win-x64": "0.11.38"
17
+ "@kurrent/kcap-darwin-arm64": "0.11.40",
18
+ "@kurrent/kcap-linux-arm64": "0.11.40",
19
+ "@kurrent/kcap-linux-musl-arm64": "0.11.40",
20
+ "@kurrent/kcap-linux-musl-x64": "0.11.40",
21
+ "@kurrent/kcap-linux-x64": "0.11.40",
22
+ "@kurrent/kcap-win-x64": "0.11.40"
23
23
  },
24
24
  "files": [
25
25
  "bin/",
26
26
  "kcap/"
27
27
  ],
28
- "kcapReleaseCommit": "8fb743b2f31ba62ea34e9674c39c77917b6c0ae9",
29
- "kcapReleaseTag": "v0.11.38"
28
+ "kcapReleaseCommit": "4ec4163e8ca662d88f3af1ec9e4acfb46ae60316",
29
+ "kcapReleaseTag": "v0.11.40"
30
30
  }