@ganakailabs/cloudeval-cli 0.29.3 → 0.29.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.
@@ -38,10 +38,10 @@ import {
38
38
  } from "./chunk-ERGQHMNT.js";
39
39
  import {
40
40
  Banner
41
- } from "./chunk-D2ROSW4U.js";
41
+ } from "./chunk-XZIBSJA4.js";
42
42
  import {
43
43
  CLI_VERSION
44
- } from "./chunk-PN4AUAH6.js";
44
+ } from "./chunk-LEWFJSYP.js";
45
45
  import {
46
46
  raisedButtonStyle,
47
47
  terminalTheme
@@ -3,8 +3,8 @@ import {
3
3
  bannerMetaColor,
4
4
  bannerSegmentColor,
5
5
  splitBannerLineSegments
6
- } from "./chunk-D2ROSW4U.js";
7
- import "./chunk-PN4AUAH6.js";
6
+ } from "./chunk-XZIBSJA4.js";
7
+ import "./chunk-LEWFJSYP.js";
8
8
  import "./chunk-ZDKRIOMB.js";
9
9
  export {
10
10
  Banner,
@@ -1,5 +1,5 @@
1
1
  // src/version.ts
2
- var CLI_VERSION = "0.29.3";
2
+ var CLI_VERSION = "0.29.4";
3
3
 
4
4
  export {
5
5
  CLI_VERSION
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  CLI_VERSION
3
- } from "./chunk-PN4AUAH6.js";
3
+ } from "./chunk-LEWFJSYP.js";
4
4
  import {
5
5
  shouldUseColor,
6
6
  terminalTheme
package/dist/cli.js CHANGED
@@ -39,7 +39,7 @@ import {
39
39
  } from "./chunk-ERGQHMNT.js";
40
40
  import {
41
41
  CLI_VERSION
42
- } from "./chunk-PN4AUAH6.js";
42
+ } from "./chunk-LEWFJSYP.js";
43
43
 
44
44
  // src/runtime/prepareInk.ts
45
45
  import fs from "fs";
@@ -3469,6 +3469,16 @@ var renderAiSummarySections = (shortSummary, detailsMarkdown) => {
3469
3469
  }
3470
3470
  return lines.join("\n");
3471
3471
  };
3472
+ var isInstructionLikeAiDetails = (detailsMarkdown) => {
3473
+ const normalized = detailsMarkdown.toLowerCase();
3474
+ return [
3475
+ "markdown for a collapsible ai details section",
3476
+ "use short paragraphs or bullets",
3477
+ "bold important evidence keywords",
3478
+ "prefer concrete failed test names",
3479
+ "headings: **main risk**"
3480
+ ].some((marker) => normalized.includes(marker));
3481
+ };
3472
3482
  var githubWorkflowRunUrl = () => {
3473
3483
  const server = process.env.GITHUB_SERVER_URL;
3474
3484
  const repo = process.env.GITHUB_REPOSITORY;
@@ -3553,15 +3563,24 @@ var generateAiSummary = async (input) => {
3553
3563
  idempotencyKey: `cloudeval-review-summary-${input.data.projectId}-${input.data.commitSha ?? "head"}`
3554
3564
  });
3555
3565
  const shortSummary = String(response.summary ?? "").trim();
3556
- const detailsMarkdown = String(response.details ?? "").trim();
3566
+ let detailsMarkdown = String(response.details ?? "").trim();
3557
3567
  if (!shortSummary) {
3558
3568
  return deterministicAiSummary(input.data, "Review summary endpoint returned no summary.");
3559
3569
  }
3570
+ const warnings = Array.isArray(response.warnings) ? response.warnings : [];
3571
+ if (isInstructionLikeAiDetails(detailsMarkdown)) {
3572
+ const fallback = deterministicAiSummary(
3573
+ input.data,
3574
+ "Review summary endpoint returned instruction-like details."
3575
+ );
3576
+ detailsMarkdown = String(fallback.detailsMarkdown ?? "").trim();
3577
+ warnings.push("Review summary endpoint returned instruction-like details; using deterministic details.");
3578
+ }
3560
3579
  return {
3561
3580
  enabled: true,
3562
- status: response.fallback_used ? "fallback" : "ok",
3563
- fallbackUsed: Boolean(response.fallback_used),
3564
- warnings: Array.isArray(response.warnings) ? response.warnings : [],
3581
+ status: response.fallback_used || warnings.length > 0 ? "fallback" : "ok",
3582
+ fallbackUsed: Boolean(response.fallback_used) || warnings.length > 0,
3583
+ warnings,
3565
3584
  riskHighlights: Array.isArray(response.risk_highlights) ? response.risk_highlights : [],
3566
3585
  recommendedActions: Array.isArray(response.recommended_actions) ? response.recommended_actions : [],
3567
3586
  evidenceUsed: Array.isArray(response.evidence_used) ? response.evidence_used : [],
@@ -16574,7 +16593,7 @@ program.command("tui").description("Open the CloudEval Terminal UI").option(
16574
16593
  const { assertSecureBaseUrl } = await import("./dist-QYIPN7MD.js");
16575
16594
  const [{ render }, { App }] = await Promise.all([
16576
16595
  import("ink"),
16577
- import("./App-7FR4HVBO.js")
16596
+ import("./App-33TDHYUP.js")
16578
16597
  ]);
16579
16598
  const baseUrl = await resolveBaseUrl(options, command);
16580
16599
  assertSecureBaseUrl(baseUrl);
@@ -16632,7 +16651,7 @@ program.command("chat").description("Start an interactive chat session").option(
16632
16651
  const { assertSecureBaseUrl } = await import("./dist-QYIPN7MD.js");
16633
16652
  const [{ render }, { App }] = await Promise.all([
16634
16653
  import("ink"),
16635
- import("./App-7FR4HVBO.js")
16654
+ import("./App-33TDHYUP.js")
16636
16655
  ]);
16637
16656
  const baseUrl = await resolveBaseUrl(options, command);
16638
16657
  assertSecureBaseUrl(baseUrl);
@@ -17386,7 +17405,7 @@ Error: ${errorMsg}
17386
17405
  program.command("banner").description("Preview the startup banner and terminal capabilities").action(async () => {
17387
17406
  const { render } = await import("ink");
17388
17407
  const BannerPreview = React.lazy(async () => ({
17389
- default: (await import("./Banner-WWNHRGQD.js")).Banner
17408
+ default: (await import("./Banner-QGOVG5CQ.js")).Banner
17390
17409
  }));
17391
17410
  render(
17392
17411
  /* @__PURE__ */ jsx(React.Suspense, { fallback: null, children: /* @__PURE__ */ jsx(BannerPreview, { disable: false }) })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ganakailabs/cloudeval-cli",
3
- "version": "0.29.3",
3
+ "version": "0.29.4",
4
4
  "license": "LicenseRef-CloudEval-CLI",
5
5
  "type": "module",
6
6
  "description": "CloudEval CLI for cloud architecture, cost, report, automation, and MCP workflows.",
package/sbom.spdx.json CHANGED
@@ -14,7 +14,7 @@
14
14
  {
15
15
  "SPDXID": "SPDXRef-Package-CloudEval-CLI",
16
16
  "name": "CloudEval CLI",
17
- "versionInfo": "0.29.3",
17
+ "versionInfo": "0.29.4",
18
18
  "downloadLocation": "https://github.com/ganakailabs/cloudeval-cli",
19
19
  "filesAnalyzed": false,
20
20
  "licenseConcluded": "LicenseRef-CloudEval-CLI",