@clien-ai/mcp 0.12.0 → 0.12.1

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/README.md CHANGED
@@ -286,7 +286,7 @@ name — the aliases exist for callers written before the rename.
286
286
  | `get_report` | `job_id` | free | A past run's full report + `report_data`, same shape `clien_research` returns. Use this instead of re-running. |
287
287
  | `list_competitors` | `project_id` | free | The project's deduped, accumulated competitor set, most-recently-seen first. Each of the four company facts carries a sibling `<fact>Grounding` — key on its `state`. |
288
288
  | `list_community_signals` | `project_id` | free | The project's deduped, accumulated thread set, newest-**discovered** first (a stable order — a thread seen again does not move back to page one). Carries the cached `relevantQuotes[]` excerpts captured at collection; they are user-voice evidence but are not guaranteed to preserve a speaker's exact words. |
289
- | `get_market` | `project_id` | free | The project's market snapshot — size, growth trend, key trends, positioning gaps. A **singleton**, not a page: every field was written together by the one run named in `sourceRunId`. No snapshot is reported as "no run has produced market data", never as an empty or unmeasured market. The figures carry no trust state here; read the source run with `get_report` for their claim states. |
289
+ | `get_market` | `project_id` | free | The project's **singleton** market snapshot. Versioned signals, sizing candidates, growth direction, trends, and positioning gaps belong to `sourceRunId`; separately labelled legacy market-size context may predate it and is never strict TAM/SAM/SOM evidence. Strict cited `marketSignals` and resolved `marketSizing` are returned separately. No snapshot is reported as "no run has produced market data", never as an empty or unmeasured market. |
290
290
  | `list_interview_scripts` | `project_id` | free | The interview scripts a research run wrote for the project — one per hypothesis, ranked by product priority, then lower verdict reliability, then thinner evidence. Each carries its `hypothesisId`, statement, verdict, questions, categorical `confidence`, `sufficiency`, and `robustness`; older runs expose the retired numeric measure as `legacyConfidence`, which is not comparable with `low` / `medium` / `high`. **Stored output of one run, never generated on read.** Call it before `interview_persona` so the answers anchor to a hypothesis; no scripts is reported as "no run has written any", never as "nothing worth asking". |
291
291
 
292
292
  ### Account
@@ -19,7 +19,7 @@
19
19
  * { competitors: <raw row>[], pagination: { limit, offset, total } }
20
20
  * - list_community_signals → GET /api/community?projectId&limit&offset →
21
21
  * { communitySignals: <raw row>[], pagination: { limit, offset, total } }
22
- * - get_market → GET /api/market?projectId →
22
+ * - get_market → GET /api/market?projectId&marketContractVersion=1 →
23
23
  * { market: <raw row> | null } (no pagination — a singleton, FUL-511)
24
24
  *
25
25
  * `offset` is an ABSOLUTE row offset honoured exactly by the endpoints (FUL-214),
@@ -68,6 +68,7 @@ const COLLECTIONS_FETCH_TIMEOUT_MS = 30_000;
68
68
  // app; the server re-validates regardless — this is the advertised spec.
69
69
  const LIST_LIMIT_MAX = 100;
70
70
  const LIST_LIMIT_DEFAULT = 20;
