45 lines
3.8 KiB
Markdown
45 lines
3.8 KiB
Markdown
# Verification report - RustProxy 0.27.1
|
|
|
|
## Scope
|
|
|
|
RustProxy 0.27.1 changes first-administrator onboarding, ACME/Certbot runtime preparation and account-scoped sorting for vhosts, Docker vhosts, redirects, 404 hosts and streams while keeping SQLite schema 8.
|
|
|
|
The first-run administrator screen now presents a complete command using the default `./data` directory and a second standard-service example using `/var/lib/rustproxy`.
|
|
|
|
Certificate automation now prefers a RustProxy-owned Python environment at `<data-dir>/acme-python`. Missing environments are prepared with `venv` and pip; when a distribution omits the stdlib `venv` module but provides pip, RustProxy can bootstrap `virtualenv` into its own data directory rather than changing distribution site-packages. Certbot 5.8.0 and the Cloudflare, OVH and RFC2136 plugins are installed into that managed environment. A runnable distribution Certbot remains the fallback. The Certificates panel reports managed/system/preparing/unavailable state and missing Python/pip diagnostics; manual PEM import and existing-file workflows do not depend on ACME runtime availability.
|
|
|
|
The route/list pages gain feature-specific sort-column and sort-direction controls. Their values are saved in the existing account-scoped administrator preferences and default safely when absent. Redirects and 404 hosts use the same search/sort/action toolbar structure as Vhosts.
|
|
|
|
## Regression coverage
|
|
|
|
Static/source contracts cover the new first-run commands, ACME runtime status UI/API, managed environment path and pinned package set, distro fallback markers, preference fields and list-specific sort controls. They also reject the development-only `./dev.sh tls deploy` UI hook and require the production binary/data-directory example, both official repository links and Python/pip/Certbot runtime metadata in the startup banner and authenticated application information. Existing release-smoke, language/OpenAPI, source-module, security, web-server, browser-service and Docker-agent gates remain part of the Rust-independent verification set.
|
|
|
|
## Verification status in this workspace
|
|
|
|
Rust/Cargo is not installed in this workspace. Rust-independent checks are run here; compiler/type/runtime gates remain explicitly open until this source is checked on a Rust-enabled release host.
|
|
|
|
| Check | Status |
|
|
|---|---|
|
|
| changed administration JavaScript syntax (`node --check`) | PASS |
|
|
| language/OpenAPI JSON parse | PASS |
|
|
| `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/release_smoke.py` | PASS |
|
|
| `node scripts/web_service_ui_test.mjs` | PASS |
|
|
| `go test ./...` in `docker-agent` | PASS |
|
|
| `python3 scripts/check_source.py` | PASS; explicitly reports Rust parsing/types/runtime as not verified |
|
|
| `./dev.sh test` | Rust-independent gates PASS; wrapper exits 127 at the Rust stage because Cargo is unavailable |
|
|
| `./dev.sh check` | BLOCKED: Rust/Cargo toolchain unavailable |
|
|
| `cargo fmt --check` | BLOCKED: Rust/Cargo toolchain unavailable |
|
|
| `cargo clippy --all-targets --all-features -- -D warnings` | BLOCKED: Rust/Cargo toolchain unavailable |
|
|
| `cargo test --all-targets --all-features` | BLOCKED: Rust/Cargo toolchain unavailable |
|
|
| complete release build | BLOCKED at Rust compilation: Rust/Cargo toolchain unavailable |
|
|
|
|
The 0.27.1 source archive must not be described as compiler-verified or production-ready until the Rust-enabled release-host gates pass. Static/source contracts do not substitute for Rust parsing, type checking, Clippy, unit tests or real protocol runtime tests.
|