pi-fabric 0.49.4 → 0.49.5

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.
@@ -1 +1 @@
1
- {"version":3,"file":"capability-advisory.d.ts","sourceRoot":"","sources":["../../src/core/capability-advisory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAW7D,eAAO,MAAM,+BAA+B,yBAAyB,CAAC;AAwDtE,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE;QAAE,OAAO,EAAE,uBAAuB,EAAE,CAAA;KAAE,CAAC;CACjD;AAED,KAAK,oBAAoB,GAAG,OAAO,GAAG,SAAS,CAAC;AAMhD,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAoED,qBAAa,iBAAiB;;IAa5B,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,sBAAsB,EAAE,GAAG,IAAI;IAMtE,OAAO,CAAC,WAAW,EAAE,sBAAsB,EAAE,GAAG,IAAI;IAIpD,UAAU,IAAI,OAAO;IAIrB,KAAK,IAAI,IAAI;IAeb,qBAAqB,CACnB,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,EAC1B,eAAe,EAAE,CACf,QAAQ,EAAE,MAAM,EAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC5B,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,GACjC,IAAI;IA+DP,UAAU,IAAI,cAAc,EAAE;IAO9B,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAQ1C,OAAO,IAAI,IAAI;IASf,QAAQ,CACN,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,8BAA8B,GACrC,wBAAwB,GAAG,SAAS;CA6MxC"}
1
+ {"version":3,"file":"capability-advisory.d.ts","sourceRoot":"","sources":["../../src/core/capability-advisory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAa7D,eAAO,MAAM,+BAA+B,yBAAyB,CAAC;AAyFtE,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE;QAAE,OAAO,EAAE,uBAAuB,EAAE,CAAA;KAAE,CAAC;CACjD;AAED,KAAK,oBAAoB,GAAG,OAAO,GAAG,SAAS,CAAC;AAMhD,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAiID,qBAAa,iBAAiB;;IA0B5B,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,sBAAsB,EAAE,GAAG,IAAI;IAMtE,OAAO,CAAC,WAAW,EAAE,sBAAsB,EAAE,GAAG,IAAI;IAIpD,UAAU,IAAI,OAAO;IAIrB,KAAK,IAAI,IAAI;IAeb,qBAAqB,CACnB,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,EAC1B,eAAe,EAAE,CACf,QAAQ,EAAE,MAAM,EAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC5B,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,GACjC,IAAI;IA6EP,UAAU,IAAI,cAAc,EAAE;IAO9B,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAc1C,OAAO,IAAI,IAAI;IAiBf,QAAQ,CACN,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,8BAA8B,GACrC,wBAAwB,GAAG,SAAS;CAiTxC"}
@@ -1,4 +1,4 @@
1
- import { buildCapabilityIndex, capabilityPathOnlyTerms, capabilityWordCandidates, isMostlyNonLatinPrompt, splitCapabilityWords, truncateAdvisoryDescription, } from "./capability-fingerprint.js";
1
+ import { buildCapabilityIndex, capabilityPathOnlyTerms, capabilityWordCandidates, isMostlyNonLatinPrompt, splitCapabilityWords, tokenizeCapabilityText, truncateAdvisoryDescription, } from "./capability-fingerprint.js";
2
2
  export const CAPABILITY_ADVISORY_CUSTOM_TYPE = "pi-fabric-capability";
3
3
  const ADVISORY_REF_PREFIX = "extensions";
4
4
  // MCP capability sources are namespaced "mcp:<server>" by the provider
@@ -17,6 +17,24 @@ const toolCallInput = (block) => {
17
17
  ? candidate
18
18
  : undefined;
19
19
  };
20
+ // Custom-message content has appeared as a plain string and as pi text blocks
21
+ // across transcript versions. Normalize only actual text; malformed or richer
22
+ // blocks carry no advisory vocabulary.
23
+ const customMessageText = (content) => {
24
+ if (typeof content === "string")
25
+ return content;
26
+ if (!Array.isArray(content))
27
+ return "";
28
+ const parts = [];
29
+ for (const block of content) {
30
+ if (typeof block !== "object" || block === null)
31
+ continue;
32
+ const { type, text } = block;
33
+ if (type === "text" && typeof text === "string")
34
+ parts.push(text);
35
+ }
36
+ return parts.join("\n");
37
+ };
20
38
  // Score quantum: the weight of a source-unique term (df = 1 → 1/df = 1) — the
21
39
  // smallest unit of unambiguous evidence the 1/df scorer can express. The weak
22
40
  // band is exactly one quantum wide: strong = weak + one quantum of certainty.
@@ -41,13 +59,31 @@ const MAX_ADVISORY_NAMES = 3;
41
59
  // τ = 2 turns — the patience/memory scale. Warmth W is the convolution of
42
60
  // the score signal with the exponential kernel K_τ (an EWMA with retention
43
61
  // 1 − 1/τ, half-life one turn at τ=2): first-order evidence averages over
44
- // τ turns. Smoke feedback estimates a bias, a second-order signal, so it
62
+ // τ turns. The phrase window projects the same scale: survivors.
63
+ // Smoke feedback estimates a bias, a second-order signal, so it
45
64
  // calibrates over τ² events: step θ/τ², ceiling τ² — keeping the maximum
46
65
  // furnace raise at exactly θ regardless of τ.
47
66
  // Strong band ignites instantly; weak band fires when W breaches the ignition
48
67
  // point, so single-turn collisions cool before they get there.
49
68
  const TAU = 2;
50
69
  const WARM_ALPHA = 1 - 1 / TAU; // 0.5
70
+ // Phrase locality window: two matched written words earn phrased evidence
71
+ // when they stand within 2τ survivors of each other in the prompt AND
72
+ // co-occur on one tool surface of the source (the MRF sequential-dependence
73
+ // clause). Words matched far apart, or across different tools of one
74
+ // namespace, are scatter — vocabulary collision, never phrasing.
75
+ const PHRASE_WINDOW = 2 * TAU; // 4
76
+ // Topic saturation for the script-boundary lane: a lone cross-script word
77
+ // certifies itself when it saturates the source's identity surfaces the way
78
+ // the brand does — at most one omission per τ cycle, share ≥ 1 − 1/τ.
79
+ const TOPIC_SHARE = 1 - 1 / TAU; // 1/2
80
+ // Episode gap for habituation: a written word earns an ambient-vocabulary
81
+ // episode (and rareness damping 1/(1 + e)) when it reappears at least τ²
82
+ // turns after its previous mention. Within-patience repetition stays one
83
+ // episode, so sustained intent never damps. Complete session relapse after
84
+ // τ³ turns forgives a word entirely.
85
+ const SESSION_GAP = TAU * TAU; // 4
86
+ const SESSION_RELAPSE = SESSION_GAP * TAU; // 8
51
87
  const SMOKE_STEP = 1 / (TAU * TAU); // 0.25
52
88
  const SMOKE_MAX = TAU * TAU; // 4
53
89
  const WARM_FLOOR = 1e-3;
@@ -60,6 +96,53 @@ const STEER_LINE = "Steer: prefer these captured tools over re-implementing the
60
96
  const SKILL_REGION = /<available_skills\b[^>]*>[\s\S]*?(?:<\/available_skills\s*>|$)|<skill\b[^>]*>[\s\S]*?(?:<\/skill\s*>|$)/g;
61
97
  const stripSkillRegions = (prompt) => prompt.replace(SKILL_REGION, " ");
62
98
  const estimateTokens = (text) => Math.ceil(text.length / 4);
99
+ // Brand tokens of a source's label: the words that name the capability
100
+ // itself ("pi-fovea" → {fovea}; "mcp:fal-ai" → {fal}). Two-letter tokens are
101
+ // excluded — "ai", "pi" are ambient vocabulary, not a deliberate reach.
102
+ const sourceBrandTokens = (label) => {
103
+ // The terminal namespace segment names the capability ("mcp:fal-ai" →
104
+ // "fal-ai"); a leading "mcp:" is a structural prefix, not a brand.
105
+ const terminal = label.includes(":") ? label.slice(label.lastIndexOf(":") + 1) : label;
106
+ const tokens = new Set();
107
+ for (const token of tokenizeCapabilityText(terminal)) {
108
+ if (token.length >= 3)
109
+ tokens.add(token);
110
+ }
111
+ return tokens;
112
+ };
113
+ // Topic saturation: the share of a source's tool identity surfaces a term
114
+ // lives on. Brand words saturate their namespace ("fovea" in every pi-fovea
115
+ // tool name); glue vocabulary covers less than half of a big catalog
116
+ // ("model" in 5/11 fal tools). The cutoff lives with the engine constants.
117
+ const topicShare = (term, source) => {
118
+ const total = source.names.length;
119
+ if (total === 0)
120
+ return 0;
121
+ let hits = 0;
122
+ for (const terms of source.toolTerms) {
123
+ if (terms?.has(term))
124
+ hits += 1;
125
+ }
126
+ return hits / total;
127
+ };
128
+ // Prompt locality is evaluated only after scoring one tool surface. The caller
129
+ // therefore supplies the co-surface clause by construction; this helper owns
130
+ // only the sequential-dependence clause. Keeping those operations together at
131
+ // the call site prevents one valid pair from certifying namespace-wide mass.
132
+ const hasPromptLocality = (matched) => {
133
+ for (let a = 0; a < matched.length; a++) {
134
+ for (let b = a + 1; b < matched.length; b++) {
135
+ const first = matched[a];
136
+ const second = matched[b];
137
+ if (first === undefined || second === undefined)
138
+ continue;
139
+ if (second.pos - first.pos > PHRASE_WINDOW)
140
+ break; // positions ascend
141
+ return true;
142
+ }
143
+ }
144
+ return false;
145
+ };
63
146
  // pi-fovea icon/indent pattern: one flat ▪ bullet per shown tool with the
64
147
  // fully-qualified ref, a source tag in parentheses when more than one source
65
148
  // is in play, and the truncated description after an em dash on the rich
@@ -101,9 +184,22 @@ export class CapabilityAdvisor {
101
184
  #slices = new Map();
102
185
  #ash = new Map();
103
186
  #warmth = new Map();
104
- #pendingFire = new Set();
105
- #hitsThisTurn = new Set();
187
+ #pendingFires = [];
106
188
  #smokeStreak = 0;
189
+ // Habituation ledger: word → last turn seen + completed episodes. A word the
190
+ // user keeps returning to across long pauses is ambient vocabulary, not
191
+ // intent. Consecutive-turn repetition NEVER counts (sustained presence IS
192
+ // the weak band's ignition signature); a pause of τ² turns between
193
+ // appearances starts a fresh episode. Like warmth, it resets with the
194
+ // session ledger — ash alone is permanent.
195
+ #turnNo = 0;
196
+ #mentions = new Map();
197
+ // Echo ledger: every latin word we ourselves rendered in advisory content.
198
+ // Our own utterances must never score as intent — quoting or parroting the
199
+ // advisory back cannot re-derive intent from our own voice. Like ash and
200
+ // the fire count, this is branch-derived: reset clears it and transcript
201
+ // replay reconstructs exactly the current history.
202
+ #emitted = new Set();
107
203
  #firedTotal = 0;
108
204
  // Descriptor sources refresh independently (captured tools on pi tool
109
205
  // catalog changes, MCP on descriptor-cache updates) without clobbering each
@@ -123,25 +219,31 @@ export class CapabilityAdvisor {
123
219
  }
124
220
  reset() {
125
221
  this.#warmth.clear();
126
- this.#pendingFire.clear();
127
- this.#hitsThisTurn.clear();
222
+ this.#pendingFires = [];
223
+ this.#turnNo = 0;
224
+ this.#mentions.clear();
225
+ this.#emitted.clear();
128
226
  this.#smokeStreak = 0;
129
227
  this.#firedTotal = 0;
130
228
  }
131
- // Ash is derived from the session transcript, never stored beside it:
132
- // fired hints ARE their own custom messages, organic use IS the tool calls
133
- // that named captured tools both are already persisted entries. Replay a
134
- // branch (ctx.sessionManager.getBranch()) to rebuild ash exactly up to the
135
- // current leaf, so forks and /tree rewinds see ashes up to that point in
136
- // time, and a brand-new session starts with a clean urn. Warmth, smoke, and
137
- // the per-session cap stay pure transients: reset() governs them.
229
+ // Durable advisory state derives from the session transcript, never a side
230
+ // store: fired hints ARE custom messages (their content is the echo ledger
231
+ // and each entry spends one cap unit), while organic use IS the tool calls
232
+ // that name captured tools. Replay rebuilds ash, echoes, and fire count at
233
+ // the current branch leaf. Warmth, smoke, and habituation stay transient.
138
234
  restoreAshFromEntries(entries, nameToNamespace) {
235
+ // Transcript-derived state is replaced, never merged: both branch rewinds
236
+ // and process reloads must reproduce exactly the current history.
139
237
  this.#ash.clear();
238
+ this.#emitted.clear();
239
+ this.#firedTotal = 0;
140
240
  for (const entryUnknown of entries) {
141
241
  const entry = entryUnknown;
142
242
  const at = typeof entry.timestamp === "string" ? entry.timestamp : "";
143
243
  if (entry.type === "custom_message" &&
144
244
  entry.customType === CAPABILITY_ADVISORY_CUSTOM_TYPE) {
245
+ this.#firedTotal += 1;
246
+ this.#rememberEmission(customMessageText(entry.content));
145
247
  const matches = entry.details
146
248
  ?.matches;
147
249
  if (Array.isArray(matches)) {
@@ -177,6 +279,12 @@ export class CapabilityAdvisor {
177
279
  }
178
280
  }
179
281
  }
282
+ #rememberEmission(content) {
283
+ for (const token of splitCapabilityWords(content)) {
284
+ this.#emitted.add(token);
285
+ this.#emitted.add(token.toLowerCase());
286
+ }
287
+ }
180
288
  // Idempotent append: a namespace burns at most once per session history.
181
289
  #burn(namespace, origin, at) {
182
290
  if (this.#ash.has(namespace))
@@ -195,20 +303,35 @@ export class CapabilityAdvisor {
195
303
  // the capability's information potential is already spent. Burn it as ash
196
304
  // with origin "organic". Returns true when the ash set changed (persist it).
197
305
  observeToolUse(namespace) {
198
- if (this.#pendingFire.has(namespace))
199
- this.#hitsThisTurn.add(namespace);
306
+ // Attribution has a τ-turn grace window. A model that follows the hint on
307
+ // the next turn still used the advisory; closing the event at the first
308
+ // turn boundary manufactured smoke and needlessly hardened the furnace.
309
+ for (const fire of this.#pendingFires) {
310
+ if (fire.namespaces.has(namespace))
311
+ fire.used = true;
312
+ }
200
313
  return this.#burn(namespace, "organic", new Date().toISOString());
201
314
  }
202
- // Furnace feedback, evaluated once per turn (turn_end event). A fire whose
203
- // namespaces saw no tool use is smoke; a used fire is clean combustion and
204
- // clears the streak. Smoke raises the weak-band ignition point.
315
+ // Resolve feedback in event order. Each fire spans its firing turn and the
316
+ // following turn checkpoints): use anywhere in that window is clean;
317
+ // only an expired unused event emits one smoke quantum. Overlapping events
318
+ // stay independent, and the latest resolved outcome owns the final streak.
205
319
  endTurn() {
206
- if (this.#pendingFire.size > 0) {
207
- const combusted = [...this.#pendingFire].some((namespace) => this.#hitsThisTurn.has(namespace));
208
- this.#smokeStreak = combusted ? 0 : Math.min(this.#smokeStreak + 1, SMOKE_MAX);
209
- this.#pendingFire.clear();
320
+ const pending = [];
321
+ for (const fire of this.#pendingFires) {
322
+ if (fire.used) {
323
+ this.#smokeStreak = 0;
324
+ continue;
325
+ }
326
+ fire.turnsLeft -= 1;
327
+ if (fire.turnsLeft <= 0) {
328
+ this.#smokeStreak = Math.min(this.#smokeStreak + 1, SMOKE_MAX);
329
+ }
330
+ else {
331
+ pending.push(fire);
332
+ }
210
333
  }
211
- this.#hitsThisTurn.clear();
334
+ this.#pendingFires = pending;
212
335
  }
213
336
  evaluate(prompt, config) {
214
337
  if (config.mode === "disabled")
@@ -232,12 +355,47 @@ export class CapabilityAdvisor {
232
355
  // candidate readings (camelCase atoms plus the word itself). One written
233
356
  // word is one unit of intent and of evidence: the scorer and the overlap
234
357
  // gate below both count these, so casing a word differently never changes
235
- // either count. Words with no surviving candidates drop out.
236
- const promptWords = splitCapabilityWords(stripped)
237
- .map((word) => new Set(capabilityWordCandidates(word)))
238
- .filter((candidates) => candidates.size > 0);
358
+ // either count. Words with no surviving candidates drop out. Echo ledger
359
+ // words anything we ourselves rendered in an earlier advisory — never
360
+ // enter the stream: our utterances are evidence of nothing.
361
+ const promptWords = [];
362
+ for (const word of splitCapabilityWords(stripped)) {
363
+ const key = word.toLowerCase();
364
+ if (this.#emitted.has(word) || this.#emitted.has(key))
365
+ continue;
366
+ const candidates = new Set(capabilityWordCandidates(word));
367
+ if (candidates.size > 0)
368
+ promptWords.push({ key, candidates });
369
+ }
239
370
  if (promptWords.length === 0 || this.#index.sourceCount === 0)
240
371
  return undefined;
372
+ // Habituation ledger. Turn bump, then record: brand terms never accrue
373
+ // (typing a source's name is a claim, not vocabulary — it keeps its full
374
+ // rarity). Episodes complete only across a τ²-turn pause; consecutive
375
+ // repetition stays one episode, so the weak band's sustained-presence
376
+ // signature never damps itself. Absence of τ³ turns relapses a word to
377
+ // fresh: long-dead chatter is forgiven rather than fossilized.
378
+ this.#turnNo += 1;
379
+ const brandWords = new Set();
380
+ for (const source of this.#index.sources) {
381
+ for (const token of sourceBrandTokens(source.label))
382
+ brandWords.add(token);
383
+ }
384
+ for (const { key } of promptWords) {
385
+ if (brandWords.has(key))
386
+ continue;
387
+ const mention = this.#mentions.get(key);
388
+ if (mention === undefined) {
389
+ this.#mentions.set(key, { last: this.#turnNo, extra: 0 });
390
+ continue;
391
+ }
392
+ const gap = this.#turnNo - mention.last;
393
+ mention.last = this.#turnNo;
394
+ if (gap >= SESSION_RELAPSE)
395
+ mention.extra = 0;
396
+ else if (gap >= SESSION_GAP)
397
+ mention.extra += 1;
398
+ }
241
399
  const pathOnlyTerms = capabilityPathOnlyTerms(stripped);
242
400
  // Each matched written word contributes the rarity of its rarest matched
243
401
  // reading (weight = 1/df is monotone, so max weight = min df): exactly
@@ -247,7 +405,8 @@ export class CapabilityAdvisor {
247
405
  let score = 0;
248
406
  let matchedWords = 0;
249
407
  const contributingTerms = [];
250
- for (const candidates of promptWords) {
408
+ const matched = [];
409
+ promptWords.forEach(({ key, candidates }, pos) => {
251
410
  let bestWeight = 0;
252
411
  let bestTerm;
253
412
  for (const term of candidates) {
@@ -263,14 +422,23 @@ export class CapabilityAdvisor {
263
422
  }
264
423
  }
265
424
  if (bestTerm === undefined)
266
- continue;
425
+ return;
426
+ // Habituation damping: each completed episode (a return across a
427
+ // τ²-turn pause) discounts the word's rarity by one more count —
428
+ // weight 1/(1 + e). The matched-word count and every structural gate
429
+ // are untouched; only the arithmetic claim decays.
430
+ const extra = this.#mentions.get(key)?.extra ?? 0;
267
431
  matchedWords += 1;
268
- score += bestWeight;
432
+ score += bestWeight / (1 + extra);
269
433
  contributingTerms.push(bestTerm);
270
- }
271
- return { score, matchedWords, contributingTerms };
434
+ matched.push({ pos, term: bestTerm });
435
+ });
436
+ return { score, matchedWords, contributingTerms, matched };
272
437
  };
273
438
  const matches = [];
439
+ // Per-source record of how today's fire ignited: true when this turn's
440
+ // evidence alone carried it (strong band), false for warmth arrivals.
441
+ const fireBands = new Map();
274
442
  for (const source of this.#index.sources) {
275
443
  if (this.#ash.has(source.namespace))
276
444
  continue;
@@ -279,33 +447,73 @@ export class CapabilityAdvisor {
279
447
  // the threshold, while 1/df keeps "two distinctive words ≈ one source"
280
448
  // meaningful at any catalog size.
281
449
  const unit = scoreWords((term) => source.tf.has(term));
282
- const { score } = unit;
283
- // Vocabulary-overlap gate: the match needs at least two matched
284
- // written words, so a lone distinctive word ("project", "recent") stays
285
- // what it is — vocabulary collision, not intent. The exception: a word
286
- // whose rarest reading is unique to this source (df = 1) contributes a
287
- // full score quantum, the smallest unit of unambiguous evidence the
288
- // scorer expresses, so a single source-unique word earns the weak band,
289
- // where sustained warmth — not instant ignition — does the transience
290
- // filtering, except across a script boundary (see below).
291
- const hasSourceUniqueMatch = unit.contributingTerms.some((term) => this.#index.docFrequency(term) === 1);
292
- if ((unit.matchedWords < 2 && !hasSourceUniqueMatch) || score < config.threshold)
450
+ const namespaceScore = unit.score;
451
+ if (namespaceScore < config.threshold)
293
452
  continue;
294
- const strong = score >= config.threshold + WEAK_MATCH_BAND;
295
453
  // Script-boundary exception: inside non-latin prose a lone latin word
296
454
  // cannot be a vocabulary collision — the writer had to leave their
297
- // input method to type the brand name. The unambiguous evidence the
298
- // weak band asks sustained warmth to establish is already present, so
299
- // it ignites on the first turn. Only the gate moves; the score (and
300
- // the might-match register it draws) stays as computed.
301
- const scriptSwitched = mostlyNonLatin && unit.matchedWords === 1 && hasSourceUniqueMatch;
455
+ // input method to type it. But switching input methods is only proof
456
+ // of deliberateness, not of intent: a teaching question about the
457
+ // host software ("model とは何ですか") reaches across the boundary the
458
+ // same way a brand does. The boundary word must therefore certify
459
+ // itself against the source it names: either it IS the source's brand
460
+ // (a ≥3-letter token of the label's terminal segment) or it saturates
461
+ // the source's identity surfaces at brand level (TOPIC_SHARE = 1 − 1/τ —
462
+ // brand shape, not glue shape). Only the gate moves; the score (and
463
+ // the might-match register it draws) stays.
464
+ const scriptSwitched = mostlyNonLatin &&
465
+ unit.matchedWords === 1 &&
466
+ unit.contributingTerms.some((term) => this.#index.docFrequency(term) === 1 &&
467
+ (sourceBrandTokens(source.label).has(term) ||
468
+ topicShare(term, source) >= TOPIC_SHARE));
469
+ // Lone-word starvation: one matched written word is never intent, in
470
+ // any latin prose. A source-unique word (df = 1) used to earn the weak
471
+ // band on its own, but interrogative filler ("what", "project") is
472
+ // source-unique in small catalogs too, and warmed fal-style namespaces
473
+ // to ignition inside four ordinary questions. Lone words now neither
474
+ // fire nor warm — with two narrow exceptions: the script boundary
475
+ // above, and a word that names its own source. Typing the source's
476
+ // brand ("fovea", "github") unaccompanied is a deliberate reach, so it
477
+ // keeps the weak trickle path (never instant). Ambiguous short label
478
+ // tokens ("ai", "pi") do not qualify.
479
+ const namesItself = unit.contributingTerms.some((term) => sourceBrandTokens(source.label).has(term));
480
+ if (unit.matchedWords < 2 && !scriptSwitched && !namesItself)
481
+ continue;
482
+ // A phrase and its mass must come from the SAME tool surface. The old
483
+ // Boolean locality certificate was attached to namespaceScore, so one
484
+ // weak local pair could launder arbitrarily many words scattered across
485
+ // a wide server into a strong fire. Score every surface independently
486
+ // and retain the strongest threshold-clearing local one. If no surface
487
+ // certifies, namespace-wide overlap is scatter and is bounded to q.
488
+ let phrasedUnit;
489
+ for (const toolTerms of source.toolTerms) {
490
+ if (toolTerms === undefined)
491
+ continue;
492
+ const candidate = scoreWords((term) => toolTerms.has(term));
493
+ if (candidate.score < config.threshold || !hasPromptLocality(candidate.matched)) {
494
+ continue;
495
+ }
496
+ if (phrasedUnit === undefined || candidate.score > phrasedUnit.score) {
497
+ phrasedUnit = candidate;
498
+ }
499
+ }
500
+ const phrased = phrasedUnit !== undefined;
501
+ const score = scriptSwitched
502
+ ? namespaceScore
503
+ : (phrasedUnit?.score ?? Math.min(namespaceScore, SCORE_QUANTUM));
504
+ // The strong band ignites on one surface's phrased mass only: sφ ≥ θ + B
505
+ // buys instant fire. Catalog breadth cannot alter sφ; scatter remains q.
506
+ const strong = phrased && score >= config.threshold + WEAK_MATCH_BAND;
302
507
  if (!strong && !scriptSwitched) {
303
- // Weak band: accumulate warmth this turn, ignite only at saturation.
508
+ // Weak band: accumulate the effective score this turn. Same-surface
509
+ // phrases feed their own mass; scatter has already been capped at q,
510
+ // so one smoke raises θ_i above its asymptote for the session.
304
511
  const warmth = (this.#warmth.get(source.namespace) ?? 0) + (1 - WARM_ALPHA) * score;
305
512
  this.#warmth.set(source.namespace, warmth);
306
513
  if (warmth < ignitionPoint)
307
514
  continue;
308
515
  }
516
+ fireBands.set(source.namespace, strong);
309
517
  // Rank this source's tools by their own prompt-word overlap so the
310
518
  // most relevant refs lead (e.g. openai_websearch before openai_image on
311
519
  // a web-search prompt) instead of inherited catalog order.
@@ -320,7 +528,7 @@ export class CapabilityAdvisor {
320
528
  namespace: source.namespace,
321
529
  label: source.label,
322
530
  score,
323
- matchedTerms: unit.contributingTerms.sort((a, b) => this.#index.docFrequency(a) - this.#index.docFrequency(b)),
531
+ matchedTerms: (phrasedUnit ?? unit).contributingTerms.sort((a, b) => this.#index.docFrequency(a) - this.#index.docFrequency(b)),
324
532
  names: order.map((index) => source.names[index] ?? "").filter((name) => name !== ""),
325
533
  descriptions: order.map((index) => source.descriptions[index] ?? ""),
326
534
  omitted: 0,
@@ -330,8 +538,14 @@ export class CapabilityAdvisor {
330
538
  return undefined;
331
539
  matches.sort((a, b) => b.score - a.score || a.namespace.localeCompare(b.namespace));
332
540
  const included = matches.slice(0, MAX_ADVISORY_SOURCES);
541
+ // The register reports HOW the fire ignited, not how big the score was:
542
+ // "matched" only when this turn's evidence alone would have ignited on
543
+ // its own (phrased, above the strong bar). A fire that arrived through
544
+ // sustained warmth — trickle, brand reach, script boundary — reads
545
+ // "might match", however large the accumulated raw mass. The headline
546
+ // carries the fire's confidence, not its arithmetic.
333
547
  const strong = included[0] !== undefined &&
334
- included[0].score >= config.threshold + WEAK_MATCH_BAND;
548
+ (fireBands.get(included[0].namespace) ?? false);
335
549
  // Structured like fovea's sync advisories: a compact headline naming
336
550
  // the matched sources, flat ▪ bullet rows, a Next: action pointing at
337
551
  // the top ref, and a Steer: directive.
@@ -393,11 +607,23 @@ export class CapabilityAdvisor {
393
607
  // Pathological budget: header + steer only, refs survive in details.
394
608
  content = `${headerLine}\n${STEER_LINE}`;
395
609
  }
610
+ // Echo ledger: every written word we are about to render enters the echo
611
+ // set. Quoting or parroting this advisory next turn cannot score — the
612
+ // sentences we speak must not count as the user's intent. Both surface
613
+ // and lowercase forms are kept, mirroring extraction's casing tolerance.
614
+ for (const token of splitCapabilityWords(content)) {
615
+ this.#emitted.add(token);
616
+ this.#emitted.add(token.toLowerCase());
617
+ }
396
618
  for (const match of included) {
397
619
  this.#burn(match.namespace, "fired", new Date().toISOString());
398
620
  this.#warmth.delete(match.namespace);
399
- this.#pendingFire.add(match.namespace);
400
621
  }
622
+ this.#pendingFires.push({
623
+ namespaces: new Set(included.map((match) => match.namespace)),
624
+ turnsLeft: TAU,
625
+ used: false,
626
+ });
401
627
  this.#firedTotal += 1;
402
628
  return {
403
629
  content,
@@ -1 +1 @@
1
- {"version":3,"file":"capability-advisory.js","sourceRoot":"","sources":["../../src/core/capability-advisory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capability-advisory.js","sourceRoot":"","sources":["../../src/core/capability-advisory.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,2BAA2B,GAG5B,MAAM,6BAA6B,CAAC;AAErC,MAAM,CAAC,MAAM,+BAA+B,GAAG,sBAAsB,CAAC;AACtE,MAAM,mBAAmB,GAAG,YAAY,CAAC;AACzC,uEAAuE;AACvE,sEAAsE;AACtE,MAAM,oBAAoB,GAAG,MAAM,CAAC;AACpC,MAAM,cAAc,GAAG,KAAK,CAAC;AAE7B,MAAM,YAAY,GAAG,CAAC,SAAiB,EAAU,EAAE,CACjD,SAAS,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,mBAAmB,CAAC;AAEpF,8EAA8E;AAC9E,sDAAsD;AACtD,MAAM,aAAa,GAAG,CAAC,KAAc,EAAuC,EAAE;IAC5E,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAClE,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC;IAClE,OAAO,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QACrF,CAAC,CAAE,SAAqC;QACxC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC,CAAC;AAEF,8EAA8E;AAC9E,8EAA8E;AAC9E,uCAAuC;AACvC,MAAM,iBAAiB,GAAG,CAAC,OAAgB,EAAU,EAAE;IACrD,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAChD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;YAAE,SAAS;QAC1D,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,KAA2C,CAAC;QACnE,IAAI,IAAI,KAAK,MAAM,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC,CAAC;AACF,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAC9E,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,6EAA6E;AAC7E,8EAA8E;AAC9E,+EAA+E;AAC/E,yEAAyE;AACzE,MAAM,kBAAkB,GAAG,aAAa,GAAG,CAAC,CAAC;AAC7C,MAAM,eAAe,GAAG,aAAa,CAAC;AACtC,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAC/B,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAC/B,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,2EAA2E;AAC3E,4EAA4E;AAC5E,4EAA4E;AAC5E,mFAAmF;AAEnF,6EAA6E;AAC7E,8EAA8E;AAC9E,kDAAkD;AAClD,uCAAuC;AACvC,8EAA8E;AAC9E,6EAA6E;AAC7E,4EAA4E;AAC5E,sEAAsE;AACtE,kEAAkE;AAClE,2EAA2E;AAC3E,gDAAgD;AAChD,8EAA8E;AAC9E,+DAA+D;AAC/D,MAAM,GAAG,GAAG,CAAC,CAAC;AACd,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM;AACtC,0EAA0E;AAC1E,sEAAsE;AACtE,4EAA4E;AAC5E,qEAAqE;AACrE,iEAAiE;AACjE,MAAM,aAAa,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI;AACnC,0EAA0E;AAC1E,4EAA4E;AAC5E,sEAAsE;AACtE,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM;AACvC,0EAA0E;AAC1E,yEAAyE;AACzE,yEAAyE;AACzE,2EAA2E;AAC3E,qCAAqC;AACrC,MAAM,WAAW,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI;AACnC,MAAM,eAAe,GAAG,WAAW,GAAG,GAAG,CAAC,CAAC,IAAI;AAC/C,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO;AAC3C,MAAM,SAAS,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI;AACjC,MAAM,UAAU,GAAG,IAAI,CAAC;AA8BxB,MAAM,UAAU,GACd,6FAA6F,CAAC;AAEhG,+DAA+D;AAC/D,2EAA2E;AAC3E,6EAA6E;AAC7E,4EAA4E;AAC5E,2EAA2E;AAC3E,MAAM,YAAY,GAChB,0GAA0G,CAAC;AAE7G,MAAM,iBAAiB,GAAG,CAAC,MAAc,EAAU,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;AAExF,MAAM,cAAc,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AA0B5E,uEAAuE;AACvE,6EAA6E;AAC7E,wEAAwE;AACxE,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAuB,EAAE;IAC/D,sEAAsE;IACtE,mEAAmE;IACnE,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACvF,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,KAAK,MAAM,KAAK,IAAI,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrD,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,0EAA0E;AAC1E,4EAA4E;AAC5E,qEAAqE;AACrE,2EAA2E;AAC3E,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,MAAmC,EAAU,EAAE;IAC/E,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;IAClC,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAC1B,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrC,IAAI,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC;YAAE,IAAI,IAAI,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,IAAI,GAAG,KAAK,CAAC;AACtB,CAAC,CAAC;AAEF,+EAA+E;AAC/E,6EAA6E;AAC7E,8EAA8E;AAC9E,6EAA6E;AAC7E,MAAM,iBAAiB,GAAG,CAAC,OAAgC,EAAW,EAAE;IACtE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACzB,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,KAAK,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS;gBAAE,SAAS;YAC1D,IAAI,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,GAAG,aAAa;gBAAE,MAAM,CAAC,mBAAmB;YACtE,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,0EAA0E;AAC1E,6EAA6E;AAC7E,yEAAyE;AACzE,yEAAyE;AACzE,yDAAyD;AACzD,MAAM,gBAAgB,GAAG,CAAC,MAAqB,EAAE,gBAAyB,EAAY,EAAE;IACtF,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IACtC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAChD,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAClC,MAAM,GAAG,GAAG,GAAG,SAAS,IAAI,IAAI,EAAE,CAAC;YACnC,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACpD,MAAM,IAAI,GACR,gBAAgB,IAAI,WAAW;gBAC7B,CAAC,CAAC,MAAM,2BAA2B,CAAC,WAAW,CAAC,EAAE;gBAClD,CAAC,CAAC,EAAE,CAAC;YACT,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG,SAAS,GAAG,IAAI,EAAE,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QACH,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1D,KAAK,CAAC,IAAI,CACR,QAAQ,KAAK,CAAC,aAAa,CAAC,MAAM,YAAY,KAAK,CAAC,KAAK,KAAK,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CACrH,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,4EAA4E;AAC5E,iEAAiE;AACjE,MAAM,UAAU,GAAG,CAAC,MAAqB,EAAY,EAAE,CACrD,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;IACnB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IACnF,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D,MAAM,QAAQ,GACZ,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;QAC5B,CAAC,CAAC,QAAQ,KAAK,CAAC,aAAa,CAAC,MAAM,UAAU,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QACpG,CAAC,CAAC,EAAE,CAAC;IACT,OAAO,KAAK,KAAK,CAAC,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,QAAQ,EAAE,CAAC;AAC5D,CAAC,CAAC,CAAC;AAEL,MAAM,OAAO,iBAAiB;IAC5B,MAAM,GAAoB,oBAAoB,CAAC,EAAE,CAAC,CAAC;IAC1C,OAAO,GAAG,IAAI,GAAG,EAAoC,CAAC;IAC/D,IAAI,GAAG,IAAI,GAAG,EAA0B,CAAC;IACzC,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IACpC,aAAa,GAA4B,EAAE,CAAC;IAC5C,YAAY,GAAG,CAAC,CAAC;IACjB,6EAA6E;IAC7E,wEAAwE;IACxE,0EAA0E;IAC1E,mEAAmE;IACnE,sEAAsE;IACtE,2CAA2C;IAC3C,OAAO,GAAG,CAAC,CAAC;IACZ,SAAS,GAAG,IAAI,GAAG,EAA2C,CAAC;IAC/D,2EAA2E;IAC3E,2EAA2E;IAC3E,yEAAyE;IACzE,yEAAyE;IACzE,mDAAmD;IACnD,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IAC7B,WAAW,GAAG,CAAC,CAAC;IAEhB,sEAAsE;IACtE,4EAA4E;IAC5E,uDAAuD;IACvD,SAAS,CAAC,MAAc,EAAE,WAAqC;QAC7D,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;YAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;;YACrD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,oBAAoB,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,CAAC,WAAqC;QAC3C,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAC1C,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,2EAA2E;IAC3E,2EAA2E;IAC3E,2EAA2E;IAC3E,2EAA2E;IAC3E,0EAA0E;IAC1E,qBAAqB,CACnB,OAA0B,EAC1B,eAGkC;QAElC,0EAA0E;QAC1E,kEAAkE;QAClE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAClB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,KAAK,MAAM,YAAY,IAAI,OAAO,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,YAOb,CAAC;YACF,MAAM,EAAE,GACN,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,IACE,KAAK,CAAC,IAAI,KAAK,gBAAgB;gBAC/B,KAAK,CAAC,UAAU,KAAK,+BAA+B,EACpD,CAAC;gBACD,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;gBACtB,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;gBACzD,MAAM,OAAO,GAAI,KAAK,CAAC,OAA6C;oBAClE,EAAE,OAAO,CAAC;gBACZ,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC3B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;wBAC5B,MAAM,SAAS,GAAI,KAA6C;4BAC9D,EAAE,SAAS,CAAC;wBACd,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAC1D,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;wBACrC,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,OAET,CAAC;gBACd,IAAI,OAAO,EAAE,IAAI,KAAK,WAAW,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBACrE,SAAS;gBACX,CAAC;gBACD,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,KAA2C,CAAC;oBACnE,IAAI,IAAI,KAAK,UAAU,IAAI,OAAO,IAAI,KAAK,QAAQ;wBAAE,SAAS;oBAC9D,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC7D,IAAI,QAAQ,KAAK,SAAS;wBAAE,SAAS;oBACrC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;oBACnE,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;wBACnC,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAC1D,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;wBACvC,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,iBAAiB,CAAC,OAAe;QAC/B,KAAK,MAAM,KAAK,IAAI,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,KAAK,CAAC,SAAiB,EAAE,MAAgC,EAAE,EAAU;QACnE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,OAAO,KAAK,CAAC;QAC3C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE;YACvB,SAAS;YACT,MAAM;YACN,EAAE,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SAClD,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,UAAU;QACR,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,yEAAyE;IACzE,0EAA0E;IAC1E,6EAA6E;IAC7E,cAAc,CAAC,SAAiB;QAC9B,0EAA0E;QAC1E,wEAAwE;QACxE,wEAAwE;QACxE,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACtC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC;gBAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACvD,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,2EAA2E;IAC3E,wEAAwE;IACxE,2EAA2E;IAC3E,2EAA2E;IAC3E,OAAO;QACL,MAAM,OAAO,GAA4B,EAAE,CAAC;QAC5C,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACtC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,SAAS;YACX,CAAC;YACD,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC;YACpB,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC;YACjE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;IAC/B,CAAC;IAED,QAAQ,CACN,MAAc,EACd,MAAsC;QAEtC,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU;YAAE,OAAO,SAAS,CAAC;QACjD,IAAI,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,aAAa;YAAE,OAAO,SAAS,CAAC;QAE/D,qEAAqE;QACrE,KAAK,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChD,MAAM,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;YACrC,IAAI,OAAO,GAAG,UAAU;gBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;;gBACpD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5C,CAAC;QACD,sEAAsE;QACtE,sDAAsD;QACtD,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;QAE9E,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,cAAc,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QACxD,mEAAmE;QACnE,yEAAyE;QACzE,yEAAyE;QACzE,0EAA0E;QAC1E,yEAAyE;QACzE,wEAAwE;QACxE,4DAA4D;QAC5D,MAAM,WAAW,GAA+C,EAAE,CAAC;QACnE,KAAK,MAAM,IAAI,IAAI,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS;YAChE,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;YAC3D,IAAI,UAAU,CAAC,IAAI,GAAG,CAAC;gBAAE,WAAW,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEhF,uEAAuE;QACvE,yEAAyE;QACzE,sEAAsE;QACtE,sEAAsE;QACtE,uEAAuE;QACvE,+DAA+D;QAC/D,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;QAClB,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;QACrC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACzC,KAAK,MAAM,KAAK,IAAI,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC;gBAAE,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7E,CAAC;QACD,KAAK,MAAM,EAAE,GAAG,EAAE,IAAI,WAAW,EAAE,CAAC;YAClC,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS;YAClC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC1D,SAAS;YACX,CAAC;YACD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;YACxC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,IAAI,GAAG,IAAI,eAAe;gBAAE,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC;iBACzC,IAAI,GAAG,IAAI,WAAW;gBAAE,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,aAAa,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QACxD,yEAAyE;QACzE,uEAAuE;QACvE,2EAA2E;QAC3E,oEAAoE;QACpE,MAAM,UAAU,GAAG,CAAC,OAAkC,EAAE,EAAE;YACxD,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,YAAY,GAAG,CAAC,CAAC;YACrB,MAAM,iBAAiB,GAAa,EAAE,CAAC;YACvC,MAAM,OAAO,GAA4B,EAAE,CAAC;YAC5C,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,EAAE;gBAC/C,IAAI,UAAU,GAAG,CAAC,CAAC;gBACnB,IAAI,QAA4B,CAAC;gBACjC,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;oBAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;wBAAE,SAAS;oBAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;oBACjD,IAAI,SAAS,KAAK,CAAC;wBAAE,SAAS;oBAC9B,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACpF,IAAI,MAAM,GAAG,UAAU,EAAE,CAAC;wBACxB,UAAU,GAAG,MAAM,CAAC;wBACpB,QAAQ,GAAG,IAAI,CAAC;oBAClB,CAAC;gBACH,CAAC;gBACD,IAAI,QAAQ,KAAK,SAAS;oBAAE,OAAO;gBACnC,iEAAiE;gBACjE,iEAAiE;gBACjE,qEAAqE;gBACrE,mDAAmD;gBACnD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;gBAClD,YAAY,IAAI,CAAC,CAAC;gBAClB,KAAK,IAAI,UAAU,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;gBAClC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACjC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;YACH,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,OAAO,EAAE,CAAC;QAC7D,CAAC,CAAC;QAEF,MAAM,OAAO,GAA8B,EAAE,CAAC;QAC9C,uEAAuE;QACvE,sEAAsE;QACtE,MAAM,SAAS,GAAG,IAAI,GAAG,EAAmB,CAAC;QAC7C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC;gBAAE,SAAS;YAC9C,wEAAwE;YACxE,yEAAyE;YACzE,uEAAuE;YACvE,kCAAkC;YAClC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;YACvD,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC;YAClC,IAAI,cAAc,GAAG,MAAM,CAAC,SAAS;gBAAE,SAAS;YAChD,sEAAsE;YACtE,mEAAmE;YACnE,qEAAqE;YACrE,kEAAkE;YAClE,iEAAiE;YACjE,kEAAkE;YAClE,sEAAsE;YACtE,sEAAsE;YACtE,yEAAyE;YACzE,oEAAoE;YACpE,4CAA4C;YAC5C,MAAM,cAAc,GAClB,cAAc;gBACd,IAAI,CAAC,YAAY,KAAK,CAAC;gBACvB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CACzB,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;oBACpC,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;wBACxC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,WAAW,CAAC,CAC7C,CAAC;YACJ,qEAAqE;YACrE,uEAAuE;YACvE,mEAAmE;YACnE,uEAAuE;YACvE,qEAAqE;YACrE,kEAAkE;YAClE,mEAAmE;YACnE,uEAAuE;YACvE,qEAAqE;YACrE,sCAAsC;YACtC,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CACvD,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAC1C,CAAC;YACF,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,WAAW;gBAAE,SAAS;YAEvE,sEAAsE;YACtE,sEAAsE;YACtE,wEAAwE;YACxE,sEAAsE;YACtE,uEAAuE;YACvE,oEAAoE;YACpE,IAAI,WAAsD,CAAC;YAC3D,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACzC,IAAI,SAAS,KAAK,SAAS;oBAAE,SAAS;gBACtC,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC5D,IAAI,SAAS,CAAC,KAAK,GAAG,MAAM,CAAC,SAAS,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;oBAChF,SAAS;gBACX,CAAC;gBACD,IAAI,WAAW,KAAK,SAAS,IAAI,SAAS,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC;oBACrE,WAAW,GAAG,SAAS,CAAC;gBAC1B,CAAC;YACH,CAAC;YACD,MAAM,OAAO,GAAG,WAAW,KAAK,SAAS,CAAC;YAC1C,MAAM,KAAK,GAAG,cAAc;gBAC1B,CAAC,CAAC,cAAc;gBAChB,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC,CAAC;YACpE,yEAAyE;YACzE,yEAAyE;YACzE,MAAM,MAAM,GAAG,OAAO,IAAI,KAAK,IAAI,MAAM,CAAC,SAAS,GAAG,eAAe,CAAC;YACtE,IAAI,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;gBAC/B,oEAAoE;gBACpE,qEAAqE;gBACrE,+DAA+D;gBAC/D,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,GAAG,KAAK,CAAC;gBACpF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;gBAC3C,IAAI,MAAM,GAAG,aAAa;oBAAE,SAAS;YACvC,CAAC;YAED,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACxC,mEAAmE;YACnE,wEAAwE;YACxE,2DAA2D;YAC3D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAChE,MAAM,OAAO,GAAG,CAAC,KAAa,EAAU,EAAE;oBACxC,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;oBACtC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;gBAC/E,CAAC,CAAC;gBACF,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1C,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,CAAC;gBACX,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,KAAK;gBACL,YAAY,EAAE,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC,iBAAiB,CAAC,IAAI,CACxD,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CACpE;gBACD,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC;gBACpF,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBACpE,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;QACL,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAC3C,OAAO,CAAC,IAAI,CACV,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CACtE,CAAC;QACF,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;QACxD,wEAAwE;QACxE,uEAAuE;QACvE,uEAAuE;QACvE,mEAAmE;QACnE,sEAAsE;QACtE,qDAAqD;QACrD,MAAM,MAAM,GACV,QAAQ,CAAC,CAAC,CAAC,KAAK,SAAS;YACzB,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,CAAC;QAElD,qEAAqE;QACrE,sEAAsE;QACtE,uCAAuC;QACvC,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtE,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACjF,MAAM,UAAU,GAAG,MAAM;YACvB,CAAC,CAAC,GAAG,aAAa,MAAM,WAAW,QAAQ,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,uBAAuB;YAC9F,CAAC,CAAC,GAAG,aAAa,MAAM,WAAW,QAAQ,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,2BAA2B,CAAC;QACrG,MAAM,MAAM,GAAkB,EAAE,CAAC;QACjC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC7B,MAAM,WAAW,GAAa,EAAE,CAAC;YACjC,MAAM,kBAAkB,GAAa,EAAE,CAAC;YACxC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;gBACxD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAChC,IACE,IAAI,KAAK,SAAS;oBAClB,WAAW,CAAC,MAAM,GAAG,oBAAoB;oBACzC,KAAK,GAAG,kBAAkB,EAC1B,CAAC;oBACD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACvB,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;oBACzD,KAAK,EAAE,CAAC;gBACV,CAAC;YACH,CAAC;YACD,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;YACxD,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAC5D,KAAK,CAAC,KAAK,GAAG,WAAW,CAAC;YAC1B,KAAK,CAAC,YAAY,GAAG,kBAAkB,CAAC;YACxC,MAAM,CAAC,IAAI,CAAC;gBACV,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,KAAK,EAAE,WAAW;gBAClB,YAAY,EAAE,kBAAkB;gBAChC,aAAa;aACd,CAAC,CAAC;QACL,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACpC,MAAM,YAAY,GAChB,MAAM,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACpF,MAAM,QAAQ,GACZ,OAAO,KAAK,SAAS;YACnB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,+BAA+B,YAAY,IAAI,OAAO,4BAA4B,YAAY,IAAI,OAAO,2BAA2B,CAAC;QAE3I,sEAAsE;QACtE,mEAAmE;QACnE,yEAAyE;QACzE,iEAAiE;QACjE,MAAM,KAAK,GAAe;YACxB,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACpE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrE,UAAU,CAAC,MAAM,CAAC;SACnB,CAAC;QACF,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,SAAS,GAAG,CAAC,UAAU,EAAE,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/D,IAAI,cAAc,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAC/C,OAAO,GAAG,SAAS,CAAC;gBACpB,MAAM;YACR,CAAC;QACH,CAAC;QACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,qEAAqE;YACrE,OAAO,GAAG,GAAG,UAAU,KAAK,UAAU,EAAE,CAAC;QAC3C,CAAC;QAED,yEAAyE;QACzE,uEAAuE;QACvE,uEAAuE;QACvE,yEAAyE;QACzE,KAAK,MAAM,KAAK,IAAI,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QACzC,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;YAC/D,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YACtB,UAAU,EAAE,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC7D,SAAS,EAAE,GAAG;YACd,IAAI,EAAE,KAAK;SACZ,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QACtB,OAAO;YACL,OAAO;YACP,OAAO,EAAE,MAAM,CAAC,IAAI,KAAK,SAAS;YAClC,OAAO,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,EAAE;SAC5C,CAAC;IACJ,CAAC;CACF;AAED,MAAM,WAAW,GAAG,CAAC,OAAkC,EAA6B,EAAE,CACpF,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"capability-fingerprint.d.ts","sourceRoot":"","sources":["../../src/core/capability-fingerprint.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAgB7D,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;IACjC,EAAE,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,2BAA2B,EAAE,CAAC;IACvC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CACpC;AAKD,eAAO,MAAM,sBAAsB,GAAI,MAAM,MAAM,KAAG,MAAM,EAQ3D,CAAC;AAWF,eAAO,MAAM,wBAAwB,GAAI,MAAM,MAAM,KAAG,MAAM,EAO7D,CAAC;AAWF,eAAO,MAAM,uBAAuB,GAAI,MAAM,MAAM,KAAG,WAAW,CAAC,MAAM,CAUxE,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,MAAM,MAAM,KAAG,MAAM,EAYzD,CAAC;AAOF,eAAO,MAAM,sBAAsB,GAAI,MAAM,MAAM,KAAG,OAOrD,CAAC;AAIF,eAAO,MAAM,qBAAqB,GAAI,WAAW,MAAM,GAAG,SAAS,KAAG,MAGvC,CAAC;AAShC,eAAO,MAAM,oBAAoB,GAC/B,aAAa,sBAAsB,EAAE,KACpC,eAmDF,CAAC;AASF,eAAO,MAAM,uBAAuB,GAAI,aAAa,MAAM,KAAG,MAG7D,CAAC;AAKF,eAAO,MAAM,2BAA2B,GAAI,aAAa,MAAM,EAAE,iBAAa,KAAG,MAMhF,CAAC"}
1
+ {"version":3,"file":"capability-fingerprint.d.ts","sourceRoot":"","sources":["../../src/core/capability-fingerprint.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAoB7D,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;IACjC,EAAE,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,2BAA2B,EAAE,CAAC;IACvC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CACpC;AAKD,eAAO,MAAM,sBAAsB,GAAI,MAAM,MAAM,KAAG,MAAM,EAQ3D,CAAC;AAWF,eAAO,MAAM,wBAAwB,GAAI,MAAM,MAAM,KAAG,MAAM,EAO7D,CAAC;AAWF,eAAO,MAAM,uBAAuB,GAAI,MAAM,MAAM,KAAG,WAAW,CAAC,MAAM,CAUxE,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,MAAM,MAAM,KAAG,MAAM,EAYzD,CAAC;AAOF,eAAO,MAAM,sBAAsB,GAAI,MAAM,MAAM,KAAG,OAOrD,CAAC;AAIF,eAAO,MAAM,qBAAqB,GAAI,WAAW,MAAM,GAAG,SAAS,KAAG,MAGvC,CAAC;AAShC,eAAO,MAAM,oBAAoB,GAC/B,aAAa,sBAAsB,EAAE,KACpC,eAmDF,CAAC;AASF,eAAO,MAAM,uBAAuB,GAAI,aAAa,MAAM,KAAG,MAG7D,CAAC;AAKF,eAAO,MAAM,2BAA2B,GAAI,aAAa,MAAM,EAAE,iBAAa,KAAG,MAMhF,CAAC"}
@@ -5,6 +5,10 @@ const CAPABILITY_STOPWORDS = new Set([
5
5
  "by", "at", "from", "into", "one", "this", "that", "it", "its", "their",
6
6
  "your", "you", "we", "i", "me", "my", "mine", "us", "is", "are", "be", "been", "current", "existing",
7
7
  "please", "thanks",
8
+ // Interrogatives and question fillers: they frame every request, carry no
9
+ // capability intent of their own, and — worst case — collide with identity
10
+ // prose like "recommendations based on what you want to create".
11
+ "what", "how", "who", "whom", "whose", "why", "where", "which",
8
12
  "new", "use", "used", "using", "via", "per", "each", "all", "any", "can",
9
13
  "will", "also", "not", "no", "if", "when", "then", "else", "than", "so",
10
14
  "such", "over", "under", "out", "up", "down", "off", "through", "during",
@@ -1 +1 @@
1
- {"version":3,"file":"capability-fingerprint.js","sourceRoot":"","sources":["../../src/core/capability-fingerprint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capability-fingerprint.js","sourceRoot":"","sources":["../../src/core/capability-fingerprint.ts"],"names":[],"mappings":"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"}