71
+ const MARKET_API_CONTRACT_VERSION = '1';
71
72
  export const ListCompetitorsInputSchema = z.object({
72
73
  project_id: z
73
74
  .string()
@@ -142,14 +143,71 @@ export const GetMarketInputSchema = z.object({
142
143
  .uuid()
143
144
  .describe('UUID of the project whose market snapshot to read. Get it from ' +
144
145
  '`list_projects` (or `create_project`). Rejected with a 404 if you do not ' +
145
- 'own the project. Returns the project\'s single stored market snapshot — ' +
146
- 'market size, growth trend, key trends and positioning gaps — which is ONE ' +
147
- 'COHERENT RUN\'S OUTPUT: every field was written together by the research ' +
148
- 'run named in the `sourceRunId` provenance field, never assembled from ' +
149
- 'several runs. Pass that id to `get_report` to see the run behind the ' +
150
- 'figures. A project can legitimately have NO snapshot; that is reported as ' +
151
- '"no run has produced market data", never as a zero or an empty market.'),
146
+ 'own the project. Returns the project\'s single stored market snapshot. Its ' +
147
+ 'versioned signals, sizing candidates, growth trend, key trends and positioning ' +
148
+ 'gaps may be attributed to `sourceRunId` only when `sourceBindingState` is `bound` ' +
149
+ 'or `bound_empty`. When bound they are ONE COHERENT RUN\'S OUTPUT. The separately ' +
150
+ 'labelled legacy market-size context may predate that run and is never strict ' +
151
+ 'TAM, SAM, or SOM evidence. The tool also returns zero-to-three strict cited ' +
152
+ '`marketSignals` in result text and `structuredContent.marketSignals`; cite those only with ' +
153
+ 'their rendered source URL(s). Raw snapshot fields are neutral recorded context; legacy ' +
154
+ 'context is neutral too. Check a bound source run with `get_report` before ' +
155
+ 'citation. No strict signals means no candidate survived proof, not that ' +
156
+ 'the raw snapshot or market is empty. A project can legitimately have NO ' +
157
+ 'snapshot; that is reported as "no run has produced market data", never ' +
158
+ 'as a zero or an empty market.'),
152
159
  });
160
+ function safeMarketSignalUrl(value) {
161
+ if (typeof value !== 'string')
162
+ return null;
163
+ try {
164
+ const url = new URL(value);
165
+ return (url.protocol === 'http:' || url.protocol === 'https:') && !url.username && !url.password
166
+ ? url.href
167
+ : null;
168
+ }
169
+ catch {
170
+ return null;
171
+ }
172
+ }
173
+ function marketSignalViews(value) {
174
+ if (!Array.isArray(value))
175
+ return [];
176
+ const out = [];
177
+ for (const raw of value.slice(0, 3)) {
178
+ if (!raw || typeof raw !== 'object' || Array.isArray(raw))
179
+ continue;
180
+ const item = raw;
181
+ if (item.kind !== 'size' && item.kind !== 'growth' &&
182
+ item.kind !== 'buying_behavior' && item.kind !== 'category_dynamics')
183
+ continue;
184
+ if (typeof item.label !== 'string' || typeof item.context !== 'string')
185
+ continue;
186
+ const sources = Array.isArray(item.sources)
187
+ ? item.sources
188
+ : item.source && typeof item.source === 'object' && !Array.isArray(item.source)
189
+ ? [item.source]
190
+ : [];
191
+ const sourceUrls = sources.flatMap((source) => {
192
+ if (!source || typeof source !== 'object' || Array.isArray(source))
193
+ return [];
194
+ const url = safeMarketSignalUrl(source.url);
195
+ return url ? [url] : [];
196
+ });
197
+ if (sourceUrls.length === 0)
198
+ continue;
199
+ out.push({
200
+ kind: item.kind,
201
+ label: item.label,
202
+ value: typeof item.value === 'string' ? item.value : null,
203
+ context: item.context,
204
+ formula: typeof item.formula === 'string' ? item.formula : null,
205
+ assumptions: stringArray(item.assumptions),
206
+ sourceUrls,
207
+ });
208
+ }
209
+ return out;
210
+ }
153
211
  function marketSizingViews(value) {
154
212
  if (!Array.isArray(value))
155
213
  return [];
@@ -177,7 +235,8 @@ function marketSizingViews(value) {
177
235
  : [],
178
236
  });
179
237
  }
180
- return out.length === 3 && out.every((item, i) => item.scope === ['tam', 'sam', 'som'][i]) ? out : [];
238
+ const order = { tam: 0, sam: 1, som: 2 };
239
+ return out.sort((a, b) => order[a.scope] - order[b.scope]);
181
240
  }
