@shepai/cli 1.105.0-pr313.ca72e53 → 1.105.0-pr314.4f46d74

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 (130) hide show
  1. package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.js +3 -2
  2. package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.d.ts +4 -0
  3. package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.d.ts.map +1 -1
  4. package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.js +30 -0
  5. package/dist/tsconfig.build.tsbuildinfo +1 -1
  6. package/package.json +1 -1
  7. package/web/.next/BUILD_ID +1 -1
  8. package/web/.next/build-manifest.json +2 -2
  9. package/web/.next/fallback-build-manifest.json +2 -2
  10. package/web/.next/prerender-manifest.json +3 -3
  11. package/web/.next/required-server-files.js +1 -1
  12. package/web/.next/required-server-files.json +1 -1
  13. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +20 -20
  14. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  15. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  16. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +25 -25
  17. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  18. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  19. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +25 -25
  20. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  21. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  22. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +18 -18
  23. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  24. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  25. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +20 -20
  26. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  27. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  28. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +25 -25
  29. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  30. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  31. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +25 -25
  32. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  33. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  34. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +18 -18
  35. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  36. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  37. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +18 -18
  38. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  39. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  40. package/web/.next/server/app/_global-error.html +2 -2
  41. package/web/.next/server/app/_global-error.rsc +1 -1
  42. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  43. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  44. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  45. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  46. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  47. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  48. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  49. package/web/.next/server/app/settings/page/server-reference-manifest.json +5 -5
  50. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  51. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  52. package/web/.next/server/app/skills/page/server-reference-manifest.json +6 -6
  53. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  54. package/web/.next/server/app/tools/page/server-reference-manifest.json +6 -6
  55. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  56. package/web/.next/server/app/version/page/server-reference-manifest.json +1 -1
  57. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  58. package/web/.next/server/chunks/[root-of-the-server]__f47bb8a5._.js +1 -1
  59. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  60. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  61. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_0a7546ed.js +1 -1
  62. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_0a7546ed.js.map +1 -1
  63. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_978cbb4c.js +1 -1
  64. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_978cbb4c.js.map +1 -1
  65. package/web/.next/server/chunks/ssr/[root-of-the-server]__11033878._.js +1 -1
  66. package/web/.next/server/chunks/ssr/[root-of-the-server]__11033878._.js.map +1 -1
  67. package/web/.next/server/chunks/ssr/[root-of-the-server]__24dd0927._.js +2 -2
  68. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  69. package/web/.next/server/chunks/ssr/[root-of-the-server]__51fc98b0._.js +1 -1
  70. package/web/.next/server/chunks/ssr/[root-of-the-server]__51fc98b0._.js.map +1 -1
  71. package/web/.next/server/chunks/ssr/[root-of-the-server]__57f37786._.js +1 -1
  72. package/web/.next/server/chunks/ssr/[root-of-the-server]__57f37786._.js.map +1 -1
  73. package/web/.next/server/chunks/ssr/[root-of-the-server]__5d87af2e._.js +1 -1
  74. package/web/.next/server/chunks/ssr/[root-of-the-server]__708dcad1._.js +1 -1
  75. package/web/.next/server/chunks/ssr/[root-of-the-server]__708dcad1._.js.map +1 -1
  76. package/web/.next/server/chunks/ssr/[root-of-the-server]__845a9d2a._.js +1 -1
  77. package/web/.next/server/chunks/ssr/[root-of-the-server]__845a9d2a._.js.map +1 -1
  78. package/web/.next/server/chunks/ssr/[root-of-the-server]__89e8a5cc._.js +2 -2
  79. package/web/.next/server/chunks/ssr/[root-of-the-server]__8e002910._.js +1 -1
  80. package/web/.next/server/chunks/ssr/[root-of-the-server]__8e002910._.js.map +1 -1
  81. package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js +2 -2
  82. package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js.map +1 -1
  83. package/web/.next/server/chunks/ssr/[root-of-the-server]__fdc75809._.js +1 -1
  84. package/web/.next/server/chunks/ssr/[root-of-the-server]__fdc75809._.js.map +1 -1
  85. package/web/.next/server/chunks/ssr/_135edb9c._.js +1 -1
  86. package/web/.next/server/chunks/ssr/_135edb9c._.js.map +1 -1
  87. package/web/.next/server/chunks/ssr/{_49dcce36._.js → _2a3b1a4b._.js} +2 -2
  88. package/web/.next/server/chunks/ssr/{_49dcce36._.js.map → _2a3b1a4b._.js.map} +1 -1
  89. package/web/.next/server/chunks/ssr/_8dacd1e7._.js +1 -1
  90. package/web/.next/server/chunks/ssr/_8dacd1e7._.js.map +1 -1
  91. package/web/.next/server/chunks/ssr/{_3bbb2882._.js → _c2b8294f._.js} +2 -2
  92. package/web/.next/server/chunks/ssr/{_3bbb2882._.js.map → _c2b8294f._.js.map} +1 -1
  93. package/web/.next/server/chunks/ssr/_cc77a143._.js +1 -1
  94. package/web/.next/server/chunks/ssr/_cc77a143._.js.map +1 -1
  95. package/web/.next/server/chunks/ssr/{_c12d0f89._.js → _f2f92a9e._.js} +2 -2
  96. package/web/.next/server/chunks/ssr/{_c12d0f89._.js.map → _f2f92a9e._.js.map} +1 -1
  97. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  98. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  99. package/web/.next/server/chunks/ssr/src_presentation_web_7275ce5d._.js +2 -2
  100. package/web/.next/server/chunks/ssr/src_presentation_web_7275ce5d._.js.map +1 -1
  101. package/web/.next/server/chunks/ssr/src_presentation_web_758dfa10._.js +2 -2
  102. package/web/.next/server/chunks/ssr/src_presentation_web_758dfa10._.js.map +1 -1
  103. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_84803221.js +1 -1
  104. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_84803221.js.map +1 -1
  105. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js +1 -1
  106. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js.map +1 -1
  107. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js +1 -1
  108. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js.map +1 -1
  109. package/web/.next/server/chunks/ssr/src_presentation_web_components_bf50c527._.js +1 -1
  110. package/web/.next/server/chunks/ssr/src_presentation_web_components_bf50c527._.js.map +1 -1
  111. package/web/.next/server/chunks/ssr/src_presentation_web_components_de814675._.js +1 -1
  112. package/web/.next/server/chunks/ssr/src_presentation_web_components_de814675._.js.map +1 -1
  113. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  114. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  115. package/web/.next/server/pages/500.html +2 -2
  116. package/web/.next/server/server-reference-manifest.js +1 -1
  117. package/web/.next/server/server-reference-manifest.json +30 -30
  118. package/web/.next/static/chunks/{f7225589a9dd6a07.js → 075c887feb420b6b.js} +2 -2
  119. package/web/.next/static/chunks/{f2e1256ac6aae438.js → 38f405972263725e.js} +1 -1
  120. package/web/.next/static/chunks/{12cd12e2025602ec.js → 4642dbf9b6da2b77.js} +1 -1
  121. package/web/.next/static/chunks/{19652915bbe81412.js → 594622308721c598.js} +1 -1
  122. package/web/.next/static/chunks/{f73496892f3e2b57.js → 7d48e2877deabb14.js} +1 -1
  123. package/web/.next/static/chunks/{2e462f40714e597d.js → 94dbe3991c412717.js} +1 -1
  124. package/web/.next/static/chunks/{98b6f71df345f2b7.js → 9532980f3bab39a6.js} +1 -1
  125. package/web/.next/static/chunks/{227472dc5ca2889d.js → b7469b7f661f3ba4.js} +1 -1
  126. package/web/.next/static/chunks/{df3ed42d7f981a50.js → e08e9e14e78e4c2d.js} +1 -1
  127. package/web/.next/static/chunks/{86b18c5e987491b5.js → e568ac55fdf0be41.js} +2 -2
  128. /package/web/.next/static/{Cyq91zReDpi2vwEDA2MW- → ixYDGIKXg0ZXeHAi-y4Yn}/_buildManifest.js +0 -0
  129. /package/web/.next/static/{Cyq91zReDpi2vwEDA2MW- → ixYDGIKXg0ZXeHAi-y4Yn}/_clientMiddlewareManifest.json +0 -0
  130. /package/web/.next/static/{Cyq91zReDpi2vwEDA2MW- → ixYDGIKXg0ZXeHAi-y4Yn}/_ssgManifest.js +0 -0
