breakpoint-mcp 1.82.0 → 1.83.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/addon/breakpoint_mcp/operations.gd +298 -275
  2. package/addon/breakpoint_mcp/plugin.cfg +1 -1
  3. package/addon/breakpoint_mcp/runtime_bridge.gd +20 -3
  4. package/dist/addon-version.js.map +1 -0
  5. package/dist/annotations.js.map +1 -0
  6. package/dist/bridge.js +86 -2
  7. package/dist/bridge.js.map +1 -0
  8. package/dist/capabilities.js.map +1 -0
  9. package/dist/cli/args.js.map +1 -0
  10. package/dist/cli/clients.js.map +1 -0
  11. package/dist/cli/doctor.js +147 -6
  12. package/dist/cli/doctor.js.map +1 -0
  13. package/dist/cli/github.js.map +1 -0
  14. package/dist/cli/init.js +26 -4
  15. package/dist/cli/init.js.map +1 -0
  16. package/dist/cli/tools.js.map +1 -0
  17. package/dist/cli/usage.js +40 -1
  18. package/dist/cli/usage.js.map +1 -0
  19. package/dist/close-cause.js.map +1 -0
  20. package/dist/config.js.map +1 -0
  21. package/dist/confirm.js +13 -21
  22. package/dist/confirm.js.map +1 -0
  23. package/dist/connect-cause.js.map +1 -0
  24. package/dist/csdap.js.map +1 -0
  25. package/dist/cslsp.js.map +1 -0
  26. package/dist/dap.js +7 -1
  27. package/dist/dap.js.map +1 -0
  28. package/dist/exit-cause.js.map +1 -0
  29. package/dist/finiteness.js.map +1 -0
  30. package/dist/framing.js.map +1 -0
  31. package/dist/index.js +22 -1
  32. package/dist/index.js.map +1 -0
  33. package/dist/late-reply.js.map +1 -0
  34. package/dist/logger.js.map +1 -0
  35. package/dist/lsp.js.map +1 -0
  36. package/dist/mutation-guard.js +235 -0
  37. package/dist/mutation-guard.js.map +1 -0
  38. package/dist/path-cohort.js.map +1 -0
  39. package/dist/paths.js.map +1 -0
  40. package/dist/pause.js.map +1 -0
  41. package/dist/peers.js +10 -3
  42. package/dist/peers.js.map +1 -0
  43. package/dist/ports.js.map +1 -0
  44. package/dist/readiness.js.map +1 -0
  45. package/dist/recipes.js.map +1 -0
  46. package/dist/remedies.js.map +1 -0
  47. package/dist/result-cost.js.map +1 -0
  48. package/dist/schemas.js +123 -46
  49. package/dist/schemas.js.map +1 -0
  50. package/dist/secret.js.map +1 -0
  51. package/dist/spawn-guard.js +76 -0
  52. package/dist/spawn-guard.js.map +1 -0
  53. package/dist/stdio.js.map +1 -0
  54. package/dist/subscriptions.js.map +1 -0
  55. package/dist/tasks.js.map +1 -0
  56. package/dist/timeout-cause.js.map +1 -0
  57. package/dist/timeout-caveat.js.map +1 -0
  58. package/dist/tools/assetgen.js +13 -7
  59. package/dist/tools/assetgen.js.map +1 -0
  60. package/dist/tools/backend.js +4 -0
  61. package/dist/tools/backend.js.map +1 -0
  62. package/dist/tools/cli.js +62 -19
  63. package/dist/tools/cli.js.map +1 -0
  64. package/dist/tools/csdap.js.map +1 -0
  65. package/dist/tools/cslsp.js.map +1 -0
  66. package/dist/tools/dap.js +18 -9
  67. package/dist/tools/dap.js.map +1 -0
  68. package/dist/tools/editor/animation.js +3 -3
  69. package/dist/tools/editor/animation.js.map +1 -0
  70. package/dist/tools/editor/audio.js +5 -3
  71. package/dist/tools/editor/audio.js.map +1 -0
  72. package/dist/tools/editor/common.js.map +1 -0
  73. package/dist/tools/editor/core.js.map +1 -0
  74. package/dist/tools/editor/filesystem.js.map +1 -0
  75. package/dist/tools/editor/introspection.js.map +1 -0
  76. package/dist/tools/editor/node.js +4 -4
  77. package/dist/tools/editor/node.js.map +1 -0
  78. package/dist/tools/editor/particles.js +2 -1
  79. package/dist/tools/editor/particles.js.map +1 -0
  80. package/dist/tools/editor/physics.js +5 -4
  81. package/dist/tools/editor/physics.js.map +1 -0
  82. package/dist/tools/editor/project_input_test.js.map +1 -0
  83. package/dist/tools/editor/resource.js +11 -6
  84. package/dist/tools/editor/resource.js.map +1 -0
  85. package/dist/tools/editor/scene.js +7 -4
  86. package/dist/tools/editor/scene.js.map +1 -0
  87. package/dist/tools/editor/shader.js +4 -3
  88. package/dist/tools/editor/shader.js.map +1 -0
  89. package/dist/tools/editor/signal.js.map +1 -0
  90. package/dist/tools/editor/spatial.js +15 -8
  91. package/dist/tools/editor/spatial.js.map +1 -0
  92. package/dist/tools/editor/tiles.js +5 -3
  93. package/dist/tools/editor/tiles.js.map +1 -0
  94. package/dist/tools/editor/ui.js +6 -4
  95. package/dist/tools/editor/ui.js.map +1 -0
  96. package/dist/tools/editor.js.map +1 -0
  97. package/dist/tools/knowledge.js.map +1 -0
  98. package/dist/tools/lsp-common.js.map +1 -0
  99. package/dist/tools/lsp.js.map +1 -0
  100. package/dist/tools/netcode.js +6 -5
  101. package/dist/tools/netcode.js.map +1 -0
  102. package/dist/tools/processes.js +28 -8
  103. package/dist/tools/processes.js.map +1 -0
  104. package/dist/tools/resources.js.map +1 -0
  105. package/dist/tools/runtime.js +2 -1
  106. package/dist/tools/runtime.js.map +1 -0
  107. package/dist/tools/tabletop.js +49 -23
  108. package/dist/tools/tabletop.js.map +1 -0
  109. package/dist/tools/vcs.js +21 -3
  110. package/dist/tools/vcs.js.map +1 -0
  111. package/dist/toolsets.js.map +1 -0
  112. package/dist/version.js.map +1 -0
  113. package/dist/wire-defaults.js.map +1 -0
  114. package/package.json +2 -1
