Package managed server for Linux production
.NET port / test (macos-latest) (push) Canceled after 0s
.NET port / test (ubuntu-24.04) (push) Canceled after 0s
.NET port / test (windows-latest) (push) Canceled after 0s
.NET port / cpp-conformance (push) Canceled after 0s

This commit is contained in:
2026-09-16 17:08:17 +02:00
parent 48c754aed9
commit 7be93e81a1
15 changed files with 384 additions and 119 deletions
+14
View File
@@ -10,6 +10,20 @@ up instantly. Newest status at the top.
## ▶ Where we left off / next action
- **Done (2026-09-16): Linux production packaging checkpoint.** Added a real TLS 1.3
`--health-check` with optional certificate pin verification. Linux x64 now has separate
locked self-contained publish graphs and invariant-globalization startup without a system
ICU dependency. Replaced the native Docker build with a non-root managed multi-stage build
on Microsoft's chiseled runtime-dependencies image; Compose uses a read-only root,
capability drop and no-new-privileges. Added a hardened DynamicUser systemd unit, install
helper, Linux smoke and reusable concurrent text/voice soak driver. **Verified:** the
published ELF starts in WSL, completes TLS health with its emitted pin, creates mode-0700
state, and exits cleanly on SIGTERM; `systemd-analyze verify` accepts the unit. The
published Windows server completed four soak cycles / 16 independent client sessions.
Dockerfile execution could not be checked because the local Docker daemon is unavailable.
**Next:** run the 30-minute+ soak and container build in release infrastructure, publish/
sign the image, and perform Windows NVDA/listen gates. Then begin the C# AppKit client port.
- **Done (2026-09-16): Managed CLI and cross-generation client exit.** Added `VoiceCat.Cli`
with interactive channel text, TOFU, channel selection and deterministic headless
text/tone verification. Independent process tests run two managed CLIs in channels 1 and 2