@productbrain/mcp 0.0.1-beta.5469 → 0.0.1-beta.5475

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.
@@ -8544,6 +8544,14 @@ function buildOperatingProtocol(governanceOrStandards, task) {
8544
8544
  lines.push("");
8545
8545
  return lines;
8546
8546
  }
8547
+ function summariseOutcomeAttentionCounts(rows) {
8548
+ const ready = rows.filter((b) => b.reason === "ready-to-close").length;
8549
+ const stale = rows.length - ready;
8550
+ const parts = [];
8551
+ if (stale > 0) parts.push(`${stale} key result${stale > 1 ? "s" : ""} overdue for a reading`);
8552
+ if (ready > 0) parts.push(`${ready} ready to close`);
8553
+ return parts.join(" \xB7 ");
8554
+ }
8547
8555
  function formatBetConstellationLines(constellationEntries, constellationBetName) {
8548
8556
  if (!constellationEntries?.length) return [];
8549
8557
  const betName = constellationBetName ?? "Matched work package";
@@ -8616,9 +8624,12 @@ function formatWhatNeedsAttentionLines(wna) {
8616
8624
  lines.push("");
8617
8625
  }
8618
8626
  if (hasOutcomeBlockers) {
8619
- lines.push("**Overdue outcome verifications (advisory):**");
8627
+ lines.push("**Key results needing attention (advisory):**");
8620
8628
  for (const b of wna.overdueOutcomeBlockers ?? []) {
8621
- lines.push(`- \`${b.betId}\` \u2192 \`${b.krId}\` (${b.daysOverdue}d overdue \u2014 ${b.scheduledVerificationDate})`);
8629
+ const subject = b.betId ? `\`${b.betId}\` \u2192 \`${b.krId}\`` : `\`${b.krId}\``;
8630
+ if (b.reason === "ready-to-close") lines.push(`- ${subject} \u2014 readings say **${b.readyToClose}**. ${b.instruction ?? "Surface this to the founder; do not write the status yourself."}`);
8631
+ else if (b.reason === "scheduled-date-passed" && b.scheduledVerificationDate) lines.push(`- ${subject} (${b.daysOverdue}d past its scheduled verification date \u2014 ${b.scheduledVerificationDate})`);
8632
+ else lines.push(`- ${subject} (${b.daysOverdue}d overdue for a reading)`);
8622
8633
  }
8623
8634
  lines.push("");
8624
8635
  }
@@ -8635,7 +8646,7 @@ function formatWhatNeedsAttentionBrief(wna) {
8635
8646
  ...overdue.slice(0, 2).map((id) => `\`${id}\` (overdue)`),
8636
8647
  ...blocked.slice(0, 2).map((id) => `\`${id}\` (blocked)`),
8637
8648
  ...critical.slice(0, 1).map((id) => `\`${id}\` (critical path)`),
8638
- ...outcomeBlockers.length > 0 ? [`${outcomeBlockers.length} bet${outcomeBlockers.length > 1 ? "s" : ""} with overdue outcome verification`] : []
8649
+ ...outcomeBlockers.length > 0 ? [summariseOutcomeAttentionCounts(outcomeBlockers)] : []
8639
8650
  ].slice(0, 3);
8640
8651
  if (bullets.length === 0) return [];
8641
8652
  const lines = ["**What needs attention:**", ...bullets.map((b) => `- ${b}`), ""];
@@ -16508,4 +16519,4 @@ export {
16508
16519
  createProductBrainServer,
16509
16520
  initFeatureFlags
16510
16521
  };
16511
- //# sourceMappingURL=chunk-ANFAZHFX.js.map
16522
+ //# sourceMappingURL=chunk-W3SWGAV4.js.map