Restore streaming read chunk limit

This commit is contained in:
Jeremy Rose
2026-06-09 17:31:37 -07:00
parent 2962e8f5d0
commit 2a0c10537d
11 changed files with 67 additions and 17 deletions
+1 -1
View File
@@ -916,7 +916,7 @@
"type": "string"
},
"maxBytes": {
"description": "Requested upper bound. Values above the server limit are capped.",
"description": "Requested upper bound. Values above `maxChunkBytes` are capped.",
"format": "uint32",
"minimum": 0.0,
"type": [
@@ -9640,6 +9640,17 @@
"FsReadFileOpenResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"description": "Successful response for `fs/readFile/open`.",
"properties": {
"maxChunkBytes": {
"description": "Maximum decoded bytes returned by one read.\n\nClients may use this value to size reusable read buffers.",
"format": "uint32",
"minimum": 0.0,
"type": "integer"
}
},
"required": [
"maxChunkBytes"
],
"title": "FsReadFileOpenResponse",
"type": "object"
},
@@ -9670,7 +9681,7 @@
"type": "string"
},
"maxBytes": {
"description": "Requested upper bound. Values above the server limit are capped.",
"description": "Requested upper bound. Values above `maxChunkBytes` are capped.",
"format": "uint32",
"minimum": 0.0,
"type": [
@@ -5982,6 +5982,17 @@
"FsReadFileOpenResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"description": "Successful response for `fs/readFile/open`.",
"properties": {
"maxChunkBytes": {
"description": "Maximum decoded bytes returned by one read.\n\nClients may use this value to size reusable read buffers.",
"format": "uint32",
"minimum": 0.0,
"type": "integer"
}
},
"required": [
"maxChunkBytes"
],
"title": "FsReadFileOpenResponse",
"type": "object"
},
@@ -6012,7 +6023,7 @@
"type": "string"
},
"maxBytes": {
"description": "Requested upper bound. Values above the server limit are capped.",
"description": "Requested upper bound. Values above `maxChunkBytes` are capped.",
"format": "uint32",
"minimum": 0.0,
"type": [
@@ -1,6 +1,17 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"description": "Successful response for `fs/readFile/open`.",
"properties": {
"maxChunkBytes": {
"description": "Maximum decoded bytes returned by one read.\n\nClients may use this value to size reusable read buffers.",
"format": "uint32",
"minimum": 0.0,
"type": "integer"
}
},
"required": [
"maxChunkBytes"
],
"title": "FsReadFileOpenResponse",
"type": "object"
}
@@ -6,7 +6,7 @@
"type": "string"
},
"maxBytes": {
"description": "Requested upper bound. Values above the server limit are capped.",
"description": "Requested upper bound. Values above `maxChunkBytes` are capped.",
"format": "uint32",
"minimum": 0.0,
"type": [
@@ -5,4 +5,10 @@
/**
* Successful response for `fs/readFile/open`.
*/
export type FsReadFileOpenResponse = Record<string, never>;
export type FsReadFileOpenResponse = {
/**
* Maximum decoded bytes returned by one read.
*
* Clients may use this value to size reusable read buffers.
*/
maxChunkBytes: number, };
@@ -7,6 +7,6 @@
*/
export type FsReadFileReadParams = { handleId: string, offset: number,
/**
* Requested upper bound. Values above the server limit are capped.
* Requested upper bound. Values above `maxChunkBytes` are capped.
*/
maxBytes?: number | null, };
@@ -54,7 +54,12 @@ pub struct FsReadFileOpenParams {
#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq, JsonSchema, TS)]
#[serde(rename_all = "camelCase")]
#[ts(export_to = "v2/")]
pub struct FsReadFileOpenResponse {}
pub struct FsReadFileOpenResponse {
/// Maximum decoded bytes returned by one read.
///
/// Clients may use this value to size reusable read buffers.
pub max_chunk_bytes: u32,
}
/// Read a bounded chunk from an open file at an absolute byte offset.
#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq, JsonSchema, TS)]
@@ -64,7 +69,7 @@ pub struct FsReadFileReadParams {
pub handle_id: String,
#[ts(type = "number")]
pub offset: u64,
/// Requested upper bound. Values above the server limit are capped.
/// Requested upper bound. Values above `maxChunkBytes` are capped.
#[ts(optional = nullable)]
pub max_bytes: Option<u32>,
}