pi-smart-compact 9.6.1 → 9.7.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.
Files changed (44) hide show
  1. package/ARCHITECTURE.md +21 -9
  2. package/CHANGELOG.md +26 -0
  3. package/README.md +33 -10
  4. package/dist/app/mode-policy.d.ts +3 -1
  5. package/dist/app/mode-policy.d.ts.map +1 -1
  6. package/dist/app/preflight.d.ts.map +1 -1
  7. package/dist/app/register-context-tools.d.ts.map +1 -1
  8. package/dist/app/register-smart-compact-command.d.ts.map +1 -1
  9. package/dist/app/register-smart-compact-tool.d.ts.map +1 -1
  10. package/dist/app/run-smart-compact.d.ts.map +1 -1
  11. package/dist/app/smart-compact-input.d.ts +1 -1
  12. package/dist/app/smart-compact-input.d.ts.map +1 -1
  13. package/dist/app/steps/extract.d.ts.map +1 -1
  14. package/dist/app/steps/prepare.d.ts.map +1 -1
  15. package/dist/app/steps/state.d.ts.map +1 -1
  16. package/dist/app/steps/synthesize.d.ts.map +1 -1
  17. package/dist/app/steps/window.d.ts.map +1 -1
  18. package/dist/constants.d.ts +9 -3
  19. package/dist/constants.d.ts.map +1 -1
  20. package/dist/domain/provider-evaluation.d.ts.map +1 -1
  21. package/dist/domain/telemetry.d.ts.map +1 -1
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +1978 -1831
  24. package/dist/infra/ai-messages.d.ts +6 -2
  25. package/dist/infra/ai-messages.d.ts.map +1 -1
  26. package/dist/infra/context-graph.d.ts +7 -0
  27. package/dist/infra/context-graph.d.ts.map +1 -1
  28. package/dist/phases/synthesize.d.ts.map +1 -1
  29. package/dist/phases/verify.d.ts.map +1 -1
  30. package/dist/provider-eval.js +252 -27
  31. package/dist/provider-scenario-eval.js +262 -35
  32. package/dist/telemetry-report.js +31 -29
  33. package/dist/types.d.ts +5 -0
  34. package/dist/types.d.ts.map +1 -1
  35. package/dist/ui/error-format.d.ts +3 -1
  36. package/dist/ui/error-format.d.ts.map +1 -1
  37. package/dist/ui/metrics-report.d.ts.map +1 -1
  38. package/dist/ui/settings-complex.d.ts.map +1 -1
  39. package/dist/utils/cache.d.ts.map +1 -1
  40. package/dist/utils/config.d.ts.map +1 -1
  41. package/dist/utils/helpers.d.ts.map +1 -1
  42. package/dist/utils/logger.d.ts.map +1 -1
  43. package/dist/utils/session-log.d.ts.map +1 -1
  44. package/package.json +2 -2
@@ -1,11 +1,9 @@
1
1
  // @bun
2
- var __require = import.meta.require;
3
-
4
2
  // scripts/provider-scenario-eval.ts
5
3
  import { ModelRegistry, ModelRuntime } from "@earendil-works/pi-coding-agent";
6
4
 
7
5
  // src/constants.ts
8
- var VERSION = "9.6.1";
6
+ var VERSION = "9.7.0";
9
7
  var SETTLED_TRIGGER_COOLDOWN_MS = 10 * 60000;
10
8
  var COMPACT_SYSTEM_PREFIX = "You are an expert conversation summarizer for a coding agent. " + "Produce structured markdown summaries. " + "Follow output format exactly. " + "Use EXACT names \u2014 never paraphrase code identifiers. " + "Trust deterministic extraction data over intuition.";
