@shepai/cli 1.150.1-pr470.1a21b64 → 1.150.1-pr472.b429b42

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 (158) hide show
  1. package/dist/src/presentation/web/app/actions/get-merge-review-data.d.ts.map +1 -1
  2. package/dist/src/presentation/web/app/actions/get-merge-review-data.js +10 -1
  3. package/dist/src/presentation/web/components/common/merge-review/merge-review.d.ts.map +1 -1
  4. package/dist/src/presentation/web/components/common/merge-review/merge-review.js +2 -28
  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/adopt/page/server-reference-manifest.json +28 -28
  14. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  15. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  16. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +28 -28
  17. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  18. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  19. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +36 -36
  20. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  21. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  22. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +36 -36
  23. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  24. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  25. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +26 -26
  26. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  27. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  28. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +28 -28
  29. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  30. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  31. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +36 -36
  32. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  33. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  34. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +36 -36
  35. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  36. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  37. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +26 -26
  38. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  39. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  40. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +26 -26
  41. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  42. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  43. package/web/.next/server/app/_global-error.html +2 -2
  44. package/web/.next/server/app/_global-error.rsc +1 -1
  45. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  46. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  47. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  48. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  49. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  50. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +3 -3
  51. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  52. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  53. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  54. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  55. package/web/.next/server/app/settings/page/server-reference-manifest.json +8 -8
  56. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  57. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  58. package/web/.next/server/app/skills/page/server-reference-manifest.json +8 -8
  59. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  60. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  61. package/web/.next/server/app/tools/page/server-reference-manifest.json +8 -8
  62. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  63. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  64. package/web/.next/server/app/version/page/server-reference-manifest.json +3 -3
  65. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  66. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  67. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  68. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  69. package/web/.next/server/chunks/ssr/[root-of-the-server]__2138fa7e._.js +2 -2
  70. package/web/.next/server/chunks/ssr/[root-of-the-server]__29580090._.js +1 -1
  71. package/web/.next/server/chunks/ssr/[root-of-the-server]__29580090._.js.map +1 -1
  72. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  73. package/web/.next/server/chunks/ssr/[root-of-the-server]__3ef34e4c._.js +1 -1
  74. package/web/.next/server/chunks/ssr/[root-of-the-server]__43f51aa6._.js +1 -1
  75. package/web/.next/server/chunks/ssr/[root-of-the-server]__43f51aa6._.js.map +1 -1
  76. package/web/.next/server/chunks/ssr/[root-of-the-server]__815546bd._.js +1 -1
  77. package/web/.next/server/chunks/ssr/[root-of-the-server]__815546bd._.js.map +1 -1
  78. package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js +3 -3
  79. package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js.map +1 -1
  80. package/web/.next/server/chunks/ssr/[root-of-the-server]__c094882b._.js +1 -1
  81. package/web/.next/server/chunks/ssr/[root-of-the-server]__c094882b._.js.map +1 -1
  82. package/web/.next/server/chunks/ssr/[root-of-the-server]__d48c5b11._.js +1 -1
  83. package/web/.next/server/chunks/ssr/[root-of-the-server]__d48c5b11._.js.map +1 -1
  84. package/web/.next/server/chunks/ssr/[root-of-the-server]__dac5dbf1._.js +1 -1
  85. package/web/.next/server/chunks/ssr/[root-of-the-server]__dac5dbf1._.js.map +1 -1
  86. package/web/.next/server/chunks/ssr/[root-of-the-server]__fae8b355._.js +1 -1
  87. package/web/.next/server/chunks/ssr/[root-of-the-server]__fae8b355._.js.map +1 -1
  88. package/web/.next/server/chunks/ssr/_05c23ad9._.js +1 -1
  89. package/web/.next/server/chunks/ssr/_05c23ad9._.js.map +1 -1
  90. package/web/.next/server/chunks/ssr/_0c5f56e3._.js +2 -2
  91. package/web/.next/server/chunks/ssr/_0c5f56e3._.js.map +1 -1
  92. package/web/.next/server/chunks/ssr/_16eb4fec._.js +1 -1
  93. package/web/.next/server/chunks/ssr/_16eb4fec._.js.map +1 -1
  94. package/web/.next/server/chunks/ssr/_1b719e7f._.js +1 -1
  95. package/web/.next/server/chunks/ssr/_1b719e7f._.js.map +1 -1
  96. package/web/.next/server/chunks/ssr/_37e8548b._.js +1 -1
  97. package/web/.next/server/chunks/ssr/_37e8548b._.js.map +1 -1
  98. package/web/.next/server/chunks/ssr/_4d3c86a1._.js +3 -0
  99. package/web/.next/server/chunks/ssr/{_0b3cbed5._.js.map → _4d3c86a1._.js.map} +1 -1
  100. package/web/.next/server/chunks/ssr/_55d763e2._.js +1 -1
  101. package/web/.next/server/chunks/ssr/_55d763e2._.js.map +1 -1
  102. package/web/.next/server/chunks/ssr/_6256a985._.js +1 -1
  103. package/web/.next/server/chunks/ssr/_6256a985._.js.map +1 -1
  104. package/web/.next/server/chunks/ssr/_64bdfc6f._.js +2 -2
  105. package/web/.next/server/chunks/ssr/_64bdfc6f._.js.map +1 -1
  106. package/web/.next/server/chunks/ssr/{_d6d022d2._.js → _666f1fdb._.js} +2 -2
  107. package/web/.next/server/chunks/ssr/{_d6d022d2._.js.map → _666f1fdb._.js.map} +1 -1
  108. package/web/.next/server/chunks/ssr/_8fcc39d4._.js +1 -1
  109. package/web/.next/server/chunks/ssr/_b71645b4._.js +1 -1
  110. package/web/.next/server/chunks/ssr/_b71645b4._.js.map +1 -1
  111. package/web/.next/server/chunks/ssr/_d8575088._.js +1 -1
  112. package/web/.next/server/chunks/ssr/_d8575088._.js.map +1 -1
  113. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  114. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  115. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1b176e3c.js +1 -1
  116. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1b176e3c.js.map +1 -1
  117. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_bd9f0dda.js +1 -1
  118. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_bd9f0dda.js.map +1 -1
  119. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js +1 -1
  120. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js +1 -1
  121. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js.map +1 -1
  122. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  123. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  124. package/web/.next/server/chunks/ssr/{src_presentation_web_12f07ecb._.js → src_presentation_web_fc1a88d6._.js} +2 -2
  125. package/web/.next/server/chunks/ssr/{src_presentation_web_12f07ecb._.js.map → src_presentation_web_fc1a88d6._.js.map} +1 -1
  126. package/web/.next/server/pages/500.html +2 -2
  127. package/web/.next/server/server-reference-manifest.js +1 -1
  128. package/web/.next/server/server-reference-manifest.json +44 -44
  129. package/web/.next/static/chunks/{0411e555593c7010.js → 131ac941d8053165.js} +1 -1
  130. package/web/.next/static/chunks/16669a542eb19087.js +5 -0
  131. package/web/.next/static/chunks/{272b4e8d4c348cf1.js → 18620e40d4d5fcc1.js} +1 -1
  132. package/web/.next/static/chunks/{31c00f48dc41bb99.js → 38d35c31c5ce0c4a.js} +1 -1
  133. package/web/.next/static/chunks/4063179f93441b6f.js +1 -0
  134. package/web/.next/static/chunks/53b2486467f6cee2.js +1 -0
  135. package/web/.next/static/chunks/{41af1494288344ca.js → 72050e5bada7a894.js} +1 -1
  136. package/web/.next/static/chunks/{9fe4a8940731f25c.js → 74a5ff79ce4e4860.js} +1 -1
  137. package/web/.next/static/chunks/9b8678597fa1db84.css +1 -0
  138. package/web/.next/static/chunks/{74a62355cdbf89de.js → a0654505d48d1332.js} +1 -1
  139. package/web/.next/static/chunks/{06b0a5936a08d8f4.js → bf29fe75582f8e49.js} +1 -1
  140. package/web/.next/static/chunks/{83010d0afd05790f.js → d3dbce02d2468c1a.js} +1 -1
  141. package/web/.next/static/chunks/{6993b585bc2a9a15.js → dc86357a54f6478b.js} +2 -2
  142. package/dist/src/presentation/web/components/common/evidence-lightbox/evidence-lightbox.d.ts +0 -15
  143. package/dist/src/presentation/web/components/common/evidence-lightbox/evidence-lightbox.d.ts.map +0 -1
  144. package/dist/src/presentation/web/components/common/evidence-lightbox/evidence-lightbox.js +0 -43
  145. package/dist/src/presentation/web/components/common/evidence-lightbox/evidence-lightbox.stories.d.ts +0 -18
  146. package/dist/src/presentation/web/components/common/evidence-lightbox/evidence-lightbox.stories.d.ts.map +0 -1
  147. package/dist/src/presentation/web/components/common/evidence-lightbox/evidence-lightbox.stories.js +0 -125
  148. package/dist/src/presentation/web/components/common/evidence-lightbox/index.d.ts +0 -3
  149. package/dist/src/presentation/web/components/common/evidence-lightbox/index.d.ts.map +0 -1
  150. package/dist/src/presentation/web/components/common/evidence-lightbox/index.js +0 -1
  151. package/web/.next/server/chunks/ssr/_0b3cbed5._.js +0 -3
  152. package/web/.next/static/chunks/09ace8990b178ab0.js +0 -5
  153. package/web/.next/static/chunks/1ecda04db5eeaaa7.js +0 -1
  154. package/web/.next/static/chunks/52470bcbe2e8198d.css +0 -1
  155. package/web/.next/static/chunks/6e6d1231587d89fe.js +0 -1
  156. /package/web/.next/static/{_MutlH0BcJDlWFu0p9a8G → -S0WVeoiKjg8kgqVS8gDC}/_buildManifest.js +0 -0
  157. /package/web/.next/static/{_MutlH0BcJDlWFu0p9a8G → -S0WVeoiKjg8kgqVS8gDC}/_clientMiddlewareManifest.json +0 -0
  158. /package/web/.next/static/{_MutlH0BcJDlWFu0p9a8G → -S0WVeoiKjg8kgqVS8gDC}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"get-merge-review-data.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/web/app/actions/get-merge-review-data.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,eAAe,EAEhB,MAAM,sDAAsD,CAAC;AAK9D,KAAK,wBAAwB,GAAG,eAAe,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAqCpE,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAmG7F"}
