Skip to content

Commit 938eb47

Browse files
raman325claude
andcommitted
fix: address PR review feedback
- Enable compression for introspect responses (large schema payload) - Use cross-platform Node.js script instead of mkdir -p - Add integration test for pre-initialize introspect.commands Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 0466008 commit 938eb47

File tree

3 files changed

+20
-1
lines changed

3 files changed

+20
-1
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
"lint": "eslint",
3737
"lint:fix": "eslint --fix && prettier -w .",
3838
"test": "npm run generate:schema && prettier --check src && tsc --noEmit && npm run lint && tsx src/test/integration.ts",
39-
"generate:schema": "mkdir -p src/lib/generated && ts-json-schema-generator --path src/lib/incoming_message.ts --type IncomingMessage --tsconfig tsconfig.json --no-type-check --out src/lib/generated/incoming_message_schema.json",
39+
"generate:schema": "node -e \"require('fs').mkdirSync('src/lib/generated',{recursive:true})\" && ts-json-schema-generator --path src/lib/incoming_message.ts --type IncomingMessage --tsconfig tsconfig.json --no-type-check --out src/lib/generated/incoming_message_schema.json",
4040
"prebuild": "npm run generate:schema",
4141
"build": "tsc -p .",
4242
"postbuild": "esm2cjs --in dist-esm --out dist-cjs -l error -t node20",

src/lib/server.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,7 @@ export class Client {
202202
return this.sendResultSuccess(
203203
msg.messageId,
204204
await this.instanceHandlers[instance].handle(msg),
205+
instance === Instance.introspect,
205206
);
206207
}
207208

src/test/integration.ts

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,24 @@ const runTest = async () => {
5656
type: "version",
5757
});
5858

59+
// Test introspect.commands works before initialize
60+
socket.send(
61+
JSON.stringify({
62+
command: "introspect.commands",
63+
messageId: "introspect",
64+
}),
65+
);
66+
67+
const introspectResult = (await nextMessage()) as any;
68+
assert.strictEqual(introspectResult.type, "result");
69+
assert.strictEqual(introspectResult.success, true);
70+
assert.strictEqual(introspectResult.messageId, "introspect");
71+
assert.ok(introspectResult.result.definitions, "schema has definitions");
72+
assert.ok(
73+
introspectResult.result.anyOf || introspectResult.result.$ref,
74+
"schema has anyOf or $ref at root",
75+
);
76+
5977
socket.send(
6078
JSON.stringify({
6179
command: "initialize",

0 commit comments

Comments
 (0)