switchroom 0.16.38 → 0.16.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/dist/agent-scheduler/index.js +88 -82
  2. package/dist/auth-broker/index.js +87 -81
  3. package/dist/cli/autoaccept-poll.js +8 -8
  4. package/dist/cli/drive-write-pretool.mjs +10 -10
  5. package/dist/cli/notion-write-pretool.mjs +89 -83
  6. package/dist/cli/skill-validate-pretool.mjs +91 -91
  7. package/dist/cli/switchroom.js +1621 -737
  8. package/dist/cli/ui/index.html +877 -214
  9. package/dist/host-control/main.js +271 -239
  10. package/dist/vault/approvals/kernel-server.js +90 -84
  11. package/dist/vault/broker/server.js +91 -85
  12. package/examples/minimal.yaml +1 -1
  13. package/examples/switchroom.yaml +1 -1
  14. package/package.json +2 -2
  15. package/profiles/_shared/reply-discipline.md.hbs +9 -0
  16. package/skills/switchroom-status/SKILL.md +1 -1
  17. package/telegram-plugin/bridge/bridge.ts +2 -1
  18. package/telegram-plugin/card-format.ts +7 -1
  19. package/telegram-plugin/dist/bridge/bridge.js +132 -114
  20. package/telegram-plugin/dist/gateway/gateway.js +2090 -1046
  21. package/telegram-plugin/dist/server.js +180 -162
  22. package/telegram-plugin/format.ts +305 -31
  23. package/telegram-plugin/gateway/gateway.ts +262 -63
  24. package/telegram-plugin/gateway/model-command.ts +173 -19
  25. package/telegram-plugin/hooks/tool-label-pretool.d.mts +12 -0
  26. package/telegram-plugin/hooks/tool-label-pretool.mjs +54 -16
  27. package/telegram-plugin/package.json +1 -1
  28. package/telegram-plugin/session-tail.ts +47 -1
  29. package/telegram-plugin/stream-reply-handler.ts +19 -1
  30. package/telegram-plugin/tests/always-allow-grant.test.ts +34 -2
  31. package/telegram-plugin/tests/card-format.test.ts +28 -0
  32. package/telegram-plugin/tests/claude-code-event-contract.test.ts +151 -0
  33. package/telegram-plugin/tests/format-consistency.test.ts +223 -0
  34. package/telegram-plugin/tests/formatting-parse-regression.test.ts +272 -0
  35. package/telegram-plugin/tests/formatting-torture-set.ts +218 -0
  36. package/telegram-plugin/tests/model-command.test.ts +213 -47
  37. package/telegram-plugin/tests/paragraph-normalizer.test.ts +203 -21
  38. package/telegram-plugin/tests/rich-markdown-oracle.ts +469 -0
  39. package/telegram-plugin/tests/session-tail.test.ts +91 -0
  40. package/telegram-plugin/tests/status-vocabulary-unification.test.ts +125 -0
  41. package/telegram-plugin/tests/telegram-format.test.ts +33 -8
  42. package/telegram-plugin/tests/text-voice-scrub.test.ts +142 -22
  43. package/telegram-plugin/tests/tool-activity-summary.test.ts +6 -1
  44. package/telegram-plugin/tests/tts-normalize.test.ts +242 -0
  45. package/telegram-plugin/tests/vault-request-access-tool.test.ts +24 -0
  46. package/telegram-plugin/tests/voice-ondemand.test.ts +99 -2
  47. package/telegram-plugin/tests/voice-presynth.test.ts +437 -0
  48. package/telegram-plugin/tests/worker-activity-feed.test.ts +49 -0
  49. package/telegram-plugin/text-voice-scrub.ts +68 -18
  50. package/telegram-plugin/tool-activity-summary.ts +20 -108
  51. package/telegram-plugin/tts-normalize.ts +377 -0
  52. package/telegram-plugin/uat/driver.ts +472 -22
  53. package/telegram-plugin/uat/scenarios/jtbd-model-litellm-sr-dm.test.ts +34 -14
  54. package/telegram-plugin/uat/scenarios/jtbd-multipart-render-dm.test.ts +169 -0
  55. package/telegram-plugin/uat/scenarios/jtbd-narration-intent-dm.test.ts +134 -0
  56. package/telegram-plugin/uat/scenarios/jtbd-rich-formatting-render-dm.test.ts +254 -0
  57. package/telegram-plugin/uat/scenarios/jtbd-status-phase-transitions-dm.test.ts +109 -0
  58. package/telegram-plugin/uat/uat-driver.test.ts +297 -0
  59. package/telegram-plugin/voice-ondemand.ts +161 -10
  60. package/telegram-plugin/voice-presynth.ts +242 -0
  61. package/telegram-plugin/worker-activity-feed.ts +9 -1