1
+ {"version":3,"file":"get-merge-review-data.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/web/app/actions/get-merge-review-data.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,eAAe,EAEhB,MAAM,sDAAsD,CAAC;AAK9D,KAAK,wBAAwB,GAAG,eAAe,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAqCpE,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,CA2G7F"}
@@ -92,7 +92,16 @@ export async function getMergeReviewData(featureId) {
92
92
  const manifestPath = join(evidenceDir, 'manifest.json');
93
93
  if (existsSync(manifestPath)) {
94
94
  const raw = JSON.parse(readFileSync(manifestPath, 'utf-8'));
95
- evidence = normalizeEvidencePaths(raw, evidenceDir);
95
+ const normalized = normalizeEvidencePaths(raw, evidenceDir);
96
+ // Deduplicate: same type + relativePath means the same evidence entry
97
+ const seen = new Set();
98
+ evidence = normalized.filter((e) => {
99
+ const key = `${e.type}:${e.relativePath}`;
100
+ if (seen.has(key))
101
+ return false;
102
+ seen.add(key);
103
+ return true;
104
+ });
96
105
  }
97
106
  }
98
107
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"merge-review.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/merge-review/merge-review.tsx"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,gBAAgB,EAAuB,MAAM,uBAAuB,CAAC;AAmNnF,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,QAAgB,EAChB,SAAS,EACT,QAAQ,EACR,YAAoB,EACpB,WAAmB,EACnB,SAAS,EACT,iBAAiB,GAClB,EAAE,gBAAgB,2CA+JlB"}
1
+ {"version":3,"file":"merge-review.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/merge-review/merge-review.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,gBAAgB,EAAuB,MAAM,uBAAuB,CAAC;AAuJnF,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,QAAgB,EAChB,SAAS,EACT,QAAQ,EACR,YAAoB,EACpB,WAAmB,EACnB,SAAS,EACT,iBAAiB,GAClB,EAAE,gBAAgB,2CA+JlB"}
@@ -1,11 +1,10 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { useState, useMemo } from 'react';
3
+ import { useState } from 'react';
4
4
  import { ExternalLink, AlertTriangle, FileDiff, GitCommitHorizontal, GitBranch, ArrowRight, Camera, FileText, MonitorPlay, Terminal, Download, ChevronDown, ChevronRight, } from 'lucide-react';
