@cerbur/clutch-dsh-worktree 0.1.2 → 0.1.4

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.
Files changed (143) hide show
  1. package/README.md +247 -92
  2. package/README.zh.md +297 -0
  3. package/lib/client/WorktreeContext.d.ts +15 -0
  4. package/lib/client/WorktreeContext.d.ts.map +1 -0
  5. package/lib/client/WorktreeContext.js +19 -0
  6. package/lib/client/WorktreeContext.js.map +1 -0
  7. package/lib/client/WorktreeHeroContext.d.ts +10 -0
  8. package/lib/client/WorktreeHeroContext.d.ts.map +1 -0
  9. package/lib/client/WorktreeHeroContext.js +128 -0
  10. package/lib/client/WorktreeHeroContext.js.map +1 -0
  11. package/lib/client/WorktreeOverlay.d.ts +6 -0
  12. package/lib/client/WorktreeOverlay.d.ts.map +1 -0
  13. package/lib/client/WorktreeOverlay.js +8 -0
  14. package/lib/client/WorktreeOverlay.js.map +1 -0
  15. package/lib/client/WorktreeSurface.d.ts +3 -29
  16. package/lib/client/WorktreeSurface.d.ts.map +1 -1
  17. package/lib/client/WorktreeSurface.js +170 -314
  18. package/lib/client/WorktreeSurface.js.map +1 -1
  19. package/lib/client/entry.d.ts +1 -1
  20. package/lib/client/entry.d.ts.map +1 -1
  21. package/lib/client/entry.js +41 -14
  22. package/lib/client/entry.js.map +1 -1
  23. package/lib/client/locales.d.ts +30 -0
  24. package/lib/client/locales.d.ts.map +1 -1
  25. package/lib/client/locales.js +32 -2
  26. package/lib/client/locales.js.map +1 -1
  27. package/lib/client/session-view.d.ts +21 -0
  28. package/lib/client/session-view.d.ts.map +1 -0
  29. package/lib/client/session-view.js +26 -0
  30. package/lib/client/session-view.js.map +1 -0
  31. package/lib/client/sidebar-overlay-geometry.d.ts +1 -0
  32. package/lib/client/sidebar-overlay-geometry.d.ts.map +1 -1
  33. package/lib/client/sidebar-overlay-geometry.js +28 -17
  34. package/lib/client/sidebar-overlay-geometry.js.map +1 -1
  35. package/lib/client/virtual-workspace-membership.d.ts.map +1 -1
  36. package/lib/client/virtual-workspace-membership.js +17 -6
  37. package/lib/client/virtual-workspace-membership.js.map +1 -1
  38. package/lib/client/worktree-connection.d.ts +1 -0
  39. package/lib/client/worktree-connection.d.ts.map +1 -1
  40. package/lib/client/worktree-connection.js +4 -0
  41. package/lib/client/worktree-connection.js.map +1 -1
  42. package/lib/client/worktree-context-store.d.ts +45 -0
  43. package/lib/client/worktree-context-store.d.ts.map +1 -0
  44. package/lib/client/worktree-context-store.js +199 -0
  45. package/lib/client/worktree-context-store.js.map +1 -0
  46. package/lib/client/worktree-context.d.ts +32 -0
  47. package/lib/client/worktree-context.d.ts.map +1 -0
  48. package/lib/client/worktree-context.js +51 -0
  49. package/lib/client/worktree-context.js.map +1 -0
  50. package/lib/client/worktree-error-copy.d.ts.map +1 -1
  51. package/lib/client/worktree-error-copy.js +14 -0
  52. package/lib/client/worktree-error-copy.js.map +1 -1
  53. package/lib/client/worktree-session.d.ts +83 -0
  54. package/lib/client/worktree-session.d.ts.map +1 -0
  55. package/lib/client/worktree-session.js +185 -0
  56. package/lib/client/worktree-session.js.map +1 -0
  57. package/lib/client/worktree-surface-dialogs.d.ts +7 -0
  58. package/lib/client/worktree-surface-dialogs.d.ts.map +1 -0
  59. package/lib/client/worktree-surface-dialogs.js +86 -0
  60. package/lib/client/worktree-surface-dialogs.js.map +1 -0
  61. package/lib/client/worktree-surface-rows.d.ts +9 -0
  62. package/lib/client/worktree-surface-rows.d.ts.map +1 -0
  63. package/lib/client/worktree-surface-rows.js +223 -0
  64. package/lib/client/worktree-surface-rows.js.map +1 -0
  65. package/lib/client/worktree-surface-selectors.d.ts +9 -0
  66. package/lib/client/worktree-surface-selectors.d.ts.map +1 -0
  67. package/lib/client/worktree-surface-selectors.js +28 -0
  68. package/lib/client/worktree-surface-selectors.js.map +1 -0
  69. package/lib/client/worktree-surface-types.d.ts +233 -0
  70. package/lib/client/worktree-surface-types.d.ts.map +1 -0
  71. package/lib/client/worktree-surface-types.js +2 -0
  72. package/lib/client/worktree-surface-types.js.map +1 -0
  73. package/lib/client/worktree-view-actions.d.ts +34 -0
  74. package/lib/client/worktree-view-actions.d.ts.map +1 -0
  75. package/lib/client/worktree-view-actions.js +69 -0
  76. package/lib/client/worktree-view-actions.js.map +1 -0
  77. package/lib/client/worktree-view-errors.d.ts +20 -0
  78. package/lib/client/worktree-view-errors.d.ts.map +1 -0
  79. package/lib/client/worktree-view-errors.js +65 -0
  80. package/lib/client/worktree-view-errors.js.map +1 -0
  81. package/lib/client/worktree-view-read.d.ts +48 -0
  82. package/lib/client/worktree-view-read.d.ts.map +1 -0
  83. package/lib/client/worktree-view-read.js +134 -0
  84. package/lib/client/worktree-view-read.js.map +1 -0
  85. package/lib/client/worktree-view.d.ts +4 -63
  86. package/lib/client/worktree-view.d.ts.map +1 -1
  87. package/lib/client/worktree-view.js +4 -125
  88. package/lib/client/worktree-view.js.map +1 -1
  89. package/lib/client.js +1313 -363
  90. package/lib/client.js.map +1 -1
  91. package/lib/contract/index.contract.js +2 -0
  92. package/lib/contract/index.contract.js.map +1 -1
  93. package/lib/contract/index.d.ts +17 -2
  94. package/lib/contract/index.d.ts.map +1 -1
  95. package/lib/contract/index.js +2 -0
  96. package/lib/contract/index.js.map +1 -1
  97. package/lib/host/remote.d.ts.map +1 -1
  98. package/lib/host/remote.js +1 -0
  99. package/lib/host/remote.js.map +1 -1
  100. package/lib/host/service.d.ts +6 -1
  101. package/lib/host/service.d.ts.map +1 -1
  102. package/lib/host/service.js +6 -0
  103. package/lib/host/service.js.map +1 -1
  104. package/lib/manage/manager-context.d.ts +11 -0
  105. package/lib/manage/manager-context.d.ts.map +1 -0
  106. package/lib/manage/manager-context.js +2 -0
  107. package/lib/manage/manager-context.js.map +1 -0
  108. package/lib/manage/manager-sessions.d.ts +18 -0
  109. package/lib/manage/manager-sessions.d.ts.map +1 -0
  110. package/lib/manage/manager-sessions.js +91 -0
  111. package/lib/manage/manager-sessions.js.map +1 -0
  112. package/lib/manage/manager-support.d.ts +18 -0
  113. package/lib/manage/manager-support.d.ts.map +1 -0
  114. package/lib/manage/manager-support.js +174 -0
  115. package/lib/manage/manager-support.js.map +1 -0
  116. package/lib/manage/manager-worktrees.d.ts +27 -0
  117. package/lib/manage/manager-worktrees.d.ts.map +1 -0
  118. package/lib/manage/manager-worktrees.js +259 -0
  119. package/lib/manage/manager-worktrees.js.map +1 -0
  120. package/lib/manage/manager.d.ts +25 -62
  121. package/lib/manage/manager.d.ts.map +1 -1
  122. package/lib/manage/manager.js +32 -554
  123. package/lib/manage/manager.js.map +1 -1
  124. package/lib/provider/sidecar-persistence.d.ts +18 -0
  125. package/lib/provider/sidecar-persistence.d.ts.map +1 -0
  126. package/lib/provider/sidecar-persistence.js +162 -0
  127. package/lib/provider/sidecar-persistence.js.map +1 -0
  128. package/lib/provider/sidecar-schema.d.ts +6 -0
  129. package/lib/provider/sidecar-schema.d.ts.map +1 -0
  130. package/lib/provider/sidecar-schema.js +123 -0
  131. package/lib/provider/sidecar-schema.js.map +1 -0
  132. package/lib/provider/sidecar.d.ts +12 -68
  133. package/lib/provider/sidecar.d.ts.map +1 -1
  134. package/lib/provider/sidecar.js +61 -346
  135. package/lib/provider/sidecar.js.map +1 -1
  136. package/lib/provider/types.d.ts +2 -1
  137. package/lib/provider/types.d.ts.map +1 -1
  138. package/lib/provider/types.js.map +1 -1
  139. package/lib/typert.host.js +60 -18
  140. package/lib/typert.remote-client.d.ts +3 -1
  141. package/lib/typert.remote-client.d.ts.map +1 -1
  142. package/lib/typert.remote-client.js +60 -18
  143. package/package.json +6 -2