182
241
  function nullableString(value) {
183
242
  return typeof value === 'string' ? value : null;
@@ -288,22 +347,47 @@ export function toCommunitySignalSummary(row) {
288
347
  * review and pinned by a test, not produced by string surgery that silently
289
348
  * admits whatever column is added next.
290
349
  *
291
- * EVERY column on the table is mapped — the singleton has no bookkeeping columns.
350
+ * EVERY column on the table is mapped — the singleton has no bookkeeping columns. The renamed
351
+ * compatibility and selector fields make their weaker semantics explicit at the public boundary.
292
352
  * `key_trends` / `positioning_gaps` are Postgres `TEXT[] NOT NULL DEFAULT '{}'`,
293
353
  * so an empty array is the real "nothing recorded" value and `stringArray`
294
354
  * normalises a drifted null to the same thing.
295
355
  */
296
- export function toMarketSnapshot(row) {
356
+ export function toMarketSnapshot(row, extensions) {
357
+ const persistenceSemantics = row.market_semantics_version == null
358
+ ? 'legacy'
359
+ : row.market_semantics_version === 1
360
+ ? 'current'
361
+ : 'unknown';
297
362
  return {
298
363
  projectId: nullableString(row.project_id),
299
- marketSize: nullableString(row.market_size),
364
+ legacyMarketSize: nullableString(extensions?.legacyMarketSize) ?? nullableString(row.market_size),
365
+ persistenceSemantics,
366
+ marketSignalReferences: Array.isArray(row.market_signals) ? row.market_signals : [],
367
+ marketSizingCandidates: Array.isArray(row.market_sizing) ? row.market_sizing : [],
300
368
  growthTrend: nullableString(row.growth_trend),
301
369
  keyTrends: stringArray(row.key_trends),
302
370
  positioningGaps: stringArray(row.positioning_gaps),
303
- sourceRunId: nullableString(row.source_run_id),
371
+ sourceBindingState: readMarketBindingState(extensions?.provenance),
372
+ sourceRunId: boundMarketSourceId(extensions?.provenance),
304
373
  updatedAt: nullableString(row.updated_at),
305
374
  };
306
375
  }
376
+ function readMarketBindingState(value) {
377
+ if (!value || typeof value !== 'object' || Array.isArray(value))
378
+ return 'unknown';
379
+ const state = value.state;
380
+ return state === 'missing' || state === 'unavailable' || state === 'malformed' ||
381
+ state === 'mismatched' || state === 'bound_empty' || state === 'bound'
382
+ ? state
383
+ : 'unknown';
384
+ }
385
+ function boundMarketSourceId(value) {
386
+ const state = readMarketBindingState(value);
387
+ if (state !== 'bound' && state !== 'bound_empty')
388
+ return null;
389
+ return nullableString(value.sourceRunId);
390
+ }
307
391
  export class CollectionToolError extends ToolError {
308
392
  }
309
393
  export function formatZodError(error) {
@@ -776,7 +860,7 @@ export async function listCommunitySignals(input, deps) {
776
860
  /**
777
861
  * How much of one free-text market field reaches the rendered line.
778
862
  *
779
- * `marketSize` is a whole sentence in practice (FUL-348: it is lifted from the
863
+ * `legacyMarketSize` is a whole sentence in practice (FUL-348: it was lifted from the
780
864
  * run's first market-SIZE claim, e.g. "The global X market was valued at $12.4B
781
865
  * in 2025"), so it gets more room than a competitor's `pricing`. Trends and gaps
782
866
  * are one-line assertions. Both are agent-written free text, so both go through
@@ -831,7 +915,13 @@ function marketListBlock(label, items) {
831
915
  async function fetchMarket(deps, projectId) {
832
916
  const action = 'read the market snapshot';
833
917
  const ctx = makeCtx(deps);
834
- const query = new URLSearchParams({ projectId });
918
+ // Explicit negotiation is load-bearing: unversioned MCP 0.12.0 cannot render current
919
+ // signal-only/sizing-only snapshots without contradicting itself. The server therefore returns
920
+ // 426 for current semantics unless the caller opts into this renderer contract.
921
+ const query = new URLSearchParams({
922
+ projectId,
923
+ marketContractVersion: MARKET_API_CONTRACT_VERSION,
924
+ });
835
925
  let response;
836
926
  try {
837
927
  response = await apiCall(ctx, 'GET', `/api/market?${query.toString()}`, {
@@ -859,36 +949,49 @@ async function fetchMarket(deps, projectId) {
859
949
  }
860
950
  const market = json.market;
861
951
  if (market === null)
862
- return { market: null, marketSizing: [] };
952
+ return { market: null, marketSizing: [], marketSignals: [] };
863
953
  if (typeof market !== 'object' || Array.isArray(market))
864
954
  throw unreadable;
955
+ const sourceBindingState = readMarketBindingState(json.marketProvenance);
956
+ const sourceBound = sourceBindingState === 'bound' || sourceBindingState === 'bound_empty';
865
957
  return {
866
- market: toMarketSnapshot(market),
867
- marketSizing: marketSizingViews(json.marketSizing),
958
+ market: toMarketSnapshot(market, {
959
+ legacyMarketSize: json.legacyMarketSize,
960
+ provenance: json.marketProvenance,
961
+ }),
962
+ marketSizing: sourceBound ? marketSizingViews(json.marketSizing) : [],
963
+ marketSignals: sourceBound ? marketSignalViews(json.marketSignals) : [],
868
964
  };
869
965
  }
966
+ function marketSignalsBlock(signals) {
967
+ if (signals.length === 0)
968
+ return 'Market signals: No cited market signals were established.';
969
+ const lines = signals.flatMap((signal) => {
970
+ const label = safeInline(signal.label, 40);
971
+ const context = safeInline(signal.context, 240);
972
+ const value = safeInline(signal.value, 80);
973
+ if (!label || !context)
974
+ return [];
975
+ const method = safeInline(signal.formula, 240);
976
+ const assumptions = signal.assumptions.map((item) => safeInline(item, 160)).filter(Boolean);
977
+ return [`- ${label}: ${value ? `${value} — ` : ''}${context}${method ? `; method: ${method}${assumptions.length ? `; assumptions: ${assumptions.join('; ')}` : ''}` : ''} ← ${signal.sourceUrls.join(', ')}`];
978
+ });
979
+ return lines.length > 0
980
+ ? `Market signals:\n${lines.join('\n')}`
981
+ : 'Market signals: No cited market signals were established.';
982
+ }
870
983
  function marketSizingBlock(sizing) {
871
- if (sizing.length !== 3)
984
+ const strict = sizing.filter((slot) => Boolean(slot.value) &&
985
+ (slot.evidenceState === 'source_stated' || slot.evidenceState === 'derived'));
986
+ if (strict.length === 0)
872
987
  return null;
873
- const labels = { tam: 'TAM', sam: 'SAM', som: 'SOM' };
874
- const lines = sizing.map((slot) => {
988
+ const lines = strict.map((slot) => {
989
+ const context = safeInline(slot.context, MARKET_FIELD_MAX) ?? 'Context unavailable';
875
990
  const value = safeInline(slot.value, 80);
876
- const context = safeInline(slot.context, 240);
877
- if (!value)
878
- return `${labels[slot.scope]}: — (Not established)`;
879
- if (!context)
880
- return null;
881
- if (slot.evidenceState === 'derived') {
882
- const formula = safeInline(slot.formula, 240);
883
- const safeAssumptions = slot.assumptions.map((item) => safeInline(item, 160)).filter(Boolean);
884
- if (!formula)
885
- return null;
886
- const assumptions = safeAssumptions.length ? `; assumptions: ${safeAssumptions.join('; ')}` : '';
887
- return `${labels[slot.scope]}: ${value} [Estimate / Inferred] — ${context}; method: ${formula}${assumptions}`;
888
- }
889
- return `${labels[slot.scope]}: ${value} [Cited] — ${context}`;
991
+ const method = safeInline(slot.formula, MARKET_FIELD_MAX);
992
+ return `- ${slot.scope.toUpperCase()}: ${value ? `${value} — ` : ''}${context}${method ? `; method: ${method}` : ''}`;
890
993
  });
891
- return lines.some((line) => line === null) ? null : lines.join('\n');
994
+ return `Strict market sizing:\n${lines.join('\n')}`;
892
995
  }
893
996
  /**
894
997
  * The provenance sentence, stated in the TEXT channel because that is the one an
@@ -904,13 +1007,33 @@ function marketSizingBlock(sizing) {
904
1007
  * opposite of the truth: the provenance is UNKNOWN, and figures with unknown
905
1008
  * provenance are exactly the ones an agent must not attribute.
906
1009
  */
907
- function marketProvenanceLine(runId) {
1010
+ function marketProvenanceLine(runId, semantics, bindingState) {
908
1011
  const safe = safeId(runId);
909
- if (!safe) {
910
- return ('PROVENANCE: this snapshot names NO source run — either it predates the coherent-snapshot ' +
911
- 'guarantee or the run behind it has since been deleted. Its fields may not all come from ' +
912
- 'the same research run. Treat the figures as unattributable: report them as recorded, ' +
913
- 'never as "run X found".');
1012
+ if (semantics === 'unknown') {
1013
+ return ('PROVENANCE: this snapshot declares a Market persistence version this MCP build does not ' +
1014
+ 'understand. Treat every raw field as neutral recorded context and use no value as strict sizing.');
1015
+ }
1016
+ if (bindingState !== 'bound' && bindingState !== 'bound_empty') {
1017
+ const reason = bindingState === 'missing'
1018
+ ? 'the snapshot names no source run'
1019
+ : bindingState === 'unavailable'
1020
+ ? 'the named source run is not readable in this project'
1021
+ : bindingState === 'malformed'
1022
+ ? 'the named source report is malformed or cannot support its claim spine'
1023
+ : bindingState === 'mismatched'
1024
+ ? 'the snapshot does not exactly match the named source report'
1025
+ : 'this server did not provide a verified source-binding result';
1026
+ return (`PROVENANCE: UNBOUND — ${reason}. Treat every value as unattributable recorded context; ` +
1027
+ 'never say a particular run found it.');
1028
+ }
1029
+ if (!safe)
1030
+ return 'PROVENANCE: UNBOUND — the snapshot names NO source run (the supplied id was unusable).';
1031
+ if (semantics === 'current') {
1032
+ return (`PROVENANCE: current Market signals, sizing candidates, direction, trends and positioning ` +
1033
+ `gaps belong to research run ${safe}. The separately labelled legacy market-size context ` +
1034
+ 'may predate that run and is never part of this provenance claim. Use only the resolved ' +
1035
+ '`marketSignals` / `marketSizing` outputs as strict or cited truth, and call `get_report` ' +
1036
+ `with job_id=${safe} for their receipts.`);
914
1037
  }
915
1038
  return (`PROVENANCE: every field above was written together by research run ${safe} — one run's ` +
916
1039
  'coherent market read, never a mix of runs. Quote a figure only alongside that run id, and ' +
@@ -920,31 +1043,21 @@ function marketProvenanceLine(runId) {
920
1043
  /**
921
1044
  * The trust caveat.
922
1045
  *
923
- * ⚠️ Unlike a competitor's four company facts, a market figure has NO per-fact
924
- * grounding column to render beside it — the trust state lives only in the SOURCE
925
- * RUN's claim spine, and the web app reconstructs it there with a fail-closed
926
- * two-gate check (`buildMarketDossier` in `app/lib/validation/market-claims.ts`).
927
- * This client cannot import that, and reproducing it from a different codebase on
928
- * a different release cadence is how two surfaces come to disagree about whether
929
- * a number is verified.
930
- *
931
- * So this tool renders the figures UNGRADED and says so, which is the same choice
932
- * `list_competitors` makes for strengths/weaknesses. The alternative — printing a
933
- * market size bare, with no state and no disclaimer — is precisely FUL-247's
934
- * failure: a number beside a heading reads as checked.
1046
+ * Strict market signals have already crossed the server's fail-closed proof boundary and render
1047
+ * with their exact source URLs. The singleton's legacy fields remain neutral recorded context:
1048
+ * they do not inherit the strict signal's authority merely because both came from the same run.
935
1049
  */
936
- const MARKET_TRUST_LINE = 'TRUST: these figures carry NO trust state here. A market figure\'s grounding lives in its ' +
937
- 'source run\'s claim spine, not on this snapshot, so nothing above is a verified claim — it is ' +
938
- 'what the run recorded. Do not cite a figure from this tool as sourced; read the source run ' +
939
- 'with `get_report` (its market claims carry GROUNDED / SPECULATION / NO_RECEIPT states and ' +
940
- 'their receipts), or open the project\'s Market page, which grades them and fails closed.';
1050
+ const MARKET_TRUST_LINE = 'TRUST: Market signals are the only highlighted values above; the server resolved them from ' +
1051
+ 'the exact source run using strict citation or derivation checks. Legacy market context, ' +
1052
+ 'reported direction, key trends, and positioning gaps are retained as neutral snapshot context ' +
1053
+ 'and must not be presented as cited TAM, SAM, or SOM.';
941
1054
  export async function getMarket(input, deps) {
942
1055
  const parsed = GetMarketInputSchema.safeParse(input);
943
1056
  if (!parsed.success) {
944
1057
  throw new CollectionToolError(`Invalid input — ${formatZodError(parsed.error)}`);
945
1058
  }
946
1059
  const { project_id: projectId } = parsed.data;
947
- const { market, marketSizing } = await fetchMarket(deps, projectId);
1060
+ const { market, marketSizing, marketSignals } = await fetchMarket(deps, projectId);
948
1061
  let text;
949
1062
  if (market === null) {
950
1063
  // ⚠️ THE HONEST EMPTY STATE. "Absent" is not "zero" and it is not "we looked
@@ -973,22 +1086,23 @@ export async function getMarket(input, deps) {
973
1086
  'market data, so running those will leave this empty.';
974
1087
  }
975
1088
  else {
976
- const size = safeInline(market.marketSize, MARKET_FIELD_MAX);
1089
+ const legacySize = safeInline(market.legacyMarketSize, MARKET_FIELD_MAX);
977
1090
  const trend = safeInline(market.growthTrend, 40);
978
1091
  const trends = marketListBlock('Key trends', market.keyTrends);
979
1092
  const gaps = marketListBlock('Positioning gaps', market.positioningGaps);
980
1093
  const updated = safeInline(market.updatedAt, 40);
1094
+ const signals = marketSignalsBlock(marketSignals);
981
1095
  const sizing = marketSizingBlock(marketSizing);
982
1096
  const body = [
983
- size ? `Market size: ${size}` : null,
984
- trend ? `Growth trend: ${trend}` : null,
1097
+ legacySize ? `Legacy recorded market-size context: ${legacySize}` : null,
1098
+ trend ? `Reported direction: ${trend}` : null,
985
1099
  trends,
986
1100
  gaps,
987
1101
  sizing,
988
1102
  ].filter((line) => line !== null);
989
1103
  const runId = safeId(market.sourceRunId);
990
1104
  const updatedLine = updated ? `\nLast updated: ${updated}` : '';
991
- if (body.length === 0) {
1105
+ if (body.length === 0 && marketSignals.length === 0 && !sizing) {
992
1106
  // ⚠️ A DIFFERENT FACT FROM THE `null` BRANCH, and worth its own words. A row
993
1107
  // exists, so a run DID reach the market block — which under FUL-477 only
994
1108
  // happens for a full run whose report carried a `webResearch` object. That
@@ -1011,6 +1125,7 @@ export async function getMarket(input, deps) {
1011
1125
  // same class of over-claim this tool exists to refuse.
1012
1126
  text =
1013
1127
  `Project ${projectId} has a market snapshot with no figures in it.\n\n` +
1128
+ `${signals}\n\n` +
1014
1129
  (runId
1015
1130
  ? `Research run ${runId} researched the market and recorded no market size, no growth ` +
1016
1131
  'trend, no key trends and no positioning gaps. '
@@ -1020,15 +1135,15 @@ export async function getMarket(input, deps) {
1020
1135
  'nothing quotable, not that the market is empty or unmeasured.' +
1021
1136
  updatedLine +
1022
1137
  '\n\n' +
1023
- marketProvenanceLine(market.sourceRunId) +
1138
+ marketProvenanceLine(market.sourceRunId, market.persistenceSemantics, market.sourceBindingState) +
1024
1139
  '\n\nThe full record is in `structuredContent.market` (also mirrored in `_meta.market`).';
1025
1140
  }
1026
1141
  else {
1027
1142
  const runLine = runId ? `\nSource run: ${runId}` : '';
1028
1143
  text =
1029
1144
  `Market snapshot for project ${projectId}:\n\n` +
1030
- `${body.join('\n')}${runLine}${updatedLine}\n\n` +
1031
- marketProvenanceLine(market.sourceRunId) +
1145
+ `${signals}\n${body.join('\n')}${runLine}${updatedLine}\n\n` +
1146
+ marketProvenanceLine(market.sourceRunId, market.persistenceSemantics, market.sourceBindingState) +
1032
1147
  '\n\n' +
1033
1148
  MARKET_TRUST_LINE +
1034
1149
  '\n\nThe full record is in `structuredContent.market` (also mirrored in `_meta.market`).';
@@ -1038,7 +1153,7 @@ export async function getMarket(input, deps) {
1038
1153
  content: [{ type: 'text', text }],
1039
1154
  // `market` is present even when null — the key's PRESENCE is what tells a
1040
1155
  // structured consumer "no snapshot" apart from "this tool did not answer".
1041
- _meta: { market, marketSizing },
1156
+ _meta: { market, marketSizing, marketSignals },
1042
1157
  };
1043
1158
  }
1044
1159
  //# sourceMappingURL=collections.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"collections.js","sourceRoot":"","sources":["../../src/tools/collections.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"collections.js","sourceRoot":"","sources":["../../src/tools/collections.ts"],"names":[],"mappings":"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"}