@@ -46,14 +46,15 @@ function formatRelativeTime(timestamp) {
46
46
  return 'just now';
47
47
  }
48
48
  function FeatureInfo({ data }) {
49
+ const showSummary = Boolean(data.summary) && !(data.userQuery && data.summary?.trim() === data.userQuery.trim());
49
50
  const hasInfo = Boolean(data.branch) ||
50
51
  Boolean(data.oneLiner) ||
51
- Boolean(data.summary) ||
52
+ showSummary ||
52
53
  Boolean(data.userQuery) ||
53
54
  Boolean(data.createdAt);
54
55
  if (!hasInfo)
55
56
  return null;
56
- return (_jsxs(_Fragment, { children: [_jsx(Separator, {}), _jsxs("div", { "data-testid": "feature-drawer-info", className: "flex flex-col gap-3 p-4", children: [data.branch ? (_jsxs("div", { className: "flex flex-col gap-0.5", children: [_jsx("span", { className: "text-muted-foreground text-xs font-medium", children: "Branch" }), _jsxs("span", { className: "flex items-center gap-1.5 text-sm", children: [_jsx(GitBranch, { className: "text-muted-foreground h-3.5 w-3.5 shrink-0" }), _jsx("code", { className: "bg-muted rounded px-1 py-0.5 font-mono text-xs", children: data.branch }), data.baseBranch ? (_jsxs("span", { className: "text-muted-foreground text-xs", children: ["from ", data.baseBranch] })) : null] })] })) : null, data.oneLiner ? (_jsxs("div", { className: "flex flex-col gap-0.5", children: [_jsx("span", { className: "text-muted-foreground text-xs font-medium", children: "One-Liner" }), _jsx("span", { className: "text-sm leading-relaxed", children: data.oneLiner })] })) : null, data.userQuery ? (_jsxs("div", { className: "flex flex-col gap-0.5", children: [_jsx("span", { className: "text-muted-foreground text-xs font-medium", children: "User Query" }), _jsx(InlineAttachments, { text: data.userQuery })] })) : null, data.summary ? (_jsxs("div", { className: "flex flex-col gap-0.5", children: [_jsx("span", { className: "text-muted-foreground text-xs font-medium", children: "Summary" }), _jsx("span", { className: "text-sm leading-relaxed", children: data.summary })] })) : null, data.createdAt ? (_jsx(DetailRow, { label: "Created", value: formatRelativeTime(data.createdAt) })) : null] })] }));
57
+ return (_jsxs(_Fragment, { children: [_jsx(Separator, {}), _jsxs("div", { "data-testid": "feature-drawer-info", className: "flex flex-col gap-3 p-4", children: [data.branch ? (_jsxs("div", { className: "flex flex-col gap-0.5", children: [_jsx("span", { className: "text-muted-foreground text-xs font-medium", children: "Branch" }), _jsxs("span", { className: "flex items-center gap-1.5 text-sm", children: [_jsx(GitBranch, { className: "text-muted-foreground h-3.5 w-3.5 shrink-0" }), _jsx("code", { className: "bg-muted rounded px-1 py-0.5 font-mono text-xs", children: data.branch }), data.baseBranch ? (_jsxs("span", { className: "text-muted-foreground text-xs", children: ["from ", data.baseBranch] })) : null] })] })) : null, data.oneLiner ? (_jsxs("div", { className: "flex flex-col gap-0.5", children: [_jsx("span", { className: "text-muted-foreground text-xs font-medium", children: "One-Liner" }), _jsx("span", { className: "text-sm leading-relaxed", children: data.oneLiner })] })) : null, data.userQuery ? (_jsxs("div", { className: "flex flex-col gap-0.5", children: [_jsx("span", { className: "text-muted-foreground text-xs font-medium", children: "User Query" }), _jsx(InlineAttachments, { text: data.userQuery })] })) : null, showSummary ? (_jsxs("div", { className: "flex flex-col gap-0.5", children: [_jsx("span", { className: "text-muted-foreground text-xs font-medium", children: "Summary" }), _jsx("span", { className: "text-sm leading-relaxed", children: data.summary })] })) : null, data.createdAt ? (_jsx(DetailRow, { label: "Created", value: formatRelativeTime(data.createdAt) })) : null] })] }));
57
58
  }
