@jaggerxtrm/specialists 3.15.2 → 3.15.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -7013,6 +7013,9 @@ var require_data = __commonJS((exports, module) => {
7013
7013
  var require_utils = __commonJS((exports, module) => {
7014
7014
  var isUUID = RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu);
7015
7015
  var isIPv4 = RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);
7016
+ var isHexPair = RegExp.prototype.test.bind(/^[\da-f]{2}$/iu);
7017
+ var isUnreserved = RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu);
7018
+ var isPathCharacter = RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);
7016
7019
  function stringArrayToHexStripped(input) {
7017
7020
  let acc = "";
7018
7021
  let code = 0;
@@ -7206,27 +7209,77 @@ var require_utils = __commonJS((exports, module) => {
7206
7209
  }
7207
7210
  return output.join("");
7208
7211
  }
7209
- function normalizeComponentEncoding(component, esc2) {
7210
- const func = esc2 !== true ? escape : unescape;
7211
- if (component.scheme !== undefined) {
7212
- component.scheme = func(component.scheme);
7213
- }
7214
- if (component.userinfo !== undefined) {
7215
- component.userinfo = func(component.userinfo);
7216
- }
7217
- if (component.host !== undefined) {
7218
- component.host = func(component.host);
7212
+ var HOST_DELIMS = { "@": "%40", "/": "%2F", "?": "%3F", "#": "%23", ":": "%3A" };
7213
+ var HOST_DELIM_RE = /[@/?#:]/g;
7214
+ var HOST_DELIM_NO_COLON_RE = /[@/?#]/g;
7215
+ function reescapeHostDelimiters(host, isIP) {
7216
+ const re = isIP ? HOST_DELIM_NO_COLON_RE : HOST_DELIM_RE;
7217
+ re.lastIndex = 0;
7218
+ return host.replace(re, (ch) => HOST_DELIMS[ch]);
7219
+ }
7220
+ function normalizePercentEncoding(input, decodeUnreserved = false) {
7221
+ if (input.indexOf("%") === -1) {
7222
+ return input;
7219
7223
  }
7220
- if (component.path !== undefined) {
7221
- component.path = func(component.path);
7224
+ let output = "";
7225
+ for (let i = 0;i < input.length; i++) {
7226
+ if (input[i] === "%" && i + 2 < input.length) {
7227
+ const hex = input.slice(i + 1, i + 3);
7228
+ if (isHexPair(hex)) {
7229
+ const normalizedHex = hex.toUpperCase();
7230
+ const decoded = String.fromCharCode(parseInt(normalizedHex, 16));
7231
+ if (decodeUnreserved && isUnreserved(decoded)) {
7232
+ output += decoded;
7233
+ } else {
7234
+ output += "%" + normalizedHex;
7235
+ }
7236
+ i += 2;
7237
+ continue;
7238
+ }
7239
+ }
7240
+ output += input[i];
7222
7241
  }
7223
- if (component.query !== undefined) {
7224
- component.query = func(component.query);
7242
+ return output;
7243
+ }
7244
+ function normalizePathEncoding(input) {
7245
+ let output = "";
7246
+ for (let i = 0;i < input.length; i++) {
7247
+ if (input[i] === "%" && i + 2 < input.length) {
7248
+ const hex = input.slice(i + 1, i + 3);
7249
+ if (isHexPair(hex)) {
7250
+ const normalizedHex = hex.toUpperCase();
7251
+ const decoded = String.fromCharCode(parseInt(normalizedHex, 16));
7252
+ if (decoded !== "." && isUnreserved(decoded)) {
7253
+ output += decoded;
7254
+ } else {
7255
+ output += "%" + normalizedHex;
7256
+ }
7257
+ i += 2;
7258
+ continue;
7259
+ }
7260
+ }
7261
+ if (isPathCharacter(input[i])) {
7262
+ output += input[i];
7263
+ } else {
7264
+ output += escape(input[i]);
7265
+ }
7225
7266
  }
7226
- if (component.fragment !== undefined) {
7227
- component.fragment = func(component.fragment);
7267
+ return output;
7268
+ }
7269
+ function escapePreservingEscapes(input) {
7270
+ let output = "";
7271
+ for (let i = 0;i < input.length; i++) {
7272
+ if (input[i] === "%" && i + 2 < input.length) {
7273
+ const hex = input.slice(i + 1, i + 3);
7274
+ if (isHexPair(hex)) {
7275
+ output += "%" + hex.toUpperCase();
7276
+ i += 2;
7277
+ continue;
7278
+ }
7279
+ }
7280
+ output += escape(input[i]);
7228
7281
  }
7229
- return component;
7282
+ return output;
7230
7283
  }
7231
7284
  function recomposeAuthority(component) {
7232
7285
  const uriTokens = [];
@@ -7241,7 +7294,7 @@ var require_utils = __commonJS((exports, module) => {
7241
7294
  if (ipV6res.isIPV6 === true) {
7242
7295
  host = `[${ipV6res.escapedHost}]`;
7243
7296
  } else {
7244
- host = component.host;
7297
+ host = reescapeHostDelimiters(host, false);
7245
7298
  }
7246
7299
  }
7247
7300
  uriTokens.push(host);
@@ -7255,7 +7308,10 @@ var require_utils = __commonJS((exports, module) => {
7255
7308
  module.exports = {
7256
7309
  nonSimpleDomain,
7257
7310
  recomposeAuthority,
7258
- normalizeComponentEncoding,
7311
+ reescapeHostDelimiters,
7312
+ normalizePercentEncoding,
7313
+ normalizePathEncoding,
7314
+ escapePreservingEscapes,
7259
7315
  removeDotSegments,
7260
7316
  isIPv4,
7261
7317
  isUUID,
@@ -7440,11 +7496,11 @@ var require_schemes = __commonJS((exports, module) => {
7440
7496
 
7441
7497
  // node_modules/fast-uri/index.js
7442
7498
  var require_fast_uri = __commonJS((exports, module) => {
7443
- var { normalizeIPv6, removeDotSegments, recomposeAuthority, normalizeComponentEncoding, isIPv4, nonSimpleDomain } = require_utils();
7499
+ var { normalizeIPv6, removeDotSegments, recomposeAuthority, normalizePercentEncoding, normalizePathEncoding, escapePreservingEscapes, reescapeHostDelimiters, isIPv4, nonSimpleDomain } = require_utils();
7444
7500
  var { SCHEMES, getSchemeHandler } = require_schemes();
7445
7501
  function normalize(uri, options) {
7446
7502
  if (typeof uri === "string") {
7447
- uri = serialize(parse5(uri, options), options);
7503
+ uri = normalizeString(uri, options);
7448
7504
  } else if (typeof uri === "object") {
7449
7505
  uri = parse5(serialize(uri, options), options);
7450
7506
  }
@@ -7510,19 +7566,9 @@ var require_fast_uri = __commonJS((exports, module) => {
7510
7566
  return target;
7511
7567
  }
7512
7568
  function equal(uriA, uriB, options) {
7513
- if (typeof uriA === "string") {
7514
- uriA = unescape(uriA);
7515
- uriA = serialize(normalizeComponentEncoding(parse5(uriA, options), true), { ...options, skipEscape: true });
7516
- } else if (typeof uriA === "object") {
7517
- uriA = serialize(normalizeComponentEncoding(uriA, true), { ...options, skipEscape: true });
7518
- }
7519
- if (typeof uriB === "string") {
7520
- uriB = unescape(uriB);
7521
- uriB = serialize(normalizeComponentEncoding(parse5(uriB, options), true), { ...options, skipEscape: true });
7522
- } else if (typeof uriB === "object") {
7523
- uriB = serialize(normalizeComponentEncoding(uriB, true), { ...options, skipEscape: true });
7524
- }
7525
- return uriA.toLowerCase() === uriB.toLowerCase();
7569
+ const normalizedA = normalizeComparableURI(uriA, options);
7570
+ const normalizedB = normalizeComparableURI(uriB, options);
7571
+ return normalizedA !== undefined && normalizedB !== undefined && normalizedA.toLowerCase() === normalizedB.toLowerCase();
7526
7572
  }
7527
7573
  function serialize(cmpts, opts) {
7528
7574
  const component = {
@@ -7548,12 +7594,12 @@ var require_fast_uri = __commonJS((exports, module) => {
7548
7594
  schemeHandler.serialize(component, options);
7549
7595
  if (component.path !== undefined) {
7550
7596
  if (!options.skipEscape) {
7551
- component.path = escape(component.path);
7597
+ component.path = escapePreservingEscapes(component.path);
7552
7598
  if (component.scheme !== undefined) {
7553
7599
  component.path = component.path.split("%3A").join(":");
7554
7600
  }
7555
7601
  } else {
7556
- component.path = unescape(component.path);
7602
+ component.path = normalizePercentEncoding(component.path);
7557
7603
  }
7558
7604
  }
7559
7605
  if (options.reference !== "suffix" && component.scheme) {
@@ -7588,7 +7634,16 @@ var require_fast_uri = __commonJS((exports, module) => {
7588
7634
  return uriTokens.join("");
7589
7635
  }
7590
7636
  var URI_PARSE = /^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;
7591
- function parse5(uri, opts) {
7637
+ function getParseError(parsed, matches) {
7638
+ if (matches[2] !== undefined && parsed.path && parsed.path[0] !== "/") {
7639
+ return 'URI path must start with "/" when authority is present.';
7640
+ }
7641
+ if (typeof parsed.port === "number" && (parsed.port < 0 || parsed.port > 65535)) {
7642
+ return "URI port is malformed.";
7643
+ }
7644
+ return;
7645
+ }
7646
+ function parseWithStatus(uri, opts) {
7592
7647
  const options = Object.assign({}, opts);
7593
7648
  const parsed = {
7594
7649
  scheme: undefined,
@@ -7599,6 +7654,7 @@ var require_fast_uri = __commonJS((exports, module) => {
7599
7654
  query: undefined,
7600
7655
  fragment: undefined
7601
7656
  };
7657
+ let malformedAuthorityOrPort = false;
7602
7658
  let isIP = false;
7603
7659
  if (options.reference === "suffix") {
7604
7660
  if (options.scheme) {
@@ -7619,6 +7675,11 @@ var require_fast_uri = __commonJS((exports, module) => {
7619
7675
  if (isNaN(parsed.port)) {
7620
7676
  parsed.port = matches[5];
7621
7677
  }
7678
+ const parseError = getParseError(parsed, matches);
7679
+ if (parseError !== undefined) {
7680
+ parsed.error = parsed.error || parseError;
7681
+ malformedAuthorityOrPort = true;
7682
+ }
7622
7683
  if (parsed.host) {
7623
7684
  const ipv4result = isIPv4(parsed.host);
7624
7685
  if (ipv4result === false) {
@@ -7657,14 +7718,18 @@ var require_fast_uri = __commonJS((exports, module) => {
7657
7718
  parsed.scheme = unescape(parsed.scheme);
7658
7719
  }
7659
7720
  if (parsed.host !== undefined) {
7660
- parsed.host = unescape(parsed.host);
7721
+ parsed.host = reescapeHostDelimiters(unescape(parsed.host), isIP);
7661
7722
  }
7662
7723
  }
7663
7724
  if (parsed.path) {
7664
- parsed.path = escape(unescape(parsed.path));
7725
+ parsed.path = normalizePathEncoding(parsed.path);
7665
7726
  }
7666
7727
  if (parsed.fragment) {
7667
- parsed.fragment = encodeURI(decodeURIComponent(parsed.fragment));
7728
+ try {
7729
+ parsed.fragment = encodeURI(decodeURIComponent(parsed.fragment));
7730
+ } catch {
7731
+ parsed.error = parsed.error || "URI malformed";
7732
+ }
7668
7733
  }
7669
7734
  }
7670
7735
  if (schemeHandler && schemeHandler.parse) {
@@ -7673,7 +7738,29 @@ var require_fast_uri = __commonJS((exports, module) => {
7673
7738
  } else {
7674
7739
  parsed.error = parsed.error || "URI can not be parsed.";
7675
7740
  }
7676
- return parsed;
7741
+ return { parsed, malformedAuthorityOrPort };
7742
+ }
7743
+ function parse5(uri, opts) {
7744
+ return parseWithStatus(uri, opts).parsed;
7745
+ }
7746
+ function normalizeString(uri, opts) {
7747
+ return normalizeStringWithStatus(uri, opts).normalized;
7748
+ }
7749
+ function normalizeStringWithStatus(uri, opts) {
7750
+ const { parsed, malformedAuthorityOrPort } = parseWithStatus(uri, opts);
7751
+ return {
7752
+ normalized: malformedAuthorityOrPort ? uri : serialize(parsed, opts),
7753
+ malformedAuthorityOrPort
7754
+ };
7755
+ }
7756
+ function normalizeComparableURI(uri, opts) {
7757
+ if (typeof uri === "string") {
7758
+ const { normalized, malformedAuthorityOrPort } = normalizeStringWithStatus(uri, opts);
7759
+ return malformedAuthorityOrPort ? undefined : normalized;
7760
+ }
7761
+ if (typeof uri === "object") {
7762
+ return serialize(uri, opts);
7763
+ }
7677
7764
  }
7678
7765
  var fastUri = {
7679
7766
  SCHEMES,
@@ -7808,7 +7895,7 @@ var require_core = __commonJS((exports) => {
7808
7895
  constructor(opts = {}) {
7809
7896
  this.schemas = {};
7810
7897
  this.refs = {};
7811
- this.formats = {};
7898
+ this.formats = Object.create(null);
7812
7899
  this._compilations = new Set;
7813
7900
  this._loading = {};
7814
7901
  this._cache = new Map;
@@ -15332,8 +15419,10 @@ ${cb}` : comment;
15332
15419
  }
15333
15420
  }
15334
15421
  if (afterDoc) {
15335
- Array.prototype.push.apply(doc2.errors, this.errors);
15336
- Array.prototype.push.apply(doc2.warnings, this.warnings);
15422
+ for (let i = 0;i < this.errors.length; ++i)
15423
+ doc2.errors.push(this.errors[i]);
15424
+ for (let i = 0;i < this.warnings.length; ++i)
15425
+ doc2.warnings.push(this.warnings[i]);
15337
15426
  } else {
15338
15427
  doc2.errors = this.errors;
15339
15428
  doc2.warnings = this.warnings;
@@ -16045,7 +16134,7 @@ var require_lexer = __commonJS((exports) => {
16045
16134
  const n = (yield* this.pushCount(1)) + (yield* this.pushSpaces(true));
16046
16135
  this.indentNext = this.indentValue + 1;
16047
16136
  this.indentValue += n;
16048
- return yield* this.parseBlockStart();
16137
+ return "block-start";
16049
16138
  }
16050
16139
  return "doc";
16051
16140
  }
@@ -16352,26 +16441,37 @@ var require_lexer = __commonJS((exports) => {
16352
16441
  return 0;
16353
16442
  }
16354
16443
  *pushIndicators() {
16355
- switch (this.charAt(0)) {
16356
- case "!":
16357
- return (yield* this.pushTag()) + (yield* this.pushSpaces(true)) + (yield* this.pushIndicators());
16358
- case "&":
16359
- return (yield* this.pushUntil(isNotAnchorChar)) + (yield* this.pushSpaces(true)) + (yield* this.pushIndicators());
16360
- case "-":
16361
- case "?":
16362
- case ":": {
16363
- const inFlow = this.flowLevel > 0;
16364
- const ch1 = this.charAt(1);
16365
- if (isEmpty(ch1) || inFlow && flowIndicatorChars.has(ch1)) {
16366
- if (!inFlow)
16367
- this.indentNext = this.indentValue + 1;
16368
- else if (this.flowKey)
16369
- this.flowKey = false;
16370
- return (yield* this.pushCount(1)) + (yield* this.pushSpaces(true)) + (yield* this.pushIndicators());
16444
+ let n = 0;
16445
+ loop:
16446
+ while (true) {
16447
+ switch (this.charAt(0)) {
16448
+ case "!":
16449
+ n += yield* this.pushTag();
16450
+ n += yield* this.pushSpaces(true);
16451
+ continue loop;
16452
+ case "&":
16453
+ n += yield* this.pushUntil(isNotAnchorChar);
16454
+ n += yield* this.pushSpaces(true);
16455
+ continue loop;
16456
+ case "-":
16457
+ case "?":
16458
+ case ":": {
16459
+ const inFlow = this.flowLevel > 0;
16460
+ const ch1 = this.charAt(1);
16461
+ if (isEmpty(ch1) || inFlow && flowIndicatorChars.has(ch1)) {
16462
+ if (!inFlow)
16463
+ this.indentNext = this.indentValue + 1;
16464
+ else if (this.flowKey)
16465
+ this.flowKey = false;
16466
+ n += yield* this.pushCount(1);
16467
+ n += yield* this.pushSpaces(true);
16468
+ continue loop;
16469
+ }
16470
+ }
16371
16471
  }
16472
+ break loop;
16372
16473
  }
16373
- }
16374
- return 0;
16474
+ return n;
16375
16475
  }
16376
16476
  *pushTag() {
16377
16477
  if (this.charAt(1) === "<") {
@@ -16525,6 +16625,13 @@ var require_parser = __commonJS((exports) => {
16525
16625
  while (prev[++i]?.type === "space") {}
16526
16626
  return prev.splice(i, prev.length);
16527
16627
  }
16628
+ function arrayPushArray(target, source) {
16629
+ if (source.length < 1e5)
16630
+ Array.prototype.push.apply(target, source);
16631
+ else
16632
+ for (let i = 0;i < source.length; ++i)
16633
+ target.push(source[i]);
16634
+ }
16528
16635
  function fixFlowSeqItems(fc) {
16529
16636
  if (fc.start.type === "flow-seq-start") {
16530
16637
  for (const it of fc.items) {
@@ -16534,11 +16641,11 @@ var require_parser = __commonJS((exports) => {
16534
16641
  delete it.key;
16535
16642
  if (isFlowToken(it.value)) {
16536
16643
  if (it.value.end)
16537
- Array.prototype.push.apply(it.value.end, it.sep);
16644
+ arrayPushArray(it.value.end, it.sep);
16538
16645
  else
16539
16646
  it.value.end = it.sep;
16540
16647
  } else
16541
- Array.prototype.push.apply(it.start, it.sep);
16648
+ arrayPushArray(it.start, it.sep);
16542
16649
  delete it.sep;
16543
16650
  }
16544
16651
  }
@@ -16878,7 +16985,7 @@ var require_parser = __commonJS((exports) => {
16878
16985
  const prev = map2.items[map2.items.length - 2];
16879
16986
  const end = prev?.value?.end;
16880
16987
  if (Array.isArray(end)) {
16881
- Array.prototype.push.apply(end, it.start);
16988
+ arrayPushArray(end, it.start);
16882
16989
  end.push(this.sourceToken);
16883
16990
  map2.items.pop();
16884
16991
  return;
@@ -17066,7 +17173,7 @@ var require_parser = __commonJS((exports) => {
17066
17173
  const prev = seq.items[seq.items.length - 2];
17067
17174
  const end = prev?.value?.end;
17068
17175
  if (Array.isArray(end)) {
17069
- Array.prototype.push.apply(end, it.start);
17176
+ arrayPushArray(end, it.start);
17070
17177
  end.push(this.sourceToken);
17071
17178
  seq.items.pop();
17072
17179
  return;
@@ -18455,7 +18562,26 @@ class PiAgentSession {
18455
18562
  }
18456
18563
  }
18457
18564
  const sessionCwd = resolve(this.options.cwd ?? process.cwd());
18458
- const baseEnv = { ...process.env, ...this.options.env ?? {}, CAVEMAN_LEVEL: "full" };
18565
+ let serenaPoolPort = null;
18566
+ if (npmGlobalDir && !excludedExtensions.has("pi-serena-tools")) {
18567
+ const serenaPoolPath = join2(npmGlobalDir, "@jaggerxtrm", "pi-extensions", "extensions", "serena-pool", "index.ts");
18568
+ if (existsSync3(serenaPoolPath)) {
18569
+ try {
18570
+ const mod = await import(serenaPoolPath);
18571
+ if (typeof mod.ensureSerenaForRoot === "function") {
18572
+ serenaPoolPort = await mod.ensureSerenaForRoot(sessionCwd);
18573
+ }
18574
+ } catch (err) {
18575
+ console.warn("[serena-pool] pre-spawn ensure failed:", err);
18576
+ }
18577
+ }
18578
+ }
18579
+ const baseEnv = {
18580
+ ...process.env,
18581
+ ...this.options.env ?? {},
18582
+ CAVEMAN_LEVEL: "full",
18583
+ ...serenaPoolPort != null ? { SERENA_MCP_PORT: String(serenaPoolPort) } : {}
18584
+ };
18459
18585
  this.proc = spawn("pi", args, {
18460
18586
  stdio: ["pipe", "pipe", "pipe"],
18461
18587
  cwd: sessionCwd,
package/dist/lib.js CHANGED
@@ -4855,8 +4855,10 @@ ${cb}` : comment;
4855
4855
  }
4856
4856
  }
4857
4857
  if (afterDoc) {
4858
- Array.prototype.push.apply(doc.errors, this.errors);
4859
- Array.prototype.push.apply(doc.warnings, this.warnings);
4858
+ for (let i = 0;i < this.errors.length; ++i)
4859
+ doc.errors.push(this.errors[i]);
4860
+ for (let i = 0;i < this.warnings.length; ++i)
4861
+ doc.warnings.push(this.warnings[i]);
4860
4862
  } else {
4861
4863
  doc.errors = this.errors;
4862
4864
  doc.warnings = this.warnings;
@@ -5568,7 +5570,7 @@ var require_lexer = __commonJS((exports) => {
5568
5570
  const n = (yield* this.pushCount(1)) + (yield* this.pushSpaces(true));
5569
5571
  this.indentNext = this.indentValue + 1;
5570
5572
  this.indentValue += n;
5571
- return yield* this.parseBlockStart();
5573
+ return "block-start";
5572
5574
  }
5573
5575
  return "doc";
5574
5576
  }
@@ -5875,26 +5877,37 @@ var require_lexer = __commonJS((exports) => {
5875
5877
  return 0;
5876
5878
  }
5877
5879
  *pushIndicators() {
5878
- switch (this.charAt(0)) {
5879
- case "!":
5880
- return (yield* this.pushTag()) + (yield* this.pushSpaces(true)) + (yield* this.pushIndicators());
5881
- case "&":
5882
- return (yield* this.pushUntil(isNotAnchorChar)) + (yield* this.pushSpaces(true)) + (yield* this.pushIndicators());
5883
- case "-":
5884
- case "?":
5885
- case ":": {
5886
- const inFlow = this.flowLevel > 0;
5887
- const ch1 = this.charAt(1);
5888
- if (isEmpty(ch1) || inFlow && flowIndicatorChars.has(ch1)) {
5889
- if (!inFlow)
5890
- this.indentNext = this.indentValue + 1;
5891
- else if (this.flowKey)
5892
- this.flowKey = false;
5893
- return (yield* this.pushCount(1)) + (yield* this.pushSpaces(true)) + (yield* this.pushIndicators());
5880
+ let n = 0;
5881
+ loop:
5882
+ while (true) {
5883
+ switch (this.charAt(0)) {
5884
+ case "!":
5885
+ n += yield* this.pushTag();
5886
+ n += yield* this.pushSpaces(true);
5887
+ continue loop;
5888
+ case "&":
5889
+ n += yield* this.pushUntil(isNotAnchorChar);
5890
+ n += yield* this.pushSpaces(true);
5891
+ continue loop;
5892
+ case "-":
5893
+ case "?":
5894
+ case ":": {
5895
+ const inFlow = this.flowLevel > 0;
5896
+ const ch1 = this.charAt(1);
5897
+ if (isEmpty(ch1) || inFlow && flowIndicatorChars.has(ch1)) {
5898
+ if (!inFlow)
5899
+ this.indentNext = this.indentValue + 1;
5900
+ else if (this.flowKey)
5901
+ this.flowKey = false;
5902
+ n += yield* this.pushCount(1);
5903
+ n += yield* this.pushSpaces(true);
5904
+ continue loop;
5905
+ }
5906
+ }
5894
5907
  }
5908
+ break loop;
5895
5909
  }
5896
- }
5897
- return 0;
5910
+ return n;
5898
5911
  }
5899
5912
  *pushTag() {
5900
5913
  if (this.charAt(1) === "<") {
@@ -6048,6 +6061,13 @@ var require_parser = __commonJS((exports) => {
6048
6061
  while (prev[++i]?.type === "space") {}
6049
6062
  return prev.splice(i, prev.length);
6050
6063
  }
6064
+ function arrayPushArray(target, source) {
6065
+ if (source.length < 1e5)
6066
+ Array.prototype.push.apply(target, source);
6067
+ else
6068
+ for (let i = 0;i < source.length; ++i)
6069
+ target.push(source[i]);
6070
+ }
6051
6071
  function fixFlowSeqItems(fc) {
6052
6072
  if (fc.start.type === "flow-seq-start") {
6053
6073
  for (const it of fc.items) {
@@ -6057,11 +6077,11 @@ var require_parser = __commonJS((exports) => {
6057
6077
  delete it.key;
6058
6078
  if (isFlowToken(it.value)) {
6059
6079
  if (it.value.end)
6060
- Array.prototype.push.apply(it.value.end, it.sep);
6080
+ arrayPushArray(it.value.end, it.sep);
6061
6081
  else
6062
6082
  it.value.end = it.sep;
6063
6083
  } else
6064
- Array.prototype.push.apply(it.start, it.sep);
6084
+ arrayPushArray(it.start, it.sep);
6065
6085
  delete it.sep;
6066
6086
  }
6067
6087
  }
@@ -6401,7 +6421,7 @@ var require_parser = __commonJS((exports) => {
6401
6421
  const prev = map.items[map.items.length - 2];
6402
6422
  const end = prev?.value?.end;
6403
6423
  if (Array.isArray(end)) {
6404
- Array.prototype.push.apply(end, it.start);
6424
+ arrayPushArray(end, it.start);
6405
6425
  end.push(this.sourceToken);
6406
6426
  map.items.pop();
6407
6427
  return;
@@ -6589,7 +6609,7 @@ var require_parser = __commonJS((exports) => {
6589
6609
  const prev = seq.items[seq.items.length - 2];
6590
6610
  const end = prev?.value?.end;
6591
6611
  if (Array.isArray(end)) {
6592
- Array.prototype.push.apply(end, it.start);
6612
+ arrayPushArray(end, it.start);
6593
6613
  end.push(this.sourceToken);
6594
6614
  seq.items.pop();
6595
6615
  return;
@@ -44,7 +44,7 @@ export declare function evaluateReadiness(opts: ReadinessCheckOptions): Promise<
44
44
  }>;
45
45
  export declare function checkPiHelpForFlags(flags?: string[]): ReadinessReason | undefined;
46
46
  export declare function startServe(argv?: string[]): Promise<{
47
- server: import("http").Server<typeof IncomingMessage, typeof ServerResponse>;
47
+ server: import("node:http").Server<typeof IncomingMessage, typeof ServerResponse>;
48
48
  args: ServeArgs;
49
49
  db: import("../specialist/observability-sqlite.js").ObservabilitySqliteClient | null;
50
50
  readinessState: ReadinessState;
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/pi/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/pi/session.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jaggerxtrm/specialists",
3
- "version": "3.15.2",
3
+ "version": "3.15.4",
4
4
  "description": "OmniSpecialist — 7-tool MCP orchestration layer powered by the Specialist System. Discover and execute .specialist.yaml files across project/user/system scopes via pi.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/types/lib.d.ts",
@@ -74,13 +74,13 @@
74
74
  },
75
75
  "dependencies": {
76
76
  "@modelcontextprotocol/sdk": "^1.29.0",
77
- "yaml": "2.8.4",
77
+ "yaml": "2.9.0",
78
78
  "zod": "^3.25.76",
79
79
  "zod-to-json-schema": "^3.24.6"
80
80
  },
81
81
  "devDependencies": {
82
- "@types/bun": "1.3.10",
83
- "@types/node": "^24.0.0",
82
+ "@types/bun": "1.3.14",
83
+ "@types/node": "^25.8.0",
84
84
  "@vitest/coverage-v8": "^4.1.6",
85
85
  "tsx": "^4.20.6",
86
86
  "typescript": "^5.0.0",
@@ -90,8 +90,10 @@
90
90
  "bun": ">=1.0.0"
91
91
  },
92
92
  "overrides": {
93
+ "@hono/node-server": "^1.19.13",
93
94
  "fast-uri": "^3.1.2",
95
+ "hono": "^4.12.18",
94
96
  "ip-address": "^10.2.0",
95
- "hono": "^4.12.18"
97
+ "path-to-regexp": "^8.4.0"
96
98
  }
97
99
  }