@@ -7,6 +7,7 @@ const JsonValueRemoteCodec$schema3 = z.union([z.literal(null), z.string(), z.num
7
7
  const JsonValueRemoteCodec$schema4 = z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema4)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema4)).readonly()])
8
8
  const JsonValueRemoteCodec$schema5 = z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema5)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema5)).readonly()])
9
9
  const JsonValueRemoteCodec$schema6 = z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema6)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema6)).readonly()])
10
+ const JsonValueRemoteCodec$schema7 = z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema7)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema7)).readonly()])
10
11
  const _cerbur_clutch_dsh_worktree_worktreeManager_bindSession_parameter_0$schema = z.object({
11
12
  'workspaceId': z.string().readonly(),
12
13
  'worktreeId': z.string().readonly(),
@@ -15,9 +16,9 @@ const _cerbur_clutch_dsh_worktree_worktreeManager_bindSession_parameter_0$schema
15
16
  const _cerbur_clutch_dsh_worktree_worktreeManager_bindSession_result$schema = z.union([z.object({
16
17
  'ok': z.literal(false).readonly(),
17
18
  'error': z.object({
18
- 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
19
+ 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_ORDER_INVALID"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
19
20
  'message': z.string().readonly(),
20
- 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema2)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema2)).readonly()])).readonly().readonly(),
21
+ 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema3)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema3)).readonly()])).readonly().readonly(),
21
22
  }).readonly(),