58
59
  // ── PR Info section ──────────────────────────────────────────────────
59
60
  const prStatusStyles = {
@@ -29,6 +29,10 @@ export declare const ReviewPhase: Story;
29
29
  export declare const MaintainPhase: Story;
30
30
  /** PR with merge conflicts — shows orange "Conflicts" badge. */
31
31
  export declare const PrWithMergeConflicts: Story;
32
+ /** Summary hidden — userQuery and summary are identical. */
33
+ export declare const DuplicateSummaryHidden: Story;
34
+ /** Summary visible — userQuery and summary differ. */
35
+ export declare const DifferentSummary: Story;
32
36
  /** Completed feature with PR — progress hidden, PR shown in status section without borders. */
33
37
  export declare const CompletedWithPr: Story;
34
38
  //# sourceMappingURL=overview-tab.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"overview-tab.stories.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,WAAW,CAclC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,WAAW,CAAC,CAAC;AA0G1C,uEAAuE;AACvE,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAEF,8CAA8C;AAC9C,eAAO,MAAM,IAAI,EAAE,KAElB,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,UAAU,EAAE,KAExB,CAAC;AAEF,wDAAwD;AACxD,eAAO,MAAM,gBAAgB,EAAE,KAE9B,CAAC;AAEF,iDAAiD;AACjD,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAEF,gDAAgD;AAChD,eAAO,MAAM,KAAK,EAAE,KAEnB,CAAC;AAEF,sEAAsE;AACtE,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAwBF,mEAAmE;AACnE,eAAO,MAAM,QAAQ,EAAE,KAEtB,CAAC;AAMF,0BAA0B;AAC1B,eAAO,MAAM,iBAAiB,EAAE,KAE/B,CAAC;AAEF,sBAAsB;AACtB,eAAO,MAAM,aAAa,EAAE,KAE3B,CAAC;AAEF,oBAAoB;AACpB,eAAO,MAAM,WAAW,EAAE,KAEzB,CAAC;AAEF,sBAAsB;AACtB,eAAO,MAAM,aAAa,EAAE,KAE3B,CAAC;AAEF,gEAAgE;AAChE,eAAO,MAAM,oBAAoB,EAAE,KAclC,CAAC;AAEF,+FAA+F;AAC/F,eAAO,MAAM,eAAe,EAAE,KAgB7B,CAAC"}
1
+ {"version":3,"file":"overview-tab.stories.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,WAAW,CAclC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,WAAW,CAAC,CAAC;AA0G1C,uEAAuE;AACvE,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAEF,8CAA8C;AAC9C,eAAO,MAAM,IAAI,EAAE,KAElB,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,UAAU,EAAE,KAExB,CAAC;AAEF,wDAAwD;AACxD,eAAO,MAAM,gBAAgB,EAAE,KAE9B,CAAC;AAEF,iDAAiD;AACjD,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAEF,gDAAgD;AAChD,eAAO,MAAM,KAAK,EAAE,KAEnB,CAAC;AAEF,sEAAsE;AACtE,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAwBF,mEAAmE;AACnE,eAAO,MAAM,QAAQ,EAAE,KAEtB,CAAC;AAMF,0BAA0B;AAC1B,eAAO,MAAM,iBAAiB,EAAE,KAE/B,CAAC;AAEF,sBAAsB;AACtB,eAAO,MAAM,aAAa,EAAE,KAE3B,CAAC;AAEF,oBAAoB;AACpB,eAAO,MAAM,WAAW,EAAE,KAEzB,CAAC;AAEF,sBAAsB;AACtB,eAAO,MAAM,aAAa,EAAE,KAE3B,CAAC;AAEF,gEAAgE;AAChE,eAAO,MAAM,oBAAoB,EAAE,KAclC,CAAC;AAqBF,4DAA4D;AAC5D,eAAO,MAAM,sBAAsB,EAAE,KAEpC,CAAC;AAEF,sDAAsD;AACtD,eAAO,MAAM,gBAAgB,EAAE,KAO9B,CAAC;AAEF,+FAA+F;AAC/F,eAAO,MAAM,eAAe,EAAE,KAgB7B,CAAC"}
@@ -195,6 +195,36 @@ export const PrWithMergeConflicts = {
195
195
  },
196
196
  },
