dsh-git-worktree 0.7.5 → 0.9.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.
Files changed (150) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/README.en.md +11 -5
  3. package/README.md +11 -5
  4. package/docs/i18n.md +63 -0
  5. package/lib/adapters/files.d.ts +0 -7
  6. package/lib/adapters/files.js +4 -3
  7. package/lib/adapters/files.js.map +1 -1
  8. package/lib/adapters/git.d.ts +0 -10
  9. package/lib/adapters/git.js +92 -18
  10. package/lib/adapters/git.js.map +1 -1
  11. package/lib/adapters/initial-commit.d.ts +16 -0
  12. package/lib/adapters/initial-commit.js +112 -0
  13. package/lib/adapters/initial-commit.js.map +1 -0
  14. package/lib/adapters/lookup.js +21 -0
  15. package/lib/adapters/lookup.js.map +1 -1
  16. package/lib/adapters/registry.d.ts +0 -7
  17. package/lib/adapters/registry.js +2 -1
  18. package/lib/adapters/registry.js.map +1 -1
  19. package/lib/adapters/safe-file.d.ts +0 -7
  20. package/lib/adapters/safe-file.js +5 -4
  21. package/lib/adapters/safe-file.js.map +1 -1
  22. package/lib/client/WorktreeCreateRow.js +5 -2
  23. package/lib/client/WorktreeCreateRow.js.map +1 -1
  24. package/lib/client/WorktreeReviewRow.d.ts +1 -1
  25. package/lib/client/WorktreeReviewRow.js +11 -9
  26. package/lib/client/WorktreeReviewRow.js.map +1 -1
  27. package/lib/client/actions.d.ts +4 -7
  28. package/lib/client/actions.js +17 -13
  29. package/lib/client/actions.js.map +1 -1
  30. package/lib/client/console-remote/adapter.d.ts +2 -1
  31. package/lib/client/console-remote/adapter.js +37 -32
  32. package/lib/client/console-remote/adapter.js.map +1 -1
  33. package/lib/client/console-remote/index.js +6 -2
  34. package/lib/client/console-remote/index.js.map +1 -1
  35. package/lib/client/i18n.d.ts +25 -0
  36. package/lib/client/i18n.js +43 -0
  37. package/lib/client/i18n.js.map +1 -0
  38. package/lib/client/index.d.ts +1 -1
  39. package/lib/client/index.js +17 -4
  40. package/lib/client/index.js.map +1 -1
  41. package/lib/client/model.d.ts +3 -2
  42. package/lib/client/model.js +8 -8
  43. package/lib/client/model.js.map +1 -1
  44. package/lib/client/pre-session/PreSessionWorktreeToggle.d.ts +2 -2
  45. package/lib/client/pre-session/PreSessionWorktreeToggle.js +95 -80
  46. package/lib/client/pre-session/PreSessionWorktreeToggle.js.map +1 -1
  47. package/lib/client/pre-session/controller.d.ts +3 -0
  48. package/lib/client/pre-session/controller.js +27 -13
  49. package/lib/client/pre-session/controller.js.map +1 -1
  50. package/lib/client/pre-session/harness-input.d.ts +13 -0
  51. package/lib/client/pre-session/harness-input.js +18 -0
  52. package/lib/client/pre-session/harness-input.js.map +1 -0
  53. package/lib/client/pre-session/index.d.ts +13 -2
  54. package/lib/client/pre-session/index.js +11 -2
  55. package/lib/client/pre-session/index.js.map +1 -1
  56. package/lib/client/review-console/DeliveryProof.js +15 -12
  57. package/lib/client/review-console/DeliveryProof.js.map +1 -1
  58. package/lib/client/review-console/PreflightStatus.js +15 -8
  59. package/lib/client/review-console/PreflightStatus.js.map +1 -1
  60. package/lib/client/review-console/ReviewActions.d.ts +4 -1
  61. package/lib/client/review-console/ReviewActions.js +139 -114
  62. package/lib/client/review-console/ReviewActions.js.map +1 -1
  63. package/lib/client/review-console/ReviewDetailsModal.d.ts +12 -0
  64. package/lib/client/review-console/ReviewDetailsModal.js +56 -0
  65. package/lib/client/review-console/ReviewDetailsModal.js.map +1 -0
  66. package/lib/client/review-console/ReviewIcon.d.ts +35 -0
  67. package/lib/client/review-console/ReviewIcon.js +14 -0
  68. package/lib/client/review-console/ReviewIcon.js.map +1 -0
  69. package/lib/client/review-console/WorktreeReviewPanel.d.ts +3 -7
  70. package/lib/client/review-console/WorktreeReviewPanel.js +20 -82
  71. package/lib/client/review-console/WorktreeReviewPanel.js.map +1 -1
  72. package/lib/client/review-console/recovery-continuation.d.ts +2 -1
  73. package/lib/client/review-console/recovery-continuation.js +12 -8
  74. package/lib/client/review-console/recovery-continuation.js.map +1 -1
  75. package/lib/client/review-console/review-console.styles.js +101 -23
  76. package/lib/client/review-console/review-console.styles.js.map +1 -1
  77. package/lib/client/styles.js +13 -10
  78. package/lib/client/styles.js.map +1 -1
  79. package/lib/client/target-console/TargetStatusAction.js +87 -65
  80. package/lib/client/target-console/TargetStatusAction.js.map +1 -1
  81. package/lib/client/target-console/WorktreeConsoleView.d.ts +2 -1
  82. package/lib/client/target-console/WorktreeConsoleView.js +42 -37
  83. package/lib/client/target-console/WorktreeConsoleView.js.map +1 -1
  84. package/lib/client/target-console/WorktreeManagerModal.js +3 -1
  85. package/lib/client/target-console/WorktreeManagerModal.js.map +1 -1
  86. package/lib/client/target-console/WorktreeReviewStatus.js +45 -88
  87. package/lib/client/target-console/WorktreeReviewStatus.js.map +1 -1
  88. package/lib/client/target-console/current-polling.d.ts +11 -0
  89. package/lib/client/target-console/current-polling.js +104 -0
  90. package/lib/client/target-console/current-polling.js.map +1 -0
  91. package/lib/client/target-console/target-console.styles.js +8 -0
  92. package/lib/client/target-console/target-console.styles.js.map +1 -1
  93. package/lib/client/workspace-sidebar/index.js +8 -3
  94. package/lib/client/workspace-sidebar/index.js.map +1 -1
  95. package/lib/client/workspace-sidebar/model.d.ts +5 -1
  96. package/lib/client/workspace-sidebar/model.js +97 -23
  97. package/lib/client/workspace-sidebar/model.js.map +1 -1
  98. package/lib/client.js +12228 -8928
  99. package/lib/commands.js +32 -35
  100. package/lib/commands.js.map +1 -1
  101. package/lib/console-contract.d.ts +20 -0
  102. package/lib/console-contract.js.map +1 -1
  103. package/lib/console-host/control-plane.d.ts +3 -1
  104. package/lib/console-host/control-plane.js +186 -95
  105. package/lib/console-host/control-plane.js.map +1 -1
  106. package/lib/console-host/errors.js +2 -1
  107. package/lib/console-host/errors.js.map +1 -1
  108. package/lib/console-host/projection.js +3 -1
  109. package/lib/console-host/projection.js.map +1 -1
  110. package/lib/console-host/review-diff.js +6 -5
  111. package/lib/console-host/review-diff.js.map +1 -1
  112. package/lib/console-host/service.d.ts +27 -23
  113. package/lib/console-host/service.js +66 -51
  114. package/lib/console-host/service.js.map +1 -1
  115. package/lib/console-remote/descriptors.js +4 -2
  116. package/lib/console-remote/descriptors.js.map +1 -1
  117. package/lib/console-remote/remote.d.ts +25 -22
  118. package/lib/console-remote/remote.js.map +1 -1
  119. package/lib/console-remote/schemas.d.ts +14 -2
  120. package/lib/console-remote/schemas.js +8 -0
  121. package/lib/console-remote/schemas.js.map +1 -1
  122. package/lib/i18n/client-messages.d.ts +1671 -0
  123. package/lib/i18n/client-messages.js +1468 -0
  124. package/lib/i18n/client-messages.js.map +1 -0
  125. package/lib/i18n/core.d.ts +12 -0
  126. package/lib/i18n/core.js +10 -0
  127. package/lib/i18n/core.js.map +1 -0
  128. package/lib/i18n/host-messages.d.ts +1495 -0
  129. package/lib/i18n/host-messages.js +1485 -0
  130. package/lib/i18n/host-messages.js.map +1 -0
  131. package/lib/i18n/host.d.ts +9 -0
  132. package/lib/i18n/host.js +34 -0
  133. package/lib/i18n/host.js.map +1 -0
  134. package/lib/i18n/transport-messages.d.ts +10 -0
  135. package/lib/i18n/transport-messages.js +11 -0
  136. package/lib/i18n/transport-messages.js.map +1 -0
  137. package/lib/ports.d.ts +15 -0
  138. package/lib/session-checkout-apply.js +93 -92
  139. package/lib/session-checkout-apply.js.map +1 -1
  140. package/lib/session-checkout-module.js +234 -229
  141. package/lib/session-checkout-module.js.map +1 -1
  142. package/lib/session-target-context.js +2 -1
  143. package/lib/session-target-context.js.map +1 -1
  144. package/lib/tools.d.ts +0 -8
  145. package/lib/tools.js +108 -96
  146. package/lib/tools.js.map +1 -1
  147. package/package.json +3 -1
  148. package/scripts/check-publish.mjs +1 -1
  149. package/scripts/dev-dsh-lib.mjs +1 -1
  150. package/scripts/workspace-sidebar-upstream.mjs +1 -1