22
23
  }), z.object({
23
24
  'ok': z.literal(true).readonly(),
@@ -36,9 +37,9 @@ const _cerbur_clutch_dsh_worktree_worktreeManager_createWorktree_parameter_0$sch
36
37
  const _cerbur_clutch_dsh_worktree_worktreeManager_createWorktree_result$schema = z.union([z.object({
37
38
  'ok': z.literal(false).readonly(),
38
39
  'error': z.object({
39
- 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
40
+ 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_ORDER_INVALID"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
40
41
  'message': z.string().readonly(),
41
- 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema5)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema5)).readonly()])).readonly().readonly(),
42
+ 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema6)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema6)).readonly()])).readonly().readonly(),
42
43
  }).readonly(),
43
44
  }), z.object({
44
45
  'ok': z.literal(true).readonly(),
@@ -51,15 +52,31 @@ const _cerbur_clutch_dsh_worktree_worktreeManager_createWorktree_result$schema =
51
52
  'health': z.union([z.undefined(), z.literal("ready"), z.literal("repair")]).readonly().optional(),
52
53
  }).readonly(),
53
54
  })])
55
+ const _cerbur_clutch_dsh_worktree_worktreeManager_insertWorktreeBefore_parameter_0$schema = z.object({
56
+ 'workspaceId': z.string().readonly(),
57
+ 'worktreeId': z.string().readonly(),
58
+ 'beforeWorktreeId': z.union([z.undefined(), z.string()]).readonly().optional(),
59
+ })
60
+ const _cerbur_clutch_dsh_worktree_worktreeManager_insertWorktreeBefore_result$schema = z.union([z.object({
61
+ 'ok': z.literal(false).readonly(),
62
+ 'error': z.object({
63
+ 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_ORDER_INVALID"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
64
+ 'message': z.string().readonly(),
65
+ 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema)).readonly()])).readonly().readonly(),
66
+ }).readonly(),
67
+ }), z.object({
68
+ 'ok': z.literal(true).readonly(),
69
+ 'value': z.array(z.string()).readonly(),
70
+ })])
54
71
  const _cerbur_clutch_dsh_worktree_worktreeManager_listBindings_parameter_0$schema = z.object({
55
72
  'workspaceId': z.string().readonly(),
56
73
  })
57
74
  const _cerbur_clutch_dsh_worktree_worktreeManager_listBindings_result$schema = z.union([z.object({
58
75
  'ok': z.literal(false).readonly(),
59
76
  'error': z.object({
60
- 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
77
+ 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_ORDER_INVALID"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
61
78
  'message': z.string().readonly(),
62
- 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema)).readonly()])).readonly().readonly(),
79
+ 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema2)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema2)).readonly()])).readonly().readonly(),
63
80
  }).readonly(),
64
81
  }), z.object({
65
82
  'ok': z.literal(true).readonly(),
@@ -76,9 +93,9 @@ const _cerbur_clutch_dsh_worktree_worktreeManager_listBranches_parameter_0$schem
76
93
  const _cerbur_clutch_dsh_worktree_worktreeManager_listBranches_result$schema = z.union([z.object({
77
94
  'ok': z.literal(false).readonly(),
78
95
  'error': z.object({
79
- 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
96
+ 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_ORDER_INVALID"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
80
97
  'message': z.string().readonly(),
81
- 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema4)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema4)).readonly()])).readonly().readonly(),
98
+ 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema5)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema5)).readonly()])).readonly().readonly(),
82
99
  }).readonly(),
83
100
  }), z.object({
84
101
  'ok': z.literal(true).readonly(),
@@ -94,9 +111,9 @@ const _cerbur_clutch_dsh_worktree_worktreeManager_listWorktrees_parameter_0$sche
94
111
  const _cerbur_clutch_dsh_worktree_worktreeManager_listWorktrees_result$schema = z.union([z.object({
95
112
  'ok': z.literal(false).readonly(),
96
113
  'error': z.object({
97
- 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
114
+ 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_ORDER_INVALID"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
98
115
  'message': z.string().readonly(),
99
- 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema3)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema3)).readonly()])).readonly().readonly(),
116
+ 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema4)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema4)).readonly()])).readonly().readonly(),
100
117
  }).readonly(),
