breakpoint-mcp 1.80.0 โ†’ 1.81.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.
package/dist/bridge.js CHANGED
@@ -85,21 +85,32 @@ export function bridgeErrorLabel(code) {
85
85
  /**
86
86
  * The code raised when the request could not be handed to the socket at all.
87
87
  *
88
- * ๐Ÿ”ด **ONE WORD, TWO PRODUCERS, AND ONLY ONE OF THEM HAS A REMEDY THAT FITS (268).** The
89
- * ADDON raises `write_failed` too, from `operations.gd`, for a FILE it could not open for
90
- * writing โ€” and `error_remedies.gd` answers it with *"Check the target path is inside the
91
- * project and not read-only; the number is a Godot Error code."* That sentence is correct
92
- * for the addon and nonsense for this site, which has no path, no file and no Godot error
93
- * code: it is a TCP socket that went away. The collision was invisible while this branch
94
- * was believed unreachable; 268 measured it reachable 200/200 and it became live.
88
+ * ๐Ÿ”ด **IT WAS `write_failed` UNTIL 269, AND THAT WORD HAD TWO PRODUCERS.** The ADDON
89
+ * raises `write_failed` from `operations.gd` for a FILE it could not open for writing,
90
+ * and `error_remedies.gd` answers it with *"Check the target path is inside the project
91
+ * and not read-only; the number is a Godot Error code."* โ€” a sentence that is correct
92
+ * there and nonsense here, where there is no path, no file and no Godot error code, only
93
+ * a TCP socket that went away. 268 fixed the half a human reads and enqueued the wire
94
+ * question rather than deciding it. This is the answer.
95
95
  *
96
- * The CODE is kept and the message and remedy are made to fit โ€” 262's disposition for an
97
- * overloaded shipped code, for the same reason: fix what the reader acts on, and leave a
98
- * wire vocabulary that callers may already branch on alone. Whether the two producers
99
- * should share a word at all is a wire question, and it is enqueued as one rather than
100
- * decided here.
96
+ * ๐Ÿ”ด **THE POPULATION WAS MEASURED BEFORE THE WORD WAS CHOSEN, AND IT WAS ONE.** Eleven
97
+ * codes originate in the host, fifty in the addon, and `write_failed` was the entire
98
+ * intersection โ€” this is a single collision and not a family, which is why it is repaired
99
+ * by renaming rather than by a discriminator field on every error the wire carries.
100
+ *
101
+ * ๐Ÿ”ด **AND THE YOUNGER PRODUCER YIELDS, WHICH IS THE WHOLE ARGUMENT.** The addon's
102
+ * `write_failed` has crossed this wire since the addon had a wire. THIS site was believed
103
+ * unreachable until 268 measured it 200/200, and until 1.80.0 it shipped node's own
104
+ * `Cannot call write after a stream was destroyed` โ€” a caller branching on the sentence
105
+ * this site produced was branching on a Node internal. So the cost of moving it is one
106
+ * release of exposure, and the cost of moving the other is every integration that ever
107
+ * read a file-write refusal. `send_failed` also says the true thing outright: the request
108
+ * was never SENT.
109
+ *
110
+ * Check 32's `e` arm now refuses any code raised on both sides of the wire, so the next
111
+ * collision is a refusal at `git add` and not a discovery three sessions later.
101
112
  */
102
- export const BRIDGE_WRITE_FAILED = "write_failed";
113
+ export const BRIDGE_SEND_FAILED = "send_failed";
103
114
  /**
104
115
  * The next action for a request that never reached the socket.
105
116
  *
@@ -112,7 +123,7 @@ export const BRIDGE_WRITE_FAILED = "write_failed";
112
123
  * second. 264's rule โ€” measure N families, speak for N โ€” read in the direction that
113
124
  * licenses a stronger sentence rather than a weaker one.
114
125
  */
115
- export const WRITE_FAILED_REMEDY = "Retry the call โ€” the request was never sent, so nothing was applied and this is a " +
126
+ export const SEND_FAILED_REMEDY = "Retry the call โ€” the request was never sent, so nothing was applied and this is a " +
116
127
  "first attempt rather than a second. A recurrence means the host is tearing the " +
117
128
  "connection down mid-request.";
118
129
  /**
@@ -123,7 +134,7 @@ export const WRITE_FAILED_REMEDY = "Retry the call โ€” the request was never sen
123
134
  * Node stream and tells a caller of `node_add` nothing about their call, which is what
124
135
  * this site shipped until 268.
125
136
  */
126
- export function writeFailedMessage(method, cause) {
137
+ export function sendFailedMessage(method, cause) {
127
138
  return (`Bridge request '${method}' was never sent โ€” the connection was torn down between ` +
128
139
  `preparing the request and writing it, so the editor did not receive it (${cause.message}).`);
129
140
  }
@@ -499,7 +510,7 @@ export class BridgeClient {
499
510
  // editor and `bridge_closed` may have been too, so neither can tell a caller to
500
511
  // retry; this one can, and 267's rule is that a next action rides in the field
501
512
  // rather than inside the message.
502
- reject(new BridgeError(BRIDGE_WRITE_FAILED, writeFailedMessage(method, err), WRITE_FAILED_REMEDY));
513
+ reject(new BridgeError(BRIDGE_SEND_FAILED, sendFailedMessage(method, err), SEND_FAILED_REMEDY));
503
514
  }
504
515
  });
505
516
  });
package/dist/index.js CHANGED
@@ -52,7 +52,7 @@ async function main() {
52
52
  // so long jobs (export/import/headless script) support poll/await/cancel.
53
53
  // D3: also advertise resources.subscribe so clients can subscribe to
54
54
  // godot://โ€ฆ resources and receive notifications/resources/updated.
55
- const server = new McpServer({ name: "breakpoint-mcp", version: "1.80.0" }, { capabilities: { ...TASK_CAPABILITIES, ...RESOURCE_CAPABILITIES }, taskStore });
55
+ const server = new McpServer({ name: "breakpoint-mcp", version: "1.81.0" }, { capabilities: { ...TASK_CAPABILITIES, ...RESOURCE_CAPABILITIES }, taskStore });
56
56
  // 208 ยง7.1 โ€” delete from the wire what the protocol already says: the SDK's
57
57
  // draft-07 `$schema` inside every input/output schema (MCP's default dialect is
58
58
  // 2020-12, and declaring another is an explicit switch a peer may reject), and
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "breakpoint-mcp",
3
- "version": "1.80.0",
3
+ "version": "1.81.0",
4
4
  "description": "MCP server exposing Godot to AI coding assistants over the Model Context Protocol โ€” developed and tested with Claude โ€” across four planes (CLI, live editor, LSP+DAP, runtime) with elicitation-gated destructive tools, long jobs on the formal MCP task model, captured console output, and MCP resources.",
5
5
  "type": "module",
6
6
  "license": "MIT",