@@ -3,5 +3,5 @@
3
3
  name="Breakpoint MCP"
4
4
  description="Exposes the live Godot editor and the running game to an MCP host so an AI assistant can drive them: scene/node/resource CRUD with full undo/redo, project settings, ClassDB, editor + in-game screenshots, and an in-game runtime bridge (live SceneTree, property get/set, method calls, signals, input injection, Performance monitors). Pairs with the breakpoint-mcp MCP host."
5
5
  author="James Livingston"
6
- version="1.12.0"
6
+ version="1.15.0"
7
7
  script="plugin.gd"
@@ -20,7 +20,7 @@ extends Node
20
20
  ## and the process that is already running keeps the addon it loaded. Held in lockstep
21
21
  ## with `plugin.cfg` and with `operations.gd`'s copy by contract_check check 14, which
22
22
  ## exists because two of those literals disagreed for two releases.
23
- const ADDON_VERSION := "1.12.0"
23
+ const ADDON_VERSION := "1.15.0"
24
24
  const Codec := preload("res://addons/breakpoint_mcp/variant_json.gd")
25
25
  const Remedies := preload("res://addons/breakpoint_mcp/error_remedies.gd")
26
26
  const DEFAULT_PORT := 9081
@@ -1131,8 +1131,25 @@ func _node_add(params: Dictionary) -> Dictionary:
1131
1131
  var nm := String(params.get("name", ""))
1132
1132
  if nm != "":
1133
1133
  child.name = nm
1134
- parent.add_child(child)
1135
- return _ok({"added": true, "path": _path_of(child), "type": child.get_class()})
1134
+ # 🔴 283 §1's DEFECT ON THE OTHER PLANE, AND THIS ONE COULD NOT EVEN BE SEEN.
1135
+ # `force_readable_name = true` for the same reason the twenty-two editor sites now
1136
+ # pass it: Godot's default answers ANY name collision with the machine form
1137
+ # `@Type@N`, so a caller asking twice for the same name got a node it could not
1138
+ # address. Worse here than there — this reply carried `path` and `type` and NO
1139
+ # `name`, so nothing in the answer even hinted the name had been replaced. 1.42.0's
1140
+ # rule about the second call site, and 282 §11.1 paying it again.
1141
+ # 🔴 ONLY A NAME THE CALLER ASKED FOR CAN BE COERCED, and the first draft of this got
1142
+ # it wrong in a way the live probe caught: an unparented `ClassDB.instantiate()` node
1143
+ # has an EMPTY name, so reading `requested` off the node reported every unnamed add as
1144
+ # `coerced` from `""`. That is noise dressed as a diagnosis — the caller asked for
1145
+ # nothing, so nothing was taken from it. The editor plane cannot hit this because it
1146
+ # always writes a default name before adding; this plane deliberately does not.
1147
+ parent.add_child(child, true)
1148
+ var out := {"added": true, "path": _path_of(child), "name": String(child.name), "type": child.get_class()}
1149
+ if nm != "" and String(child.name) != nm:
1150
+ out["coerced"] = true
1151
+ out["requested"] = nm
1152
+ return _ok(out)
1136
1153
 
1137
1154
 