101
118
  }), z.object({
102
119
  'ok': z.literal(true).readonly(),
@@ -116,9 +133,9 @@ const _cerbur_clutch_dsh_worktree_worktreeManager_removeWorktree_parameter_0$sch
116
133
  const _cerbur_clutch_dsh_worktree_worktreeManager_removeWorktree_result$schema = z.union([z.object({
117
134
  'ok': z.literal(false).readonly(),
118
135
  'error': z.object({
119
- 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
136
+ 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_ORDER_INVALID"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
120
137
  'message': z.string().readonly(),
121
- 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema6)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema6)).readonly()])).readonly().readonly(),
138
+ 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema7)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema7)).readonly()])).readonly().readonly(),
122
139
  }).readonly(),
123
140
  }), z.object({
124
141
  'ok': z.literal(true).readonly(),
@@ -154,7 +171,7 @@ export const TYPERT = {
154
171
  typeSymbol: '@cerbur/clutch-dsh-worktree/contract#WorktreeRemoteResult',
155
172
  schema: _cerbur_clutch_dsh_worktree_worktreeManager_bindSession_result$schema,
156
173
  },
157
- sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":106,"column":3},
174
+ sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":116,"column":3},
158
175
  },
159
176
  {
160
177
  id: '@cerbur/clutch-dsh-worktree#worktreeManager/createWorktree',
@@ -179,7 +196,32 @@ export const TYPERT = {
179
196
  typeSymbol: '@cerbur/clutch-dsh-worktree/contract#WorktreeRemoteResult',
180
197
  schema: _cerbur_clutch_dsh_worktree_worktreeManager_createWorktree_result$schema,
181
198
  },
182
- sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":82,"column":3},
199
+ sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":83,"column":3},
200
+ },
201
+ {
202
+ id: '@cerbur/clutch-dsh-worktree#worktreeManager/insertWorktreeBefore',
203
+ service: 'worktreeManager',
204
+ namespace: 'worktreeManager',
205
+ method: 'insertWorktreeBefore',
206
+ invocation: { kind: 'direct' },
207
+ parameters: [
208
+ {
209
+ name: 'input',
210
+ wire: 'input',
211
+ source: 'json',
212
+ codec: {
213
+ mode: 'strict',
214
+ typeSymbol: '@cerbur/clutch-dsh-worktree#worktreeManager/insertWorktreeBefore:input',
215
+ schema: _cerbur_clutch_dsh_worktree_worktreeManager_insertWorktreeBefore_parameter_0$schema,
216
+ },
217
+ },
218
+ ],
219
+ result: {
220
+ mode: 'strict',
221
+ typeSymbol: '@cerbur/clutch-dsh-worktree/contract#WorktreeRemoteResult',
222
+ schema: _cerbur_clutch_dsh_worktree_worktreeManager_insertWorktreeBefore_result$schema,
223
+ },
224
+ sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":100,"column":3},
183
225
  },
184
226
  {
185
227
  id: '@cerbur/clutch-dsh-worktree#worktreeManager/listBindings',
@@ -204,7 +246,7 @@ export const TYPERT = {
204
246
  typeSymbol: '@cerbur/clutch-dsh-worktree/contract#WorktreeRemoteResult',
205
247
  schema: _cerbur_clutch_dsh_worktree_worktreeManager_listBindings_result$schema,
206
248
  },
207
- sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":99,"column":3},
249
+ sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":109,"column":3},
208
250
  },
209
251
  {
210
252
  id: '@cerbur/clutch-dsh-worktree#worktreeManager/listBranches',
@@ -229,7 +271,7 @@ export const TYPERT = {
229
271
  typeSymbol: '@cerbur/clutch-dsh-worktree/contract#WorktreeRemoteResult',
230
272
  schema: _cerbur_clutch_dsh_worktree_worktreeManager_listBranches_result$schema,
231
273
  },
232
- sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":75,"column":3},
274
+ sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":76,"column":3},
233
275
  },
234
276
  {
235
277
  id: '@cerbur/clutch-dsh-worktree#worktreeManager/listWorktrees',
@@ -254,7 +296,7 @@ export const TYPERT = {
254
296
  typeSymbol: '@cerbur/clutch-dsh-worktree/contract#WorktreeRemoteResult',
255
297
  schema: _cerbur_clutch_dsh_worktree_worktreeManager_listWorktrees_result$schema,
256
298
  },
257
- sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":68,"column":3},
299
+ sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":69,"column":3},
258
300
  },
259
301
  {
260
302
  id: '@cerbur/clutch-dsh-worktree#worktreeManager/removeWorktree',
@@ -279,7 +321,7 @@ export const TYPERT = {
279
321
  typeSymbol: '@cerbur/clutch-dsh-worktree/contract#WorktreeRemoteResult',
280
322
  schema: _cerbur_clutch_dsh_worktree_worktreeManager_removeWorktree_result$schema,
281
323
  },
282
- sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":91,"column":3},
324
+ sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":92,"column":3},
283
325
  },
284
326
  ],