@@ -46,7 +46,7 @@ var __export = (target, all) => {
46
46
  var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
47
47
  var __require = /* @__PURE__ */ createRequire(import.meta.url);
48
48
 
49
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/nodes/identity.js
49
+ // node_modules/yaml/dist/nodes/identity.js
50
50
  var require_identity = __commonJS((exports) => {
51
51
  var ALIAS = Symbol.for("yaml.alias");
52
52
  var DOC = Symbol.for("yaml.document");
@@ -100,7 +100,7 @@ var require_identity = __commonJS((exports) => {
100
100
  exports.isSeq = isSeq;
101
101
  });
102
102
 
103
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/visit.js
103
+ // node_modules/yaml/dist/visit.js
104
104
  var require_visit = __commonJS((exports) => {
105
105
  var identity = require_identity();
106
106
  var BREAK = Symbol("break visit");
@@ -255,7 +255,7 @@ var require_visit = __commonJS((exports) => {
255
255
  exports.visitAsync = visitAsync;
256
256
  });
257
257
 
258
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/doc/directives.js
258
+ // node_modules/yaml/dist/doc/directives.js
259
259
  var require_directives = __commonJS((exports) => {
260
260
  var identity = require_identity();
261
261
  var visit = require_visit();
@@ -407,7 +407,7 @@ var require_directives = __commonJS((exports) => {
407
407
  exports.Directives = Directives;
408
408
  });
409
409
 
410
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/doc/anchors.js
410
+ // node_modules/yaml/dist/doc/anchors.js
411
411
  var require_anchors = __commonJS((exports) => {
412
412
  var identity = require_identity();
413
413
  var visit = require_visit();
@@ -469,7 +469,7 @@ var require_anchors = __commonJS((exports) => {
469
469
  exports.findNewAnchor = findNewAnchor;
470
470
  });
471
471
 
472
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/doc/applyReviver.js
472
+ // node_modules/yaml/dist/doc/applyReviver.js
473
473
  var require_applyReviver = __commonJS((exports) => {
474
474
  function applyReviver(reviver, obj, key, val) {
475
475
  if (val && typeof val === "object") {
@@ -516,7 +516,7 @@ var require_applyReviver = __commonJS((exports) => {
516
516
  exports.applyReviver = applyReviver;
517
517
  });
518
518
 
519
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/nodes/toJS.js
519
+ // node_modules/yaml/dist/nodes/toJS.js
520
520
  var require_toJS = __commonJS((exports) => {
521
521
  var identity = require_identity();
522
522
  function toJS(value, arg, ctx) {
@@ -543,7 +543,7 @@ var require_toJS = __commonJS((exports) => {
543
543
  exports.toJS = toJS;
544
544
  });
545
545
 
546
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/nodes/Node.js
546
+ // node_modules/yaml/dist/nodes/Node.js
547
547
  var require_Node = __commonJS((exports) => {
548
548
  var applyReviver = require_applyReviver();
549
549
  var identity = require_identity();
@@ -580,7 +580,7 @@ var require_Node = __commonJS((exports) => {
580
580
  exports.NodeBase = NodeBase;
581
581
  });
582
582
 
583
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/nodes/Alias.js
583
+ // node_modules/yaml/dist/nodes/Alias.js
584
584
  var require_Alias = __commonJS((exports) => {
585
585
  var anchors = require_anchors();
586
586
  var visit = require_visit();
@@ -688,7 +688,7 @@ var require_Alias = __commonJS((exports) => {
688
688
  exports.Alias = Alias;
689
689
  });
690
690
 
691
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/nodes/Scalar.js
691
+ // node_modules/yaml/dist/nodes/Scalar.js
692
692
  var require_Scalar = __commonJS((exports) => {
693
693
  var identity = require_identity();
694
694
  var Node = require_Node();
@@ -716,7 +716,7 @@ var require_Scalar = __commonJS((exports) => {
716
716
  exports.isScalarValue = isScalarValue;
717
717
  });
718
718
 
719
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/doc/createNode.js
719
+ // node_modules/yaml/dist/doc/createNode.js
720
720
  var require_createNode = __commonJS((exports) => {
721
721
  var Alias = require_Alias();
722
722
  var identity = require_identity();
@@ -788,7 +788,7 @@ var require_createNode = __commonJS((exports) => {
788
788
  exports.createNode = createNode;
789
789
  });
790
790
 
791
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/nodes/Collection.js
791
+ // node_modules/yaml/dist/nodes/Collection.js
792
792
  var require_Collection = __commonJS((exports) => {
793
793
  var createNode = require_createNode();
794
794
  var identity = require_identity();
@@ -903,7 +903,7 @@ var require_Collection = __commonJS((exports) => {
903
903
  exports.isEmptyPath = isEmptyPath;
904
904
  });
905
905
 
906
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/stringify/stringifyComment.js
906
+ // node_modules/yaml/dist/stringify/stringifyComment.js
907
907
  var require_stringifyComment = __commonJS((exports) => {
908
908
  var stringifyComment = (str) => str.replace(/^(?!$)(?: $)?/gm, "#");
909
909
  function indentComment(comment, indent) {
@@ -920,7 +920,7 @@ var require_stringifyComment = __commonJS((exports) => {
920
920
  exports.stringifyComment = stringifyComment;
921
921
  });
922
922
 
923
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/stringify/foldFlowLines.js
923
+ // node_modules/yaml/dist/stringify/foldFlowLines.js
924
924
  var require_foldFlowLines = __commonJS((exports) => {
925
925
  var FOLD_FLOW = "flow";
926
926
  var FOLD_BLOCK = "block";
@@ -1057,7 +1057,7 @@ ${indent}${text.slice(fold + 1, end2)}`;
1057
1057
  exports.foldFlowLines = foldFlowLines;
1058
1058
  });
1059
1059
 
1060
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/stringify/stringifyString.js
1060
+ // node_modules/yaml/dist/stringify/stringifyString.js
1061
1061
  var require_stringifyString = __commonJS((exports) => {
1062
1062
  var Scalar = require_Scalar();
1063
1063
  var foldFlowLines = require_foldFlowLines();
@@ -1355,7 +1355,7 @@ ${indent}`);
1355
1355
  exports.stringifyString = stringifyString;
1356
1356
  });
1357
1357
 
1358
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/stringify/stringify.js
1358
+ // node_modules/yaml/dist/stringify/stringify.js
1359
1359
  var require_stringify = __commonJS((exports) => {
1360
1360
  var anchors = require_anchors();
1361
1361
  var identity = require_identity();
@@ -1476,7 +1476,7 @@ ${ctx.indent}${str}`;
1476
1476
  exports.stringify = stringify;
1477
1477
  });
1478
1478
 
1479
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/stringify/stringifyPair.js
1479
+ // node_modules/yaml/dist/stringify/stringifyPair.js
1480
1480
  var require_stringifyPair = __commonJS((exports) => {
1481
1481
  var identity = require_identity();
1482
1482
  var Scalar = require_Scalar();
@@ -1612,7 +1612,7 @@ ${ctx.indent}`;
1612
1612
  exports.stringifyPair = stringifyPair;
1613
1613
  });
1614
1614
 
1615
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/log.js
1615
+ // node_modules/yaml/dist/log.js
1616
1616
  var require_log = __commonJS((exports) => {
1617
1617
  var node_process = __require("process");
1618
1618
  function debug(logLevel, ...messages) {
@@ -1631,7 +1631,7 @@ var require_log = __commonJS((exports) => {
1631
1631
  exports.warn = warn;
1632
1632
  });
1633
1633
 
1634
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/yaml-1.1/merge.js
1634
+ // node_modules/yaml/dist/schema/yaml-1.1/merge.js
1635
1635
  var require_merge = __commonJS((exports) => {
1636
1636
  var identity = require_identity();
1637
1637
  var Scalar = require_Scalar();
@@ -1685,7 +1685,7 @@ var require_merge = __commonJS((exports) => {
1685
1685
  exports.merge = merge;
1686
1686
  });
1687
1687
 
1688
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/nodes/addPairToJSMap.js
1688
+ // node_modules/yaml/dist/nodes/addPairToJSMap.js
1689
1689
  var require_addPairToJSMap = __commonJS((exports) => {
1690
1690
  var log = require_log();
1691
1691
  var merge = require_merge();
@@ -1746,7 +1746,7 @@ var require_addPairToJSMap = __commonJS((exports) => {
1746
1746
  exports.addPairToJSMap = addPairToJSMap;
1747
1747
  });
1748
1748
 
1749
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/nodes/Pair.js
1749
+ // node_modules/yaml/dist/nodes/Pair.js
1750
1750
  var require_Pair = __commonJS((exports) => {
1751
1751
  var createNode = require_createNode();
1752
1752
  var stringifyPair = require_stringifyPair();
@@ -1784,7 +1784,7 @@ var require_Pair = __commonJS((exports) => {
1784
1784
  exports.createPair = createPair;
1785
1785
  });
1786
1786
 
1787
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/stringify/stringifyCollection.js
1787
+ // node_modules/yaml/dist/stringify/stringifyCollection.js
1788
1788
  var require_stringifyCollection = __commonJS((exports) => {
1789
1789
  var identity = require_identity();
1790
1790
  var stringify = require_stringify();
@@ -1936,7 +1936,7 @@ ${indent}${end}`;
1936
1936
  exports.stringifyCollection = stringifyCollection;
1937
1937
  });
1938
1938
 
1939
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/nodes/YAMLMap.js
1939
+ // node_modules/yaml/dist/nodes/YAMLMap.js
1940
1940
  var require_YAMLMap = __commonJS((exports) => {
1941
1941
  var stringifyCollection = require_stringifyCollection();
1942
1942
  var addPairToJSMap = require_addPairToJSMap();
@@ -2063,7 +2063,7 @@ var require_YAMLMap = __commonJS((exports) => {
2063
2063
  exports.findPair = findPair;
2064
2064
  });
2065
2065
 
2066
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/common/map.js
2066
+ // node_modules/yaml/dist/schema/common/map.js
2067
2067
  var require_map = __commonJS((exports) => {
2068
2068
  var identity = require_identity();
2069
2069
  var YAMLMap = require_YAMLMap();
@@ -2082,7 +2082,7 @@ var require_map = __commonJS((exports) => {
2082
2082
  exports.map = map;
2083
2083
  });
2084
2084
 
2085
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/nodes/YAMLSeq.js
2085
+ // node_modules/yaml/dist/nodes/YAMLSeq.js
2086
2086
  var require_YAMLSeq = __commonJS((exports) => {
2087
2087
  var createNode = require_createNode();
2088
2088
  var stringifyCollection = require_stringifyCollection();
@@ -2175,7 +2175,7 @@ var require_YAMLSeq = __commonJS((exports) => {
2175
2175
  exports.YAMLSeq = YAMLSeq;
2176
2176
  });
2177
2177
 
2178
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/common/seq.js
2178
+ // node_modules/yaml/dist/schema/common/seq.js
2179
2179
  var require_seq = __commonJS((exports) => {
2180
2180
  var identity = require_identity();
2181
2181
  var YAMLSeq = require_YAMLSeq();
@@ -2194,7 +2194,7 @@ var require_seq = __commonJS((exports) => {
2194
2194
  exports.seq = seq;
2195
2195
  });
2196
2196
 
2197
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/common/string.js
2197
+ // node_modules/yaml/dist/schema/common/string.js
2198
2198
  var require_string = __commonJS((exports) => {
2199
2199
  var stringifyString = require_stringifyString();
2200
2200
  var string = {
@@ -2210,7 +2210,7 @@ var require_string = __commonJS((exports) => {
2210
2210
  exports.string = string;
2211
2211
  });
2212
2212
 
2213
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/common/null.js
2213
+ // node_modules/yaml/dist/schema/common/null.js
2214
2214
  var require_null = __commonJS((exports) => {
2215
2215
  var Scalar = require_Scalar();
2216
2216
  var nullTag = {
@@ -2225,7 +2225,7 @@ var require_null = __commonJS((exports) => {
2225
2225
  exports.nullTag = nullTag;
2226
2226
  });
2227
2227
 
2228
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/core/bool.js
2228
+ // node_modules/yaml/dist/schema/core/bool.js
2229
2229
  var require_bool = __commonJS((exports) => {
2230
2230
  var Scalar = require_Scalar();
2231
2231
  var boolTag = {
@@ -2246,7 +2246,7 @@ var require_bool = __commonJS((exports) => {
2246
2246
  exports.boolTag = boolTag;
2247
2247
  });
2248
2248
 
2249
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/stringify/stringifyNumber.js
2249
+ // node_modules/yaml/dist/stringify/stringifyNumber.js
2250
2250
  var require_stringifyNumber = __commonJS((exports) => {
2251
2251
  function stringifyNumber({ format, minFractionDigits, tag, value }) {
2252
2252
  if (typeof value === "bigint")
@@ -2270,7 +2270,7 @@ var require_stringifyNumber = __commonJS((exports) => {
2270
2270
  exports.stringifyNumber = stringifyNumber;
2271
2271
  });
2272
2272
 
2273
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/core/float.js
2273
+ // node_modules/yaml/dist/schema/core/float.js
2274
2274
  var require_float = __commonJS((exports) => {
2275
2275
  var Scalar = require_Scalar();
2276
2276
  var stringifyNumber = require_stringifyNumber();
@@ -2313,7 +2313,7 @@ var require_float = __commonJS((exports) => {
2313
2313
  exports.floatNaN = floatNaN;
2314
2314
  });
2315
2315
 
2316
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/core/int.js
2316
+ // node_modules/yaml/dist/schema/core/int.js
2317
2317
  var require_int = __commonJS((exports) => {
2318
2318
  var stringifyNumber = require_stringifyNumber();
2319
2319
  var intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value);
@@ -2355,7 +2355,7 @@ var require_int = __commonJS((exports) => {
2355
2355
  exports.intOct = intOct;
2356
2356
  });
2357
2357
 
2358
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/core/schema.js
2358
+ // node_modules/yaml/dist/schema/core/schema.js
2359
2359
  var require_schema = __commonJS((exports) => {
2360
2360
  var map = require_map();
2361
2361
  var _null = require_null();
@@ -2380,7 +2380,7 @@ var require_schema = __commonJS((exports) => {
2380
2380
  exports.schema = schema;
2381
2381
  });
2382
2382
 
2383
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/json/schema.js
2383
+ // node_modules/yaml/dist/schema/json/schema.js
2384
2384
  var require_schema2 = __commonJS((exports) => {
2385
2385
  var Scalar = require_Scalar();
2386
2386
  var map = require_map();
@@ -2444,7 +2444,7 @@ var require_schema2 = __commonJS((exports) => {
2444
2444
  exports.schema = schema;
2445
2445
  });
2446
2446
 
2447
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/yaml-1.1/binary.js
2447
+ // node_modules/yaml/dist/schema/yaml-1.1/binary.js
2448
2448
  var require_binary = __commonJS((exports) => {
2449
2449
  var node_buffer = __require("buffer");
2450
2450
  var Scalar = require_Scalar();
@@ -2499,7 +2499,7 @@ var require_binary = __commonJS((exports) => {
2499
2499
  exports.binary = binary;
2500
2500
  });
2501
2501
 
2502
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/yaml-1.1/pairs.js
2502
+ // node_modules/yaml/dist/schema/yaml-1.1/pairs.js
2503
2503
  var require_pairs = __commonJS((exports) => {
2504
2504
  var identity = require_identity();
2505
2505
  var Pair = require_Pair();
@@ -2574,7 +2574,7 @@ ${cn.comment}` : item.comment;
2574
2574
  exports.resolvePairs = resolvePairs;
2575
2575
  });
2576
2576
 
2577
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/yaml-1.1/omap.js
2577
+ // node_modules/yaml/dist/schema/yaml-1.1/omap.js
2578
2578
  var require_omap = __commonJS((exports) => {
2579
2579
  var identity = require_identity();
2580
2580
  var toJS = require_toJS();
@@ -2646,7 +2646,7 @@ var require_omap = __commonJS((exports) => {
2646
2646
  exports.omap = omap;
2647
2647
  });
2648
2648
 
2649
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/yaml-1.1/bool.js
2649
+ // node_modules/yaml/dist/schema/yaml-1.1/bool.js
2650
2650
  var require_bool2 = __commonJS((exports) => {
2651
2651
  var Scalar = require_Scalar();
2652
2652
  function boolStringify({ value, source }, ctx) {
@@ -2675,7 +2675,7 @@ var require_bool2 = __commonJS((exports) => {
2675
2675
  exports.trueTag = trueTag;
2676
2676
  });
2677
2677
 
2678
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/yaml-1.1/float.js
2678
+ // node_modules/yaml/dist/schema/yaml-1.1/float.js
2679
2679
  var require_float2 = __commonJS((exports) => {
2680
2680
  var Scalar = require_Scalar();
2681
2681
  var stringifyNumber = require_stringifyNumber();
@@ -2721,7 +2721,7 @@ var require_float2 = __commonJS((exports) => {
2721
2721
  exports.floatNaN = floatNaN;
2722
2722
  });
2723
2723
 
2724
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/yaml-1.1/int.js
2724
+ // node_modules/yaml/dist/schema/yaml-1.1/int.js
2725
2725
  var require_int2 = __commonJS((exports) => {
2726
2726
  var stringifyNumber = require_stringifyNumber();
2727
2727
  var intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value);
@@ -2797,7 +2797,7 @@ var require_int2 = __commonJS((exports) => {
2797
2797
  exports.intOct = intOct;
2798
2798
  });
2799
2799
 
2800
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/yaml-1.1/set.js
2800
+ // node_modules/yaml/dist/schema/yaml-1.1/set.js
2801
2801
  var require_set = __commonJS((exports) => {
2802
2802
  var identity = require_identity();
2803
2803
  var Pair = require_Pair();
@@ -2880,7 +2880,7 @@ var require_set = __commonJS((exports) => {
2880
2880
  exports.set = set;
2881
2881
  });
2882
2882
 
2883
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js
2883
+ // node_modules/yaml/dist/schema/yaml-1.1/timestamp.js
2884
2884
  var require_timestamp = __commonJS((exports) => {
2885
2885
  var stringifyNumber = require_stringifyNumber();
2886
2886
  function parseSexagesimal(str, asBigInt) {
@@ -2962,7 +2962,7 @@ var require_timestamp = __commonJS((exports) => {
2962
2962
  exports.timestamp = timestamp;
2963
2963
  });
2964
2964
 
2965
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/yaml-1.1/schema.js
2965
+ // node_modules/yaml/dist/schema/yaml-1.1/schema.js
2966
2966
  var require_schema3 = __commonJS((exports) => {
2967
2967
  var map = require_map();
2968
2968
  var _null = require_null();
@@ -3003,7 +3003,7 @@ var require_schema3 = __commonJS((exports) => {
3003
3003
  exports.schema = schema;
3004
3004
  });
3005
3005
 
3006
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/tags.js
3006
+ // node_modules/yaml/dist/schema/tags.js
3007
3007
  var require_tags = __commonJS((exports) => {
3008
3008
  var map = require_map();
3009
3009
  var _null = require_null();
@@ -3094,7 +3094,7 @@ var require_tags = __commonJS((exports) => {
3094
3094
  exports.getTags = getTags;
3095
3095
  });
3096
3096
 
3097
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/schema/Schema.js
3097
+ // node_modules/yaml/dist/schema/Schema.js
3098
3098
  var require_Schema = __commonJS((exports) => {
3099
3099
  var identity = require_identity();
3100
3100
  var map = require_map();
@@ -3124,7 +3124,7 @@ var require_Schema = __commonJS((exports) => {
3124
3124
  exports.Schema = Schema;
3125
3125
  });
3126
3126
 
3127
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/stringify/stringifyDocument.js
3127
+ // node_modules/yaml/dist/stringify/stringifyDocument.js
3128
3128
  var require_stringifyDocument = __commonJS((exports) => {
3129
3129
  var identity = require_identity();
3130
3130
  var stringify = require_stringify();
@@ -3204,7 +3204,7 @@ var require_stringifyDocument = __commonJS((exports) => {
3204
3204
  exports.stringifyDocument = stringifyDocument;
3205
3205
  });
3206
3206
 
3207
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/doc/Document.js
3207
+ // node_modules/yaml/dist/doc/Document.js
3208
3208
  var require_Document = __commonJS((exports) => {
3209
3209
  var Alias = require_Alias();
3210
3210
  var Collection = require_Collection();
@@ -3439,7 +3439,7 @@ var require_Document = __commonJS((exports) => {
3439
3439
  exports.Document = Document;
3440
3440
  });
3441
3441
 
3442
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/errors.js
3442
+ // node_modules/yaml/dist/errors.js
3443
3443
  var require_errors = __commonJS((exports) => {
3444
3444
  class YAMLError extends Error {
3445
3445
  constructor(name, pos, code, message) {
@@ -3504,7 +3504,7 @@ ${pointer}
3504
3504
  exports.prettifyError = prettifyError;
3505
3505
  });
3506
3506
 
3507
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/resolve-props.js
3507
+ // node_modules/yaml/dist/compose/resolve-props.js
3508
3508
  var require_resolve_props = __commonJS((exports) => {
3509
3509
  function resolveProps(tokens, { flow, indicator, next, offset, onError, parentIndent, startOnNewline }) {
3510
3510
  let spaceBefore = false;
@@ -3634,7 +3634,7 @@ var require_resolve_props = __commonJS((exports) => {
3634
3634
  exports.resolveProps = resolveProps;
3635
3635
  });
3636
3636
 
3637
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/util-contains-newline.js
3637
+ // node_modules/yaml/dist/compose/util-contains-newline.js
3638
3638
  var require_util_contains_newline = __commonJS((exports) => {
3639
3639
  function containsNewline(key) {
3640
3640
  if (!key)
@@ -3674,7 +3674,7 @@ var require_util_contains_newline = __commonJS((exports) => {
3674
3674
  exports.containsNewline = containsNewline;
3675
3675
  });
3676
3676
 
3677
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/util-flow-indent-check.js
3677
+ // node_modules/yaml/dist/compose/util-flow-indent-check.js
3678
3678
  var require_util_flow_indent_check = __commonJS((exports) => {
3679
3679
  var utilContainsNewline = require_util_contains_newline();
3680
3680
  function flowIndentCheck(indent, fc, onError) {
@@ -3689,7 +3689,7 @@ var require_util_flow_indent_check = __commonJS((exports) => {
3689
3689
  exports.flowIndentCheck = flowIndentCheck;
3690
3690
  });
3691
3691
 
3692
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/util-map-includes.js
3692
+ // node_modules/yaml/dist/compose/util-map-includes.js
3693
3693
  var require_util_map_includes = __commonJS((exports) => {
3694
3694
  var identity = require_identity();
3695
3695
  function mapIncludes(ctx, items, search) {
@@ -3702,7 +3702,7 @@ var require_util_map_includes = __commonJS((exports) => {
3702
3702
  exports.mapIncludes = mapIncludes;
3703
3703
  });
3704
3704
 
3705
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/resolve-block-map.js
3705
+ // node_modules/yaml/dist/compose/resolve-block-map.js
3706
3706
  var require_resolve_block_map = __commonJS((exports) => {
3707
3707
  var Pair = require_Pair();
3708
3708
  var YAMLMap = require_YAMLMap();
@@ -3809,7 +3809,7 @@ var require_resolve_block_map = __commonJS((exports) => {
3809
3809
  exports.resolveBlockMap = resolveBlockMap;
3810
3810
  });
3811
3811
 
3812
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/resolve-block-seq.js
3812
+ // node_modules/yaml/dist/compose/resolve-block-seq.js
3813
3813
  var require_resolve_block_seq = __commonJS((exports) => {
3814
3814
  var YAMLSeq = require_YAMLSeq();
3815
3815
  var resolveProps = require_resolve_props();
@@ -3857,7 +3857,7 @@ var require_resolve_block_seq = __commonJS((exports) => {
3857
3857
  exports.resolveBlockSeq = resolveBlockSeq;
3858
3858
  });
3859
3859
 
3860
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/resolve-end.js
3860
+ // node_modules/yaml/dist/compose/resolve-end.js
3861
3861
  var require_resolve_end = __commonJS((exports) => {
3862
3862
  function resolveEnd(end, offset, reqSpace, onError) {
3863
3863
  let comment = "";
@@ -3897,7 +3897,7 @@ var require_resolve_end = __commonJS((exports) => {
3897
3897
  exports.resolveEnd = resolveEnd;
3898
3898
  });
3899
3899
 
3900
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/resolve-flow-collection.js
3900
+ // node_modules/yaml/dist/compose/resolve-flow-collection.js
3901
3901
  var require_resolve_flow_collection = __commonJS((exports) => {
3902
3902
  var identity = require_identity();
3903
3903
  var Pair = require_Pair();
@@ -4088,7 +4088,7 @@ var require_resolve_flow_collection = __commonJS((exports) => {
4088
4088
  exports.resolveFlowCollection = resolveFlowCollection;
4089
4089
  });
4090
4090
 
4091
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/compose-collection.js
4091
+ // node_modules/yaml/dist/compose/compose-collection.js
4092
4092
  var require_compose_collection = __commonJS((exports) => {
4093
4093
  var identity = require_identity();
4094
4094
  var Scalar = require_Scalar();
@@ -4150,7 +4150,7 @@ var require_compose_collection = __commonJS((exports) => {
4150
4150
  exports.composeCollection = composeCollection;
4151
4151
  });
4152
4152
 
4153
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/resolve-block-scalar.js
4153
+ // node_modules/yaml/dist/compose/resolve-block-scalar.js
4154
4154
  var require_resolve_block_scalar = __commonJS((exports) => {
4155
4155
  var Scalar = require_Scalar();
4156
4156
  function resolveBlockScalar(ctx, scalar, onError) {
@@ -4343,7 +4343,7 @@ var require_resolve_block_scalar = __commonJS((exports) => {
4343
4343
  exports.resolveBlockScalar = resolveBlockScalar;
4344
4344
  });
4345
4345
 
4346
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/resolve-flow-scalar.js
4346
+ // node_modules/yaml/dist/compose/resolve-flow-scalar.js
4347
4347
  var require_resolve_flow_scalar = __commonJS((exports) => {
4348
4348
  var Scalar = require_Scalar();
4349
4349
  var resolveEnd = require_resolve_end();
@@ -4559,7 +4559,7 @@ var require_resolve_flow_scalar = __commonJS((exports) => {
4559
4559
  exports.resolveFlowScalar = resolveFlowScalar;
4560
4560
  });
4561
4561
 
4562
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/compose-scalar.js
4562
+ // node_modules/yaml/dist/compose/compose-scalar.js
4563
4563
  var require_compose_scalar = __commonJS((exports) => {
4564
4564
  var identity = require_identity();
4565
4565
  var Scalar = require_Scalar();
@@ -4637,7 +4637,7 @@ var require_compose_scalar = __commonJS((exports) => {
4637
4637
  exports.composeScalar = composeScalar;
4638
4638
  });
4639
4639
 
4640
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/util-empty-scalar-position.js
4640
+ // node_modules/yaml/dist/compose/util-empty-scalar-position.js
4641
4641
  var require_util_empty_scalar_position = __commonJS((exports) => {
4642
4642
  function emptyScalarPosition(offset, before, pos) {
4643
4643
  if (before) {
@@ -4664,7 +4664,7 @@ var require_util_empty_scalar_position = __commonJS((exports) => {
4664
4664
  exports.emptyScalarPosition = emptyScalarPosition;
4665
4665
  });
4666
4666
 
4667
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/compose-node.js
4667
+ // node_modules/yaml/dist/compose/compose-node.js
4668
4668
  var require_compose_node = __commonJS((exports) => {
4669
4669
  var Alias = require_Alias();
4670
4670
  var identity = require_identity();
@@ -4767,7 +4767,7 @@ var require_compose_node = __commonJS((exports) => {
4767
4767
  exports.composeNode = composeNode;
4768
4768
  });
4769
4769
 
4770
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/compose-doc.js
4770
+ // node_modules/yaml/dist/compose/compose-doc.js
4771
4771
  var require_compose_doc = __commonJS((exports) => {
4772
4772
  var Document = require_Document();
4773
4773
  var composeNode = require_compose_node();
@@ -4807,7 +4807,7 @@ var require_compose_doc = __commonJS((exports) => {
4807
4807
  exports.composeDoc = composeDoc;
4808
4808
  });
4809
4809
 
4810
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/compose/composer.js
4810
+ // node_modules/yaml/dist/compose/composer.js
4811
4811
  var require_composer = __commonJS((exports) => {
4812
4812
  var node_process = __require("process");
4813
4813
  var directives = require_directives();
@@ -4996,7 +4996,7 @@ ${end.comment}` : end.comment;
4996
4996
  exports.Composer = Composer;
4997
4997
  });
4998
4998
 
4999
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/parse/cst-scalar.js
4999
+ // node_modules/yaml/dist/parse/cst-scalar.js
5000
5000
  var require_cst_scalar = __commonJS((exports) => {
5001
5001
  var resolveBlockScalar = require_resolve_block_scalar();
5002
5002
  var resolveFlowScalar = require_resolve_flow_scalar();
@@ -5186,7 +5186,7 @@ var require_cst_scalar = __commonJS((exports) => {
5186
5186
  exports.setScalarValue = setScalarValue;
5187
5187
  });
5188
5188
 
5189
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/parse/cst-stringify.js
5189
+ // node_modules/yaml/dist/parse/cst-stringify.js
5190
5190
  var require_cst_stringify = __commonJS((exports) => {
5191
5191
  var stringify = (cst) => ("type" in cst) ? stringifyToken(cst) : stringifyItem(cst);
5192
5192
  function stringifyToken(token) {
@@ -5244,7 +5244,7 @@ var require_cst_stringify = __commonJS((exports) => {
5244
5244
  exports.stringify = stringify;
5245
5245
  });
5246
5246
 
5247
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/parse/cst-visit.js
5247
+ // node_modules/yaml/dist/parse/cst-visit.js
5248
5248
  var require_cst_visit = __commonJS((exports) => {
5249
5249
  var BREAK = Symbol("break visit");
5250
5250
  var SKIP = Symbol("skip children");
@@ -5303,7 +5303,7 @@ var require_cst_visit = __commonJS((exports) => {
5303
5303
  exports.visit = visit;
5304
5304
  });
5305
5305
 
5306
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/parse/cst.js
5306
+ // node_modules/yaml/dist/parse/cst.js
5307
5307
  var require_cst = __commonJS((exports) => {
5308
5308
  var cstScalar = require_cst_scalar();
5309
5309
  var cstStringify = require_cst_stringify();
@@ -5404,7 +5404,7 @@ var require_cst = __commonJS((exports) => {
5404
5404
  exports.tokenType = tokenType;
5405
5405
  });
5406
5406
 
5407
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/parse/lexer.js
5407
+ // node_modules/yaml/dist/parse/lexer.js
5408
5408
  var require_lexer = __commonJS((exports) => {
5409
5409
  var cst = require_cst();
5410
5410
  function isEmpty(ch) {
@@ -5990,7 +5990,7 @@ var require_lexer = __commonJS((exports) => {
5990
5990
  exports.Lexer = Lexer;
5991
5991
  });
5992
5992
 
5993
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/parse/line-counter.js
5993
+ // node_modules/yaml/dist/parse/line-counter.js
5994
5994
  var require_line_counter = __commonJS((exports) => {
5995
5995
  class LineCounter {
5996
5996
  constructor() {
@@ -6018,7 +6018,7 @@ var require_line_counter = __commonJS((exports) => {
6018
6018
  exports.LineCounter = LineCounter;
6019
6019
  });
6020
6020
 
6021
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/parse/parser.js
6021
+ // node_modules/yaml/dist/parse/parser.js
6022
6022
  var require_parser = __commonJS((exports) => {
6023
6023
  var node_process = __require("process");
6024
6024
  var cst = require_cst();
@@ -6867,7 +6867,7 @@ var require_parser = __commonJS((exports) => {
6867
6867
  exports.Parser = Parser;
6868
6868
  });
6869
6869
 
6870
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/public-api.js
6870
+ // node_modules/yaml/dist/public-api.js
6871
6871
  var require_public_api = __commonJS((exports) => {
6872
6872
  var composer = require_composer();
6873
6873
  var Document = require_Document();
@@ -6961,6 +6961,55 @@ var require_public_api = __commonJS((exports) => {
6961
6961
  exports.stringify = stringify;
6962
6962
  });
6963
6963
 
6964
+ // node_modules/yaml/dist/index.js
6965
+ var require_dist = __commonJS((exports) => {
6966
+ var composer = require_composer();
6967
+ var Document = require_Document();
6968
+ var Schema = require_Schema();
6969
+ var errors = require_errors();
6970
+ var Alias = require_Alias();
6971
+ var identity = require_identity();
6972
+ var Pair = require_Pair();
6973
+ var Scalar = require_Scalar();
6974
+ var YAMLMap = require_YAMLMap();
6975
+ var YAMLSeq = require_YAMLSeq();
6976
+ var cst = require_cst();
6977
+ var lexer = require_lexer();
6978
+ var lineCounter = require_line_counter();
6979
+ var parser = require_parser();
6980
+ var publicApi = require_public_api();
6981
+ var visit = require_visit();
6982
+ exports.Composer = composer.Composer;
6983
+ exports.Document = Document.Document;
6984
+ exports.Schema = Schema.Schema;
6985
+ exports.YAMLError = errors.YAMLError;
6986
+ exports.YAMLParseError = errors.YAMLParseError;
6987
+ exports.YAMLWarning = errors.YAMLWarning;
6988
+ exports.Alias = Alias.Alias;
6989
+ exports.isAlias = identity.isAlias;
6990
+ exports.isCollection = identity.isCollection;
6991
+ exports.isDocument = identity.isDocument;
6992
+ exports.isMap = identity.isMap;
6993
+ exports.isNode = identity.isNode;
6994
+ exports.isPair = identity.isPair;
6995
+ exports.isScalar = identity.isScalar;
6996
+ exports.isSeq = identity.isSeq;
6997
+ exports.Pair = Pair.Pair;
6998
+ exports.Scalar = Scalar.Scalar;
6999
+ exports.YAMLMap = YAMLMap.YAMLMap;
7000
+ exports.YAMLSeq = YAMLSeq.YAMLSeq;
7001
+ exports.CST = cst;
7002
+ exports.Lexer = lexer.Lexer;
7003
+ exports.LineCounter = lineCounter.LineCounter;
7004
+ exports.Parser = parser.Parser;
7005
+ exports.parse = publicApi.parse;
7006
+ exports.parseAllDocuments = publicApi.parseAllDocuments;
7007
+ exports.parseDocument = publicApi.parseDocument;
7008
+ exports.stringify = publicApi.stringify;
7009
+ exports.visit = visit.visit;
7010
+ exports.visitAsync = visit.visitAsync;
7011
+ });
7012
+
6964
7013
  // telegram-plugin/secret-detect/suppressor.ts
6965
7014
  function isSuppressed(text, start, end) {
6966
7015
  const left = Math.max(0, start - WINDOW);
@@ -7001,7 +7050,7 @@ function deriveSlug(inputs, existing) {
7001
7050
  return `${base}_${n}`;
7002
7051
  }
7003
7052
 
7004
- // node_modules/.bun/boundary@2.0.0/node_modules/boundary/lib/index.js
7053
+ // node_modules/boundary/lib/index.js
7005
7054
  var require_lib = __commonJS((exports2) => {
7006
7055
  Object.defineProperty(exports2, "__esModule", { value: true });
7007
7056
  exports2.binarySearch = exports2.upperBound = exports2.lowerBound = exports2.compare = undefined;
@@ -7048,7 +7097,7 @@ var require_lib = __commonJS((exports2) => {
7048
7097
  exports2.binarySearch = binarySearch;
7049
7098
  });
7050
7099
 
7051
- // node_modules/.bun/structured-source@4.0.0/node_modules/structured-source/lib/structured-source.js
7100
+ // node_modules/structured-source/lib/structured-source.js
7052
7101
  var require_structured_source = __commonJS((exports2) => {
7053
7102
  Object.defineProperty(exports2, "__esModule", { value: true });
7054
7103
  exports2.StructuredSource = undefined;
@@ -7103,13 +7152,13 @@ var require_structured_source = __commonJS((exports2) => {
7103
7152
  }
7104
7153
  exports2.StructuredSource = StructuredSource;
7105
7154
  });
7106
- // node_modules/.bun/@secretlint+core@12.2.0/node_modules/@secretlint/core/module/SecretLintSourceCodeImpl.js
7155
+ // node_modules/@secretlint/core/module/SecretLintSourceCodeImpl.js
7107
7156
  var import_structured_source;
7108
7157
  var init_SecretLintSourceCodeImpl = __esm(() => {
7109
7158
  import_structured_source = __toESM(require_structured_source(), 1);
7110
7159
  });
7111
7160
 
7112
- // node_modules/.bun/@secretlint+core@12.2.0/node_modules/@secretlint/core/module/helper/promise-event-emitter.js
7161
+ // node_modules/@secretlint/core/module/helper/promise-event-emitter.js
7113
7162
  class EventEmitter {
7114
7163
  #listeners = new Map;
7115
7164
  on(type, listener) {
@@ -7148,9 +7197,9 @@ class EventEmitter {
7148
7197
  return Array.from(this.#listeners.get(type) ?? []);
7149
7198
  }
7150
7199
  }
7151
- // node_modules/.bun/@secretlint+core@12.2.0/node_modules/@secretlint/core/module/RuleContext.js
7200
+ // node_modules/@secretlint/core/module/RuleContext.js
7152
7201
  var init_RuleContext = () => {};
7153
- // node_modules/.bun/@secretlint+profiler@12.2.0/node_modules/@secretlint/profiler/module/index.js
7202
+ // node_modules/@secretlint/profiler/module/index.js
7154
7203
  class SecretLintProfiler {
7155
7204
  perf;
7156
7205
  entries = [];
@@ -7207,7 +7256,7 @@ class SecretLintProfiler {
7207
7256
  }
7208
7257
  }
7209
7258
 
7210
- // node_modules/.bun/@secretlint+profiler@12.2.0/node_modules/@secretlint/profiler/module/node.js
7259
+ // node_modules/@secretlint/profiler/module/node.js
7211
7260
  import perf_hooks from "node:perf_hooks";
7212
7261
 
7213
7262
  class NullPerformanceObserver {
@@ -7222,19 +7271,19 @@ var init_node = __esm(() => {
7222
7271
  });
7223
7272
  });
7224
7273
 
7225
- // node_modules/.bun/@secretlint+core@12.2.0/node_modules/@secretlint/core/module/RunningEvents.js
7274
+ // node_modules/@secretlint/core/module/RunningEvents.js
7226
7275
  var init_RunningEvents = __esm(() => {
7227
7276
  init_node();
7228
7277
  });
7229
7278
 
7230
- // node_modules/.bun/@secretlint+core@12.2.0/node_modules/@secretlint/core/module/RulePresetContext.js
7279
+ // node_modules/@secretlint/core/module/RulePresetContext.js
7231
7280
  var init_RulePresetContext = __esm(() => {
7232
7281
  init_RuleContext();
7233
7282
  });
7234
- // node_modules/.bun/@secretlint+core@12.2.0/node_modules/@secretlint/core/module/messages/index.js
7283
+ // node_modules/@secretlint/core/module/messages/index.js
7235
7284
  var init_messages = () => {};
7236
7285
 
7237
- // node_modules/.bun/ms@2.1.3/node_modules/ms/index.js
7286
+ // node_modules/ms/index.js
7238
7287
  var require_ms = __commonJS((exports2, module) => {
7239
7288
  var s = 1000;
7240
7289
  var m = s * 60;
@@ -7344,7 +7393,7 @@ var require_ms = __commonJS((exports2, module) => {
7344
7393
  }
7345
7394
  });
7346
7395
 
7347
- // node_modules/.bun/debug@4.4.3/node_modules/debug/src/common.js
7396
+ // node_modules/debug/src/common.js
7348
7397
  var require_common = __commonJS((exports2, module) => {
7349
7398
  function setup(env) {
7350
7399
  createDebug.debug = createDebug;
@@ -7519,7 +7568,7 @@ var require_common = __commonJS((exports2, module) => {
7519
7568
  module.exports = setup;
7520
7569
  });
7521
7570
 
7522
- // node_modules/.bun/debug@4.4.3/node_modules/debug/src/browser.js
7571
+ // node_modules/debug/src/browser.js
7523
7572
  var require_browser = __commonJS((exports2, module) => {
7524
7573
  exports2.formatArgs = formatArgs;
7525
7574
  exports2.save = save;
@@ -7679,7 +7728,7 @@ var require_browser = __commonJS((exports2, module) => {
7679
7728
  };
7680
7729
  });
7681
7730
 
7682
- // node_modules/.bun/has-flag@4.0.0/node_modules/has-flag/index.js
7731
+ // node_modules/has-flag/index.js
7683
7732
  var require_has_flag = __commonJS((exports2, module) => {
7684
7733
  module.exports = (flag, argv = process.argv) => {
7685
7734
  const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
@@ -7689,7 +7738,7 @@ var require_has_flag = __commonJS((exports2, module) => {
7689
7738
  };
7690
7739
  });
7691
7740
 
7692
- // node_modules/.bun/supports-color@7.2.0/node_modules/supports-color/index.js
7741
+ // node_modules/supports-color/index.js
7693
7742
  var require_supports_color = __commonJS((exports2, module) => {
7694
7743
  var os = __require("os");
7695
7744
  var tty = __require("tty");
@@ -7788,7 +7837,7 @@ var require_supports_color = __commonJS((exports2, module) => {
7788
7837
  };
7789
7838
  });
7790
7839
 
7791
- // node_modules/.bun/debug@4.4.3/node_modules/debug/src/node.js
7840
+ // node_modules/debug/src/node.js
7792
7841
  var require_node = __commonJS((exports2, module) => {
7793
7842
  var tty = __require("tty");
7794
7843
  var util3 = __require("util");
@@ -7959,7 +8008,7 @@ var require_node = __commonJS((exports2, module) => {
7959
8008
  };
7960
8009
  });
7961
8010
 
7962
- // node_modules/.bun/debug@4.4.3/node_modules/debug/src/index.js
8011
+ // node_modules/debug/src/index.js
7963
8012
  var require_src = __commonJS((exports2, module) => {
7964
8013
  if (typeof process === "undefined" || process.type === "renderer" || false || process.__nwjs) {
7965
8014
  module.exports = require_browser();
@@ -7968,7 +8017,7 @@ var require_src = __commonJS((exports2, module) => {
7968
8017
  }
7969
8018
  });
7970
8019
 
7971
- // node_modules/.bun/@secretlint+core@12.2.0/node_modules/@secretlint/core/module/index.js
8020
+ // node_modules/@secretlint/core/module/index.js
7972
8021
  var import_debug, debug;
7973
8022
  var init_module = __esm(() => {
7974
8023
  init_SecretLintSourceCodeImpl();
@@ -7981,7 +8030,7 @@ var init_module = __esm(() => {
7981
8030
  debug = import_debug.default("@secretlint/core");
7982
8031
  });
7983
8032
 
7984
- // node_modules/.bun/@secretlint+secretlint-rule-preset-recommend@12.2.0/node_modules/@secretlint/secretlint-rule-preset-recommend/module/index.js
8033
+ // node_modules/@secretlint/secretlint-rule-preset-recommend/module/index.js
7985
8034
  function requireLodash_uniq() {
7986
8035
  if (hasRequiredLodash_uniq)
7987
8036
  return lodash_uniq;
@@ -9037,7 +9086,7 @@ function requireLodash_sortby() {
9037
9086
  return value;
9038
9087
  }
9039
9088
  if (value == null) {
9040
- return identity2;
9089
+ return identity;
9041
9090
  }
9042
9091
  if (typeof value == "object") {
9043
9092
  return isArray2(value) ? baseMatchesProperty(value[0], value[1]) : baseMatches(value);
@@ -9083,7 +9132,7 @@ function requireLodash_sortby() {
9083
9132
  }
9084
9133
  function baseOrderBy(collection, iteratees, orders) {
9085
9134
  var index = -1;
9086
- iteratees = arrayMap(iteratees.length ? iteratees : [identity2], baseUnary(baseIteratee));
9135
+ iteratees = arrayMap(iteratees.length ? iteratees : [identity], baseUnary(baseIteratee));
9087
9136
  var result = baseMap(collection, function(value, key, collection2) {
9088
9137
  var criteria = arrayMap(iteratees, function(iteratee) {
9089
9138
  return iteratee(value);
@@ -9518,7 +9567,7 @@ function requireLodash_sortby() {
9518
9567
  function keys(object) {
9519
9568
  return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);
9520
9569
  }
9521
- function identity2(value) {
9570
+ function identity(value) {
9522
9571
  return value;
9523
9572
  }
9524
9573
  function property(path) {
@@ -9664,7 +9713,14 @@ var init_secretlint_source = __esm(() => {
9664
9713
  init_suppressor();
9665
9714
  });
9666
9715
 
9667
- // node_modules/.bun/commander@13.1.0/node_modules/commander/lib/error.js
9716
+ // src/util/atomic.ts
9717
+ import { closeSync as closeSync2, constants, fsyncSync, openSync as openSync2, renameSync, rmSync, writeSync } from "node:fs";
9718
+ var TMP_OPEN_FLAGS;
9719
+ var init_atomic = __esm(() => {
9720
+ TMP_OPEN_FLAGS = constants.O_WRONLY | constants.O_CREAT | constants.O_EXCL | (constants.O_NOFOLLOW ?? 0);
9721
+ });
9722
+
9723
+ // node_modules/commander/lib/error.js
9668
9724
  var require_error = __commonJS((exports2) => {
9669
9725
  class CommanderError extends Error {
9670
9726
  constructor(exitCode, code, message) {
@@ -9688,7 +9744,7 @@ var require_error = __commonJS((exports2) => {
9688
9744
  exports2.InvalidArgumentError = InvalidArgumentError;
9689
9745
  });
9690
9746
 
9691
- // node_modules/.bun/commander@13.1.0/node_modules/commander/lib/argument.js
9747
+ // node_modules/commander/lib/argument.js
9692
9748
  var require_argument = __commonJS((exports2) => {
9693
9749
  var { InvalidArgumentError } = require_error();
9694
9750
 
@@ -9767,7 +9823,7 @@ var require_argument = __commonJS((exports2) => {
9767
9823
  exports2.humanReadableArgName = humanReadableArgName;
9768
9824
  });
9769
9825
 
9770
- // node_modules/.bun/commander@13.1.0/node_modules/commander/lib/help.js
9826
+ // node_modules/commander/lib/help.js
9771
9827
  var require_help = __commonJS((exports2) => {
9772
9828
  var { humanReadableArgName } = require_argument();
9773
9829
 
@@ -10117,7 +10173,7 @@ ${itemIndentStr}`);
10117
10173
  exports2.stripColor = stripColor;
10118
10174
  });
10119
10175
 
10120
- // node_modules/.bun/commander@13.1.0/node_modules/commander/lib/option.js
10176
+ // node_modules/commander/lib/option.js
10121
10177
  var require_option = __commonJS((exports2) => {
10122
10178
  var { InvalidArgumentError } = require_error();
10123
10179
 
@@ -10295,7 +10351,7 @@ var require_option = __commonJS((exports2) => {
10295
10351
  exports2.DualOptions = DualOptions;
10296
10352
  });
10297
10353
 
10298
- // node_modules/.bun/commander@13.1.0/node_modules/commander/lib/suggestSimilar.js
10354
+ // node_modules/commander/lib/suggestSimilar.js
10299
10355
  var require_suggestSimilar = __commonJS((exports2) => {
10300
10356
  var maxDistance = 3;
10301
10357
  function editDistance(a, b) {
@@ -10368,7 +10424,7 @@ var require_suggestSimilar = __commonJS((exports2) => {
10368
10424
  exports2.suggestSimilar = suggestSimilar;
10369
10425
  });
10370
10426
 
10371
- // node_modules/.bun/commander@13.1.0/node_modules/commander/lib/command.js
10427
+ // node_modules/commander/lib/command.js
10372
10428
  var require_command = __commonJS((exports2) => {
10373
10429
  var EventEmitter2 = __require("node:events").EventEmitter;
10374
10430
  var childProcess = __require("node:child_process");
@@ -11678,7 +11734,7 @@ Expecting one of '${allowedValues.join("', '")}'`);
11678
11734
  exports2.useColor = useColor;
11679
11735
  });
11680
11736
 
11681
- // node_modules/.bun/commander@13.1.0/node_modules/commander/index.js
11737
+ // node_modules/commander/index.js
11682
11738
  var require_commander = __commonJS((exports2) => {
11683
11739
  var { Argument } = require_argument();
11684
11740
  var { Command } = require_command();
@@ -11704,57 +11760,12 @@ import { existsSync as existsSync9 } from "node:fs";
11704
11760
  import { join as join6, resolve as resolve7 } from "node:path";
11705
11761
 
11706
11762
  // src/config/loader.ts
11763
+ var import_yaml2 = __toESM(require_dist(), 1);
11707
11764
  import { readFileSync as readFileSync2, existsSync as existsSync3 } from "node:fs";
11708
11765
  import { homedir } from "node:os";
11709
11766
  import { resolve as resolve3 } from "node:path";
11710
11767
 
11711
- // node_modules/.bun/yaml@2.8.3/node_modules/yaml/dist/index.js
11712
- var composer = require_composer();
11713
- var Document = require_Document();
11714
- var Schema = require_Schema();
11715
- var errors = require_errors();
11716
- var Alias = require_Alias();
11717
- var identity = require_identity();
11718
- var Pair = require_Pair();
11719
- var Scalar = require_Scalar();
11720
- var YAMLMap = require_YAMLMap();
11721
- var YAMLSeq = require_YAMLSeq();
11722
- var cst = require_cst();
11723
- var lexer = require_lexer();
11724
- var lineCounter = require_line_counter();
11725
- var parser = require_parser();
11726
- var publicApi = require_public_api();
11727
- var visit = require_visit();
11728
- var $Composer = composer.Composer;
11729
- var $Document = Document.Document;
11730
- var $Schema = Schema.Schema;
11731
- var $YAMLError = errors.YAMLError;
11732
- var $YAMLParseError = errors.YAMLParseError;
11733
- var $YAMLWarning = errors.YAMLWarning;
11734
- var $Alias = Alias.Alias;
11735
- var $isAlias = identity.isAlias;
11736
- var $isCollection = identity.isCollection;
11737
- var $isDocument = identity.isDocument;
11738
- var $isMap = identity.isMap;
11739
- var $isNode = identity.isNode;
11740
- var $isPair = identity.isPair;
11741
- var $isScalar = identity.isScalar;
11742
- var $isSeq = identity.isSeq;
11743
- var $Pair = Pair.Pair;
11744
- var $Scalar = Scalar.Scalar;
11745
- var $YAMLMap = YAMLMap.YAMLMap;
11746
- var $YAMLSeq = YAMLSeq.YAMLSeq;
11747
- var $Lexer = lexer.Lexer;
11748
- var $LineCounter = lineCounter.LineCounter;
11749
- var $Parser = parser.Parser;
11750
- var $parse = publicApi.parse;
11751
- var $parseAllDocuments = publicApi.parseAllDocuments;
11752
- var $parseDocument = publicApi.parseDocument;
11753
- var $stringify = publicApi.stringify;
11754
- var $visit = visit.visit;
11755
- var $visitAsync = visit.visitAsync;
11756
-
11757
- // node_modules/.bun/zod@3.25.76/node_modules/zod/v3/external.js
11768
+ // node_modules/zod/v3/external.js
11758
11769
  var exports_external = {};
11759
11770
  __export(exports_external, {
11760
11771
  void: () => voidType,
@@ -11866,7 +11877,7 @@ __export(exports_external, {
11866
11877
  BRAND: () => BRAND
11867
11878
  });
11868
11879
 
11869
- // node_modules/.bun/zod@3.25.76/node_modules/zod/v3/helpers/util.js
11880
+ // node_modules/zod/v3/helpers/util.js
11870
11881
  var util;
11871
11882
  (function(util2) {
11872
11883
  util2.assertEqual = (_) => {};
@@ -11997,7 +12008,7 @@ var getParsedType = (data) => {
11997
12008
  }
11998
12009
  };
11999
12010
 
12000
- // node_modules/.bun/zod@3.25.76/node_modules/zod/v3/ZodError.js
12011
+ // node_modules/zod/v3/ZodError.js
12001
12012
  var ZodIssueCode = util.arrayToEnum([
12002
12013
  "invalid_type",
12003
12014
  "invalid_literal",
@@ -12116,7 +12127,7 @@ ZodError.create = (issues) => {
12116
12127
  return error;
12117
12128
  };
12118
12129
 
12119
- // node_modules/.bun/zod@3.25.76/node_modules/zod/v3/locales/en.js
12130
+ // node_modules/zod/v3/locales/en.js
12120
12131
  var errorMap = (issue, _ctx) => {
12121
12132
  let message;
12122
12133
  switch (issue.code) {
@@ -12219,7 +12230,7 @@ var errorMap = (issue, _ctx) => {
12219
12230
  };
12220
12231
  var en_default = errorMap;
12221
12232
 
12222
- // node_modules/.bun/zod@3.25.76/node_modules/zod/v3/errors.js
12233
+ // node_modules/zod/v3/errors.js
12223
12234
  var overrideErrorMap = en_default;
12224
12235
  function setErrorMap(map) {
12225
12236
  overrideErrorMap = map;
@@ -12227,7 +12238,7 @@ function setErrorMap(map) {
12227
12238
  function getErrorMap() {
12228
12239
  return overrideErrorMap;
12229
12240
  }
12230
- // node_modules/.bun/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.js
12241
+ // node_modules/zod/v3/helpers/parseUtil.js
12231
12242
  var makeIssue = (params) => {
12232
12243
  const { data, path, errorMaps, issueData } = params;
12233
12244
  const fullPath = [...path, ...issueData.path || []];
@@ -12333,14 +12344,14 @@ var isAborted = (x) => x.status === "aborted";
12333
12344
  var isDirty = (x) => x.status === "dirty";
12334
12345
  var isValid = (x) => x.status === "valid";
12335
12346
  var isAsync = (x) => typeof Promise !== "undefined" && x instanceof Promise;
12336
- // node_modules/.bun/zod@3.25.76/node_modules/zod/v3/helpers/errorUtil.js
12347
+ // node_modules/zod/v3/helpers/errorUtil.js
12337
12348
  var errorUtil;
12338
12349
  (function(errorUtil2) {
12339
12350
  errorUtil2.errToObj = (message) => typeof message === "string" ? { message } : message || {};
12340
12351
  errorUtil2.toString = (message) => typeof message === "string" ? message : message?.message;
12341
12352
  })(errorUtil || (errorUtil = {}));
12342
12353
 
12343
- // node_modules/.bun/zod@3.25.76/node_modules/zod/v3/types.js
12354
+ // node_modules/zod/v3/types.js
12344
12355
  class ParseInputLazyPath {
12345
12356
  constructor(parent, value, path, key) {
12346
12357
  this._cachedPath = [];
@@ -16188,7 +16199,7 @@ var AgentSchema = exports_external.object({
16188
16199
  secrets: exports_external.array(exports_external.string().regex(/^[a-zA-Z0-9_\-/]+$/, "Secret key names must contain only alphanumeric characters, underscores, hyphens, and forward slashes")).optional(),
16189
16200
  reactions: ReactionsSchema,
16190
16201
  reaction_dispatch: ReactionDispatchSchema,
16191
- model: exports_external.string().regex(/^[a-zA-Z0-9][a-zA-Z0-9._\-/\[\]:]*$/, "Model name must be alphanumeric with ._-/[]: only (no spaces or shell specials)").optional().describe("Claude model override (e.g., 'claude-sonnet-4-6')"),
16202
+ model: exports_external.string().regex(/^[a-zA-Z0-9][a-zA-Z0-9._\-/\[\]:]*$/, "Model name must be alphanumeric with ._-/[]: only (no spaces or shell specials)").optional().describe("Claude model override (e.g., 'claude-sonnet-5')"),
16192
16203
  thinking_effort: exports_external.enum(["low", "medium", "high", "xhigh", "max"]).optional().describe("Adaptive-thinking effort level passed as --effort to the claude CLI. " + "Per-agent override wins over defaults.thinking_effort. " + "lower = faster/cheaper, higher = more reasoning. Omit to use Claude's default."),
16193
16204
  permission_mode: exports_external.enum(["acceptEdits", "auto", "bypassPermissions", "default", "dontAsk", "plan"]).optional().describe("Permission mode passed as --permission-mode to the claude CLI. " + "Per-agent override wins over defaults.permission_mode. " + "Warning: bypassPermissions and dontAsk skip all safety checks — use only in trusted sandboxes."),
16194
16205
  fallback_model: exports_external.string().regex(/^[a-zA-Z0-9][a-zA-Z0-9._\-/\[\]:]*$/, "Fallback model name must be alphanumeric with ._-/[]: only").optional().describe("Fallback model passed as --fallback-model to the claude CLI. " + "Per-agent override wins over defaults.fallback_model. " + "Used when the primary model is overloaded. Note: only functional in --print (non-interactive) mode per Claude CLI docs; silently no-ops in interactive sessions."),
@@ -16319,6 +16330,11 @@ var HostControlConfigSchema = exports_external.object({
16319
16330
  var WebServiceConfigSchema = exports_external.object({
16320
16331
  managed: exports_external.boolean().default(false).describe("Whether `switchroom update` refreshes the web-service container " + "(dashboard + GitHub-webhook receiver) via `switchroom webd " + "install`. Default: false — existing installs run the web server " + "as the legacy `switchroom-web.service` systemd unit and must not " + "be surprised by a container takeover of host loopback 127.0.0.1:" + "8080 mid-update. Set true ONLY after cutting over to the " + "container (stop+disable the systemd unit, `switchroom webd " + "install`). The container runs in its own compose project " + "(`switchroom-web`), separate from the agent fleet, with " + "network_mode: host so it keeps owning loopback:8080 for the " + "cloudflared tunnel + tailscale serve consumers.")
16321
16332
  });
16333
+ var FleetHealthConfigSchema = exports_external.object({
16334
+ owner_agent: exports_external.string().regex(/^[a-z0-9][a-z0-9_-]{0,50}$/, {
16335
+ message: "owner_agent must match the standard agent-name pattern"
16336
+ }).optional().describe("The admin agent that runs the Fleet Health sensor + deep-dive crons " + "(RFC fleet-health.md). Default unset → the feature is inert: no crons " + "are scheduled and the admin page renders its empty state. The named " + "agent must be admin: true. A dedicated owner (not any admin) keeps " + "the fleet-health work attributable, its memory scoped, and its token " + "spend accountable. The detection runs ONLY as operator-set schedules " + "on this agent — never a self-authored loop (on-leash, " + "no-self-escalation).")
16337
+ });
16322
16338
  var HostdConfigSchema = exports_external.object({
16323
16339
  config_edit_enabled: exports_external.boolean().default(false).describe("Opt-in toggle for the `config_propose_edit` hostd verb (RFC " + "admin-agent-config-edit §3). Default false — the verb returns " + "`E_CONFIG_EDIT_DISABLED` until the operator explicitly flips " + "this to true. When true, admin agents can propose unified-diff " + "patches against " + "`/state/config/switchroom.yaml`, gated by an operator approval " + "card in the primary chat. Same trust posture as `update_apply` " + "and `agent_restart`: the human-in-the-loop tap is the security " + "boundary, not the agent's judgement."),
16324
16340
  config_edit_rate_per_hour: exports_external.number().int().min(1).max(20).default(3).describe("Per-requesting-agent rate cap for `config_propose_edit` cards " + "(RFC admin-agent-config-edit §5). Default 3 cards/hour; min 1, " + "max 20. ENFORCED server-side: a caller exceeding this in a sliding " + "1-hour window is rejected with `E_RATE_LIMITED` (carrying a " + "`retry_after` fix) instead of posting another operator approval " + "card — so a looping agent is throttled rather than spamming the chat.")
@@ -16367,6 +16383,7 @@ var SwitchroomConfigSchema = exports_external.object({
16367
16383
  quota: QuotaConfigSchema.optional().describe("Optional weekly/monthly USD spend budgets rendered in the session " + "greeting. Usage is read from ccusage at runtime; no network calls."),
16368
16384
  host_control: HostControlConfigSchema.default({}).describe("Host-control daemon configuration. Defaults to enabled=true since " + "RFC C Phase 2 (reference/rfcs/host-control-daemon.md). Omit the block " + "to accept defaults; set `enabled: false` only on legacy systemd-" + "mode installs (removal tracked as RFC C Phase 3)."),
16369
16385
  hostd: HostdConfigSchema.default({}).describe("hostd verb-level knobs (RFC admin-agent-config-edit). Distinct " + "from `host_control:` which governs whether the daemon runs at " + "all. Scopes the opt-in flag and rate cap for the " + "`config_propose_edit` verb (disabled by default)."),
16386
+ fleet_health: FleetHealthConfigSchema.default({}).describe("Fleet Health — job-spec-anchored, operator-facing issue tracker (RFC " + "fleet-health.md, serves fleet-stays-healthy). Assigns the owner agent " + "that runs the nightly model-free sensor + weekly deep-dive. Default " + "unset owner_agent → inert; the admin page renders an empty state."),
16370
16387
  web_service: WebServiceConfigSchema.default({}).describe("Web-service container (dashboard + GitHub-webhook receiver) config. " + "Defaults to managed=false so existing systemd-mode installs are " + "untouched. Set managed: true after cutting over to the " + "`switchroom-web` container — then `switchroom update` keeps it " + "refreshed. See `switchroom webd install`."),
16371
16388
  google_accounts: exports_external.record(exports_external.string().regex(/^[^@\s:]+@[^@\s:]+\.[^@\s:]+$/, {
16372
16389
  message: "Account key must be a Google account email like 'alice@example.com' (colons not allowed)"
@@ -16458,6 +16475,7 @@ function resolveDualPath(pathStr) {
16458
16475
  }
16459
16476
 
16460
16477
  // src/config/overlay-loader.ts
16478
+ var import_yaml = __toESM(require_dist(), 1);
16461
16479
  import { existsSync as existsSync2, readFileSync, readdirSync, statSync } from "node:fs";
16462
16480
  import { basename, resolve as resolve2 } from "node:path";
16463
16481
 
@@ -16533,7 +16551,7 @@ function applyAgentOverlays(config) {
16533
16551
  for (const file of files) {
16534
16552
  try {
16535
16553
  const raw = readFileSync(file, "utf-8");
16536
- const parsed = $parse(raw);
16554
+ const parsed = import_yaml.parse(raw);
16537
16555
  const doc = OverlayDocSchema.parse(parsed);
16538
16556
  const title = deriveOverlayTitle(raw, basename(file));
16539
16557
  for (const entry of doc.schedule ?? []) {
@@ -16574,7 +16592,7 @@ function applyAgentOverlays(config) {
16574
16592
  for (const file of skillFiles) {
16575
16593
  try {
16576
16594
  const raw = readFileSync(file, "utf-8");
16577
- const parsed = $parse(raw);
16595
+ const parsed = import_yaml.parse(raw);
16578
16596
  const doc = OverlayDocSchema.parse(parsed);
16579
16597
  for (const skillName of doc.skills ?? []) {
16580
16598
  if (seen.has(skillName))
@@ -17091,7 +17109,7 @@ function loadConfig(configPath) {
17091
17109
  }
17092
17110
  let parsed;
17093
17111
  try {
17094
- parsed = $parse(raw);
17112
+ parsed = import_yaml2.parse(raw);
17095
17113
  } catch (err) {
17096
17114
  throw new ConfigError(`Invalid YAML in ${filePath}`, [
17097
17115
  ` ${err.message}`
@@ -17456,7 +17474,7 @@ function deniedResponse(request_id, error, duration_ms = 0) {
17456
17474
  // src/analytics/error-friction.ts
17457
17475
  import { createHash as createHash2 } from "node:crypto";
17458
17476
 
17459
- // node_modules/.bun/posthog-node@5.29.2/node_modules/posthog-node/dist/extensions/error-tracking/modifiers/module.node.mjs
17477
+ // node_modules/posthog-node/dist/extensions/error-tracking/modifiers/module.node.mjs
17460
17478
  import { dirname, posix, sep } from "path";
17461
17479
  function createModulerModifier() {
17462
17480
  const getModuleFromFileName = createGetModuleFromFilename();
@@ -17492,7 +17510,7 @@ function normalizeWindowsPath(path) {
17492
17510
  return path.replace(/^[A-Z]:/, "").replace(/\\/g, "/");
17493
17511
  }
17494
17512
 
17495
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/featureFlagUtils.mjs
17513
+ // node_modules/@posthog/core/dist/featureFlagUtils.mjs
17496
17514
  var normalizeFlagsResponse = (flagsResponse) => {
17497
17515
  if ("flags" in flagsResponse) {
17498
17516
  const featureFlags = getFlagValuesFromFlags(flagsResponse.flags);
@@ -17563,7 +17581,7 @@ var parsePayload = (response) => {
17563
17581
  }
17564
17582
  };
17565
17583
 
17566
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/gzip.mjs
17584
+ // node_modules/@posthog/core/dist/gzip.mjs
17567
17585
  function isGzipSupported() {
17568
17586
  return "CompressionStream" in globalThis;
17569
17587
  }
@@ -17583,7 +17601,7 @@ async function gzipCompress(input, isDebug = true) {
17583
17601
  }
17584
17602
  }
17585
17603
 
17586
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/vendor/uuidv7.mjs
17604
+ // node_modules/@posthog/core/dist/vendor/uuidv7.mjs
17587
17605
  /*! For license information please see uuidv7.mjs.LICENSE.txt */
17588
17606
  var DIGITS = "0123456789abcdef";
17589
17607
 
@@ -17761,7 +17779,7 @@ var defaultGenerator;
17761
17779
  var uuidv7 = () => uuidv7obj().toString();
17762
17780
  var uuidv7obj = () => (defaultGenerator || (defaultGenerator = new V7Generator)).generate();
17763
17781
 
17764
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/types.mjs
17782
+ // node_modules/@posthog/core/dist/types.mjs
17765
17783
  var types_PostHogPersistedProperty = /* @__PURE__ */ function(PostHogPersistedProperty) {
17766
17784
  PostHogPersistedProperty["AnonymousId"] = "anonymous_id";
17767
17785
  PostHogPersistedProperty["DistinctId"] = "distinct_id";
@@ -17794,7 +17812,7 @@ var types_PostHogPersistedProperty = /* @__PURE__ */ function(PostHogPersistedPr
17794
17812
  return PostHogPersistedProperty;
17795
17813
  }({});
17796
17814
 
17797
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/utils/bot-detection.mjs
17815
+ // node_modules/@posthog/core/dist/utils/bot-detection.mjs
17798
17816
  var DEFAULT_BLOCKED_UA_STRS = [
17799
17817
  "amazonbot",
17800
17818
  "amazonproductbot",
@@ -17883,7 +17901,7 @@ var isBlockedUA = function(ua, customBlockedUserAgents = []) {
17883
17901
  return uaLower.indexOf(blockedUaLower) !== -1;
17884
17902
  });
17885
17903
  };
17886
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/utils/type-utils.mjs
17904
+ // node_modules/@posthog/core/dist/utils/type-utils.mjs
17887
17905
  var nativeIsArray = Array.isArray;
17888
17906
  var ObjProto = Object.prototype;
17889
17907
  var type_utils_hasOwnProperty = ObjProto.hasOwnProperty;
@@ -17920,7 +17938,7 @@ function isInstanceOf(candidate, base) {
17920
17938
  }
17921
17939
  }
17922
17940
 
17923
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/utils/number-utils.mjs
17941
+ // node_modules/@posthog/core/dist/utils/number-utils.mjs
17924
17942
  function clampToRange(value, min, max, logger, fallbackValue) {
17925
17943
  if (min > max) {
17926
17944
  logger.warn("min cannot be greater than max.");
@@ -17940,7 +17958,7 @@ function clampToRange(value, min, max, logger, fallbackValue) {
17940
17958
  return clampToRange(fallbackValue || max, min, max, logger);
17941
17959
  }
17942
17960
 
17943
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/utils/bucketed-rate-limiter.mjs
17961
+ // node_modules/@posthog/core/dist/utils/bucketed-rate-limiter.mjs
17944
17962
  var ONE_DAY_IN_MS = 86400000;
17945
17963
 
17946
17964
  class BucketedRateLimiter {
@@ -17984,7 +18002,7 @@ class BucketedRateLimiter {
17984
18002
  this._buckets = {};
17985
18003
  }
17986
18004
  }
17987
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/utils/promise-queue.mjs
18005
+ // node_modules/@posthog/core/dist/utils/promise-queue.mjs
17988
18006
  class PromiseQueue {
17989
18007
  add(promise) {
17990
18008
  const promiseUUID = uuidv7();
@@ -18010,7 +18028,7 @@ class PromiseQueue {
18010
18028
  this.promiseByIds = {};
18011
18029
  }
18012
18030
  }
18013
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/utils/logger.mjs
18031
+ // node_modules/@posthog/core/dist/utils/logger.mjs
18014
18032
  function createConsole(consoleLike = console) {
18015
18033
  const lockedMethods = {
18016
18034
  log: consoleLike.log.bind(consoleLike),
@@ -18048,7 +18066,7 @@ var passThrough = (fn) => fn();
18048
18066
  function createLogger(prefix, maybeCall = passThrough) {
18049
18067
  return _createLogger(prefix, maybeCall, createConsole());
18050
18068
  }
18051
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/utils/user-agent-utils.mjs
18069
+ // node_modules/@posthog/core/dist/utils/user-agent-utils.mjs
18052
18070
  var MOBILE = "Mobile";
18053
18071
  var IOS = "iOS";
18054
18072
  var ANDROID = "Android";
@@ -18305,7 +18323,7 @@ var osMatchers = [
18305
18323
  ]
18306
18324
  ];
18307
18325
 
18308
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/utils/index.mjs
18326
+ // node_modules/@posthog/core/dist/utils/index.mjs
18309
18327
  var STRING_FORMAT = "utf8";
18310
18328
  function assert(truthyValue, message) {
18311
18329
  if (!truthyValue || typeof truthyValue != "string" || isEmpty(truthyValue))
@@ -18353,7 +18371,7 @@ function allSettled(promises) {
18353
18371
  reason
18354
18372
  }))));
18355
18373
  }
18356
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/eventemitter.mjs
18374
+ // node_modules/@posthog/core/dist/eventemitter.mjs
18357
18375
  class SimpleEventEmitter {
18358
18376
  constructor() {
18359
18377
  this.events = {};
@@ -18375,7 +18393,7 @@ class SimpleEventEmitter {
18375
18393
  }
18376
18394
  }
18377
18395
 
18378
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/posthog-core-stateless.mjs
18396
+ // node_modules/@posthog/core/dist/posthog-core-stateless.mjs
18379
18397
  class PostHogFetchHttpError extends Error {
18380
18398
  constructor(response, reqByteLength) {
18381
18399
  super("HTTP error while fetching PostHog: status=" + response.status + ", reqByteLength=" + reqByteLength), this.response = response, this.reqByteLength = reqByteLength, this.name = "PostHogFetchHttpError";
@@ -19090,7 +19108,7 @@ class PostHogCoreStateless {
19090
19108
  return this.shutdownPromise;
19091
19109
  }
19092
19110
  }
19093
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/index.mjs
19111
+ // node_modules/@posthog/core/dist/error-tracking/index.mjs
19094
19112
  var exports_error_tracking = {};
19095
19113
  __export(exports_error_tracking, {
19096
19114
  winjsStackLineParser: () => winjsStackLineParser,
@@ -19114,7 +19132,7 @@ __export(exports_error_tracking, {
19114
19132
  DOMExceptionCoercer: () => DOMExceptionCoercer
19115
19133
  });
19116
19134
 
19117
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/chunk-ids.mjs
19135
+ // node_modules/@posthog/core/dist/error-tracking/chunk-ids.mjs
19118
19136
  var parsedStackResults;
19119
19137
  var lastKeysCount;
19120
19138
  var cachedFilenameChunkIds;
@@ -19153,7 +19171,7 @@ function getFilenameToChunkIdMap(stackParser) {
19153
19171
  return cachedFilenameChunkIds;
19154
19172
  }
19155
19173
 
19156
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/error-properties-builder.mjs
19174
+ // node_modules/@posthog/core/dist/error-tracking/error-properties-builder.mjs
19157
19175
  var MAX_CAUSE_RECURSION = 4;
19158
19176
 
19159
19177
  class ErrorPropertiesBuilder {
@@ -19275,7 +19293,7 @@ class ErrorPropertiesBuilder {
19275
19293
  return context;
19276
19294
  }
19277
19295
  }
19278
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/parsers/base.mjs
19296
+ // node_modules/@posthog/core/dist/error-tracking/parsers/base.mjs
19279
19297
  var UNKNOWN_FUNCTION = "?";
19280
19298
  function createFrame(platform, filename, func, lineno, colno) {
19281
19299
  const frame = {
@@ -19291,7 +19309,7 @@ function createFrame(platform, filename, func, lineno, colno) {
19291
19309
  return frame;
19292
19310
  }
19293
19311
 
19294
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/parsers/safari.mjs
19312
+ // node_modules/@posthog/core/dist/error-tracking/parsers/safari.mjs
19295
19313
  var extractSafariExtensionDetails = (func, filename) => {
19296
19314
  const isSafariExtension = func.indexOf("safari-extension") !== -1;
19297
19315
  const isSafariWebExtension = func.indexOf("safari-web-extension") !== -1;
@@ -19304,7 +19322,7 @@ var extractSafariExtensionDetails = (func, filename) => {
19304
19322
  ];
19305
19323
  };
19306
19324
 
19307
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/parsers/chrome.mjs
19325
+ // node_modules/@posthog/core/dist/error-tracking/parsers/chrome.mjs
19308
19326
  var chromeRegexNoFnName = /^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i;
19309
19327
  var chromeRegex = /^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i;
19310
19328
  var chromeEvalRegex = /\((\S*)(?::(\d+))(?::(\d+))\)/;
@@ -19330,7 +19348,7 @@ var chromeStackLineParser = (line, platform) => {
19330
19348
  }
19331
19349
  };
19332
19350
 
19333
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/parsers/gecko.mjs
19351
+ // node_modules/@posthog/core/dist/error-tracking/parsers/gecko.mjs
19334
19352
  var geckoREgex = /^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i;
19335
19353
  var geckoEvalRegex = /(\S+) line (\d+)(?: > eval line \d+)* > eval/i;
19336
19354
  var geckoStackLineParser = (line, platform) => {
@@ -19353,14 +19371,14 @@ var geckoStackLineParser = (line, platform) => {
19353
19371
  }
19354
19372
  };
19355
19373
 
19356
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/parsers/winjs.mjs
19374
+ // node_modules/@posthog/core/dist/error-tracking/parsers/winjs.mjs
19357
19375
  var winjsRegex = /^\s*at (?:((?:\[object object\])?.+) )?\(?((?:[-a-z]+):.*?):(\d+)(?::(\d+))?\)?\s*$/i;
19358
19376
  var winjsStackLineParser = (line, platform) => {
19359
19377
  const parts = winjsRegex.exec(line);
19360
19378
  return parts ? createFrame(platform, parts[2], parts[1] || UNKNOWN_FUNCTION, +parts[3], parts[4] ? +parts[4] : undefined) : undefined;
19361
19379
  };
19362
19380
 
19363
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/parsers/opera.mjs
19381
+ // node_modules/@posthog/core/dist/error-tracking/parsers/opera.mjs
19364
19382
  var opera10Regex = / line (\d+).*script (?:in )?(\S+)(?:: in function (\S+))?$/i;
19365
19383
  var opera10StackLineParser = (line, platform) => {
19366
19384
  const parts = opera10Regex.exec(line);
@@ -19372,7 +19390,7 @@ var opera11StackLineParser = (line, platform) => {
19372
19390
  return parts ? createFrame(platform, parts[5], parts[3] || parts[4] || UNKNOWN_FUNCTION, +parts[1], +parts[2]) : undefined;
19373
19391
  };
19374
19392
 
19375
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/parsers/node.mjs
19393
+ // node_modules/@posthog/core/dist/error-tracking/parsers/node.mjs
19376
19394
  var FILENAME_MATCH = /^\s*[-]{4,}$/;
19377
19395
  var FULL_MATCH = /at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/;
19378
19396
  var nodeStackLineParser = (line, platform) => {
@@ -19441,7 +19459,7 @@ function _parseIntOrUndefined(input) {
19441
19459
  return parseInt(input || "", 10) || undefined;
19442
19460
  }
19443
19461
 
19444
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/parsers/index.mjs
19462
+ // node_modules/@posthog/core/dist/error-tracking/parsers/index.mjs
19445
19463
  var WEBPACK_ERROR_REGEXP = /\(error: (.*)\)/;
19446
19464
  var STACKTRACE_FRAME_LIMIT = 50;
19447
19465
  function reverseAndStripFrames(stack) {
@@ -19472,8 +19490,8 @@ function createStackParser(platform, ...parsers) {
19472
19490
  continue;
19473
19491
  const cleanedLine = WEBPACK_ERROR_REGEXP.test(line) ? line.replace(WEBPACK_ERROR_REGEXP, "$1") : line;
19474
19492
  if (!cleanedLine.match(/\S*Error: /)) {
19475
- for (const parser2 of parsers) {
19476
- const frame = parser2(cleanedLine, platform);
19493
+ for (const parser of parsers) {
19494
+ const frame = parser(cleanedLine, platform);
19477
19495
  if (frame) {
19478
19496
  frames.push(frame);
19479
19497
  break;
@@ -19486,7 +19504,7 @@ function createStackParser(platform, ...parsers) {
19486
19504
  return reverseAndStripFrames(frames);
19487
19505
  };
19488
19506
  }
19489
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/coercers/dom-exception-coercer.mjs
19507
+ // node_modules/@posthog/core/dist/error-tracking/coercers/dom-exception-coercer.mjs
19490
19508
  class DOMExceptionCoercer {
19491
19509
  match(err) {
19492
19510
  return this.isDOMException(err) || this.isDOMError(err);
@@ -19516,7 +19534,7 @@ class DOMExceptionCoercer {
19516
19534
  return isBuiltin(err, "DOMError");
19517
19535
  }
19518
19536
  }
19519
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/coercers/error-coercer.mjs
19537
+ // node_modules/@posthog/core/dist/error-tracking/coercers/error-coercer.mjs
19520
19538
  class ErrorCoercer {
19521
19539
  match(err) {
19522
19540
  return isPlainError(err);
@@ -19543,7 +19561,7 @@ class ErrorCoercer {
19543
19561
  return err.stacktrace || err.stack || undefined;
19544
19562
  }
19545
19563
  }
19546
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/coercers/error-event-coercer.mjs
19564
+ // node_modules/@posthog/core/dist/error-tracking/coercers/error-event-coercer.mjs
19547
19565
  class ErrorEventCoercer {
19548
19566
  constructor() {}
19549
19567
  match(err) {
@@ -19561,7 +19579,7 @@ class ErrorEventCoercer {
19561
19579
  return exceptionLike;
19562
19580
  }
19563
19581
  }
19564
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/coercers/string-coercer.mjs
19582
+ // node_modules/@posthog/core/dist/error-tracking/coercers/string-coercer.mjs
19565
19583
  var ERROR_TYPES_PATTERN = /^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i;
19566
19584
 
19567
19585
  class StringCoercer {
@@ -19591,7 +19609,7 @@ class StringCoercer {
19591
19609
  ];
19592
19610
  }
19593
19611
  }
19594
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/types.mjs
19612
+ // node_modules/@posthog/core/dist/error-tracking/types.mjs
19595
19613
  var severityLevels = [
19596
19614
  "fatal",
19597
19615
  "error",
@@ -19601,7 +19619,7 @@ var severityLevels = [
19601
19619
  "debug"
19602
19620
  ];
19603
19621
 
19604
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/coercers/utils.mjs
19622
+ // node_modules/@posthog/core/dist/error-tracking/coercers/utils.mjs
19605
19623
  function extractExceptionKeysForMessage(err, maxLength = 40) {
19606
19624
  const keys = Object.keys(err);
19607
19625
  keys.sort();
@@ -19618,7 +19636,7 @@ function extractExceptionKeysForMessage(err, maxLength = 40) {
19618
19636
  return "";
19619
19637
  }
19620
19638
 
19621
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/coercers/object-coercer.mjs
19639
+ // node_modules/@posthog/core/dist/error-tracking/coercers/object-coercer.mjs
19622
19640
  class ObjectCoercer {
19623
19641
  match(candidate) {
19624
19642
  return typeof candidate == "object" && candidate !== null;
@@ -19671,7 +19689,7 @@ class ObjectCoercer {
19671
19689
  }
19672
19690
  }
19673
19691
  }
19674
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/coercers/event-coercer.mjs
19692
+ // node_modules/@posthog/core/dist/error-tracking/coercers/event-coercer.mjs
19675
19693
  class EventCoercer {
19676
19694
  match(err) {
19677
19695
  return isEvent(err);
@@ -19686,7 +19704,7 @@ class EventCoercer {
19686
19704
  };
19687
19705
  }
19688
19706
  }
19689
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/coercers/primitive-coercer.mjs
19707
+ // node_modules/@posthog/core/dist/error-tracking/coercers/primitive-coercer.mjs
19690
19708
  class PrimitiveCoercer {
19691
19709
  match(candidate) {
19692
19710
  return isPrimitive(candidate);
@@ -19700,7 +19718,7 @@ class PrimitiveCoercer {
19700
19718
  };
19701
19719
  }
19702
19720
  }
19703
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/coercers/promise-rejection-event.mjs
19721
+ // node_modules/@posthog/core/dist/error-tracking/coercers/promise-rejection-event.mjs
19704
19722
  class PromiseRejectionEventCoercer {
19705
19723
  match(err) {
19706
19724
  return isBuiltin(err, "PromiseRejectionEvent") || this.isCustomEventWrappingRejection(err);
@@ -19736,7 +19754,7 @@ class PromiseRejectionEventCoercer {
19736
19754
  return error;
19737
19755
  }
19738
19756
  }
19739
- // node_modules/.bun/@posthog+core@1.25.2/node_modules/@posthog/core/dist/error-tracking/utils.mjs
19757
+ // node_modules/@posthog/core/dist/error-tracking/utils.mjs
19740
19758
  class ReduceableCache {
19741
19759
  constructor(_maxSize) {
19742
19760
  this._maxSize = _maxSize;
@@ -19761,7 +19779,7 @@ class ReduceableCache {
19761
19779
  }
19762
19780
  }
19763
19781
  }
19764
- // node_modules/.bun/posthog-node@5.29.2/node_modules/posthog-node/dist/extensions/error-tracking/modifiers/context-lines.node.mjs
19782
+ // node_modules/posthog-node/dist/extensions/error-tracking/modifiers/context-lines.node.mjs
19765
19783
  import { createReadStream } from "node:fs";
19766
19784
  import { createInterface } from "node:readline";
19767
19785
  var LRU_FILE_CONTENTS_CACHE = new exports_error_tracking.ReduceableCache(25);
@@ -19979,7 +19997,7 @@ function snipLine(line, colno) {
19979
19997
  return newLine;
19980
19998
  }
19981
19999
 
19982
- // node_modules/.bun/posthog-node@5.29.2/node_modules/posthog-node/dist/extensions/error-tracking/autocapture.mjs
20000
+ // node_modules/posthog-node/dist/extensions/error-tracking/autocapture.mjs
19983
20001
  function makeUncaughtExceptionHandler(captureFn, onFatalFn) {
19984
20002
  let calledFatalError = false;
19985
20003
  return Object.assign((error) => {
@@ -20011,7 +20029,7 @@ function addUnhandledRejectionListener(captureFn) {
20011
20029
  }));
20012
20030
  }
20013
20031
 
20014
- // node_modules/.bun/posthog-node@5.29.2/node_modules/posthog-node/dist/extensions/error-tracking/index.mjs
20032
+ // node_modules/posthog-node/dist/extensions/error-tracking/index.mjs
20015
20033
  var SHUTDOWN_TIMEOUT = 2000;
20016
20034
 
20017
20035
  class ErrorTracking {
@@ -20080,10 +20098,10 @@ class ErrorTracking {
20080
20098
  }
20081
20099
  }
20082
20100
 
20083
- // node_modules/.bun/posthog-node@5.29.2/node_modules/posthog-node/dist/version.mjs
20101
+ // node_modules/posthog-node/dist/version.mjs
20084
20102
  var version = "5.29.2";
20085
20103
 
20086
- // node_modules/.bun/posthog-node@5.29.2/node_modules/posthog-node/dist/types.mjs
20104
+ // node_modules/posthog-node/dist/types.mjs
20087
20105
  var FeatureFlagError2 = {
20088
20106
  ERRORS_WHILE_COMPUTING: "errors_while_computing_flags",
20089
20107
  FLAG_MISSING: "flag_missing",
@@ -20091,7 +20109,7 @@ var FeatureFlagError2 = {
20091
20109
  UNKNOWN_ERROR: "unknown_error"
20092
20110
  };
20093
20111
 
20094
- // node_modules/.bun/posthog-node@5.29.2/node_modules/posthog-node/dist/extensions/feature-flags/crypto.mjs
20112
+ // node_modules/posthog-node/dist/extensions/feature-flags/crypto.mjs
20095
20113
  async function hashSHA1(text) {
20096
20114
  const subtle = globalThis.crypto?.subtle;
20097
20115
  if (!subtle)
@@ -20101,7 +20119,7 @@ async function hashSHA1(text) {
20101
20119
  return hashArray.map((byte) => byte.toString(16).padStart(2, "0")).join("");
20102
20120
  }
20103
20121
 
20104
- // node_modules/.bun/posthog-node@5.29.2/node_modules/posthog-node/dist/extensions/feature-flags/feature-flags.mjs
20122
+ // node_modules/posthog-node/dist/extensions/feature-flags/feature-flags.mjs
20105
20123
  var SIXTY_SECONDS = 60000;
20106
20124
  var LONG_SCALE = 1152921504606847000;
20107
20125
  var NULL_VALUES_ALLOWED_OPERATORS = [
@@ -20975,7 +20993,7 @@ function relativeDateParseForFeatureFlagMatching(value) {
20975
20993
  }
20976
20994
  }
20977
20995
 
20978
- // node_modules/.bun/posthog-node@5.29.2/node_modules/posthog-node/dist/storage-memory.mjs
20996
+ // node_modules/posthog-node/dist/storage-memory.mjs
20979
20997
  class PostHogMemoryStorage {
20980
20998
  getProperty(key) {
20981
20999
  return this._memoryStorage[key];
@@ -20988,7 +21006,7 @@ class PostHogMemoryStorage {
20988
21006
  }
20989
21007
  }
20990
21008
 
20991
- // node_modules/.bun/posthog-node@5.29.2/node_modules/posthog-node/dist/client.mjs
21009
+ // node_modules/posthog-node/dist/client.mjs
20992
21010
  var MINIMUM_POLLING_INTERVAL = 100;
20993
21011
  var THIRTY_SECONDS = 30000;
20994
21012
  var MAX_CACHE_SIZE = 50000;
@@ -21282,14 +21300,14 @@ class PostHogBackendClient extends PostHogCoreStateless {
21282
21300
  else {
21283
21301
  requestId = flagsResponse.requestId;
21284
21302
  evaluatedAt = flagsResponse.evaluatedAt;
21285
- const errors3 = [];
21303
+ const errors2 = [];
21286
21304
  if (flagsResponse.errorsWhileComputingFlags)
21287
- errors3.push(FeatureFlagError2.ERRORS_WHILE_COMPUTING);
21305
+ errors2.push(FeatureFlagError2.ERRORS_WHILE_COMPUTING);
21288
21306
  if (flagsResponse.quotaLimited?.includes("feature_flags"))
21289
- errors3.push(FeatureFlagError2.QUOTA_LIMITED);
21307
+ errors2.push(FeatureFlagError2.QUOTA_LIMITED);
21290
21308
  const flagDetail = flagsResponse.flags[key];
21291
21309
  if (flagDetail === undefined)
21292
- errors3.push(FeatureFlagError2.FLAG_MISSING);
21310
+ errors2.push(FeatureFlagError2.FLAG_MISSING);
21293
21311
  else {
21294
21312
  flagId = flagDetail.metadata?.id;
21295
21313
  flagVersion = flagDetail.metadata?.version;
@@ -21308,8 +21326,8 @@ class PostHogBackendClient extends PostHogCoreStateless {
21308
21326
  payload: parsedPayload
21309
21327
  };
21310
21328
  }
21311
- if (errors3.length > 0)
21312
- featureFlagError = errors3.join(",");
21329
+ if (errors2.length > 0)
21330
+ featureFlagError = errors2.join(",");
21313
21331
  }
21314
21332
  }
21315
21333
  if (sendFeatureFlagEvents) {
@@ -21776,7 +21794,7 @@ class PostHogBackendClient extends PostHogCoreStateless {
21776
21794
  }
21777
21795
  }
21778
21796
 
21779
- // node_modules/.bun/posthog-node@5.29.2/node_modules/posthog-node/dist/extensions/context/context.mjs
21797
+ // node_modules/posthog-node/dist/extensions/context/context.mjs
21780
21798
  import { AsyncLocalStorage } from "node:async_hooks";
21781
21799
 
21782
21800
  class PostHogContext {
@@ -21807,7 +21825,7 @@ class PostHogContext {
21807
21825
  }
21808
21826
  }
21809
21827
 
21810
- // node_modules/.bun/posthog-node@5.29.2/node_modules/posthog-node/dist/extensions/sentry-integration.mjs
21828
+ // node_modules/posthog-node/dist/extensions/sentry-integration.mjs
21811
21829
  var NAME = "posthog-node";
21812
21830
  function createEventProcessor(_posthog, { organization, projectId, prefix, severityAllowList = [
21813
21831
  "error"
@@ -21875,7 +21893,7 @@ class PostHogSentryIntegration {
21875
21893
  };
21876
21894
  }
21877
21895
  }
21878
- // node_modules/.bun/posthog-node@5.29.2/node_modules/posthog-node/dist/entrypoints/index.node.mjs
21896
+ // node_modules/posthog-node/dist/entrypoints/index.node.mjs
21879
21897
  ErrorTracking.errorPropertiesBuilder = new exports_error_tracking.ErrorPropertiesBuilder([
21880
21898
  new exports_error_tracking.EventCoercer,
21881
21899
  new exports_error_tracking.ErrorCoercer,
@@ -22595,16 +22613,18 @@ function detectInstallType() {
22595
22613
  }
22596
22614
  }
22597
22615
 
22598
- // src/util/atomic.ts
22599
- import { closeSync as closeSync2, constants, fsyncSync, openSync as openSync2, renameSync, rmSync, writeSync } from "node:fs";
22600
- var TMP_OPEN_FLAGS = constants.O_WRONLY | constants.O_CREAT | constants.O_EXCL | (constants.O_NOFOLLOW ?? 0);
22616
+ // src/cli/release-yaml.ts
22617
+ var import_yaml3 = __toESM(require_dist(), 1);
22618
+
22619
+ // src/cli/rollout.ts
22620
+ init_atomic();
22601
22621
 
22602
22622
  // src/cli/resolve-version.ts
22603
22623
  import { existsSync as existsSync6, readFileSync as readFileSync4 } from "node:fs";
22604
22624
  import { dirname as dirname4, join as join2 } from "node:path";
22605
22625
 
22606
22626
  // src/build-info.ts
22607
- var VERSION = "0.16.38";
22627
+ var VERSION = "0.16.46";
22608
22628
 
22609
22629
  // src/cli/resolve-version.ts
22610
22630
  function readPackageVersion() {
@@ -22734,6 +22754,14 @@ function latestRolloutRowForRequest(raw, requestId) {
22734
22754
  return latest;
22735
22755
  }
22736
22756
 
22757
+ // src/setup/hindsight.ts
22758
+ var HINDSIGHT_CONSUMER_NAME = "hindsight";
22759
+ var HINDSIGHT_IMAGE_REPO = "ghcr.io/switchroom/switchroom-hindsight";
22760
+ var HINDSIGHT_IMAGE = `${HINDSIGHT_IMAGE_REPO}:latest`;
22761
+ var HINDSIGHT_BROKER_SOCK_VOLUME = `auth-broker-${HINDSIGHT_CONSUMER_NAME}-sock`;
22762
+ var HINDSIGHT_HEALTHCHECK_PY = 'import urllib.request,sys; sys.exit(0 if urllib.request.urlopen("http://localhost:8888/health",timeout=4).getcode()==200 else 1)';
22763
+ var HINDSIGHT_HEALTHCHECK_CMD = `python3 -c '${HINDSIGHT_HEALTHCHECK_PY}'`;
22764
+
22737
22765
  // src/cli/rollout.ts
22738
22766
  function isVersionAssertable(target) {
22739
22767
  return /^v?\d+\.\d+\.\d+$/.test(target.trim());
@@ -22795,7 +22823,7 @@ function parseRolloutResultLine(stdout) {
22795
22823
  return null;
22796
22824
  }
22797
22825
 
22798
- // node_modules/.bun/commander@13.1.0/node_modules/commander/esm.mjs
22826
+ // node_modules/commander/esm.mjs
22799
22827
  var import__3 = __toESM(require_commander(), 1);
22800
22828
 
22801
22829
  // src/cli/update.ts
@@ -22809,6 +22837,7 @@ import { execFileSync, spawn, spawnSync } from "node:child_process";
22809
22837
  var MAX_BYTES = 10 * 1024 * 1024;
22810
22838
 
22811
22839
  // src/agents/singleton-reconcile.ts
22840
+ var import_yaml4 = __toESM(require_dist(), 1);
22812
22841
  var CORE_SINGLETON_SERVICES = [
22813
22842
  "vault-broker",
22814
22843
  "approval-kernel",
@@ -22894,6 +22923,7 @@ function getAllAgentStatuses(config) {
22894
22923
  }
22895
22924
 
22896
22925
  // src/cli/update.ts
22926
+ init_atomic();
22897
22927
  var DEFAULT_COMPOSE_PATH = join3(homedir3(), ".switchroom", "compose", "docker-compose.yml");
22898
22928
  var UPDATE_RESULT_SENTINEL = "SWITCHROOM_UPDATE_RESULT:";
22899
22929
  function parseUpdateResultLine(stdout) {
@@ -22916,6 +22946,7 @@ function parseUpdateResultLine(stdout) {
22916
22946
  }
22917
22947
 
22918
22948
  // src/host-control/config-edit-validator.ts
22949
+ var import_yaml5 = __toESM(require_dist(), 1);
22919
22950
  import { mkdtempSync, writeFileSync as writeFileSync2, rmSync as rmSync2, existsSync as existsSync7, readFileSync as readFileSync5 } from "node:fs";
22920
22951
  import { tmpdir } from "node:os";
22921
22952
  import { join as join4, isAbsolute as isAbsolute2, normalize, basename as basename2 } from "node:path";
@@ -23085,7 +23116,7 @@ function applyPatch(unifiedDiff, configPath, gitBin) {
23085
23116
  function failsafeParse(source) {
23086
23117
  let doc;
23087
23118
  try {
23088
- doc = $parseDocument(source, { merge: false, strict: true });
23119
+ doc = import_yaml5.parseDocument(source, { merge: false, strict: true });
23089
23120
  } catch (err2) {
23090
23121
  return {
23091
23122
  ok: false,
@@ -23101,25 +23132,25 @@ function failsafeParse(source) {
23101
23132
  };
23102
23133
  }
23103
23134
  let rejection = null;
23104
- $visit(doc, (_key, node, _path) => {
23135
+ import_yaml5.visit(doc, (_key, node, _path) => {
23105
23136
  if (rejection)
23106
- return $visit.BREAK;
23107
- if ($isAlias(node)) {
23137
+ return import_yaml5.visit.BREAK;
23138
+ if (import_yaml5.isAlias(node)) {
23108
23139
  rejection = {
23109
23140
  ok: false,
23110
23141
  code: "E_YAML_UNSAFE_CONSTRUCT",
23111
23142
  detail: "YAML aliases (`*name`) are not allowed"
23112
23143
  };
23113
- return $visit.BREAK;
23144
+ return import_yaml5.visit.BREAK;
23114
23145
  }
23115
- if ($isNode(node)) {
23146
+ if (import_yaml5.isNode(node)) {
23116
23147
  if (node.anchor) {
23117
23148
  rejection = {
23118
23149
  ok: false,
23119
23150
  code: "E_YAML_UNSAFE_CONSTRUCT",
23120
23151
  detail: `YAML anchors (\`&${node.anchor}\`) are not allowed`
23121
23152
  };
23122
- return $visit.BREAK;
23153
+ return import_yaml5.visit.BREAK;
23123
23154
  }
23124
23155
  const tag = node.tag;
23125
23156
  if (typeof tag === "string" && tag.startsWith("!")) {
@@ -23128,18 +23159,18 @@ function failsafeParse(source) {
23128
23159
  code: "E_YAML_UNSAFE_CONSTRUCT",
23129
23160
  detail: `YAML explicit tags (\`${tag}\`) are not allowed`
23130
23161
  };
23131
- return $visit.BREAK;
23162
+ return import_yaml5.visit.BREAK;
23132
23163
  }
23133
23164
  }
23134
- if ($isPair(node)) {
23165
+ if (import_yaml5.isPair(node)) {
23135
23166
  const k = node.key;
23136
- if ($isScalar(k) && k.value === "<<") {
23167
+ if (import_yaml5.isScalar(k) && k.value === "<<") {
23137
23168
  rejection = {
23138
23169
  ok: false,
23139
23170
  code: "E_YAML_UNSAFE_CONSTRUCT",
23140
23171
  detail: "YAML merge keys (`<<:`) are not allowed"
23141
23172
  };
23142
- return $visit.BREAK;
23173
+ return import_yaml5.visit.BREAK;
23143
23174
  }
23144
23175
  }
23145
23176
  return;
@@ -23275,7 +23306,7 @@ function validateConfigEdit(opts) {
23275
23306
  let beforeData = {};
23276
23307
  try {
23277
23308
  const beforeRaw = existsSync7(opts.configPath) ? readFileSync5(opts.configPath, "utf8") : "";
23278
- const beforeDoc = $parseDocument(beforeRaw, { merge: false, strict: false });
23309
+ const beforeDoc = import_yaml5.parseDocument(beforeRaw, { merge: false, strict: false });
23279
23310
  beforeData = beforeDoc.toJS();
23280
23311
  } catch {
23281
23312
  beforeData = {};
@@ -23289,8 +23320,8 @@ function assertSelfScopedAllowEdit(beforeContent, afterContent, caller) {
23289
23320
  let before;
23290
23321
  let after;
23291
23322
  try {
23292
- before = toObject($parseDocument(beforeContent, { merge: false, strict: false }).toJS());
23293
- after = toObject($parseDocument(afterContent, { merge: false, strict: false }).toJS());
23323
+ before = toObject(import_yaml5.parseDocument(beforeContent, { merge: false, strict: false }).toJS());
23324
+ after = toObject(import_yaml5.parseDocument(afterContent, { merge: false, strict: false }).toJS());
23294
23325
  } catch (e) {
23295
23326
  return { ok: false, detail: `self-scope: config did not parse (${e.message})` };
23296
23327
  }
@@ -23349,6 +23380,7 @@ function stripCallerAllow(cfg, caller) {
23349
23380
  }
23350
23381
 
23351
23382
  // src/host-control/config-blast-radius.ts
23383
+ var import_yaml6 = __toESM(require_dist(), 1);
23352
23384
  function toObject2(v) {
23353
23385
  return v && typeof v === "object" && !Array.isArray(v) ? v : {};
23354
23386
  }
@@ -23397,8 +23429,8 @@ function classifyBlastRadius(beforeYaml, afterYaml) {
23397
23429
  let before;
23398
23430
  let after;
23399
23431
  try {
23400
- before = toObject2($parse(beforeYaml));
23401
- after = toObject2($parse(afterYaml));
23432
+ before = toObject2(import_yaml6.parse(beforeYaml));
23433
+ after = toObject2(import_yaml6.parse(afterYaml));
23402
23434
  } catch {
23403
23435
  return { agents: [], fleetWide: true, changedPaths: ["<unparseable>"] };
23404
23436
  }
@@ -23789,8 +23821,8 @@ class HostdServer {
23789
23821
  this.idempotencyKeys.clear();
23790
23822
  }
23791
23823
  onConnection(socket, bindPath) {
23792
- const identity2 = socketPathToIdentity(bindPath);
23793
- if (!identity2) {
23824
+ const identity = socketPathToIdentity(bindPath);
23825
+ if (!identity) {
23794
23826
  socket.end();
23795
23827
  return;
23796
23828
  }
@@ -23809,7 +23841,7 @@ class HostdServer {
23809
23841
  return;
23810
23842
  const line = buf.slice(0, nl);
23811
23843
  buf = buf.slice(nl + 1);
23812
- this.handleLine(line, identity2, socket).catch((err2) => {
23844
+ this.handleLine(line, identity, socket).catch((err2) => {
23813
23845
  process.stderr.write(`hostd: handler error: ${err2.message}
23814
23846
  `);
23815
23847
  socket.end();