test: expand server protocol scenario coverage

This commit is contained in:
2026-09-11 05:55:42 +00:00
parent c709b27e5e
commit 51fa88d05b
9 changed files with 74 additions and 65 deletions
+4 -2
View File
@@ -2627,8 +2627,10 @@ label. Use structured logs and audit records for those identifiers instead.
Provide:
- nginx configuration showing WebSocket upgrade proxying and TLS termination;
- systemd units for server/client with private state directories, restart
policy, working directory, file descriptor limits, and least privilege;
- a self-contained production Docker Compose stack for the Linux server with
nginx TLS termination, private named state/control volumes, restart policy,
file descriptor limits, and least privilege; the v1 server is not installed
or managed as a host systemd service;
- example server/client configuration files with every default and an explicit
JSON-RPC exposure warning;
- Windows `rvbox.exe` GUI/icon/version resources, SCM service installation,
+3 -10
View File
@@ -5,10 +5,9 @@ describe a Unix-like client, which is outside v1.
## Deploy and verify
Use either the checked-in Compose deployment or the systemd unit, never both
for the same server data directory. Start from the annotated
[`server.toml`](examples/server.toml) and retain `json_rpc.enabled = false`
unless performing loopback-only debugging.
Use the checked-in Compose deployment as the sole Linux-server runtime. Start
from the annotated [`server.toml`](examples/server.toml) and retain
`json_rpc.enabled = false` unless performing loopback-only debugging.
For Compose, follow the setup in
[`deploy/production/README.md`](../deploy/production/README.md), set a pinned
@@ -25,12 +24,6 @@ the process is up; `/readyz` becomes successful only after durable recovery.
The public endpoint accepts only `wss://HOST/v1/agent`. Do not publish port
6900 or add a proxy route for JSON-RPC.
For systemd, create the `rvbox` service account, install the binary and
`deploy/systemd/rvbox-server.service`, place a root:`rvbox` owned `0640`
`/etc/rvbox/server.toml`, then run `systemctl daemon-reload` and
`systemctl enable --now rvbox-server`. The unit performs `--check-config`
before every start.
## Backup and restore
Stop dispatch before copying data: stop the server gracefully, confirm it is
+5 -1
View File
@@ -88,7 +88,11 @@ the exact local run root after the local stack is down and the VM snapshot has
been restored.
The integration harness provides the Phase 0 `sample` suite, the incremental
Phase 2 `store` suite, and the incremental Phase 3 `server-session` suite.
Phase 2 `store` suite, Phase 3 `server-session`, and `control` and
`client-agent` protocol suites. The deterministic E2E lane provides `smoke`,
`interactive`, `idempotency`, `reconnect`, `retention`,
`expiry-and-incidents`, `script`, and `recovery`. Native Windows execution
contexts remain the separately leased `scripts/windows/native-test` lane.
The resumable E2E harness adds `smoke`, `script`, `recovery`, and `all`
scenarios. Each run writes its manifest and run ID before starting work.
The storage suite uses a real temporary SQLite database in WAL mode and a real