@basou/cli 0.37.0 → 0.38.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.
package/dist/index.js CHANGED
@@ -8053,19 +8053,25 @@ function selfReportSuffix(u, stillCounted) {
8053
8053
  if (rest > 0) parts.push(`+${rest} more`);
8054
8054
  return ` \xB7 self-reported by ${parts.join("; ")} \u2014 ${stillCounted ? "unverified, still counted" : "unverified"}`;
8055
8055
  }
8056
+ function unobservedOutcomeSuffix(u) {
8057
+ const n = u.commitsWithUnobservedOutcome;
8058
+ if (n === 0) return "";
8059
+ const scope = n === u.commitCount ? "" : `${n} of them `;
8060
+ return ` \xB7 ${scope}exited with no recorded status \u2014 landing assumed, not observed`;
8061
+ }
8056
8062
  function unitLine(u, now) {
8057
8063
  const when = relAge(u.lastCommitAt, now);
8058
8064
  const head = `- ${u.repo} ${when} (${u.commitCount} commit${u.commitCount === 1 ? "" : "s"})`;
8059
8065
  if (u.verdict === "near_unbound") {
8060
8066
  const ids = u.reviews.map((r) => r.sessionId.slice(0, 14)).join(", ");
8061
- return `${head} \u2014 a nearby review exists, but the diff / changed files were not examined [${ids}]${selfReportSuffix(u, true)}`;
8067
+ return `${head} \u2014 a nearby review exists, but the diff / changed files were not examined [${ids}]${selfReportSuffix(u, true)}${unobservedOutcomeSuffix(u)}`;
8062
8068
  }
8063
- return `${head} \u2014 no bound cross-model review${selfReportSuffix(u, true)}`;
8069
+ return `${head} \u2014 no bound cross-model review${selfReportSuffix(u, true)}${unobservedOutcomeSuffix(u)}`;
8064
8070
  }
8065
8071
  function candidateLine(u, now) {
8066
8072
  const when = relAge(u.lastCommitAt, now);
8067
8073
  const cite = u.reviews.map((r) => `${r.sessionId.slice(0, 14)}${r.examinedDiff ? "(diff)" : ""}`).join(", ");
8068
- return `- ${u.repo} ${when} (${u.commitCount} commit${u.commitCount === 1 ? "" : "s"}) \u2014 review trace: ${cite}${selfReportSuffix(u, false)}`;
8074
+ return `- ${u.repo} ${when} (${u.commitCount} commit${u.commitCount === 1 ? "" : "s"}) \u2014 review trace: ${cite}${selfReportSuffix(u, false)}${unobservedOutcomeSuffix(u)}`;
8069
8075
  }
8070
8076
  function renderReviewGaps(summary) {
8071
8077
  const now = new Date(summary.generatedAt);
@@ -8880,8 +8886,9 @@ function eventVariantSummary(ev) {
8880
8886
  switch (ev.type) {
8881
8887
  case "command_executed": {
8882
8888
  const argsPart = ev.args.length > 0 ? ` ${ev.args.join(" ")}` : "";
8883
- const exitPart = ev.exit_code === null ? "exit=signal" : `exit=${ev.exit_code}`;
8884
- return `${ev.command}${argsPart} (${exitPart}, ${ev.duration_ms}ms)`;
8889
+ const executorPart = ev.command ?? "(executor unrecorded)";
8890
+ const exitPart = ev.exit_code === null ? "exit=unknown" : `exit=${ev.exit_code}`;
8891
+ return `${executorPart}${argsPart} (${exitPart}, ${ev.duration_ms}ms)`;
8885
8892
  }
8886
8893
  case "git_snapshot":
8887
8894
  return `branch=${ev.branch} dirty=${ev.dirty}`;
@@ -11501,6 +11508,7 @@ var VIEW_HTML = `<!doctype html>
11501
11508
  function eventSummary(ev) {
11502
11509
  if (ev.type === 'command_executed') {
11503
11510
  var cmd = (ev.args && ev.args.length) ? ev.args.join(' ') : ev.command;
11511
+ if (cmd === null || cmd === undefined) cmd = '(command unrecorded)';
11504
11512
  var ex = (ev.exit_code === null || ev.exit_code === undefined) ? '' : ' (exit ' + ev.exit_code + ')';
11505
11513
  return cmd + ex;
11506
11514
  }