This commit is contained in:
Mateusz Gruszczyński committed 2026-10-06 11:56:10 +02:00
1 parent 52cc137c73
commit 464ff42cfd
40 files changed
+208 -126

No files matched your search

+1 -1
View File
@@ -1,4 +1,4 @@
# Administration API access - 0.26.4
# Administration API access - 0.26.5
## Sign-in boundary
+1 -1
View File
@@ -1,6 +1,6 @@
# Stored log explorer
RustProxy 0.26.4 provides an authenticated, read-only **Logs** workspace at `/logs`. The top bar has one **Logs** menu with separate **Stored logs** and **Live Logs** actions; the two data paths remain independent.
RustProxy 0.26.5 provides an authenticated, read-only **Logs** workspace at `/logs`. The top bar has one **Logs** menu with separate **Stored logs** and **Live Logs** actions; the two data paths remain independent.
## Separation from Live Logs
+1 -1
View File
@@ -1,4 +1,4 @@
# Installing and updating RustProxy 0.26.4
# Installing and updating RustProxy 0.26.5
The scripts prepare a Linux/systemd installation. This source archive is **not a
verified production build**: Rust/Cargo, real CA operations, live systemd startup
+2 -1
View File
@@ -15,6 +15,7 @@ This is the canonical index for the current project documentation. The authentic
- [0.25.1 release audit](V0.25.1_AUDIT.md) - historical Traffic/module-split release scope and compiler-regression guards.
- [0.25.0 specification audit](V0.25.0_AUDIT.md) - Web Server foundation point-by-point implementation status.
- [0.25.0 pre-production security audit](V0.25.0_SECURITY_PREPROD_AUDIT.md) - threat-oriented source/configuration review, fixes made in-session and mandatory runtime security gates.
- [0.26.5 implementation note](V0.26.5_IMPLEMENTATION.md) - interface-scaled form/select alignment and corrected Streams listener navigation.
- [0.26.4 implementation note](V0.26.4_IMPLEMENTATION.md) - 404 drafts, consistent modal controls, compact Overview settings and idle age-based backend rotation.
- [0.26.3 implementation note](V0.26.3_IMPLEMENTATION.md) - global interface scaling, chart themes, square draft dock and Settings navigation polish.
- [0.26.2 implementation note](V0.26.2_IMPLEMENTATION.md) - unified Logs navigation, field-query search, dynamic JSON columns and RAW parsing.
@@ -64,7 +65,7 @@ This is the canonical index for the current project documentation. The authentic
## Historical or version-labelled context
Version-labelled `V*.md` files are retained as historical implementation/audit records. Their version number describes the audited milestone. The current release implementation note is [V0.26.4_IMPLEMENTATION.md](V0.26.4_IMPLEMENTATION.md); [V0.26.3_IMPLEMENTATION.md](V0.26.3_IMPLEMENTATION.md) is retained as the prior appearance/UI milestone, [V0.26.2_IMPLEMENTATION.md](V0.26.2_IMPLEMENTATION.md) as the prior Logs/UI milestone and [V0.26.1_IMPLEMENTATION.md](V0.26.1_IMPLEMENTATION.md) as the prior protocol-attribution milestone. The latest retained audit is [V0.25.5_AUDIT.md](V0.25.5_AUDIT.md); older audit files remain historical evidence.
Version-labelled `V*.md` files are retained as historical implementation/audit records. Their version number describes the audited milestone. The current release implementation note is [V0.26.5_IMPLEMENTATION.md](V0.26.5_IMPLEMENTATION.md); [V0.26.4_IMPLEMENTATION.md](V0.26.4_IMPLEMENTATION.md) is retained as the prior administration/backend-lifecycle milestone, [V0.26.3_IMPLEMENTATION.md](V0.26.3_IMPLEMENTATION.md) as the prior appearance/UI milestone, [V0.26.2_IMPLEMENTATION.md](V0.26.2_IMPLEMENTATION.md) as the prior Logs/UI milestone and [V0.26.1_IMPLEMENTATION.md](V0.26.1_IMPLEMENTATION.md) as the prior protocol-attribution milestone. The latest retained audit is [V0.25.5_AUDIT.md](V0.25.5_AUDIT.md); older audit files remain historical evidence.
Older context documents such as [INTEGRATIONS_040](INTEGRATIONS_040.md), [MANAGEMENT](MANAGEMENT.md), [SECURITY_AUDIT](SECURITY_AUDIT.md), [ACME_RFC2136](ACME_RFC2136.md) and older version audits remain available for traceability but should not override the current functional/technical documents above.
+7 -9
View File
@@ -1,18 +1,16 @@
# Verification report - RustProxy 0.26.4
# Verification report - RustProxy 0.26.5
## Scope
RustProxy 0.26.4 is a compatibility-preserving administration/UI and backend-client lifecycle maintenance release. SQLite remains schema 8 and the saved proxy configuration format is unchanged from 0.26.3.
RustProxy 0.26.5 is a compatibility-preserving administration UI patch on top of 0.26.4. SQLite remains schema 8 and the saved proxy configuration format is unchanged.
The release adds 404-host forms to the existing session-only draft dock; completes the Polish Button style translation; makes compact toolbar search/filter inputs follow the selected button height; reuses the vhost Enabled-state presentation in 404-host, Redirect and Stream editors; replaces the tall Overview-card checkbox list with compact visibility/reorder tiles; and makes age-based upstream-client recycling run from backend maintenance even when no request arrives.
The backend change keeps request-count recycling request-driven. The new maintenance path checks `pool_recycle_seconds`, uses the existing atomic generation/rotation guard and starts an idle-maintenance generation with zero requests. A Rust unit regression is included for age-based rotation without a triggering request, but this workspace cannot execute Rust tests because Cargo/rustc are unavailable.
The release makes compact toolbar selects and inputs share one scaled control box, wires ordinary form controls to the existing interface-scale field variables, and changes the Streams **Add TCP/UDP listener** shortcut to navigate to Settings -> Listeners instead of opening a new Stream editor. The 0.26.4 draft, modal consistency and idle backend-rotation fixes remain unchanged.
## Source-level regression coverage
Rust-independent contracts now require 404 draft registration, the shared Enabled-control helper, compact Overview tiles, toolbar controls bounded by `--button-min-height`, and backend maintenance calls for ordinary and WebSocket clients. Existing source, security, memory, Web Server, documentation, packaging, upgrade and SQLite migration contracts remain enabled.
Rust-independent contracts require the shared toolbar control-height variable, scaled field variables in the common form-control rules, and the Streams listener shortcut handler to call the Settings/Listeners navigation path. Existing 0.26.4 draft, Enabled-control, backend-maintenance, source, security, memory, Web Server, documentation, packaging, upgrade and SQLite migration contracts remain enabled.
Browser JavaScript syntax checks cover the changed core/preferences/404/Redirect/Stream/vhost editor files. The simulated Web Server UI test remains green. Language packs and OpenAPI JSON parse successfully, and the Docker Agent Go tests pass.
Browser JavaScript syntax checks cover the changed administration modules. The simulated Web Server UI test remains part of the release gates. Language packs and OpenAPI JSON are parsed, and the Docker Agent Go tests are run when available.
## Verification status in this workspace
@@ -36,7 +34,7 @@ Browser JavaScript syntax checks cover the changed core/preferences/404/Redirect
| `./dev.sh check` | BLOCKED: Rust/Cargo toolchain unavailable in this workspace |
| `cargo fmt --check` | BLOCKED: Rust/Cargo toolchain unavailable in this workspace |
| `cargo clippy --all-targets --all-features -- -D warnings` | BLOCKED: Rust/Cargo toolchain unavailable in this workspace |
| `cargo test --all-targets --all-features` | BLOCKED: Rust/Cargo toolchain unavailable in this workspace; the new age-rotation unit test is therefore not runtime-executed here |
| `cargo test --all-targets --all-features` | BLOCKED: Rust/Cargo toolchain unavailable in this workspace |
| complete release build | BLOCKED at Rust compilation: Rust/Cargo toolchain unavailable in this workspace |
The 0.26.4 source archive must not be described as compiler-verified until the Rust-enabled release-host gates pass. Rust-independent checks verify source structure, UI/translation contracts, security invariants, migrations, upgrades, documentation, JavaScript syntax, Go-agent behavior and deterministic archive behavior, but they do not substitute for Rust parsing, type checking, Clippy or runtime tests.
The 0.26.5 source archive must not be described as compiler-verified until the Rust-enabled release-host gates pass. Rust-independent checks do not substitute for Rust parsing, type checking, Clippy or runtime tests.
+26
View File
@@ -0,0 +1,26 @@
# RustProxy 0.26.5 implementation note
## Scope
0.26.5 is a compatibility-preserving administration UI patch. SQLite remains schema 8 and the saved proxy configuration document is unchanged from 0.26.4.
## Scaled form controls
Interface-scale preferences already publish field sizing variables. Form inputs, selects and textareas now consume those variables consistently, while compact toolbar filters derive one shared height from the active button size and scaled field height. This keeps native select boxes visually aligned with neighboring search inputs without allowing toolbar fields to grow taller than the action controls beside them.
The change applies to the shared administration stylesheet, including Stored Logs, Backends, vhost-style lists, Docker, Live Logs and Settings filtering surfaces.
## Stream listener shortcut
The **Streams -> Add TCP/UDP listener** shortcut no longer opens a blank Stream editor. It switches the administration workspace to **Settings -> Listeners**, preserving normal Settings URL/tab synchronization.
## Compatibility
- SQLite schema: 8 (unchanged).
- Saved proxy configuration format: unchanged.
- Administration preferences: unchanged; no migration required.
- Upgrade from 0.26.4: no data migration required.
## Verification
See [TEST_REPORT.md](TEST_REPORT.md). Rust-independent source, documentation, browser-JavaScript, packaging and Go-agent gates can run in this workspace. Rust compiler gates still require a release host with Cargo.