285
327
  model: {
@@ -3,12 +3,13 @@ import type {
3
3
  RemoteResult,
4
4
  TypertRemoteContribution,
5
5
  } from '@deepseek-ai/dsh-typert-protocol'
6
- import type { BranchRecord, SessionBinding, WorktreeRecord, WorktreeRemoteResult } from '@cerbur/clutch-dsh-worktree/contract'
6
+ import type { BranchRecord, SessionBinding, WorktreeId, WorktreeRecord, WorktreeRemoteResult } from '@cerbur/clutch-dsh-worktree/contract'
7
7
 
8
8
  declare module '@deepseek-ai/dsh-typert-protocol' {
9
9
  interface TypertRemoteNamespace$776f726b747265654d616e61676572 {
10
10
  bindSession: (input: { readonly workspaceId: string; readonly worktreeId: string; readonly sessionId: string; }) => Promise<RemoteResult<WorktreeRemoteResult<SessionBinding>>>
11
11
  createWorktree: (input: { readonly workspaceId: string; readonly branch: string; readonly newBranch?: string; }) => Promise<RemoteResult<WorktreeRemoteResult<WorktreeRecord>>>
12
+ insertWorktreeBefore: (input: { readonly workspaceId: string; readonly worktreeId: string; readonly beforeWorktreeId?: string; }) => Promise<RemoteResult<WorktreeRemoteResult<readonly WorktreeId[]>>>
12
13
  listBindings: (input: { readonly workspaceId: string; }) => Promise<RemoteResult<WorktreeRemoteResult<readonly SessionBinding[]>>>
13
14
  listBranches: (input: { readonly workspaceId: string; }) => Promise<RemoteResult<WorktreeRemoteResult<readonly BranchRecord[]>>>
14
15
  listWorktrees: (input: { readonly workspaceId: string; }) => Promise<RemoteResult<WorktreeRemoteResult<readonly WorktreeRecord[]>>>
@@ -17,6 +18,7 @@ declare module '@deepseek-ai/dsh-typert-protocol' {
17
18
  interface TypertRemoteMap {
18
19
  'worktreeManager/bindSession': (input: { readonly workspaceId: string; readonly worktreeId: string; readonly sessionId: string; }) => Promise<RemoteResult<WorktreeRemoteResult<SessionBinding>>>
19
20
  'worktreeManager/createWorktree': (input: { readonly workspaceId: string; readonly branch: string; readonly newBranch?: string; }) => Promise<RemoteResult<WorktreeRemoteResult<WorktreeRecord>>>
21
+ 'worktreeManager/insertWorktreeBefore': (input: { readonly workspaceId: string; readonly worktreeId: string; readonly beforeWorktreeId?: string; }) => Promise<RemoteResult<WorktreeRemoteResult<readonly WorktreeId[]>>>
20
22
  'worktreeManager/listBindings': (input: { readonly workspaceId: string; }) => Promise<RemoteResult<WorktreeRemoteResult<readonly SessionBinding[]>>>
21
23
  'worktreeManager/listBranches': (input: { readonly workspaceId: string; }) => Promise<RemoteResult<WorktreeRemoteResult<readonly BranchRecord[]>>>
22
24
  'worktreeManager/listWorktrees': (input: { readonly workspaceId: string; }) => Promise<RemoteResult<WorktreeRemoteResult<readonly WorktreeRecord[]>>>
@@ -1 +1 @@
1
- {"version":3,"file":"typert.remote-client.d.ts","names":["bindSession","createWorktree","listBindings","listBranches","listWorktrees","removeWorktree"],"sources":["../src/host/service.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;IAyGEA,W;IAxBAC,c;IAiBAC,Y;IAxBAC,Y;IAPAC,a;IAuBAC,c;;;IAeAL,6B;IAxBAC,gC;IAiBAC,8B;IAxBAC,8B;IAPAC,+B;IAuBAC,gC","ignoreList":[]}
1
+ {"version":3,"file":"typert.remote-client.d.ts","names":["bindSession","createWorktree","insertWorktreeBefore","listBindings","listBranches","listWorktrees","removeWorktree"],"sources":["../src/host/service.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;IAmHEA,W;IAjCAC,c;IAiBAC,oB;IASAC,Y;IAjCAC,Y;IAPAC,a;IAuBAC,c;;;IAwBAN,6B;IAjCAC,gC;IAiBAC,sC;IASAC,8B;IAjCAC,8B;IAPAC,+B;IAuBAC,gC","ignoreList":[]}
@@ -7,6 +7,7 @@ const JsonValueRemoteCodec$schema3 = z.union([z.literal(null), z.string(), z.num
7
7
  const JsonValueRemoteCodec$schema4 = z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema4)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema4)).readonly()])
8
8
  const JsonValueRemoteCodec$schema5 = z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema5)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema5)).readonly()])