@@ -1,24 +1,27 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ReviewIcon } from './ReviewIcon.js';
3
+ import { useClientTranslator, defaultClientTranslator } from '../i18n.js';
2
4
  function shortOid(value) {
3
5
  return value.slice(0, 8);
4
6
  }
5
- function statusLabel(preflight) {
7
+ function statusLabel(preflight, t = defaultClientTranslator) {
6
8
  switch (preflight.status) {
7
- case 'ready': return '同步条件已确认';
8
- case 'local_advanced': return 'Local 已前进,可安全合并';
9
- case 'already_in_local': return '本轮内容已在 Local';
10
- case 'conflict': return `发现 ${preflight.conflictingFiles.length} 个冲突文件`;
9
+ case 'ready': return t("sync.conditions.confirmed");
10
+ case 'local_advanced': return t("local.advanced.safe.to.merge");
11
+ case 'already_in_local': return t("this.iteration.is.already.in.local");
12
+ case 'conflict': return t("found.conflicting.files", { p0: preflight.conflictingFiles.length });
11
13
  case 'blocked': return preflight.message;
12
14
  }
13
15
  }
14
16
  export function PreflightStatus({ snapshot, target, compact = false, onRefresh, onRecovery, onOpenHolder, busy, }) {
17
+ const t = useClientTranslator();
15
18
  if (snapshot.status === 'idle')
16
19
  return null;
17
20
  if (snapshot.status === 'loading') {
18
- return _jsx("div", { className: "dsh-wt-preflight", "data-preflight": "loading", children: "\u6B63\u5728\u6267\u884C\u53EA\u8BFB\u540C\u6B65\u9884\u68C0\u2026 Local \u4E0D\u4F1A\u88AB\u4FEE\u6539\u3002" });
21
+ return _jsx("div", { className: "dsh-wt-preflight", "data-preflight": "loading", children: t("running.read.only.sync.preflight.local.will.not") });
19
22
  }
20
23
  if (snapshot.status === 'error') {
21
- return (_jsxs("div", { className: "dsh-wt-preflight", "data-preflight": "error", children: [_jsxs("span", { children: ["\u9884\u68C0\u5931\u8D25\uFF1A", snapshot.error.message] }), _jsx("button", { type: "button", className: "dsh-wt-inline-action", disabled: busy, onClick: onRefresh, children: "\u91CD\u65B0\u68C0\u67E5" })] }));
24
+ return (_jsxs("div", { className: "dsh-wt-preflight", "data-preflight": "error", children: [_jsxs("span", { children: [t("preflight.failed"), snapshot.error.message] }), _jsxs("button", { type: "button", className: "dsh-wt-inline-action", disabled: busy, onClick: onRefresh, children: [_jsx(ReviewIcon, { name: "refresh" }), t("check.again")] })] }));
22
25
  }
23
26
  const preflight = snapshot.preflight;
24
27
  const blocked = preflight.status === 'blocked';
@@ -26,6 +29,10 @@ export function PreflightStatus({ snapshot, target, compact = false, onRefresh,
26
29
  const holder = blocked && preflight.reason === 'project_acceptance_busy'
27
30
  ? preflight.blocker ?? target?.reviewSlotHolder
28
31
  : undefined;
29
- return (_jsxs("div", { className: "dsh-wt-preflight", "data-preflight": preflight.status, children: [_jsxs("div", { className: "dsh-wt-preflight-head", children: [_jsx("strong", { children: statusLabel(preflight) }), _jsx("span", { children: "\u53EA\u8BFB\u68C0\u67E5 \u00B7 Local \u672A\u4FEE\u6539" })] }), !compact && preflight.status !== 'blocked' ? (_jsxs("dl", { className: "dsh-wt-preflight-facts", children: [_jsxs("div", { children: [_jsx("dt", { children: "Local" }), _jsxs("dd", { children: [preflight.localBranch ?? 'detached', " \u00B7 ", _jsx("code", { children: shortOid(preflight.localHeadOid) })] })] }), _jsxs("div", { children: [_jsx("dt", { children: "Worktree" }), _jsx("dd", { children: _jsx("code", { children: shortOid(preflight.isolatedHeadOid) }) })] }), _jsxs("div", { children: [_jsx("dt", { children: "Effective base" }), _jsx("dd", { children: _jsx("code", { children: shortOid(preflight.effectiveBaseOid) }) })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u53D8\u66F4" }), _jsxs("dd", { children: [preflight.changedFiles.length, " \u4E2A\u6587\u4EF6"] })] })] })) : null, !compact && preflight.status === 'conflict' && preflight.conflictingFiles.length > 0 ? (_jsx("ul", { className: "dsh-wt-conflict-list", "aria-label": "\u51B2\u7A81\u6587\u4EF6", children: preflight.conflictingFiles.map(path => _jsx("li", { children: _jsx("code", { children: path }) }, path)) })) : null, holder ? _jsxs("p", { children: ["\u5360\u7528\u4EFB\u52A1\uFF1A", holder.checkoutId.slice(0, 8), " \u00B7 Session ", holder.ownerSessionId.slice(0, 8), " \u00B7 ", holder.state] }) : null, preflight.status === 'conflict' || blocked ? (_jsxs("div", { className: "dsh-wt-recovery-actions", children: [_jsx("button", { type: "button", className: "dsh-wt-inline-action", disabled: busy, onClick: onRefresh, children: "\u91CD\u65B0\u68C0\u67E5" }), preflight.status === 'conflict' ? (_jsx("button", { type: "button", className: "dsh-wt-inline-action", disabled: busy || !target?.capabilities.resumeRevision, onClick: () => onRecovery(preflight), children: "\u8BA9 Agent \u89E3\u51B3\u51B2\u7A81" })) : staleIsolated ? (_jsx("button", { type: "button", className: "dsh-wt-inline-action", disabled: busy, onClick: () => onRecovery(preflight), children: "\u91CD\u65B0\u751F\u6210\u9A8C\u6536\u7ED3\u679C" })) : null, holder ? (_jsx("button", { type: "button", className: "dsh-wt-inline-action", disabled: busy, onClick: onOpenHolder, children: "\u6253\u5F00\u5360\u7528\u4EFB\u52A1" })) : null] })) : null] }));
32
+ return (_jsxs("div", { className: "dsh-wt-preflight", "data-preflight": preflight.status, children: [_jsxs("div", { className: "dsh-wt-preflight-head", children: [_jsx("strong", { children: statusLabel(preflight, t) }), _jsx("span", { children: t("read.only.check.local.unchanged") })] }), !compact && preflight.status !== 'blocked' ? (_jsxs("dl", { className: "dsh-wt-preflight-facts", children: [_jsxs("div", { children: [_jsx("dt", { children: t("local") }), _jsxs("dd", { children: [preflight.localBranch ?? 'detached', " \u00B7 ", _jsx("code", { children: shortOid(preflight.localHeadOid) })] })] }), _jsxs("div", { children: [_jsx("dt", { children: t("worktree") }), _jsx("dd", { children: _jsx("code", { children: shortOid(preflight.isolatedHeadOid) }) })] }), _jsxs("div", { children: [_jsx("dt", { children: t("effective.base") }), _jsx("dd", { children: _jsx("code", { children: shortOid(preflight.effectiveBaseOid) }) })] }), _jsxs("div", { children: [_jsx("dt", { children: t("changes") }), _jsx("dd", { children: t("count.files", { count: preflight.changedFiles.length }) })] })] })) : null, !compact && preflight.status === 'conflict' && preflight.conflictingFiles.length > 0 ? (_jsx("ul", { className: "dsh-wt-conflict-list", "aria-label": t("conflicting.files"), children: preflight.conflictingFiles.map(path => _jsx("li", { children: _jsx("code", { children: path }) }, path)) })) : null, holder ? _jsxs("p", { children: [t("holding.task"), holder.checkoutId.slice(0, 8), " ", t("session"), " ", holder.ownerSessionId.slice(0, 8), " \u00B7 ", {
33
+ preview_active: t('previewing'), preview_detached: t('awaiting.recovery'),
34
+ finalized: t('completed'), retained: t('retained'), working: t('in.progress'),
35
+ ready_for_review: t('ready.for.review'), delivered: t('delivered'),
36
+ }[holder.state]] }) : null, preflight.status === 'conflict' || blocked ? (_jsxs("div", { className: "dsh-wt-recovery-actions", children: [_jsxs("button", { type: "button", className: "dsh-wt-inline-action", disabled: busy, onClick: onRefresh, children: [_jsx(ReviewIcon, { name: "refresh" }), t("check.again")] }), preflight.status === 'conflict' ? (_jsxs("button", { type: "button", className: "dsh-wt-inline-action", disabled: busy || !target?.capabilities.resumeRevision, onClick: () => onRecovery(preflight), children: [_jsx(ReviewIcon, { name: "warning" }), t("ask.agent.to.resolve.conflicts"), " "] })) : staleIsolated ? (_jsxs("button", { type: "button", className: "dsh-wt-inline-action", disabled: busy, onClick: () => onRecovery(preflight), children: [_jsx(ReviewIcon, { name: "refresh" }), t("regenerate.review"), " "] })) : null, holder ? (_jsxs("button", { type: "button", className: "dsh-wt-inline-action", disabled: busy, onClick: onOpenHolder, children: [_jsx(ReviewIcon, { name: "external" }), t("open.holding.task")] })) : null] })) : null] }));
30
37
  }
31
38
  //# sourceMappingURL=PreflightStatus.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PreflightStatus.js","sourceRoot":"","sources":["../../../src/client/review-console/PreflightStatus.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PreflightStatus.js","sourceRoot":"","sources":["../../../src/client/review-console/PreflightStatus.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { ReactNode } from 'react';
1
2
  import type { WorktreeConsoleAdapter, WorktreeConsoleError, WorktreeConsoleTargetSummary } from '../../console-contract.js';
2
3
  import { type WorktreeClientServices } from '../actions.js';
3
4
  import type { WorktreeReviewEvidence, WorktreeReviewIdentity } from './WorktreeReviewPanel.js';
@@ -9,10 +10,12 @@ interface ReviewActionsProps {
9
10
  target?: WorktreeConsoleTargetSummary;
10
11
  disabled: boolean;
11
12
  unavailableMessage: string;
13
+ renderStatus?: (operation: Mutation | null) => ReactNode;
12
14
  focusReview?: () => void;
13
15
  isActive?: () => boolean;
14
16
  onStale: (error: WorktreeConsoleError) => void;
15
17
  onTargetChange: (target: WorktreeConsoleTargetSummary) => void;
16
18
  }
17
- export declare function ReviewActions({ review, adapter, services, identity, target, disabled, unavailableMessage, focusReview, isActive, onStale, onTargetChange, }: ReviewActionsProps): import("react").JSX.Element;
19
+ type Mutation = 'preview' | 'checkpoint' | 'resume_revision' | 'recovery' | 'recovery_analysis' | 'recovery_handoff' | 'open_holder' | 'rollback' | 'finish' | 'finalize_preview' | 'discard' | 'retry_cleanup';
20
+ export declare function ReviewActions({ review, adapter, services, identity, target, disabled, unavailableMessage, focusReview, renderStatus, isActive, onStale, onTargetChange, }: ReviewActionsProps): import("react").JSX.Element;
18
21
  export {};