@synopackageland/sdk 0.38.2 → 0.38.3
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.
|
@@ -560,6 +560,7 @@ export interface StatusParams {
|
|
|
560
560
|
/** webapi.call: Call an exact approved WebAPI as the profile grant owner. JSON returns the DSM envelope; raw (since 0.12.1) requires profile raw_max_bytes and returns content_type, size, sha256 and base64 body or private staging handle. Never retried. Since 0.11.0. */
|
|
561
561
|
export interface WebapiCallParams {
|
|
562
562
|
response_type?: "json" | "raw";
|
|
563
|
+
expected_size?: number;
|
|
563
564
|
delegation_id: string;
|
|
564
565
|
job_id?: string;
|
|
565
566
|
api: string;
|
package/executor-manifest.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"formatVersion": 1,
|
|
3
|
-
"sdkVersion": "0.38.
|
|
4
|
-
"executorVersion": "0.38.
|
|
3
|
+
"sdkVersion": "0.38.3",
|
|
4
|
+
"executorVersion": "0.38.3",
|
|
5
5
|
"executorDigests": {
|
|
6
|
-
"x86_64": "
|
|
7
|
-
"aarch64": "
|
|
8
|
-
"armv7": "
|
|
6
|
+
"x86_64": "36c4f39754b946773011a632308ea357c2269585aa8000c7f4989a3b43cc6235",
|
|
7
|
+
"aarch64": "11c81787763007be62839b27e9ebfab734f6a4f1b866e41de1fd143e1af32b8e",
|
|
8
|
+
"armv7": "e2d97ba0d8b47c39f5fbce36118803d17ff0faf31ea686a3225fa0296e3c6f32",
|
|
9
9
|
"lifecycle": {
|
|
10
10
|
"x86_64": "c6fbb377ecd5ec7ee5b96439f22091d9fa5965dfd616d510ca9445722f436721",
|
|
11
11
|
"aarch64": "a9ca1750d4d5cff4727dc29789e6eaf0a365cb0e674f1bb796971d82f2d4fa27",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@synopackageland/sdk",
|
|
3
|
-
"version": "0.38.
|
|
3
|
+
"version": "0.38.3",
|
|
4
4
|
"description": "Frontend SDK for DSM packages built with synopkgland: headless client and Vue components",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://github.com/synopackageland/syno-pkg-land-sdk/tree/main/ts#readme",
|
|
@@ -491,7 +491,7 @@ MUST be refused. These bounds and semantics also apply to until-revoked grants.
|
|
|
491
491
|
|
|
492
492
|
The JSON-only restriction above applies to the default response mode. An explicit
|
|
493
493
|
`response_type:"raw"` MUST require a positive, approved profile `raw_max_bytes`
|
|
494
|
-
(1..
|
|
494
|
+
(1..10737418240, at most 10 GiB), pinned by policy and user consent. The executor MUST parse bounded
|
|
495
495
|
CGI headers, refuse redirects, enforce the body limit without truncation, and
|
|
496
496
|
return `response_type`, `content_type`, `size`, `sha256` and exactly one of
|
|
497
497
|
base64 `body` (at most 32768 bytes decoded) or a package-private `staging` handle.
|
|
@@ -499,9 +499,16 @@ It MUST NOT raise frame limits. Staging MUST be App-owned 0600 under a private
|
|
|
499
499
|
0700 package directory. The App MUST verify size/hash and unlink after reading.
|
|
500
500
|
Header, execution, spool cleanup and error rules are specified in
|
|
501
501
|
[the raw contract](../../../docs/webapi-raw.md).
|
|
502
|
-
Raw calls
|
|
503
|
-
any timed grant's remaining lifetime.
|
|
504
|
-
|
|
502
|
+
Raw calls allow 18 minutes per started GiB (at least 30 minutes, at most three
|
|
503
|
+
hours), narrowed by the parent deadline and any timed grant's remaining lifetime.
|
|
504
|
+
Optional raw-only `expected_size` asserts the exact pinned source size, bounded
|
|
505
|
+
by the profile. It MUST match Content-Length if present and the final body size.
|
|
506
|
+
Reserve staging from that size or validated Content-Length before body writes;
|
|
507
|
+
only unknown sizes use the profile ceiling. Check available filesystem space
|
|
508
|
+
and refuse insufficient capacity with `NO_SPACE`. Raw socket deadline
|
|
509
|
+
hints may reach 10820000 ms; other operations retain their one-hour ceiling.
|
|
510
|
+
They MUST stream with bounded memory, protect active output from orphan cleanup,
|
|
511
|
+
and cancel/drain when the grant is revoked or the
|
|
505
512
|
integration is disabled. JSON calls retain their 10-second bound.
|
|
506
513
|
|
|
507
514
|
### Destination permission observations
|
|
@@ -12,6 +12,12 @@
|
|
|
12
12
|
"enum": ["json", "raw"],
|
|
13
13
|
"description": "Defaults to json. Raw requires an explicitly approved raw_max_bytes profile."
|
|
14
14
|
},
|
|
15
|
+
"expected_size": {
|
|
16
|
+
"type": "integer",
|
|
17
|
+
"minimum": 0,
|
|
18
|
+
"maximum": 10737418240,
|
|
19
|
+
"description": "Raw only: exact byte size of the pinned source version from metadata. Narrows staging reservation and execution budget; mismatch is refused."
|
|
20
|
+
},
|
|
15
21
|
"delegation_id": {
|
|
16
22
|
"type": "string",
|
|
17
23
|
"pattern": "^[a-f0-9]{64}$"
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
"margin_s": 10,
|
|
4
4
|
"executor": {
|
|
5
5
|
"op_s": 30,
|
|
6
|
-
"webapi_raw_execution_s":
|
|
7
|
-
"webapi_raw_answer_s":
|
|
6
|
+
"webapi_raw_execution_s": 10800,
|
|
7
|
+
"webapi_raw_answer_s": 10810,
|
|
8
8
|
"root_run_program_default_s": 20,
|
|
9
9
|
"root_run_program_max_s": 120,
|
|
10
10
|
"root_run_answer_s": 130,
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
},
|
|
13
13
|
"client": {
|
|
14
14
|
"op_s": 40,
|
|
15
|
-
"webapi_raw_s":
|
|
15
|
+
"webapi_raw_s": 10820,
|
|
16
16
|
"root_run_s": 140
|
|
17
17
|
},
|
|
18
18
|
"request": {
|