9
9
  const JsonValueRemoteCodec$schema6 = z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema6)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema6)).readonly()])
10
+ const JsonValueRemoteCodec$schema7 = z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema7)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema7)).readonly()])
10
11
  const _cerbur_clutch_dsh_worktree_worktreeManager_bindSession_parameter_0$schema = z.object({
11
12
  'workspaceId': z.string().readonly(),
12
13
  'worktreeId': z.string().readonly(),
@@ -15,9 +16,9 @@ const _cerbur_clutch_dsh_worktree_worktreeManager_bindSession_parameter_0$schema
15
16
  const _cerbur_clutch_dsh_worktree_worktreeManager_bindSession_result$schema = z.union([z.object({
16
17
  'ok': z.literal(false).readonly(),
17
18
  'error': z.object({
18
- 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
19
+ 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_ORDER_INVALID"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
19
20
  'message': z.string().readonly(),
20
- 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema2)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema2)).readonly()])).readonly().readonly(),
21
+ 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema3)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema3)).readonly()])).readonly().readonly(),
21
22
  }).readonly(),
22
23
  }), z.object({
23
24
  'ok': z.literal(true).readonly(),
@@ -36,9 +37,9 @@ const _cerbur_clutch_dsh_worktree_worktreeManager_createWorktree_parameter_0$sch
36
37
  const _cerbur_clutch_dsh_worktree_worktreeManager_createWorktree_result$schema = z.union([z.object({
37
38
  'ok': z.literal(false).readonly(),
38
39
  'error': z.object({
39
- 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
40
+ 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_ORDER_INVALID"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
40
41
  'message': z.string().readonly(),
41
- 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema5)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema5)).readonly()])).readonly().readonly(),
42
+ 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema6)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema6)).readonly()])).readonly().readonly(),
42
43
  }).readonly(),
43
44
  }), z.object({
44
45
  'ok': z.literal(true).readonly(),
@@ -51,15 +52,31 @@ const _cerbur_clutch_dsh_worktree_worktreeManager_createWorktree_result$schema =
51
52
  'health': z.union([z.undefined(), z.literal("ready"), z.literal("repair")]).readonly().optional(),
52
53
  }).readonly(),
53
54
  })])
55
+ const _cerbur_clutch_dsh_worktree_worktreeManager_insertWorktreeBefore_parameter_0$schema = z.object({
56
+ 'workspaceId': z.string().readonly(),
57
+ 'worktreeId': z.string().readonly(),
58
+ 'beforeWorktreeId': z.union([z.undefined(), z.string()]).readonly().optional(),
59
+ })
60
+ const _cerbur_clutch_dsh_worktree_worktreeManager_insertWorktreeBefore_result$schema = z.union([z.object({
61
+ 'ok': z.literal(false).readonly(),
62
+ 'error': z.object({
63
+ 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_ORDER_INVALID"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
64
+ 'message': z.string().readonly(),
65
+ 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema)).readonly()])).readonly().readonly(),
66
+ }).readonly(),
67
+ }), z.object({
68
+ 'ok': z.literal(true).readonly(),
69
+ 'value': z.array(z.string()).readonly(),
70
+ })])
54
71
  const _cerbur_clutch_dsh_worktree_worktreeManager_listBindings_parameter_0$schema = z.object({
55
72
  'workspaceId': z.string().readonly(),
56
73
  })
57
74
  const _cerbur_clutch_dsh_worktree_worktreeManager_listBindings_result$schema = z.union([z.object({
58
75
  'ok': z.literal(false).readonly(),
59
76
  'error': z.object({
60
- 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
77
+ 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_ORDER_INVALID"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
61
78
  'message': z.string().readonly(),
62
- 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema)).readonly()])).readonly().readonly(),
79
+ 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema2)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema2)).readonly()])).readonly().readonly(),
63
80
  }).readonly(),
64
81
  }), z.object({
65
82
  'ok': z.literal(true).readonly(),
@@ -76,9 +93,9 @@ const _cerbur_clutch_dsh_worktree_worktreeManager_listBranches_parameter_0$schem
76
93
  const _cerbur_clutch_dsh_worktree_worktreeManager_listBranches_result$schema = z.union([z.object({
77
94
  'ok': z.literal(false).readonly(),
78
95
  'error': z.object({
79
- 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
96
+ 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_ORDER_INVALID"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
80
97
  'message': z.string().readonly(),
81
- 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema4)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema4)).readonly()])).readonly().readonly(),
98
+ 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema5)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema5)).readonly()])).readonly().readonly(),
82
99
  }).readonly(),