197
197
  };
198
+ /* ---------------------------------------------------------------------------
199
+ * Duplicate summary stories
200
+ * ------------------------------------------------------------------------- */
201
+ const duplicateSummaryData = {
202
+ name: 'GPT Chat Support',
203
+ description: 'Add support for "gpt chat" experience',
204
+ featureId: '#ds1',
205
+ lifecycle: 'requirements',
206
+ state: 'running',
207
+ progress: 10,
208
+ agentType: 'claude-code',
209
+ repositoryPath: '/home/user/my-repo',
210
+ branch: 'feat/gpt-chat',
211
+ userQuery: 'Add support to "gpt chat" experience in the shep app',
212
+ summary: 'Add support to "gpt chat" experience in the shep app',
213
+ createdAt: Date.now() - 5000,
214
+ };
215
+ /** Summary hidden — userQuery and summary are identical. */
216
+ export const DuplicateSummaryHidden = {
217
+ args: { data: duplicateSummaryData },
218
+ };
219
+ /** Summary visible — userQuery and summary differ. */
220
+ export const DifferentSummary = {
221
+ args: {
222
+ data: {
223
+ ...duplicateSummaryData,
224
+ summary: 'Integrate GPT chat experience using prompt-kit components with streaming support',
225
+ },
226
+ },
227
+ };
198
228
  /** Completed feature with PR — progress hidden, PR shown in status section without borders. */
199
229
  export const CompletedWithPr = {
200
230
  args: {