@emseepea/server 0.18.1 → 0.18.2
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/README.md +13 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -112,6 +112,19 @@ Resource links and embedded resources do not grant access or authorization.
|
|
|
112
112
|
Deliberate `isError` results reach the client, while thrown, malformed,
|
|
113
113
|
cancelled, and expired operations retain the generic framework error.
|
|
114
114
|
|
|
115
|
+
## Published Result Schemas
|
|
116
|
+
|
|
117
|
+
For tool results, `z.object` publishes an open client contract: clients may
|
|
118
|
+
accept unknown fields in later responses. A direct `z.strictObject` declaration
|
|
119
|
+
publishes a closed contract that rejects unknown fields.
|
|
120
|
+
|
|
121
|
+
Known limit: `z.object(...).pipe(z.strictObject(...))` currently still publishes
|
|
122
|
+
an open contract. Declare `z.strictObject` directly when you need a closed
|
|
123
|
+
contract.
|
|
124
|
+
|
|
125
|
+
An open published contract does not widen what the server sends. Tool handlers
|
|
126
|
+
may return only declared keys, and responses contain only declared fields.
|
|
127
|
+
|
|
115
128
|
## Discover Capability Modules at Startup
|
|
116
129
|
|
|
117
130
|
Explicit registration still works. If you prefer one file per capability, put
|