83
100
  }), z.object({
84
101
  'ok': z.literal(true).readonly(),
@@ -94,9 +111,9 @@ const _cerbur_clutch_dsh_worktree_worktreeManager_listWorktrees_parameter_0$sche
94
111
  const _cerbur_clutch_dsh_worktree_worktreeManager_listWorktrees_result$schema = z.union([z.object({
95
112
  'ok': z.literal(false).readonly(),
96
113
  'error': z.object({
97
- 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
114
+ 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_ORDER_INVALID"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
98
115
  'message': z.string().readonly(),
99
- 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema3)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema3)).readonly()])).readonly().readonly(),
116
+ 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema4)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema4)).readonly()])).readonly().readonly(),
100
117
  }).readonly(),
101
118
  }), z.object({
102
119
  'ok': z.literal(true).readonly(),
@@ -116,9 +133,9 @@ const _cerbur_clutch_dsh_worktree_worktreeManager_removeWorktree_parameter_0$sch
116
133
  const _cerbur_clutch_dsh_worktree_worktreeManager_removeWorktree_result$schema = z.union([z.object({
117
134
  'ok': z.literal(false).readonly(),
118
135
  'error': z.object({
119
- 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
136
+ 'code': z.union([z.literal("WORKSPACE_NOT_FOUND"), z.literal("WORKSPACE_NOT_GIT_REPOSITORY"), z.literal("WORKTREE_REQUIRES_INITIAL_COMMIT"), z.literal("WORKTREE_BRANCH_CONFLICT"), z.literal("WORKTREE_NOT_FOUND"), z.literal("WORKTREE_ORDER_INVALID"), z.literal("WORKTREE_REMOVED"), z.literal("SESSION_NOT_FOUND"), z.literal("SESSION_CWD_MISMATCH"), z.literal("SESSION_ALREADY_BOUND"), z.literal("SIDECAR_UNAVAILABLE"), z.literal("SIDECAR_CORRUPT"), z.literal("SIDECAR_SYNC_REQUIRED"), z.literal("GIT_OPERATION_FAILED")]).readonly(),
120
137
  'message': z.string().readonly(),
121
- 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema6)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema6)).readonly()])).readonly().readonly(),
138
+ 'details': z.record(z.string(), z.union([z.literal(null), z.string(), z.number(), z.literal(false), z.literal(true), z.array(z.lazy(() => JsonValueRemoteCodec$schema7)), z.record(z.string(), z.lazy(() => JsonValueRemoteCodec$schema7)).readonly()])).readonly().readonly(),
122
139
  }).readonly(),
123
140
  }), z.object({
124
141
  'ok': z.literal(true).readonly(),
@@ -151,7 +168,7 @@ export const TYPERT_REMOTE = {
151
168
  typeSymbol: '@cerbur/clutch-dsh-worktree/contract#WorktreeRemoteResult',
152
169
  schema: _cerbur_clutch_dsh_worktree_worktreeManager_bindSession_result$schema,
153
170
  },
154
- sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":106,"column":3},
171
+ sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":116,"column":3},
155
172
  },
156
173
  {
157
174
  id: '@cerbur/clutch-dsh-worktree#worktreeManager/createWorktree',
@@ -176,7 +193,32 @@ export const TYPERT_REMOTE = {
176
193
  typeSymbol: '@cerbur/clutch-dsh-worktree/contract#WorktreeRemoteResult',
177
194
  schema: _cerbur_clutch_dsh_worktree_worktreeManager_createWorktree_result$schema,
178
195
  },
179
- sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":82,"column":3},
196
+ sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":83,"column":3},
197
+ },
198
+ {
199
+ id: '@cerbur/clutch-dsh-worktree#worktreeManager/insertWorktreeBefore',
200
+ service: 'worktreeManager',
201
+ namespace: 'worktreeManager',
202
+ method: 'insertWorktreeBefore',
203
+ invocation: { kind: 'direct' },
204
+ parameters: [
205
+ {
206
+ name: 'input',
207
+ wire: 'input',
208
+ source: 'json',
209
+ codec: {
210
+ mode: 'strict',
211
+ typeSymbol: '@cerbur/clutch-dsh-worktree#worktreeManager/insertWorktreeBefore:input',
212
+ schema: _cerbur_clutch_dsh_worktree_worktreeManager_insertWorktreeBefore_parameter_0$schema,
213
+ },
214
+ },
215
+ ],
216
+ result: {
217
+ mode: 'strict',
218
+ typeSymbol: '@cerbur/clutch-dsh-worktree/contract#WorktreeRemoteResult',
219
+ schema: _cerbur_clutch_dsh_worktree_worktreeManager_insertWorktreeBefore_result$schema,
220
+ },
221
+ sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":100,"column":3},
180
222
  },
181
223
  {
182
224
  id: '@cerbur/clutch-dsh-worktree#worktreeManager/listBindings',
@@ -201,7 +243,7 @@ export const TYPERT_REMOTE = {
201
243
  typeSymbol: '@cerbur/clutch-dsh-worktree/contract#WorktreeRemoteResult',
202
244
  schema: _cerbur_clutch_dsh_worktree_worktreeManager_listBindings_result$schema,
203
245
  },
204
- sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":99,"column":3},
246
+ sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":109,"column":3},
205
247
  },
206
248
  {
207
249
  id: '@cerbur/clutch-dsh-worktree#worktreeManager/listBranches',
@@ -226,7 +268,7 @@ export const TYPERT_REMOTE = {
226
268
  typeSymbol: '@cerbur/clutch-dsh-worktree/contract#WorktreeRemoteResult',
227
269
  schema: _cerbur_clutch_dsh_worktree_worktreeManager_listBranches_result$schema,
228
270
  },
229
- sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":75,"column":3},
271
+ sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":76,"column":3},
230
272
  },
231
273
  {
232
274
  id: '@cerbur/clutch-dsh-worktree#worktreeManager/listWorktrees',
@@ -251,7 +293,7 @@ export const TYPERT_REMOTE = {
251
293
  typeSymbol: '@cerbur/clutch-dsh-worktree/contract#WorktreeRemoteResult',
252
294
  schema: _cerbur_clutch_dsh_worktree_worktreeManager_listWorktrees_result$schema,
253
295
  },
254
- sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":68,"column":3},
296
+ sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":69,"column":3},
255
297
  },
256
298
  {
257
299
  id: '@cerbur/clutch-dsh-worktree#worktreeManager/removeWorktree',
@@ -276,7 +318,7 @@ export const TYPERT_REMOTE = {
276
318
  typeSymbol: '@cerbur/clutch-dsh-worktree/contract#WorktreeRemoteResult',
277
319
  schema: _cerbur_clutch_dsh_worktree_worktreeManager_removeWorktree_result$schema,
278
320
  },
279
- sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":91,"column":3},
321
+ sourceLocation: {"file":"packages/clutch-dsh-worktree/src/host/service.ts","line":92,"column":3},
280
322
  },
281
323
  ],