11
9
  var PROFILES = {
@@ -58,6 +56,7 @@ var DEFAULT_CONFIG = {
58
56
  maxLlmInputTokens: 0,
59
57
  codexMaxCallMs: 0,
60
58
  maxLatencyMs: 0,
59
+ pendingTtlMs: 300000,
61
60
  focusWeighting: true,
62
61
  zeroCallEnabled: true,
63
62
  contextGraphEnabled: true,
@@ -872,9 +871,12 @@ function classifyToolOperation(args, toolName) {
872
871
 
873
872
  // src/utils/logger.ts
874
873
  var DEBUG = process.env.DEBUG?.includes("smart-compact") ?? false;
874
+ function ts() {
875
+ return new Date().toISOString();
876
+ }
875
877
  function warn(msg, err) {
876
878
  const detail = err instanceof Error ? err.message : err ?? "";
877
- console.error(LOG_PREFIX + " " + msg + (detail ? ": " + detail : ""));
879
+ console.error(ts() + " " + LOG_PREFIX + " " + msg + (detail ? ": " + detail : ""));
878
880
  }
879
881
 
880
882
  // src/infra/fs.ts
@@ -1049,7 +1051,7 @@ function buildSummaryPathEvidence(paths, budgetTokens = PROFILES.balanced.summar
1049
1051
  const unique = Array.from(new Set(paths.filter(Boolean)));
1050
1052
  if (!unique.length)
1051
1053
  return new Map;
1052
- const full = unique.map((path2) => [path2, summaryPathLine(path2)]);
1054
+ const full = unique.map((path) => [path, summaryPathLine(path)]);
1053
1055
  const minimumPerLine = JSON.stringify("#" + "x".repeat(12)).length + 3;
1054
1056
  const budgetChars = Math.max(unique.length * minimumPerLine, Math.min(20000, Math.max(4000, Math.floor(budgetTokens * 2))));
1055
1057
  if (full.reduce((total, [, line]) => total + line.length + 3, 0) <= budgetChars) {
@@ -1057,21 +1059,21 @@ function buildSummaryPathEvidence(paths, budgetTokens = PROFILES.balanced.summar
1057
1059
  }
1058
1060
  const digests = new Map;
1059
1061
  const owners = new Map;
1060
- for (const path2 of unique) {
1061
- const fullDigest = createHash("sha256").update(path2).digest("base64url");
1062
+ for (const path of unique) {
1063
+ const fullDigest = createHash("sha256").update(path).digest("base64url");
1062
1064
  let digest = fullDigest.slice(0, 12);
1063
1065
  const owner = owners.get(digest);
1064
- if (owner && owner !== path2) {
1066
+ if (owner && owner !== path) {
1065
1067
  digest = fullDigest;
1066
1068
  digests.set(owner, createHash("sha256").update(owner).digest("base64url"));
1067
1069
  }
1068
- owners.set(digest, path2);
1069
- digests.set(path2, digest);
1070
+ owners.set(digest, path);
1071
+ digests.set(path, digest);
1070
1072
  }
1071
1073
  const perPath = Math.max(JSON.stringify("#" + "x".repeat(12)).length, Math.floor((budgetChars - unique.length * 3) / unique.length));
1072
- return new Map(unique.map((path2) => [
1073
- path2,
1074
- compactPathLine(path2, perPath, digests.get(path2) ?? "")
1074
+ return new Map(unique.map((path) => [
1075
+ path,
1076
+ compactPathLine(path, perPath, digests.get(path) ?? "")
1075
1077
  ]));
1076
1078
  }
1077
1079
  function mergeBodies(first, second) {
@@ -1405,27 +1407,27 @@ class SecretScrubber {
1405
1407
  findings.set("credential", (findings.get("credential") ?? 0) + 1);
1406
1408
  this.total++;
1407
1409
  };
1408
- const visit = (value2) => {
1409
- if (typeof value2 === "string") {
1410
- const result = this.scrubText(value2);
1410
+ const visit = (value) => {
1411
+ if (typeof value === "string") {
1412
+ const result = this.scrubText(value);
1411
1413
  mergeFindings(findings, result.findings);
1412
1414
  return result.value;
1413
1415
  }
1414
- if (value2 == null || typeof value2 !== "object")
1415
- return value2;
1416
- const cached = seen.get(value2);
1416
+ if (value == null || typeof value !== "object")
1417
+ return value;
1418
+ const cached = seen.get(value);
1417
1419
  if (cached !== undefined)
1418
1420
  return cached;
1419
- if (Array.isArray(value2)) {
1420
- const output2 = [];
1421
- seen.set(value2, output2);
1422
- for (const item of value2)
1423
- output2.push(visit(item));
1424
- return output2;
1421
+ if (Array.isArray(value)) {
1422
+ const output = [];
1423
+ seen.set(value, output);
1424
+ for (const item of value)
1425
+ output.push(visit(item));
1426
+ return output;
1425
1427
  }
1426
1428
  const output = {};
1427
- seen.set(value2, output);
1428
- for (const [key, item] of Object.entries(value2)) {
1429
+ seen.set(value, output);
1430
+ for (const [key, item] of Object.entries(value)) {
1429
1431
  const carriesSecret = typeof item === "string" && item.length >= 8;
1430
1432
  if (this.secretsEnabled && isSecretBearingKey(key) && carriesSecret) {
1431
1433
  output[key] = "[REDACTED:credential]";
@@ -1667,6 +1669,229 @@ var processToolSupport = new ToolSupportCache;
1667
1669
  var processTokenCalibration = new TokenCalibrationStore;
1668
1670
  var _default = createServices();
1669
1671
 
1672
+ // src/domain/telemetry.ts
1673
+ function p95(values) {
1674
+ if (!values.length)
1675
+ return 0;
1676
+ const sorted = [...values].sort((a, b) => a - b);
1677
+ return sorted[Math.max(0, Math.ceil(sorted.length * 0.95) - 1)] ?? 0;
1678
+ }
1679
+ function stats(entries, damage) {
1680
+ const evidence = entries.filter((entry) => entry.status !== "dry-run");
1681
+ const successfulRuns = evidence.filter((entry) => entry.status === "success");
1682
+ const quality = successfulRuns.filter((entry) => typeof entry.verificationScore === "number");
1683
+ const appliedRunIds = new Set(successfulRuns.filter((entry) => typeof entry.runId === "string" && entry.runId.length >= 8).map((entry) => entry.runId));
1684
+ const observedScores = new Map;
1685
+ for (const observation of damage) {
1686
+ if (!observation.runId || !appliedRunIds.has(observation.runId) || typeof observation.damageScore !== "number" || !Number.isFinite(observation.damageScore))
1687
+ continue;
1688
+ observedScores.set(observation.runId, Math.max(observedScores.get(observation.runId) ?? 0, Math.max(0, Math.min(100, observation.damageScore))));
1689
+ }
1690
+ const damaging = [...observedScores.values()].filter((score) => score > 0).length;
1691
+ return {
1692
+ runs: entries.length,
1693
+ appliedRuns: evidence.length,
1694
+ successRate: evidence.length ? successfulRuns.length / evidence.length : 1,
1695
+ avgQuality: quality.length ? quality.reduce((sum, entry) => sum + (entry.verificationScore ?? 0), 0) / quality.length : null,
1696
+ qualityCoverage: evidence.length ? quality.length / evidence.length : 0,
1697
+ p95LatencyMs: p95(evidence.map((entry) => entry.durationMs ?? entry.avgLatency).filter(Number.isFinite)),
1698
+ avgTokens: evidence.length ? evidence.reduce((sum, entry) => sum + entry.totalInput + entry.totalCacheHit + (entry.totalCacheWrite ?? 0) + entry.totalOutput, 0) / evidence.length : 0,
1699
+ fallbackRate: evidence.length ? evidence.filter((entry) => entry.method === "heuristic" || Array.isArray(entry.providerRoutes) && entry.providerRoutes.some((route) => route.successes < route.calls)).length / evidence.length : 0,
1700
+ damageRate: observedScores.size ? damaging / observedScores.size : 0,
1701
+ damageCoverage: successfulRuns.length ? observedScores.size / successfulRuns.length : 0
1702
+ };
1703
+ }
1704
+ function roundStats(value) {
1705
+ return {
1706
+ ...value,
1707
+ successRate: Math.round(value.successRate * 1000) / 1000,
1708
+ avgQuality: value.avgQuality == null ? null : Math.round(value.avgQuality * 10) / 10,
1709
+ qualityCoverage: Math.round(value.qualityCoverage * 1000) / 1000,
1710
+ p95LatencyMs: Math.round(value.p95LatencyMs),
1711
+ avgTokens: Math.round(value.avgTokens),
1712
+ fallbackRate: Math.round(value.fallbackRate * 1000) / 1000,
1713
+ damageRate: Math.round(value.damageRate * 1000) / 1000,
1714
+ damageCoverage: Math.round(value.damageCoverage * 1000) / 1000
1715
+ };
1716
+ }
1717
+ function assessCanary(entries, damageEntries, options) {
1718
+ const minCanaryRuns = Math.max(5, options.minCanaryRuns ?? 20);
1719
+ const canaryEntries = entries.filter((entry) => entry.metricsSchemaVersion === 2 && entry.version === options.version && entry.releaseChannel === "canary").slice(-Math.max(100, minCanaryRuns));
1720
+ const baselineEntries = entries.filter((entry) => entry.metricsSchemaVersion === 2 && (entry.releaseChannel ?? "stable") === "stable").slice(-(options.baselineRuns ?? Math.max(50, minCanaryRuns * 2)));
1721
+ const baseline = stats(baselineEntries, damageEntries);
1722
+ const canary = stats(canaryEntries, damageEntries);
1723
+ const triggers = [];
1724
+ const failureBaseline = 1 - baseline.successRate;
1725
+ const failureCanary = 1 - canary.successRate;
1726
+ if (canary.appliedRuns >= 3 && (failureCanary > 0.050001 || failureCanary - failureBaseline >= 0.050001)) {
1727
+ triggers.push({
1728
+ metric: "failure-rate",
1729
+ baseline: failureBaseline,
1730
+ canary: failureCanary,
1731
+ threshold: failureCanary > 0.050001 ? ">5% absolute" : "+5pp regression"
1732
+ });
1733
+ }
1734
+ if (canary.avgQuality != null && (canary.avgQuality < 85 || baseline.avgQuality != null && baseline.avgQuality - canary.avgQuality >= 5)) {
1735
+ triggers.push({
1736
+ metric: "quality",
1737
+ baseline: baseline.avgQuality ?? 0,
1738
+ canary: canary.avgQuality,
1739
+ threshold: canary.avgQuality < 85 ? "<85 absolute" : "-5 points"
1740
+ });
1741
+ }
1742
+ if (baseline.p95LatencyMs >= 1000 && canary.p95LatencyMs >= baseline.p95LatencyMs * 1.5) {
1743
+ triggers.push({ metric: "latency", baseline: baseline.p95LatencyMs, canary: canary.p95LatencyMs, threshold: "+50% p95" });
1744
+ }
1745
+ if (baseline.avgTokens >= 1000 && canary.avgTokens >= baseline.avgTokens * 1.5) {
1746
+ triggers.push({ metric: "tokens", baseline: baseline.avgTokens, canary: canary.avgTokens, threshold: "+50%" });
1747
+ }
1748
+ if (canary.fallbackRate - baseline.fallbackRate >= 0.1) {
1749
+ triggers.push({ metric: "fallback", baseline: baseline.fallbackRate, canary: canary.fallbackRate, threshold: "+10pp" });
1750
+ }
1751
+ if (canary.damageRate - baseline.damageRate >= 0.1) {
1752
+ triggers.push({ metric: "damage", baseline: baseline.damageRate, canary: canary.damageRate, threshold: "+10pp" });
1753
+ }
1754
+ const canarySampleAdequacy = Math.min(1, canary.appliedRuns / minCanaryRuns);
1755
+ const baselineSampleAdequacy = Math.min(1, baseline.appliedRuns / Math.max(20, minCanaryRuns));
1756
+ const dataConfidence = Math.round(100 * (canarySampleAdequacy * 0.25 + baselineSampleAdequacy * 0.15 + canary.qualityCoverage * canarySampleAdequacy * 0.2 + canary.damageCoverage * canarySampleAdequacy * 0.2 + baseline.damageCoverage * baselineSampleAdequacy * 0.2));
1757
+ const reasons = [];
1758
+ let decision = "hold";
1759
+ if (triggers.length && canary.appliedRuns >= 3) {
1760
+ decision = "rollback";
1761
+ reasons.push(...triggers.map((trigger) => trigger.metric + " crossed " + trigger.threshold));
1762
+ } else if (canary.appliedRuns < minCanaryRuns) {
1763
+ reasons.push("need " + (minCanaryRuns - canary.appliedRuns) + " more canary runs with applied outcomes");
1764
+ } else if (baseline.appliedRuns < Math.max(20, minCanaryRuns)) {
1765
+ reasons.push("stable baseline is too small");
1766
+ } else if (canary.qualityCoverage < 0.7) {
1767
+ reasons.push("schema-v2 quality coverage is below 70%");
1768
+ } else if (canary.damageCoverage < 0.7) {
1769
+ reasons.push("correlated canary damage-observation coverage is below 70%");
1770
+ } else if (baseline.damageCoverage < 0.7) {
1771
+ reasons.push("correlated stable damage-observation coverage is below 70%");
1772
+ } else if ((canary.avgQuality ?? 0) < 85) {
1773
+ reasons.push("absolute verifier quality is below 85");
1774
+ } else if (canary.successRate < 0.949999) {
1775
+ reasons.push("absolute success rate is below 95%");
1776
+ } else {
1777
+ decision = "promote";
1778
+ reasons.push("sample, absolute quality, reliability, latency, token, fallback, and damage gates passed");
1779
+ }
1780
+ return {
1781
+ version: options.version,
1782
+ decision,
1783
+ dataConfidence,
1784
+ baseline: roundStats(baseline),
1785
+ canary: roundStats(canary),
1786
+ triggers,
1787
+ reasons
1788
+ };
1789
+ }
1790
+ function safeMetricLabel(value, fallback) {
1791
+ if (typeof value !== "string" || !/^[\w./:@+-]{1,160}$/.test(value))
1792
+ return fallback;
1793
+ return value;
1794
+ }
1795
+ var TELEMETRY_FAILURE_KINDS = new Set([
1796
+ "cancelled",
1797
+ "timeout",
1798
+ "rate-limit",
1799
+ "authentication",
1800
+ "budget",
1801
+ "output-limit",
1802
+ "provider",
1803
+ "persistence",
1804
+ "validation",
1805
+ "verification",
1806
+ "yield",
1807
+ "internal"
1808
+ ]);
1809
+ function isTelemetryFailureKind(value) {
1810
+ return typeof value === "string" && TELEMETRY_FAILURE_KINDS.has(value);
1811
+ }
1812
+ function buildPrivacySafeTelemetry(entries, damageEntries, options) {
1813
+ const groups = new Map;
1814
+ const failures = {};
1815
+ for (const entry of entries) {
1816
+ const version = safeMetricLabel(entry.version, "legacy");
1817
+ const channel = entry.releaseChannel === "canary" ? "canary" : "stable";
1818
+ const provider = safeMetricLabel(entry.provider, "unknown");
1819
+ const rawModel = safeMetricLabel(entry.model, "unknown");
1820
+ const model = rawModel.startsWith(provider + "/") ? rawModel.slice(provider.length + 1) : rawModel;
1821
+ const key = [version, channel, provider, model].join("\x00");
1822
+ const group = groups.get(key) ?? {
1823
+ version,
1824
+ channel,
1825
+ provider,
1826
+ model,
1827
+ runs: 0,
1828
+ successes: 0,
1829
+ quality: 0,
1830
+ qualityRuns: 0,
1831
+ latency: 0,
1832
+ input: 0,
1833
+ output: 0
1834
+ };
1835
+ group.runs++;
1836
+ if (entry.status === "success" || entry.status === "dry-run")
1837
+ group.successes++;
1838
+ if (entry.metricsSchemaVersion === 2 && typeof entry.verificationScore === "number") {
1839
+ group.quality += entry.verificationScore;
1840
+ group.qualityRuns++;
1841
+ }
1842
+ group.latency += entry.avgLatency;
1843
+ group.input += entry.totalInput + entry.totalCacheHit + (entry.totalCacheWrite ?? 0);
1844
+ group.output += entry.totalOutput;
1845
+ groups.set(key, group);
1846
+ if (isTelemetryFailureKind(entry.failureKind)) {
1847
+ failures[entry.failureKind] = (failures[entry.failureKind] ?? 0) + 1;
1848
+ }
1849
+ }
1850
+ const aggregates = [...groups.values()].map((group) => ({
1851
+ version: group.version,
1852
+ channel: group.channel,
1853
+ provider: group.provider,
1854
+ model: group.model,
1855
+ runs: group.runs,
1856
+ successes: group.successes,
1857
+ avgQuality: group.qualityRuns ? Math.round(group.quality / group.qualityRuns * 10) / 10 : null,
1858
+ avgLatencyMs: group.runs ? Math.round(group.latency / group.runs) : 0,
1859
+ inputTokens: group.input,
1860
+ outputTokens: group.output
1861
+ })).sort((a, b) => b.runs - a.runs || a.version.localeCompare(b.version));
1862
+ return {
1863
+ generatedAt: new Date().toISOString(),
1864
+ totalRuns: entries.length,
1865
+ aggregates,
1866
+ failures,
1867
+ canary: assessCanary(entries, damageEntries, options),
1868
+ privacy: "aggregate-only; no session ids, project ids, prompts, summaries, paths, or error text"
1869
+ };
1870
+ }
1871
+ function formatPrivacySafeTelemetry(report) {
1872
+ const lines = [
1873
+ "# Smart Compact Telemetry",
1874
+ "",
1875
+ "Privacy: " + report.privacy + ".",
1876
+ "",
1877
+ "| Version | Channel | Provider/model | Runs | Success | Quality | Latency | Input | Output |",
1878
+ "|---|---|---|---:|---:|---:|---:|---:|---:|"
1879
+ ];
1880
+ for (const item of report.aggregates) {
1881
+ lines.push("| " + item.version + " | " + item.channel + " | " + item.provider + "/" + item.model + " | " + item.runs + " | " + item.successes + "/" + item.runs + " | " + (item.avgQuality == null ? "n/a" : item.avgQuality.toFixed(1)) + " | " + item.avgLatencyMs + "ms | " + item.inputTokens + " | " + item.outputTokens + " |");
1882
+ }
1883
+ lines.push("", "## Canary: " + report.canary.decision.toUpperCase() + " (data confidence " + report.canary.dataConfidence + "%)", "");
1884
+ const baseline = report.canary.baseline;
1885
+ const canary = report.canary.canary;
1886
+ lines.push("| Gate | Stable baseline | Canary |", "|---|---:|---:|", "| Runs (total/applied) | " + baseline.runs + "/" + baseline.appliedRuns + " | " + canary.runs + "/" + canary.appliedRuns + " |", "| Success | " + Math.round(baseline.successRate * 100) + "% | " + Math.round(canary.successRate * 100) + "% |", "| Verify quality | " + (baseline.avgQuality ?? "n/a") + " | " + (canary.avgQuality ?? "n/a") + " |", "| p95 duration | " + baseline.p95LatencyMs + "ms | " + canary.p95LatencyMs + "ms |", "| Avg tokens | " + baseline.avgTokens + " | " + canary.avgTokens + " |", "| Fallback | " + Math.round(baseline.fallbackRate * 100) + "% | " + Math.round(canary.fallbackRate * 100) + "% |", "| Damage | " + Math.round(baseline.damageRate * 100) + "% | " + Math.round(canary.damageRate * 100) + "% |", "| Damage observed | " + Math.round(baseline.damageCoverage * 100) + "% | " + Math.round(canary.damageCoverage * 100) + "% |", "");
1887
+ for (const reason of report.canary.reasons)
1888
+ lines.push("- " + reason);
1889
+ const failureText = Object.entries(report.failures).map(([kind, count]) => kind + "=" + count).join(", ");
1890
+ lines.push("", "Failures: " + (failureText || "none classified"));
1891
+ return lines.join(`
1892
+ `);
1893
+ }
1894
+
1670
1895
  // src/utils/cache.ts
1671
1896
  var INTERNAL_PHASES = new Set([
1672
1897
  "explore-retry",
@@ -1796,8 +2021,9 @@ function hasListedPath(listed, file, display, normalizedOwners) {
1796
2021
  }
1797
2022
  return false;
1798
2023
  }
1799
- function outcomeClaims(summary) {
1800
- return Array.from(new Set(summary.split(/\r?\n/).map((line) => line.replace(/^\s*(?:[-*+]|\d+[.)])\s+/, "").replace(/^\[[ x]\]\s+/i, "").trim()).filter((line) => line.length > 0 && !line.startsWith("#")).filter((line) => HIGH_RISK_OUTCOME_RE.test(line)).filter((line) => /\bno\s+(?:errors?|failures?)\b/i.test(line) || !NEGATED_OUTCOME_RE.test(line)))).slice(0, 12);
2024
+ function outcomeClaims(summary, pathEvidence) {
2025
+ const pathLines = new Set(Array.from(pathEvidence, ([path, display]) => [path, display, "`" + path + "`"]).flat());
2026
+ return Array.from(new Set(summary.split(/\r?\n/).map((line) => line.replace(/^\s*(?:[-*+]|\d+[.)])\s+/, "").replace(/^\[[ x]\]\s+/i, "").trim()).filter((line) => line.length > 0 && !line.startsWith("#") && !pathLines.has(line)).filter((line) => HIGH_RISK_OUTCOME_RE.test(line)).filter((line) => /\bno\s+(?:errors?|failures?)\b/i.test(line) || !NEGATED_OUTCOME_RE.test(line)))).slice(0, 12);
1801
2027
  }
1802
2028
  function classifyOutcomeClaim(claim) {
1803
2029
  const lower = claim.toLowerCase();
@@ -2031,7 +2257,7 @@ function stemToken(token) {
2031
2257
  return lower;
2032
2258
  }
2033
2259
  function semanticTokens(text) {
2034
- return (text.normalize("NFKC").match(/[\p{L}\p{N}_-]+/gu) ?? []).map(stemToken).filter((token) => token.length > 2);
2260
+ return (text.normalize("NFKC").match(/[\p{L}\p{N}_-]+/gu) ?? []).map(stemToken).filter((token) => token.length > 2 || NEGATION_MARKERS.has(token));
2035
2261
  }
2036
2262
  var semanticShapeCache = new Map;
2037
2263
  var semanticFragmentCache = new Map;
@@ -2051,7 +2277,7 @@ function hasEffectiveTargetNegation(tokens, anchor) {
2051
2277
  if (token !== anchor)
2052
2278
  return false;
2053
2279
  const nearbyStart = Math.max(0, anchorIndex - 2);
2054
- const nearbyNegations = tokens.slice(nearbyStart, anchorIndex + 3).map((near, offset) => NEGATION_MARKERS.has(near) ? nearbyStart + offset : -1).filter((index) => index >= 0);
2280
+ const nearbyNegations = tokens.slice(nearbyStart, anchorIndex + 3).map((near, offset) => NEGATION_MARKERS.has(near) && !(near === "without" && nearbyStart + offset > anchorIndex) ? nearbyStart + offset : -1).filter((index) => index >= 0);
2055
2281
  const governingStart = Math.max(0, anchorIndex - 3);
2056
2282
  const preceding = tokens.slice(governingStart, anchorIndex);
2057
2283
  const nearbyGuards = preceding.map((near, offset) => POLARITY_INVERTING_GUARDS.has(near) ? governingStart + offset : -1).filter((index) => index >= 0);
@@ -2100,12 +2326,13 @@ function hasSemanticEvidence(source, target) {
2100
2326
  });
2101
2327
  }
2102
2328
  function hasSemanticContradiction(source, target) {
2329
+ const sourceFragments = new Set(semanticFragments(source).map((tokens) => tokens.join(" ")));
2103
2330
  const { sourceTokens, concepts, anchor, negative, conditional } = semanticShape(source);
2104
2331
  if (!anchor)
2105
2332
  return false;
2106
2333
  const required = Math.min(concepts.length, Math.max(1, Math.ceil(concepts.length * 0.6)));
2107
2334
  return semanticFragments(target).some((tokens) => {
2108
- if (!tokens.includes(anchor))
2335
+ if (!tokens.includes(anchor) || sourceFragments.has(tokens.join(" ")))
2109
2336
  return false;
2110
2337
  const overlap = concepts.filter((concept) => tokens.includes(concept)).length;
2111
2338
  if (overlap < required)
@@ -2361,7 +2588,7 @@ function verifyProgressConsistency(parsed, extraction, collected, paths, accumul
2361
2588
  }
2362
2589
  }
2363
2590
  }
2364
- function verifyOpenLoopsAndClaims(summary, parsed, extraction, continuity, evidence, collected, accumulator) {
2591
+ function verifyOpenLoopsAndClaims(summary, parsed, paths, extraction, continuity, evidence, collected, accumulator) {
2365
2592
  const unresolvedCount = collected.unresolved.length + (continuity?.openLoops.filter((loop) => loop.status !== "resolved").length ?? 0);
2366
2593
  if (unresolvedCount >= 1 && !findSection(parsed, "open-loops") && !summary.toLowerCase().replace(/\\/g, "/").includes("unresolved")) {
2367
2594
  addGap(accumulator, { kind: "missing-open-loops", unresolvedCount }, 5);
@@ -2369,7 +2596,7 @@ function verifyOpenLoopsAndClaims(summary, parsed, extraction, continuity, evide
2369
2596
  if (!evidence.sourceMessages)
2370
2597
  return;
2371
2598
  const tools = successfulToolEvidence(evidence.sourceMessages);
2372
- for (const claim of outcomeClaims(summary)) {
2599
+ for (const claim of outcomeClaims(summary, paths.rendered)) {
2373
2600
  if (!successfulToolSupportsClaim(claim, tools, extraction)) {
2374
2601
  addGap(accumulator, { kind: "unsupported-claim", claim }, 20);
2375
2602
  }
@@ -2385,7 +2612,7 @@ function verifySummary(summary, extraction, continuity = null, evidence = {}) {
2385
2612
  verifySemanticCoverage(parsed, collected, accumulator);
2386
2613
  verifyFileReferences(summary, extraction, continuity, evidence, collected, paths, accumulator);
2387
2614
  verifyProgressConsistency(parsed, extraction, collected, paths, accumulator);
2388
- verifyOpenLoopsAndClaims(summary, parsed, extraction, continuity, evidence, collected, accumulator);
2615
+ verifyOpenLoopsAndClaims(summary, parsed, paths, extraction, continuity, evidence, collected, accumulator);
2389
2616
  const score = Math.max(0, accumulator.score);
2390
2617
  return {
2391
2618
  ok: accumulator.gaps.length === 0 && score >= 85,
@@ -1,8 +1,6 @@
1
1
  // @bun
2
- var __require = import.meta.require;
3
-
4
2
  // src/constants.ts
5
- var VERSION = "9.6.1";
3
+ var VERSION = "9.7.0";
6
4
  var SETTLED_TRIGGER_COOLDOWN_MS = 10 * 60000;
7
5
  var COMPACT_SYSTEM_PREFIX = "You are an expert conversation summarizer for a coding agent. " + "Produce structured markdown summaries. " + "Follow output format exactly. " + "Use EXACT names \u2014 never paraphrase code identifiers. " + "Trust deterministic extraction data over intuition.";
8
6
  var PROFILES = {
@@ -55,6 +53,7 @@ var DEFAULT_CONFIG = {
55
53
  maxLlmInputTokens: 0,
56
54
  codexMaxCallMs: 0,
57
55
  maxLatencyMs: 0,
56
+ pendingTtlMs: 300000,
58
57
  focusWeighting: true,
59
58
  zeroCallEnabled: true,
60
59
  contextGraphEnabled: true,
@@ -454,9 +453,12 @@ import fs from "fs";
454
453
 
455
454
  // src/utils/logger.ts
456
455
  var DEBUG = process.env.DEBUG?.includes("smart-compact") ?? false;
456
+ function ts() {
457
+ return new Date().toISOString();
458
+ }
457
459
  function warn(msg, err) {
458
460
  const detail = err instanceof Error ? err.message : err ?? "";
459
- console.error(LOG_PREFIX + " " + msg + (detail ? ": " + detail : ""));
461
+ console.error(ts() + " " + LOG_PREFIX + " " + msg + (detail ? ": " + detail : ""));
460
462
  }
461
463
 
462
464
  // src/infra/fs.ts
@@ -845,8 +847,8 @@ function buildKnownPathReferenceIndex(knownPaths) {
845
847
  const boundarySuffixes = new Set;
846
848
  const normalizedPaths = [];
847
849
  let hasUnindexedSuffixes = false;
848
- for (const path2 of knownPaths) {
849
- const normalizedPath = normalizePath(path2).replace(/^\/+/, "");
850
+ for (const path of knownPaths) {
851
+ const normalizedPath = normalizePath(path).replace(/^\/+/, "");
850
852
  if (!normalizedPath)
851
853
  continue;
852
854
  normalizedPaths.push(normalizedPath);
@@ -1100,7 +1102,7 @@ function buildSummaryPathEvidence(paths, budgetTokens = PROFILES.balanced.summar
1100
1102
  const unique = Array.from(new Set(paths.filter(Boolean)));
1101
1103
  if (!unique.length)
1102
1104
  return new Map;
1103
- const full = unique.map((path2) => [path2, summaryPathLine(path2)]);
1105
+ const full = unique.map((path) => [path, summaryPathLine(path)]);
1104
1106
  const minimumPerLine = JSON.stringify("#" + "x".repeat(12)).length + 3;
1105
1107
  const budgetChars = Math.max(unique.length * minimumPerLine, Math.min(20000, Math.max(4000, Math.floor(budgetTokens * 2))));
1106
1108
  if (full.reduce((total, [, line]) => total + line.length + 3, 0) <= budgetChars) {
@@ -1108,21 +1110,21 @@ function buildSummaryPathEvidence(paths, budgetTokens = PROFILES.balanced.summar
1108
1110
  }
1109
1111
  const digests = new Map;
1110
1112
  const owners = new Map;
1111
- for (const path2 of unique) {
1112
- const fullDigest = createHash("sha256").update(path2).digest("base64url");
1113
+ for (const path of unique) {
1114
+ const fullDigest = createHash("sha256").update(path).digest("base64url");
1113
1115
  let digest = fullDigest.slice(0, 12);
1114
1116
  const owner = owners.get(digest);
1115
- if (owner && owner !== path2) {
1117
+ if (owner && owner !== path) {
1116
1118
  digest = fullDigest;
1117
1119
  digests.set(owner, createHash("sha256").update(owner).digest("base64url"));
1118
1120
  }
1119
- owners.set(digest, path2);
1120
- digests.set(path2, digest);
1121
+ owners.set(digest, path);
1122
+ digests.set(path, digest);
1121
1123
  }
1122
1124
  const perPath = Math.max(JSON.stringify("#" + "x".repeat(12)).length, Math.floor((budgetChars - unique.length * 3) / unique.length));
1123
- return new Map(unique.map((path2) => [
1124
- path2,
1125
- compactPathLine(path2, perPath, digests.get(path2) ?? "")
1125
+ return new Map(unique.map((path) => [
1126
+ path,
1127
+ compactPathLine(path, perPath, digests.get(path) ?? "")
1126
1128
  ]));
1127
1129
  }
1128
1130
  function mergeBodies(first, second) {
@@ -1627,27 +1629,27 @@ class SecretScrubber {
1627
1629
  findings.set("credential", (findings.get("credential") ?? 0) + 1);
1628
1630
  this.total++;
1629
1631
  };
1630
- const visit = (value2) => {
1631
- if (typeof value2 === "string") {
1632
- const result = this.scrubText(value2);
1632
+ const visit = (value) => {
1633
+ if (typeof value === "string") {
1634
+ const result = this.scrubText(value);
1633
1635
  mergeFindings(findings, result.findings);
1634
1636
  return result.value;
1635
1637
  }
1636
- if (value2 == null || typeof value2 !== "object")
1637
- return value2;
1638
- const cached = seen.get(value2);
1638
+ if (value == null || typeof value !== "object")
1639
+ return value;
1640
+ const cached = seen.get(value);
1639
1641
  if (cached !== undefined)
1640
1642
  return cached;
1641
- if (Array.isArray(value2)) {
1642
- const output2 = [];
1643
- seen.set(value2, output2);
1644
- for (const item of value2)
1645
- output2.push(visit(item));
1646
- return output2;
1643
+ if (Array.isArray(value)) {
1644
+ const output = [];
1645
+ seen.set(value, output);
1646
+ for (const item of value)
1647
+ output.push(visit(item));
1648
+ return output;
1647
1649
  }
1648
1650
  const output = {};
1649
- seen.set(value2, output);
1650
- for (const [key, item] of Object.entries(value2)) {
1651
+ seen.set(value, output);
1652
+ for (const [key, item] of Object.entries(value)) {
1651
1653
  const carriesSecret = typeof item === "string" && item.length >= 8;
1652
1654
  if (this.secretsEnabled && isSecretBearingKey(key) && carriesSecret) {
1653
1655
  output[key] = "[REDACTED:credential]";
package/dist/types.d.ts CHANGED
@@ -49,6 +49,8 @@ export interface CompactConfig {
49
49
  /** ChatGPT Codex per-call watchdog; 0 derives 15–90s from the requested output cap. */
50
50
  codexMaxCallMs: number;
51
51
  maxLatencyMs: number;
52
+ /** Staged-summary retention before commit; default 5 minutes. */
53
+ pendingTtlMs: number;
52
54
  focusWeighting: boolean;
53
55
  zeroCallEnabled: boolean;
54
56
  contextGraphEnabled: boolean;
@@ -84,6 +86,8 @@ export interface LLMCallMetric {
84
86
  cacheWriteTokens: number;
85
87
  latencyMs: number;
86
88
  success: boolean;
89
+ /** Content-free provider failure category; never stores response/error text. */
90
+ failureKind?: TelemetryFailureKind;
87
91
  /** True when provider usage was absent or partial and local estimates were used. */
88
92
  usageEstimated?: boolean;
89
93
  }
@@ -94,6 +98,7 @@ export interface ProviderRouteMetric {
94
98
  model: string;
95
99
  calls: number;
96
100
  successes: number;
101
+ failures?: Partial<Record<TelemetryFailureKind, number>>;
97
102
  avgLatencyMs: number;
98
103
  inputTokens: number;
99
104
  outputTokens: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACX,KAAK,EACL,GAAG,EACH,aAAa,EACb,eAAe,EACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAE9D,kCAAkC;AAClC,MAAM,MAAM,WAAW,GACpB,gBAAgB,GAChB,QAAQ,GACR,WAAW,GACX,YAAY,CAAC;AAEhB,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,UAAU,GAAG,YAAY,CAAC;AACrE,MAAM,MAAM,uBAAuB,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;AACvE,4EAA4E;AAC5E,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,uBAAuB,GAAG,YAAY,CAAC;AAC7E,MAAM,MAAM,mBAAmB,GAAG,aAAa,GAAG,SAAS,CAAC;AAC5D,KAAK,eAAe,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;AAE1D,MAAM,WAAW,aAAa;IAC7B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,aAAa;IAC7B,4FAA4F;IAC5F,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;IACpD,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,oBAAoB,EAAE,aAAa,GAAG,IAAI,CAAC;IAC3C,yBAAyB,EAAE,aAAa,GAAG,IAAI,CAAC;IAChD,2EAA2E;IAC3E,eAAe,EAAE,eAAe,CAAC;IACjC,WAAW,EAAE,OAAO,CAAC;IACrB,kDAAkD;IAClD,UAAU,EAAE,OAAO,CAAC;IACpB,yFAAyF;IACzF,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,gFAAgF;IAChF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uFAAuF;IACvF,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,iEAAiE;IACjE,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,gBAAgB,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACtC,sBAAsB,EAAE,OAAO,CAAC;IAChC,mBAAmB,EAAE,OAAO,CAAC;IAC7B;gFAC4E;IAC5E,QAAQ,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,OAAO,GAAG,OAAO,CAAC;IACjC,eAAe,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IAC3C,oBAAoB,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IAChD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/C,6FAA6F;IAC7F,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qFAAqF;IACrF,yBAAyB,EAAE,MAAM,CAAC;IAClC,mGAAmG;IACnG,UAAU,EAAE,QAAQ,GAAG,eAAe,CAAC;CACvC;AAED,MAAM,WAAW,aAAa;IAC7B,KAAK,EACF,OAAO,GACP,SAAS,GACT,cAAc,GACd,eAAe,GACf,gBAAgB,GAChB,aAAa,GACb,OAAO,GACP,UAAU,GACV,OAAO,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,gFAAgF;IAChF,WAAW,CAAC,EAAE,oBAAoB,CAAC;IACnC,oFAAoF;IACpF,cAAc,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,YAAY,GAAG,QAAQ,CAAC;AAErE,MAAM,WAAW,mBAAmB;IACnC,KAAK,EAAE,kBAAkB,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC,CAAC;IACzD,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,mEAAmE;IACnE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,yBAAyB,CAAC;CACzC;AAED,MAAM,WAAW,mBAAmB;IACnC,KAAK,EACF,SAAS,GACT,SAAS,GACT,OAAO,GACP,SAAS,GACT,SAAS,GACT,YAAY,GACZ,QAAQ,GACR,OAAO,GACP,SAAS,GACT,QAAQ,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,oBAAoB,GAC7B,WAAW,GACX,SAAS,GACT,YAAY,GACZ,gBAAgB,GAChB,QAAQ,GACR,cAAc,GACd,UAAU,GACV,aAAa,GACb,YAAY,GACZ,cAAc,GACd,OAAO,GACP,UAAU,CAAC;AACd,MAAM,MAAM,qBAAqB,GAAG,gBAAgB,GAAG,YAAY,CAAC;AAEpE,MAAM,WAAW,mBAAmB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oBAAoB,CAAC,EAAE,CAAC,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACrC,WAAW,CAAC,EAAE,oBAAoB,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,iFAAiF;IACjF,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IACrC,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC;IACnE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE,KAAK,CAAC,kBAAkB,GAAG,QAAQ,GAAG,SAAS,CAAC,CAAC;IACzE,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,+EAA+E;IAC/E,oBAAoB,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;IACjD,qFAAqF;IACrF,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;IAC1C,YAAY,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACvC,mFAAmF;IACnF,iBAAiB,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IAC3C,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACjD,UAAU,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;CACjD;AAED,MAAM,WAAW,mBAAmB;IACnC,6EAA6E;IAC7E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,aAAa,GAAG,WAAW,CAAC;IAC7C,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,IAAI,CAAC,EAAE,uBAAuB,CAAC;IAC/B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACzE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE,KAAK,CAAC,kBAAkB,GAAG,QAAQ,GAAG,SAAS,CAAC,CAAC;IACzE,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,UAAU,CAAC,EAAE,sBAAsB,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;CACvB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,IAAI,CAAC,CAAC;IACtB,KAAK,EAAE,CAAC,CAAC;CACT;AAED,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,mBAAmB,EAAE,IAAI,GAAG,WAAW,CAAC,CAAC;AAE5E,MAAM,WAAW,0BAA0B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iFAAiF;IACjF,WAAW,CAAC,EAAE,MAAM,MAAM,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IACjC,uEAAuE;IACvE,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gFAAgF;IAChF,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,mBAAmB,CAAC;IAC7B,8EAA8E;IAC9E,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,yEAAyE;IACzE,cAAc,CAAC,EAAE,0BAA0B,CAAC;IAC5C;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC;;;;;;OAMG;IACH,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAClB;;;;;;;;OAQG;IACH,aAAa,EAAE,OAAO,GAAG,OAAO,CAAC;CACjC;AAED,MAAM,MAAM,eAAe,GACxB;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,OAAO,EAAE,WAAW,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC3C;IAAE,IAAI,EAAE,sBAAsB,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAC9D;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3D,MAAM,WAAW,kBAAkB;IAClC,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,EAAE,eAAe,EAAE,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,sBAAsB;IACtC,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,eAAe,EAAE,CAAC;IACxC,UAAU,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,eAAe,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,iBAAiB;IACjC,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,WAAW,CAAC;IACzB,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,gBAAgB,EAAE;QAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC9E,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,YAAY,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,WAAW,0BAA0B;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,oBAAoB;IACpC,aAAa,EAAE,KAAK,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,iBAAiB,EAAE,MAAM,CAAC;KAC1B,CAAC,CAAC;IACH,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,8FAA8F;IAC9F,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IACrC,MAAM,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,OAAO,CAAC;QACxB,QAAQ,EAAE,OAAO,CAAC;QAClB,sGAAsG;QACtG,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC,CAAC;IACH,SAAS,EAAE,KAAK,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,UAAU,GAAG,UAAU,CAAC;QAC9B,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC,CAAC;IACH,WAAW,EAAE,KAAK,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,aAAa,GAAG,YAAY,GAAG,aAAa,CAAC;QACvD,UAAU,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;IACH,MAAM,EAAE,KAAK,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,IAAI,EAAE,gBAAgB,GAAG,WAAW,GAAG,aAAa,GAAG,QAAQ,CAAC;QAChE,YAAY,EAAE,MAAM,CAAC;KACrB,CAAC,CAAC;IACH,QAAQ,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,wFAAwF;IACxF,gBAAgB,CAAC,EAAE,0BAA0B,CAAC;CAC9C;AAED,MAAM,WAAW,QAAQ;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACjD,QAAQ,EAAE,UAAU,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IAC1B,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,YAAY,CAAC;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACb;AACD,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,UAAU,CAAC;IACjB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AACD,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,gBAAgB,GAAG,MAAM,CAAC;AAEvE,MAAM,WAAW,iBAAiB;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,EAAE,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAChC,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,oBAAoB,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,+DAA+D;IAC/D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;iFAC6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,kDAAkD;IAClD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,uEAAuE;IACvE,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,2EAA2E;IAC3E,cAAc,CAAC,EAAE,kBAAkB,CAAC;CACpC;AAED,gEAAgE;AAChE,MAAM,WAAW,QAAQ;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IAC/D,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACjD,MAAM,EAAE,MAAM,GAAG,aAAa,GAAG,UAAU,CAAC;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5B,QAAQ,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;AAC9E,MAAM,WAAW,kBAAkB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,kBAAkB,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,YAAY,CAAC;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,mFAAmF;AACnF,MAAM,WAAW,eAAe;IAC/B,aAAa,EAAE,CAAC,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,mDAAmD;AACnD,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,wFAAwF;IACxF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,KAAK,CAAC;QAChB,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,IAAI,EAAE,UAAU,GAAG,UAAU,CAAC;KAC9B,CAAC,CAAC;IACH,WAAW,EAAE,KAAK,CAAC;QAClB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,aAAa,GAAG,YAAY,GAAG,aAAa,CAAC;QACvD,UAAU,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;IACH,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,gBAAgB,EAAE,KAAK,CAAC;QACvB,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,EAAE,CAAC;KAChB,CAAC,CAAC;IACH,cAAc,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrE,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,aAAa,CAAC,EAAE,kBAAkB,EAAE,CAAC;IACrC,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjE,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,WAAW,EAAE,WAAW,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,8DAA8D;AAC9D,MAAM,WAAW,mBAAmB;IACnC,IAAI,EAAE,SAAS,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,cAAc,CAAC;CACtB"}
@@ -1,3 +1,5 @@
1
- /** One bounded, content-free UI line; full diagnostics belong in local logs. */
1
+ /** Never echo provider errors: their bodies may contain prompts, credentials, or paths. */
2
+ export declare function formatGenerationFailureForUi(error: unknown): string;
3
+ /** One content-free UI line; raw diagnostics require explicit local opt-in. */
2
4
  export declare function formatCompactErrorForUi(error: unknown): string;
3
5
  //# sourceMappingURL=error-format.d.ts.map