Files
RustProxy/docs/TEST_REPORT.md
T
2026-10-06 11:29:34 +02:00

3.7 KiB

Verification report - RustProxy 0.26.4

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.

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.

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.

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.

Verification status in this workspace

Check Status
python3 scripts/langs_check.py PASS
python3 scripts/memory_contracts.py PASS
python3 scripts/web_server_contracts.py PASS
python3 scripts/security_contracts.py PASS
python3 scripts/security_dependency_contracts.py PASS
python3 scripts/source_module_contracts.py PASS
python3 scripts/rust_module_contracts.py PASS
python3 scripts/docs_check.py PASS
python3 scripts/check_source.py PASS; explicitly reports Rust parsing/types/runtime as not verified
python3 scripts/release_smoke.py PASS, including SQLite migrations, stopped-source upgrade and deterministic source packaging contracts
node scripts/web_service_ui_test.mjs PASS
node --check for changed administration JavaScript PASS
language/OpenAPI JSON parse PASS
go test ./... in docker-agent PASS
./dev.sh test Rust-independent gates PASS; exits 127 when the Rust stage is reached because Cargo is unavailable
./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
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.