282
324
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cerbur/clutch-dsh-worktree",
3
- "version": "0.1.2",
3
+ "version": "0.1.4",
4
4
  "description": "Adds a Worktree view to DSH Web UI that groups Sessions by Git worktree while keeping DSH as the source of truth.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -9,6 +9,7 @@
9
9
  "directory": "packages/clutch-dsh-worktree"
10
10
  },
11
11
  "homepage": "https://github.com/Cerbur/clutch-dsh/tree/main/packages/clutch-dsh-worktree",
12
+ "packageManager": "pnpm@10.32.1",
12
13
  "keywords": [
13
14
  "deepseek-harness",
14
15
  "dsh",
@@ -51,7 +52,7 @@
51
52
  "registry": "https://registry.npmjs.org/"
52
53
  },
53
54
  "scripts": {
54
- "prepack": "pnpm run build",
55
+ "prepare": "pnpm run build",
55
56
  "build": "tsc -p tsconfig.json && node scripts/generate-typert.mjs && node scripts/build-client.mjs",
56
57
  "lint": "eslint src",
57
58
  "typecheck": "tsc --noEmit -p tsconfig.json",
@@ -66,6 +67,7 @@
66
67
  "@deepseek-ai/dsh-client-connection",
67
68
  "@deepseek-ai/dsh-client-runtime",
68
69
  "@deepseek-ai/dsh-client-locale",
70
+ "@deepseek-ai/dsh-client-ui-conversation",
69
71
  "@deepseek-ai/dsh-client-ui-layout",
70
72
  "@deepseek-ai/dsh-client-ui-sidebar"
71
73
  ],
@@ -85,6 +87,7 @@
85
87
  "@deepseek-ai/dsh-client-connection": "0.1.0-rc.8",
86
88
  "@deepseek-ai/dsh-client-locale": "0.1.0-rc.8",
87
89
  "@deepseek-ai/dsh-client-runtime": "0.1.0-rc.8",
90
+ "@deepseek-ai/dsh-client-ui-conversation": "0.1.0-rc.8",
88
91
  "@deepseek-ai/dsh-client-ui-layout": "0.1.0-rc.8",
89
92
  "@deepseek-ai/dsh-client-ui-primitives": "0.1.0-rc.8",
90
93
  "@deepseek-ai/dsh-client-ui-sidebar": "0.1.0-rc.8",
@@ -101,6 +104,7 @@
101
104
  "@deepseek-ai/dsh-client-connection": "0.1.0-rc.8",
102
105
  "@deepseek-ai/dsh-client-locale": "0.1.0-rc.8",
103
106
  "@deepseek-ai/dsh-client-runtime": "0.1.0-rc.8",
107
+ "@deepseek-ai/dsh-client-ui-conversation": "0.1.0-rc.8",
104
108
  "@deepseek-ai/dsh-client-ui-layout": "0.1.0-rc.8",
105
109
  "@deepseek-ai/dsh-client-ui-primitives": "0.1.0-rc.8",
106
110
  "@deepseek-ai/dsh-client-ui-sidebar": "0.1.0-rc.8",