1138
1155
  func _node_remove(params: Dictionary) -> Dictionary:
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addon-version.js","sourceRoot":"","sources":["../src/addon-version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,kFAAkF;AAClF,MAAM,CAAC,MAAM,SAAS,GAAG,uBAAuB,CAAC;AAEjD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,eAAe,GAC1B,0NAA0N,CAAC;AAE7N;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC;QACxE,MAAM,CAAC,GAAG,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,qBAAqB,CAAC,WAAmB;IACvD,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;AAC7D,CAAC;AAKD;;;;;;;;;GASG;AACH,MAAM,UAAU,oBAAoB,CAAC,SAAwB,EAAE,OAAsB;IACnF,IAAI,SAAS,KAAK,IAAI,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAC7D,MAAM,KAAK,GAAG,CAAC,CAAS,EAAmB,EAAE;QAC3C,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC;YAClC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC;QACD,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IACrC,CAAC,CAAC;IACF,MAAM,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;IAC3B,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IACzB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACtD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACpB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACpB,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,OAAO,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,OAAO,CAAC;IAC5B,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotations.js","sourceRoot":"","sources":["../src/annotations.ts"],"names":[],"mappings":"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"}
package/dist/bridge.js CHANGED
@@ -270,6 +270,64 @@ export class BridgeClient {
270
270
  * for a later, unrelated drop.
271
271
  */
272
272
  lastSocketError = null;
273
+ /**
274
+ * 283 §2 — WHAT THE PEER ON THIS PORT HAS ACTUALLY PROVED ABOUT ITSELF.
275
+ *
276
+ * 🔴 FOUR READERS OF ONE FACT AND TWO OF THEM WERE WRONG. `doctor` says "open,
277
+ * but no Breakpoint bridge answered" and `dbg_launch` refuses with the port
278
+ * conflict spelled out; the `runtime_*` family — reading the same socket —
279
+ * answered a foreign Godot with `bridge_closed`'s *"the running game closed the
280
+ * connection in an orderly way … which is what a shutdown looks like from here"*
281
+ * when there was never a game of ours, and answered a foreign listener that
282
+ * simply never speaks by hanging for the full timeout and then saying nothing
283
+ * about the port at all. Measured against a headless game leaked from a probe
284
+ * run six days earlier that was still holding 9081.
285
+ *
286
+ * 🔵 THE HOST ALREADY HELD BOTH ANSWERS AND NEVER LOOKED AT THEM. A peer that
287
+ * speaks the protocol sends a frame; a peer whose secret is wrong sends exactly
288
+ * one — `{"id": null, "ok": false, "error": {"code": "unauthorized"}}` — and
289
+ * closes. So "is this our bridge" and "is this our bridge with the wrong key"
290
+ * are DERIVED from what arrived on the wire, not from a roster of ports, and the
291
+ * two failures that look most alike get different sentences.
292
+ *
293
+ * 🔴 THE CODES DO NOT MOVE. `bridge_closed` and the timeout code are branched on
294
+ * by callers and tests (264, 268); what changes is the remedy a human reads —
295
+ * 254's rule about fixing what the reader acts on and leaving the wire
296
+ * vocabulary alone.
297
+ */
298
+ sawBridgeFrame = false;
299
+ sawAuthDenial = false;
300
+ /**
301
+ * DEFINITIVE: the peer spoke our protocol and refused this key.
302
+ *
303
+ * 🔵 STRONG ENOUGH TO OVERRULE THE CLOSE CAUSE, because it is not an inference.
304
+ * The peer sent `unauthorized` and hung up, so "why did the socket go away" —
305
+ * which is all `closeRemedy` can answer — is the wrong question: it went away on
306
+ * purpose, and the reader needs the secret, not the errno.
307
+ */
308
+ authDenialRemedy() {
309
+ if (!this.sawAuthDenial)
310
+ return undefined;
311
+ return `The peer on ${this.host}:${this.port} answered the Breakpoint handshake with "unauthorized", so something IS listening with our protocol but not with this project's secret — another Godot instance, or a stale key. Close other Godot instances, or delete res://.godot/breakpoint_mcp.secret and reopen the project to remint it.`;
312
+ }
313
+ /**
314
+ * INFERENCE: nothing on this connection has ever spoken the protocol.
315
+ *
316
+ * 🔴 AND IT IS ONLY SAFE ON THE DEADLINE, WHICH IS WHY IT IS NOT ON THE CLOSE
317
+ * PATH. A bridge that IS ours also sends no frame if the game is killed before it
318
+ * can answer — so on a close, "never spoke" cannot separate a foreign listener
319
+ * from our own peer dying mid-request, and asserting it there would throw away
320
+ * 264's errno distinction between a reset and a clean shutdown to say something
321
+ * weaker. Past a FULL deadline on a socket that accepted the connection and then
322
+ * said nothing at all, the reading holds: that is the 15 s of silence measured at
323
+ * 283 against a foreign listener, where the only thing the caller was told was
324
+ * `timed out after 15000ms`.
325
+ */
326
+ silentPeerRemedy() {
327
+ if (this.sawBridgeFrame)
328
+ return undefined;
329
+ return `Nothing on ${this.host}:${this.port} has ever spoken the Breakpoint bridge protocol on this connection, so this is not ${this.peerNoun} failing — it is a port held by something else. Find what holds it with \`lsof -nP -iTCP:${this.port} -sTCP:LISTEN\`, or point this plane elsewhere with ${this.hostKnob} and its port knob.`;
330
+ }
273
331
  connect() {
274
332
  if (this.socket && !this.socket.destroyed)
275
333
  return Promise.resolve(this.socket);
@@ -282,6 +340,10 @@ export class BridgeClient {
282
340
  this.socket = socket;
283
341
  this.connecting = null;
284
342
  this.lastSocketError = null;
343
+ // A new socket has proved nothing yet — 283 §2. Reset both, or a peer that
344
+ // once answered would vouch for whatever holds the port after it.
345
+ this.sawBridgeFrame = false;
346
+ this.sawAuthDenial = false;
285
347
  this.clearReconnect();
286
348
  // Loopback-auth handshake: if a secret is available it MUST be the first
287
349
  // line on the connection. TCP preserves order and the addon drains lines
@@ -369,6 +431,12 @@ export class BridgeClient {
369
431
  log("bridge sent non-JSON line:", line);
370
432
  return;
371
433
  }
434
+ // 283 §2: a parsed frame is the peer proving it speaks this protocol, and the
435
+ // pre-auth denial is it proving it speaks the protocol with the WRONG key. Both
436
+ // are recorded HERE because this is the only place a line from the peer is read.
437
+ this.sawBridgeFrame = true;
438
+ if (msg.id == null && msg.ok === false && msg.error?.code === "unauthorized")
439
+ this.sawAuthDenial = true;
372
440
  // D3: unsolicited change events carry an `event` field and no request id.
373
441
  if (msg.event === "resource.changed" && typeof msg.uri === "string") {
374
442
  const uri = msg.uri;
@@ -450,7 +518,13 @@ export class BridgeClient {
450
518
  // sentence, differing by one parenthetical nothing instructed the caller to act on.
451
519
  // `cause.code` separates them, and this is the one close site whose class has a field
452
520
  // to put the answer in — see close-cause.ts for the four that do not.
453
- const remedy = closeRemedy(cause, this.peerNoun);
521
+ // 283 §2: closeRemedy answers "why did the peer go away", which is the wrong
522
+ // question when the peer hung up ON PURPOSE because our key was wrong — the case
523
+ // that read as *the running game closed the connection in an orderly way … which
524
+ // is what a shutdown looks like from here* against a foreign Godot holding 9081.
525
+ // Only the DEFINITIVE signal is allowed to overrule the errno here; see
526
+ // silentPeerRemedy for why the weaker one is not.
527
+ const remedy = this.authDenialRemedy() ?? closeRemedy(cause, this.peerNoun);
454
528
  for (const [, p] of this.pending) {
455
529
  clearTimeout(p.timer);
456
530
  p.reject(new BridgeError("bridge_closed", `Bridge connection closed before a response arrived${detail}`, remedy));
@@ -487,7 +561,17 @@ export class BridgeClient {
487
561
  // line — a peer that never answered really does leave nothing behind — which is
488
562
  // why the one cause the host can supply comes from outside the socket: its own
489
563
  // debugger holding the game. See `setHoldProbe`, and 264's census for the rest.
490
- reject(new BridgeError(BRIDGE_TIMEOUT_CODE, `Bridge request '${method}' timed out after ${timeoutMs}ms`, this.holdProbe?.() ?? undefined));
564
+ // 283 §2: a full timeout against a port that has never produced a frame is
565
+ // not a slow peer, and saying only "timed out after 15000ms" left the user
566
+ // with no next action at all.
567
+ //
568
+ // 🔴 THE HOLD PROBE STILL GOES FIRST, AND THE ORDER IS THE ARGUMENT. It reports
569
+ // a POSITIVE fact this host owns — our own debugger has the game stopped — while
570
+ // the stranger reading is an INFERENCE from silence. When the debugger is
571
+ // holding, the peer IS ours and is merely halted, so "nothing here speaks our
572
+ // protocol" would be a confident wrong answer. Inference fills the gap the
573
+ // positive fact leaves; it never overrules it.
574
+ reject(new BridgeError(BRIDGE_TIMEOUT_CODE, `Bridge request '${method}' timed out after ${timeoutMs}ms`, this.holdProbe?.() ?? this.authDenialRemedy() ?? this.silentPeerRemedy() ?? undefined));
491
575
  }, timeoutMs);
492
576
  this.pending.set(id, { resolve: resolve, reject, timer, method });
493
577
  socket.write(payload, (err) => {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,aAAa,EAAkB,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAChH,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAyBhE,MAAM,OAAO,WAAY,SAAQ,KAAK;IACpC,IAAI,CAAS;IACb;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAU;IAChB,YAAY,IAAY,EAAE,OAAe,EAAE,MAAe;QACxD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,MAAM;YAAE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACnC,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,oBAAoB,CAAC;AAEvD;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAY;IACjD,OAAQ,GAA+C,EAAE,IAAI,KAAK,kBAAkB,CAAC;AACvF,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,YAAY,CAAC,GAAY;IACvC,MAAM,CAAC,GAAI,GAA+C,EAAE,MAAM,CAAC;IACnE,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5D,CAAC;AAED,kFAAkF;AAClF,MAAM,CAAC,MAAM,mBAAmB,GAAG,SAAS,CAAC;AAE7C;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,OAAO,iBAAiB,IAAI,GAAG,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,aAAa,CAAC;AAEhD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAC7B,oFAAoF;IACpF,iFAAiF;IACjF,8BAA8B,CAAC;AAEjC;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAc,EAAE,KAAY;IAC5D,OAAO,CACL,mBAAmB,MAAM,0DAA0D;QACnF,2EAA2E,KAAK,CAAC,OAAO,IAAI,CAC7F,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,YAAY;IAYJ;IACA;IACA;IACA;IAUA;IAQA;IAhCX,MAAM,GAAsB,IAAI,CAAC;IACjC,UAAU,GAA+B,IAAI,CAAC;IAC9C,MAAM,GAAG,EAAE,CAAC;IACZ,OAAO,GAAG,IAAI,GAAG,EAAmB,CAAC;IAC7C,sFAAsF;IACrE,MAAM,CAAwB;IACvC,cAAc,GAAG,IAAI,GAAG,EAA2B,CAAC;IACpD,aAAa,GAAG,KAAK,CAAC;IACtB,cAAc,GAA0B,IAAI,CAAC;IAErD,YACmB,IAAY,EACZ,IAAY,EACZ,gBAAwB,EACxB,QAAQ,eAAe;IACxC,2EAA2E;IAC3E,2EAA2E;IAC3E,wEAAwE;IACxE,2EAA2E;IAC3E,yEAAyE;IACzE,4EAA4E;IAC5E,2EAA2E;IAC3E,yEAAyE;IACzE,yDAAyD;IACxC,OAAO,kNAAkN;IAC1O;;;;;;OAMG;IACc,cAAoC;IACrD;;;;;;;;;OASG;IACH,YAAY,GAAG,8BAA8B,EAC7C,QAAQ,GAAG,YAAY;IACvB;;;;;;;;OAQG;IACH,QAAQ,GAAG,wBAAwB;QA3ClB,SAAI,GAAJ,IAAI,CAAQ;QACZ,SAAI,GAAJ,IAAI,CAAQ;QACZ,qBAAgB,GAAhB,gBAAgB,CAAQ;QACxB,UAAK,GAAL,KAAK,CAAkB;QAUvB,SAAI,GAAJ,IAAI,CAAqN;QAQzN,mBAAc,GAAd,cAAc,CAAsB;QAwBrD,IAAI,CAAC,MAAM,GAAG,IAAI,aAAa,CAAS,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;QAC1E,oFAAoF;QACpF,qFAAqF;QACrF,8BAA8B;QAC9B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,wFAAwF;IACvE,QAAQ,CAAS;IAElC,kFAAkF;IACjE,QAAQ,CAAS;IAElC;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,YAAY,CAAC,KAA+B;QAC1C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACzB,CAAC;IAEO,SAAS,GAAsC,IAAI,CAAC;IAE5D,mEAAmE;IACnE,iBAAiB,CAAC,EAA2B;QAC3C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;;;;;;;OAWG;IACK,eAAe,GAAiB,IAAI,CAAC;IAE7C;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACK,cAAc,GAAG,KAAK,CAAC;IACvB,aAAa,GAAG,KAAK,CAAC;IAE9B;;;;;;;OAOG;IACK,gBAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO,SAAS,CAAC;QAC1C,OAAO,eAAe,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,iSAAiS,CAAC;IAChV,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,gBAAgB;QACtB,IAAI,IAAI,CAAC,cAAc;YAAE,OAAO,SAAS,CAAC;QAC1C,OAAO,cAAc,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,sFAAsF,IAAI,CAAC,QAAQ,4FAA4F,IAAI,CAAC,IAAI,uDAAuD,IAAI,CAAC,QAAQ,qBAAqB,CAAC;IAC/U,CAAC;IAEO,OAAO;QACb,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/E,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC,UAAU,CAAC;QAE5C,IAAI,CAAC,UAAU,GAAG,IAAI,OAAO,CAAa,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC5D,MAAM,MAAM,GAAG,GAAG,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAE1E,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE;gBAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;gBAC5B,2EAA2E;gBAC3E,kEAAkE;gBAClE,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;gBAC5B,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;gBAC3B,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,yEAAyE;gBACzE,yEAAyE;gBACzE,yEAAyE;gBACzE,oEAAoE;gBACpE,uEAAuE;gBACvE,oEAAoE;gBACpE,yEAAyE;gBACzE,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,IAAI,CAAC;gBAC/C,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC9E,CAAC;gBACD,GAAG,CAAC,uBAAuB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACrD,OAAO,CAAC,MAAM,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,0EAA0E;gBAC1E,yEAAyE;gBACzE,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC;gBAC3B,gFAAgF;gBAChF,2EAA2E;gBAC3E,iFAAiF;gBACjF,mEAAmE;gBACnE,8EAA8E;gBAC9E,8EAA8E;gBAC9E,gFAAgF;gBAChF,iEAAiE;gBACjE,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzC,MAAM,CACJ,IAAI,WAAW,CACb,kBAAkB,EAClB,0BAA0B,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,OAAO,GAAG,EAC9G,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CACjD,CACF,CAAC;YACJ,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACjD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,eAAe;QACb,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CACxB,GAAG,EAAE,GAAE,CAAC,EACR,GAAG,EAAE;YACH,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC,CACF,CAAC;IACJ,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,cAAc;YAAE,OAAO;QACvD,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS;YAAE,OAAO;QAClD,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;YACpC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,aAAa;gBAAE,OAAO;YAChC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CACjB,GAAG,EAAE,GAAE,CAAC,EACR,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAC/B,CAAC;QACJ,CAAC,EAAE,IAAI,CAAC,CAAC;QACT,+DAA+D;QAC/D,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC;IAChC,CAAC;IAEO,cAAc;QACpB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAClC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,KAAsB;QACnC,IAAI,CAAC,MAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC1E,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACnC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;YACjB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YACxC,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC/B,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAEO,SAAS,CAAC,IAAY;QAC5B,IAAI,GAOH,CAAC;QACF,IAAI,CAAC;YACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACP,GAAG,CAAC,4BAA4B,EAAE,IAAI,CAAC,CAAC;YACxC,OAAO;QACT,CAAC;QACD,8EAA8E;QAC9E,gFAAgF;QAChF,iFAAiF;QACjF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,GAAG,CAAC,KAAK,EAAE,IAAI,KAAK,cAAc;YAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QACxG,0EAA0E;QAC1E,IAAI,GAAG,CAAC,KAAK,KAAK,kBAAkB,IAAI,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YACpE,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;YACpB,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACrC,IAAI,CAAC;oBACH,EAAE,CAAC,GAAG,CAAC,CAAC;gBACV,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,kCAAkC,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC5F,CAAC;YACH,CAAC;YACD,OAAO;QACT,CAAC;QACD,MAAM,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1B,6EAA6E;YAC7E,2EAA2E;YAC3E,4EAA4E;YAC5E,yEAAyE;YACzE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;YAC3C,OAAO;QACT,CAAC;QACD,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACxB,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACtB,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;YACX,mFAAmF;YACnF,iFAAiF;YACjF,kFAAkF;YAClF,iDAAiD;YACjD,EAAE;YACF,iFAAiF;YACjF,iFAAiF;YACjF,2EAA2E;YAC3E,+EAA+E;YAC/E,kFAAkF;YAClF,4EAA4E;YAC5E,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;YAChC,IAAI,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;gBACnC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;gBACnC,IAAI,IAAI,CAAC,MAAM;oBAAE,CAAC,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,YAAY,EAAE,iBAAiB,CAAC,IAAI,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;oBACpG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC;YAC5E,2EAA2E;YAC3E,0EAA0E;YAC1E,0EAA0E;YAC1E,0EAA0E;YAC1E,mEAAmE;YACnE,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YACjE,CAAC,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IAC9B,CAAC;IAEO,OAAO;QACb,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,8EAA8E;QAC9E,wEAAwE;QACxE,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,IAAI,SAAS,CAAC;QAChD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QAClC,sFAAsF;QACtF,mFAAmF;QACnF,oFAAoF;QACpF,sFAAsF;QACtF,sEAAsE;QACtE,6EAA6E;QAC7E,iFAAiF;QACjF,iFAAiF;QACjF,iFAAiF;QACjF,wEAAwE;QACxE,kDAAkD;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,IAAI,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5E,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC,CAAC,MAAM,CACN,IAAI,WAAW,CAAC,eAAe,EAAE,qDAAqD,MAAM,EAAE,EAAE,MAAM,CAAC,CACxG,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,kFAAkF;QAClF,IAAI,IAAI,CAAC,aAAa;YAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC;IACnD,CAAC;IAED,0DAA0D;IAC1D,KAAK,CAAC,OAAO,CACX,MAAc,EACd,SAAkC,EAAE,EACpC,SAAS,GAAG,IAAI,CAAC,gBAAgB;QAEjC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC;QAE9D,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACxC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACxB,oEAAoE;gBACpE,+CAA+C;gBAC/C,EAAE;gBACF,uEAAuE;gBACvE,4EAA4E;gBAC5E,+EAA+E;gBAC/E,6EAA6E;gBAC7E,+EAA+E;gBAC/E,gFAAgF;gBAChF,8BAA8B;gBAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;gBACxC,iFAAiF;gBACjF,mFAAmF;gBACnF,mFAAmF;gBACnF,kFAAkF;gBAClF,+EAA+E;gBAC/E,gFAAgF;gBAChF,+EAA+E;gBAC/E,gFAAgF;gBAChF,2EAA2E;gBAC3E,2EAA2E;gBAC3E,8BAA8B;gBAC9B,EAAE;gBACF,gFAAgF;gBAChF,iFAAiF;gBACjF,0EAA0E;gBAC1E,8EAA8E;gBAC9E,2EAA2E;gBAC3E,+CAA+C;gBAC/C,MAAM,CAAC,IAAI,WAAW,CAAC,mBAAmB,EAAE,mBAAmB,MAAM,qBAAqB,SAAS,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,IAAI,CAAC,gBAAgB,EAAE,IAAI,IAAI,CAAC,gBAAgB,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC;YACnM,CAAC,EAAE,SAAS,CAAC,CAAC;YACd,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,OAA+B,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1F,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBAC5B,IAAI,GAAG,EAAE,CAAC;oBACR,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACxB,8EAA8E;oBAC9E,6EAA6E;oBAC7E,gFAAgF;oBAChF,+EAA+E;oBAC/E,4EAA4E;oBAC5E,yEAAyE;oBACzE,2EAA2E;oBAC3E,iFAAiF;oBACjF,2EAA2E;oBAC3E,+EAA+E;oBAC/E,EAAE;oBACF,+EAA+E;oBAC/E,2EAA2E;oBAC3E,gFAAgF;oBAChF,+EAA+E;oBAC/E,kCAAkC;oBAClC,MAAM,CAAC,IAAI,WAAW,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC;gBAClG,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK;QACH,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,IAAI,CAAC,MAAM;YAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;CACF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clients.js","sourceRoot":"","sources":["../../src/cli/clients.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,27 @@ import { BridgeClient } from "../bridge.js";
41
41
  import { resolveBridgeSecret } from "../secret.js";
42
42
  import { ADDON_REL, ADDON_SKEW_HINT, compareAddonVersions, readAddonVersion, } from "../addon-version.js";
43
43
  import { resolveBundledAddon } from "./init.js";
44
+ /**
45
+ * The withheld population, DERIVED from the checks' own `withholds` and from
46
+ * which names the report actually carries.
47
+ *
48
+ * A gating check that PASSED withholds nothing, so the subtraction is against
49
+ * the report rather than against the branch: a future check that starts
50
+ * producing one of its dependents on some other path drops out of this list
51
+ * without anybody remembering to edit it.
52
+ */
53
+ export function withheldChecks(checks) {
54
+ const present = new Set(checks.map((c) => c.name));
55
+ const out = new Set();
56
+ for (const c of checks) {
57
+ if (c.status === "ok" || !c.withholds)
58
+ continue;
59
+ for (const n of c.withholds)
60
+ if (!present.has(n))
61
+ out.add(n);
62
+ }
63
+ return [...out].sort();
64
+ }
44
65
  /**
45
66
  * Which bridges a run insists on.
46
67
  *
@@ -99,6 +120,26 @@ export function isPluginEnabled(projectGodotText) {
99
120
  }
100
121
  return false;
101
122
  }
123
+ /**
124
+ * The minimum engine this host supports, as ONE pair of numbers.
125
+ *
126
+ * 🔴 282 — `USER_GUIDE.md` §2 and this check's own failure hint have both said
127
+ * *4.2+* since they were written, and nothing anywhere enforced it. Written here
128
+ * as the single literal both the check and its self-test read, because the
129
+ * alternative is the shape 203 §2 has a rule about: a number in a sentence and a
130
+ * number in a branch, agreeing until somebody edits one of them.
131
+ */
132
+ export const MIN_GODOT = [4, 2];
133
+ /**
134
+ * The engine version a `--version` line names, or `null` when it names none.
135
+ *
136
+ * Godot prints `4.4.1.stable.official.f47bb5e` or `4.3.stable.official`; the
137
+ * pair is all this check needs and the rest is deliberately not parsed.
138
+ */
139
+ export function parseGodotVersion(line) {
140
+ const m = /^(\d+)\.(\d+)(?:[.\s]|$)/.exec(line.trim());
141
+ return m ? [Number(m[1]), Number(m[2])] : null;
142
+ }
102
143
  function checkGodotBinary(bin, timeoutMs) {
103
144
  const res = spawnSync(bin, ["--version"], { timeout: timeoutMs, encoding: "utf8" });
104
145
  if (res.error) {
@@ -112,6 +153,34 @@ function checkGodotBinary(bin, timeoutMs) {
112
153
  };
113
154
  }
114
155
  const version = (res.stdout ?? "").trim().split(/\r?\n/)[0] || "(no version output)";
156
+ // 🔴 282 — THE PASS PATH USED TO ACCEPT ANYTHING THAT SPAWNED. Measured on the
157
+ // published 1.82.1: `GODOT_BIN=/bin/ls` produced `✓ godot-binary /bin/ls → ls
158
+ // (GNU coreutils) 9.4`, and a real Godot 3.5 binary passed a check whose own
159
+ // failure hint says *Install Godot 4.2+*. `spawnSync` not erroring answers
160
+ // "something ran", which is not the question this row's name asks — 276's *a
161
+ // column with no stated predicate cannot be wrong*, spelled as a check whose
162
+ // predicate was the absence of an exception.
163
+ const parsed = parseGodotVersion(version);
164
+ if (parsed === null) {
165
+ return {
166
+ name: "godot-binary",
167
+ status: "fail",
168
+ severity: "required",
169
+ detail: `${bin} ran but did not report a Godot version (${version})`,
170
+ hint: `That binary answered '--version' with something that is not a Godot version. Point GODOT_BIN at the Godot executable itself (on macOS: /Applications/Godot.app/Contents/MacOS/Godot).`,
171
+ };
172
+ }
173
+ const [maj, min] = parsed;
174
+ const [needMaj, needMin] = MIN_GODOT;
175
+ if (maj < needMaj || (maj === needMaj && min < needMin)) {
176
+ return {
177
+ name: "godot-binary",
178
+ status: "fail",
179
+ severity: "required",
180
+ detail: `${bin} → ${version} (below the minimum ${needMaj}.${needMin})`,
181
+ hint: `This host needs Godot ${needMaj}.${needMin} or newer. Install it and put it on PATH, or set GODOT_BIN to its absolute path.`,
182
+ };
183
+ }
115
184
  return {
116
185
  name: "godot-binary",
117
186
  status: "ok",
@@ -179,7 +248,16 @@ function checkAddon(projectPath) {
179
248
  status: "skip",
180
249
  severity: "info",
181
250
  detail: `no project.godot at ${projectPath}`,
182
- hint: "Pass --project <dir> pointing at your Godot project, or run from the project root.",
251
+ // 🔴 282 — THE HINT NAMED A FLAG THAT DOES NOT EXIST ON ONE OF ITS TWO
252
+ // SURFACES. The same `Check` is returned by the `breakpoint_doctor` MCP
253
+ // tool, whose input schema is `additionalProperties: false` over
254
+ // `require_live`, `live_level`, `include_csharp`, `timeout_ms` — there is
255
+ // no `--project` to pass in a conversation, and an assistant reading the
256
+ // remedy would try an argument that cannot be accepted. Both remedies are
257
+ // named because the reader is sometimes a terminal and sometimes not.
258
+ hint: "Point this at your Godot project: pass `--project <dir>` on the command line, " +
259
+ "or set GODOT_PROJECT in the server's environment and restart the server.",
260
+ withholds: ["addon-installed", "addon-version", "addon-enabled"],
183
261
  },
184
262
  ];
185
263
  }
@@ -428,6 +506,7 @@ export async function runDoctorChecks(config, opts) {
428
506
  status: "fail",
429
507
  severity,
430
508
  liveness,
509
+ tier: b.tier,
431
510
  detail: `${b.host}:${b.port} unreachable`,
432
511
  hint: b.hint,
433
512
  };
@@ -448,6 +527,7 @@ export async function runDoctorChecks(config, opts) {
448
527
  status: "fail",
449
528
  severity,
450
529
  liveness,
530
+ tier: b.tier,
451
531
  detail: `${b.host}:${b.port} open, but no Breakpoint bridge answered`,
452
532
  hint: "Something holds that port without speaking the bridge protocol, or the shared secret is stale. Close other Godot instances, or delete res://.godot/breakpoint_mcp.secret and reopen the editor to remint it.",
453
533
  };
@@ -458,6 +538,7 @@ export async function runDoctorChecks(config, opts) {
458
538
  status: "ok",
459
539
  severity,
460
540
  liveness,
541
+ tier: b.tier,
461
542
  detail: `${b.host}:${b.port} reachable${b.secretEnv ? " · bridge answered" : ""}`,
462
543
  };
463
544
  }));
@@ -475,8 +556,9 @@ export async function runDoctorChecks(config, opts) {
475
556
  checks.push(checkCsharpTool("csharp-lsp", config.csLspCmd));
476
557
  checks.push(checkCsharpTool("csharp-dap", config.csDapCmd));
477
558
  }
478
- const ok = checks.every((c) => c.severity !== "required" || c.status !== "fail");
479
- return { checks, ok };
559
+ const withheld = withheldChecks(checks);
560
+ const ok = checks.every((c) => c.severity !== "required" || c.status !== "fail") && withheld.length === 0;
561
+ return { checks, ok, withheld, liveLevel: opts.liveLevel };
480
562
  }
481
563
  /**
482
564
  * 🔴 `✗` IS RESERVED FOR A CHECK THAT FAILED THE RUN. An informational check
@@ -502,6 +584,19 @@ function glyph(c) {
502
584
  export function summaryLine(report) {
503
585
  const failed = report.checks.filter((c) => c.status === "fail");
504
586
  const noted = failed.filter((c) => c.severity === "info");
587
+ // 🔴 282 — THE WITHHELD SET IS NAMED BEFORE THE FAILED SET, because it is the
588
+ // stronger statement: a check that failed was run and answered, and a check
589
+ // that was withheld was not run at all. Saying "some required checks failed"
590
+ // over a run that skipped three of them would be true and would still leave
591
+ // the reader to work out that the answer is *unknown* rather than *no*.
592
+ if (report.withheld.length) {
593
+ const gates = report.checks
594
+ .filter((c) => c.status !== "ok" && c.withholds?.some((n) => report.withheld.includes(n)))
595
+ .map((c) => c.name)
596
+ .join(", ");
597
+ return (`Not verified — ${report.withheld.length} check(s) never ran because ${gates} did not pass: ` +
598
+ `${report.withheld.join(", ")}. This is not a pass; see the ↳ hints above.`);
599
+ }
505
600
  if (!report.ok)
506
601
  return "Some required checks failed — see the ↳ hints above.";
507
602
  if (noted.length === 0)
@@ -515,8 +610,28 @@ export function summaryLine(report) {
515
610
  // those about the whole set is how the line contradicted the glyphs the first time.
516
611
  const parts = [head];
517
612
  if (live.length) {
518
- parts.push(`${live.map((c) => c.name).join(", ")} ${live.length === 1 ? "is" : "are"} expected when the editor ` +
519
- `or the game is not running; re-run with --require-live once the project is open in Godot.`);
613
+ // 🔴 283 §4 — THE ADVICE IS ABOUT THE INVOCATION, SO IT HAS TO READ THE
614
+ // INVOCATION. This sentence ended in *re-run with --require-live* no matter how
615
+ // the command was run, so `doctor --require-live` answered a user who had just
616
+ // passed the flag by telling them to pass the flag. What actually promotes a
617
+ // still-informational row is the level covering its OWN tier, which the row now
618
+ // declares — so the remedy is derived per run instead of asserted once.
619
+ const names = live.map((c) => c.name).join(", ");
620
+ const isAre = live.length === 1 ? "is" : "are";
621
+ const needed = [...new Set(live.map((c) => c.tier).filter((t) => t !== undefined))];
622
+ const flag = needed.length === 0
623
+ ? "--require-live"
624
+ : needed.length === 1 && needed[0] !== "editor"
625
+ ? `--require-live=${needed[0]}`
626
+ : needed.length > 1
627
+ ? "--require-live=all"
628
+ : "--require-live";
629
+ parts.push(report.liveLevel === "none"
630
+ ? `${names} ${isAre} expected when the editor or the game is not running; re-run with ${flag} once the project is open in Godot.`
631
+ : `${names} ${isAre} still informational because \`--require-live=${report.liveLevel}\` does not cover ` +
632
+ `${needed.length === 1 ? `the ${needed[0]} tier` : "their tier"}; \`${flag}\` is the level that requires ` +
633
+ `${live.length === 1 ? "it" : "them"}, and ${live.length === 1 ? "it needs" : "they need"} the matching ` +
634
+ `${needed.includes("runtime") ? "game" : "editor"} to be running.`);
520
635
  }
521
636
  if (standing.length) {
522
637
  parts.push(`${standing.map((c) => c.name).join(", ")} will NOT clear by starting anything — see the ↳ hint${standing.length === 1 ? "" : "s"} above.`);
@@ -528,7 +643,14 @@ function printReport(report) {
528
643
  const out = ["breakpoint-mcp doctor", ""];
529
644
  for (const c of report.checks) {
530
645
  out.push(` ${glyph(c)} ${c.name.padEnd(width)} ${c.detail}`);
531
- if (c.status === "fail" && c.hint)
646
+ // 🔴 282 — `status === "fail"` DROPPED EVERY HINT THIS TOOL WROTE FOR THE
647
+ // OTHER TWO STATES, under a footer that says *see the ↳ hints above*. The
648
+ // `skip` on `project` carries the remedy for the most common first-run
649
+ // mistake; the `ok` on `addon-version` carries *the addon is ahead of this
650
+ // host — upgrade the host rather than overwriting*. Both were reachable only
651
+ // through `--json`, and the human-readable surface — the one a first-run user
652
+ // reads — is the one that lost them.
653
+ if (c.hint)
532
654
  out.push(` ↳ ${c.hint}`);
533
655
  }
534
656
  out.push("");
@@ -561,8 +683,27 @@ export async function runDoctor(argv) {
561
683
  if (pre !== null)
562
684
  return pre;
563
685
  const { flags } = parsed;
686
+ // 🔴 282 — A FLAG GIVEN NO VALUE, OR A VALUE THIS PARSER CANNOT READ, IS
687
+ // REFUSED RATHER THAN DROPPED. Measured on the published 1.82.1:
688
+ // `doctor --timeout abc` and a bare `--timeout` both fell back to 1500ms in
689
+ // silence, and a bare `--project` silently checked the current directory —
690
+ // while `--require-live=yes` on the same command line is a hard exit 2. A user
691
+ // who mistypes the timeout is told nothing and reads the result as a
692
+ // measurement taken the way they asked for.
693
+ if (flags.project === true) {
694
+ process.stderr.write("--project: expected a directory, e.g. --project /path/to/game\n");
695
+ return 2;
696
+ }
564
697
  if (typeof flags.project === "string")
565
698
  process.env.GODOT_PROJECT = flags.project;
699
+ if (flags.timeout !== undefined) {
700
+ const raw = typeof flags.timeout === "string" ? flags.timeout : "";
701
+ const n = /^\d+$/.test(raw.trim()) ? Number.parseInt(raw, 10) : NaN;
702
+ if (!Number.isFinite(n) || n <= 0) {
703
+ process.stderr.write(`--timeout: expected a positive whole number of milliseconds, got ${JSON.stringify(raw)} (default 1500)\n`);
704
+ return 2;
705
+ }
706
+ }
566
707
  const timeoutRaw = typeof flags.timeout === "string" ? Number.parseInt(flags.timeout, 10) : NaN;
567
708
  const timeoutMs = Number.isFinite(timeoutRaw) && timeoutRaw > 0 ? timeoutRaw : 1500;
568
709
  const liveLevel = parseLiveLevel(flags["require-live"]);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/cli/doctor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/cli/github.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,MAAM,YAAY,GAAG,yCAAyC,CAAC;AACtE,MAAM,YAAY,GAAG,wBAAwB,CAAC;AAC9C,MAAM,UAAU,GAAG,oBAAoB,CAAC;AAcxC,SAAS,YAAY;IACnB,MAAM,CAAC,GAAI,UAAkC,CAAC,KAAK,CAAC;IACpD,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;IAC3F,CAAC;IACD,OAAO,CAAc,CAAC;AACxB,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,MAAM,CAAC,GAAG,wCAAwC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACrE,IAAI,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,0BAA0B,CAAC,CAAC;IAC3E,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACrC,CAAC;AAWD,SAAS,WAAW;IAClB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC/D,MAAM,CAAC,GAA2B,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;IAC/D,IAAI,KAAK;QAAE,CAAC,CAAC,aAAa,GAAG,UAAU,KAAK,EAAE,CAAC;IAC/C,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAiD,EACjD,OAAmB;IAEnB,MAAM,OAAO,GAAG,OAAO,IAAI,YAAY,EAAE,CAAC;IAC1C,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,MAAM,OAAO,GAAG,gCAAgC,KAAK,IAAI,IAAI,cAAc,GAAG,cAAc,CAAC;IAE7F,IAAI,OAAqB,CAAC;IAC1B,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE;YAC/B,OAAO,EAAE,EAAE,GAAG,WAAW,EAAE,EAAE,MAAM,EAAE,6BAA6B,EAAE;SACrE,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,IAAI,IAAI,IAAI,GAAG,4BAA4B,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CACb,uGAAuG,CACxG,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,yCAAyC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;IAC/E,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAiB,CAAC;IACpD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CACb,0BAA0B,GAAG,kFAAkF,CAChH,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;IAC1F,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,MAAM,YAAY,aAAa,KAAK,IAAI,IAAI,IAAI,GAAG,GAAG,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,qCAAqC,KAAK,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QACrF,IAAI,GAAiB,CAAC;QACtB,IAAI,CAAC;YACH,GAAG,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;QACzE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,IAAI,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvG,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,IAAI,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC1C,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
package/dist/cli/init.js CHANGED
@@ -13,7 +13,7 @@ import os from "node:os";
13
13
  import path from "node:path";
14
14
  import { fileURLToPath } from "node:url";
15
15
  import { parseArgs, preflight } from "./args.js";
16
- import { INIT_FLAGS, INIT_USAGE } from "./usage.js";
16
+ import { INIT_FLAGS, INIT_USAGE, TRUST_ACCEPTED, TRUST_LEVELS } from "./usage.js";
17
17
  import { ADDON_REL, ADDON_SKEW_HINT, compareAddonVersions, readAddonVersion, } from "../addon-version.js";
18
18
  import { CLIENT_IDS, clientInfo, mergeClientConfig, serverEntry, snippet } from "./clients.js";
19
19
  import { DEFAULT_REPO, fetchAddonFromGitHub } from "./github.js";
@@ -28,11 +28,26 @@ import { CAPABILITY_GROUPS, PRIVILEGED_TOOL_COUNT, parsePrivilegedGroups, select
28
28
  * than restated: a restated one named `network` long after it was deleted.
29
29
  */
30
30
  export function resolvePrivilegedGroups(flags) {
31
- const trustAlias = { safe: "", none: "", off: "", full: "all", all: "all" };
31
+ // 🔴 282 — AN UNKNOWN `--trust` VALUE IS REFUSED IN ITS OWN VOCABULARY, not
32
+ // passed through to the `--privileged-groups` parser to be reported in that
33
+ // flag's. `TRUST_ACCEPTED` is `usage.ts`'s map, which is also what the help
34
+ // line is rendered from, so the set the user is offered and the set the parser
35
+ // takes are one object.
36
+ if (typeof flags.trust === "string" && typeof flags["privileged-groups"] !== "string") {
37
+ const key = flags.trust.trim().toLowerCase();
38
+ if (!(key in TRUST_ACCEPTED)) {
39
+ return {
40
+ value: "",
41
+ error: `--trust: unknown level ${JSON.stringify(flags.trust)}. ` +
42
+ `Valid levels: ${Object.keys(TRUST_LEVELS).join(" | ")}. ` +
43
+ `To enable named groups instead, use --privileged-groups <${CAPABILITY_GROUPS.join(",")}>.`,
44
+ };
45
+ }
46
+ }
32
47
  const raw = typeof flags["privileged-groups"] === "string"
33
48
  ? flags["privileged-groups"]
34
49
  : typeof flags.trust === "string"
35
- ? (trustAlias[flags.trust.toLowerCase()] ?? flags.trust)
50
+ ? (TRUST_ACCEPTED[flags.trust.trim().toLowerCase()] ?? "")
36
51
  : "";
37
52
  if (!raw)
38
53
  return { value: "" };
@@ -193,7 +208,14 @@ export async function runInit(argv, deps = {}) {
193
208
  const client = typeof flags.client === "string" ? flags.client : "none";
194
209
  const godotBin = process.env.GODOT_BIN ?? "godot";
195
210
  // Guided trust preset → BREAKPOINT_PRIVILEGED_GROUPS ("" = safe default).
196
- const { value: privilegedGroups, warn: privilegedWarn } = resolvePrivilegedGroups(flags);
211
+ const { value: privilegedGroups, warn: privilegedWarn, error: privilegedError } = resolvePrivilegedGroups(flags);
212
+ // 🔴 282 — A BAD SECURITY-POSTURE VALUE EXITS 2, like every other bad flag
213
+ // value on this CLI. It used to warn and continue with the safe default, which
214
+ // is the safe OUTCOME reported as if the command had done what was asked.
215
+ if (privilegedError) {
216
+ process.stderr.write(privilegedError + "\n");
217
+ return 2;
218
+ }
197
219
  // --from-github [ref]: source the addon from GitHub instead of the bundled copy.
198
220
  const fromGitHub = "from-github" in flags;
199
221
  const fgVal = flags["from-github"];