5
5
  import { Badge } from '../../ui/badge.js';
6
6
  import { CiStatusBadge } from '../../common/ci-status-badge/index.js';
7
7
  import { DrawerActionBar } from '../../common/drawer-action-bar/index.js';
8
- import { EvidenceLightbox } from '../../common/evidence-lightbox/index.js';
9
8
  import { DiffView } from './diff-view.js';
10
9
  const EVIDENCE_ICONS = {
11
10
  Screenshot: Camera,
@@ -55,33 +54,8 @@ function EvidenceTextPreview({ url }) {
55
54
  }
56
55
  return (_jsx("pre", { className: "bg-muted/50 max-h-60 overflow-auto rounded-md p-3 font-mono text-[11px] leading-relaxed", children: content }));
57
56
  }
58
- function isImageEvidence(evidence) {
59
- return (evidence.type === 'Screenshot' || IMAGE_EXTENSIONS.has(getExtension(evidence.relativePath)));
60
- }
61
57
  function EvidenceList({ evidence }) {
62
- const [lightboxOpen, setLightboxOpen] = useState(false);
63
- const [selectedIndex, setSelectedIndex] = useState(0);
64
- const { imageEvidence, nonImageEvidence } = useMemo(() => {
65
- const imgs = [];
66
- const nonImgs = [];
67
- for (const e of evidence) {
68
- if (isImageEvidence(e)) {
69
- imgs.push(e);
70
- }
71
- else {
72
- nonImgs.push(e);
73
- }
74
- }
75
- return { imageEvidence: imgs, nonImageEvidence: nonImgs };
76
- }, [evidence]);
77
- function handleThumbnailClick(index) {
78
- setSelectedIndex(index);
79
- setLightboxOpen(true);
80
- }
81
- return (_jsxs("div", { className: "border-border rounded-lg border", children: [_jsxs("div", { className: "px-4 py-3", children: [_jsxs("div", { className: "mb-3 flex items-center gap-2", children: [_jsx(Camera, { className: "text-muted-foreground h-4 w-4" }), _jsx("span", { className: "text-foreground text-xs font-semibold", children: "Evidence" }), _jsx(Badge, { variant: "secondary", className: "text-[10px]", children: evidence.length })] }), imageEvidence.length > 0 ? (
82
- /* eslint-disable @next/next/no-img-element -- Local evidence files require raw <img>, not next/image */
83
- _jsx("div", { className: "mb-3 grid grid-cols-3 gap-2", children: imageEvidence.map((e, i) => (_jsx("button", { type: "button", className: "cursor-pointer overflow-hidden rounded-md border", onClick: () => handleThumbnailClick(i), children: _jsx("img", { src: buildEvidenceUrl(e.relativePath), alt: e.description, className: "aspect-square w-full object-cover", loading: "lazy" }) }, `thumb-${e.relativePath}`))) })) : /* eslint-enable @next/next/no-img-element */
84
- null, nonImageEvidence.length > 0 ? (_jsx("ul", { className: "space-y-2", children: nonImageEvidence.map((e) => (_jsx(EvidenceItem, { evidence: e }, `${e.type}-${e.relativePath}`))) })) : null] }), _jsx(EvidenceLightbox, { images: imageEvidence, open: lightboxOpen, onOpenChange: setLightboxOpen, selectedIndex: selectedIndex, onSelectedIndexChange: setSelectedIndex })] }));
58
+ return (_jsx("div", { className: "border-border rounded-lg border", children: _jsxs("div", { className: "px-4 py-3", children: [_jsxs("div", { className: "mb-3 flex items-center gap-2", children: [_jsx(Camera, { className: "text-muted-foreground h-4 w-4" }), _jsx("span", { className: "text-foreground text-xs font-semibold", children: "Evidence" }), _jsx(Badge, { variant: "secondary", className: "text-[10px]", children: evidence.length })] }), _jsx("ul", { className: "space-y-2", children: evidence.map((e) => (_jsx(EvidenceItem, { evidence: e }, `${e.type}-${e.relativePath}`))) })] }) }));
85
59
  }
86
60
  export function MergeReview({ data, readOnly = false, onApprove, onReject, isProcessing = false, isRejecting = false, chatInput, onChatInputChange, }) {
87
61
  const { pr, diffSummary, fileDiffs, branch, warning, evidence, hideCiStatus } = data;