From d5360bc24bb2bc30347f1c9771e68b973fe87483 Mon Sep 17 00:00:00 2001 From: jester Date: Sun, 14 Dec 2025 22:54:46 +0000 Subject: [PATCH] Update SESSION_LOG with 2025-12-14 devcontainer/addons session --- SESSION_LOG.md | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/SESSION_LOG.md b/SESSION_LOG.md index d459a0b..5eaf791 100644 --- a/SESSION_LOG.md +++ b/SESSION_LOG.md @@ -27,3 +27,41 @@ Work completed: Notes: - MCP write operations are now functional from this environment. + +--- + +## 2025-12-14 +- Goal: Stabilize zlh-agent dev containers + addons without regressing game provisioning. +- Scope: Agent routing (ctype=dev), local artifacts strategy, addon skeleton, initial end-to-end tests. + +Work completed: +- Confirmed game server provisioning remains intact: + - Minecraft vanilla provision + connect verified. + - Minecraft forge provision verified (client connect pending). +- zlh-agent builds cleanly after resolving import cycles introduced by devcontainer/addons packages. +- Adopted single base template approach (zlh-base) for both game + dev; agent performs runtime installs. +- Standardized devcontainer workspace defaults: + - user: devuser + - workspace: /home/devuser/Workspace + - workspace.sh will own user/workspace creation (shared, not per-runtime). +- Addons are cross-cutting (not dev-only). code-server added as first addon skeleton (install/verify + scripts pathing). +- Local/offline artifacts strategy locked in (no external downloads during provisioning). +- Artifacts staged on artifacts host under /opt/zlh: + - devcontainer/node: 20, 22, 24 (LTS default = latest LTS) + - devcontainer/python: 3.10, 3.11, 3.12, 3.13 + - devcontainer/java: 17, 19, 21 + - devcontainer/go: 1.22, 1.25 + - addons/code-server: code-server.zip +- Frontend policy decided: show latest LTS as default; allow older versions with "buyer beware" warning. + +Issues found: +- API (zpack-api) still assumes game containers; dev payload fails validation with "game required". +- Config schema mismatch spotted: node verify referenced cfg.RuntimeVersion, but state.Config currently lacks RuntimeVersion. + - Decision pending: add RuntimeVersion to Config vs reuse existing version field for dev runtimes. +- code-server will require systemd + Traefik reverse proxy integration (tracked as TODO). + +Next steps: +- Update zpack-api to be ctype-aware (dev containers must not require game/variant/world). +- Finalize runtime version field strategy (version vs runtimeVersion) across API + agent + DB payload. +- Complete node install.sh to use local artifacts and validate verify.go; then repeat for python/java/go. +- Define addon dispatch + payload schema for addons (cross-cutting) and later store customer addon selections.