This commit is contained in:
Mateusz Gruszczyński committed 2026-10-03 10:05:46 +02:00
1 parent 5e23e9af02
commit 3883a21bc4
56 files changed
+1640 -403

No files matched your search

+91 -2
View File
@@ -2,7 +2,7 @@
"openapi": "3.0.3",
"info": {
"title": "RustProxy Administration API",
"version": "0.24.5",
"version": "0.24.7",
"description": "Administration API for the active panel origin. Sign in through the panel; the same-origin HttpOnly cookie authenticates all private operations. Mutations also require the exact Origin, X-RustProxy-Request: 1 and a session-bound X-CSRF-Token. Loopback HTTP is the default; Settings can enable HTTPS before using a non-loopback administration bind. This document contains no live configuration or credentials. Object schemas marked extensible are summaries: full configuration validation is authoritative in Rust."
},
"servers": [
@@ -913,6 +913,35 @@
"properties": {},
"additionalProperties": true
},
"transform_resources": {
"type": "object",
"properties": {
"memory_reserved_bytes": { "type": "integer", "format": "int64" },
"memory_budget_bytes": { "type": "integer", "format": "int64" },
"inflight": { "type": "integer", "format": "int64" },
"max_inflight": { "type": "integer", "format": "int64" }
},
"additionalProperties": false
},
"memory_accounting": {
"type": "object",
"properties": {
"process_rss_bytes": { "type": "integer", "format": "int64", "nullable": true },
"cache_hot_bytes": { "type": "integer", "format": "int64" },
"cache_hot_limit_bytes": { "type": "integer", "format": "int64" },
"cache_transient_bytes": { "type": "integer", "format": "int64" },
"cache_transient_limit_bytes": { "type": "integer", "format": "int64" },
"cache_total_bytes": { "type": "integer", "format": "int64" },
"transform_reserved_bytes": { "type": "integer", "format": "int64" },
"transform_budget_bytes": { "type": "integer", "format": "int64" },
"transform_inflight": { "type": "integer", "format": "int64" },
"transform_max_inflight": { "type": "integer", "format": "int64" },
"non_cache_rss_bytes": { "type": "integer", "format": "int64", "nullable": true },
"non_cache_rss_includes_transform": { "type": "boolean" },
"method": { "type": "string" }
},
"additionalProperties": false
},
"cache": {
"type": "object",
"properties": {},
@@ -1265,6 +1294,16 @@
"type": "boolean",
"default": true
},
"memory_preset": {
"type": "string",
"nullable": true,
"enum": [
"conservative",
"recommended",
"performance"
],
"description": "Last cache memory sizing preset explicitly selected in Settings. Numeric limits remain authoritative."
},
"max_bytes": {
"type": "integer",
"format": "int64",
@@ -1309,6 +1348,14 @@
"type": "boolean",
"default": false
},
"cold_preset": {
"type": "string",
"nullable": true,
"enum": [
"recommended"
],
"description": "Last COLD policy preset explicitly selected in Settings."
},
"cold_path": {
"type": "string",
"default": "cache/cold"
@@ -2702,6 +2749,17 @@
"type": "boolean",
"default": false
},
"preset": {
"type": "string",
"nullable": true,
"enum": [
"conservative",
"recommended",
"performance",
"uber"
],
"description": "Last resource preset selected in the administration UI. Numeric limits remain authoritative."
},
"javascript": {
"type": "boolean",
"default": true
@@ -2745,6 +2803,20 @@
"minimum": 1024,
"maximum": 33554432,
"default": 2097152
},
"memory_budget_bytes": {
"type": "integer",
"minimum": 1048576,
"maximum": 2147483648,
"default": 134217728,
"description": "Process-wide ceiling for estimated temporary transform buffers. The budget is not pre-allocated."
},
"max_inflight": {
"type": "integer",
"minimum": 1,
"maximum": 1024,
"default": 32,
"description": "Process-wide maximum number of active transformation attempts. Excess work fails open unchanged."
}
}
},
@@ -3163,6 +3235,22 @@
"settings": {
"$ref": "#/components/schemas/TransformSettings"
},
"resources": {
"type": "object",
"additionalProperties": false,
"properties": {
"memory_reserved_bytes": { "type": "integer", "format": "int64" },
"memory_budget_bytes": { "type": "integer", "format": "int64" },
"inflight": { "type": "integer", "format": "int64" },
"max_inflight": { "type": "integer", "format": "int64" }
},
"required": [
"memory_reserved_bytes",
"memory_budget_bytes",
"inflight",
"max_inflight"
]
},
"metrics": {
"type": "object",
"additionalProperties": false,
@@ -3210,6 +3298,7 @@
},
"required": [
"settings",
"resources",
"metrics",
"vhosts"
]
@@ -4243,7 +4332,7 @@
}
}
},
"description": "Sets an HttpOnly SameSite=Strict session cookie. Browser sessions use the configured 7–30 day absolute lifetime. Use the panel sign-in page. No bearer token or URL token is accepted.",
"description": "Sets an HttpOnly SameSite=Strict session cookie. Browser sessions use the configured 7\u201330 day absolute lifetime. Use the panel sign-in page. No bearer token or URL token is accepted.",
"security": [],
"parameters": [
{