Session Handover — 2026-09-02
For the next agent
Long multi-thread homelab session on
telep-mainframe. Most work is done and verified; the headline open items are: (1) the AI image-editor is designed & approved but NOT built, (2) you must add the bambuddy MCP endpoint to Aperture, and (3) the NVIDIA 610 driver fix needs time to prove it stopped the crashes. Pull deeper context via thehistorian; the per-topic vault notes are linked below.
Status: Between tasks. Box healthy on the new driver as of ~05:28.
What we accomplished
1. “Terrible internet” → root-caused to the 5G WAN (not DNS)
- Cause: the NE200 5G FWA CPE (Telekom HU) radio is weak/volatile — RSRP ≈ −102 dBm, SS-SINR collapsing to 5–9.5 dB, downlink pinned at QPSK (≈4× throughput loss). DNS/LAN/router/bufferbloat all ruled out.
- Built a SINR logger:
~/net-monitor/ne200_signal.py→~/net-monitor/rflog.csv, cron*/15. Pure stdlib +curl+openssl(no pip). Reads the NE200 web UI. - NE200 login envelope reverse-engineered (reusable):
POST http://192.168.254.1/cgi_gdpr?9, HTTP/0.9 (curl --http0.9), user=user, AES-128-CBC + RSA-512 “nopadding” sign ofkey=&iv=&h=md5(user+pwd)&s=, login body{"data":{…},"operation":"cgi","oid":"/cgi/login"}(no trailing CRLF); queries useoperation:"gl"with trailing CRLF +TokenIDscraped from/. - Action items (not done): aim the antenna for SINR; check the Telekom plan for a data cap (the Aug 19–22 all-degraded blocks look like a throttle). See 2026-08-31-episodic-wan-degradation.
2. OpenChatCut (“chatcut”) — deployed
- AI video editor, containerized behind sidecar node
chatcut,https://chatcut.taild4189d.ts.net, MCP surfaced via Aperture (mcp__aperture__chatcut_*, working). Three Host/origin gotchas fixed (ViteallowedHosts, loopback-socket needs--network host, loopback-Host trust patched). See 2026-08-31-openchatcut-chatcut-deploy.
3. OrcaSlicer — deployed then DELETED
- Stood up a KasmVNC OrcaSlicer sidecar, then tore it out entirely (container/image/
~/orcaslicer/tailscaled-orcaslicernode/home-portal tile) in favor of bambuddy’s built-in Slicer API. The old note is marked retired.
4. camwall crash-loop — fixed
- Killing the North camera left dead panes →
camwall-watchdogre-roll loop. Removed the dead panes, then North came back online → restored the 4-pane layout (verified via screenshot: all 4 cams live). Gotcha: a partial (<4) layout exposes the shareduxplay/AirPlay window in the empty area — needs a black backing or fill-screen relayout if cameras are dropped again.
5. Bambuddy buildout — done (see 2026-09-01-bambuddy-slicer-api-pipelines-mcp)
- Slicer API:
bambu-studio-apisidecar (ghcr.io/maziggy/bambu-studio-api,docker composein/home/levander/slicer-api/, bound127.0.0.2:3001). Wired via API:use_slicer_api=true,bambu_studio_api_url=http://127.0.0.2:3001. - 4 pipelines (H2S, 0.4 mm): PLA / PETG / ABS / PC-FR (ids 1–4). Printer
Bambu Lab H2S 0.4 nozzle, process0.20mm Standard @BBL H2S, filamentsBambu {PLA Basic/PETG Basic/ABS/PC FR} @BBL H2S, bedTextured PEI Plate. Operational notes (chamber/glue/dry/brim) in each pipeline description. - Maintenance tracker: 6 H2S tasks assigned to printer id 1 (one due: Lubricate Linear Rails).
- Telegram notifications: provider → “Telephely biztonsági riasztások” supergroup; test delivered.
- Bambuddy MCP on the tailnet:
bambuddy-mcp(stdio) wrapped bymcp-proxyin/home/levander/bambuddy-mcp/(containerbambuddy-mcp-bridge,--network host, bound127.0.0.2:8091), exposed viatailscale servepath mount →https://bambuddy.taild4189d.ts.net/mcp(streamable-HTTP). Verified end-to-end.
6. FreeCAD connector — fixed
- Was down (both connectors
Connection refused): thefreecad-mcpbridge’s link tofreecad:9875had gone stale after 44 h. Fixed by restarting thefreecad+freecad-mcpcontainers. Now healthy (rpc_server: running).
7. NVIDIA driver update 550.163.01 → 610.57.04 (the crash fix)
- The box’s chronic crashes (51 total, incl. a Sep 2 04:57 hard-hang) are the
nvidia_drmnv_drm_revoke_modeset_permissionbug (driver 550.163.01) — 3,738 warnings in the dead boot,comm="Xorg". Zero MCE, zero OOM — it is NOT CPU load and NOT bambuddy (the slicer sidecar has no GPU access; verifiedDevices=[], no/dev/dri). - Updated to
nvidia-open610.57.04 from the NVIDIA CUDA repo (debian13).595.91.07was infeasible (hard apt dependency conflict) — 610 was the only clean resolution and is newer/better for the fix. - Gotcha: the Debian→NVIDIA-repo package switch dropped the nouveau blacklist → first reboot came up with no GPU (nouveau grabbed the card). Fixed:
/etc/modprobe.d/blacklist-nouveau.conf+update-initramfs -u+ reboot. - Verified after reboot:
nvidia-smi= 610.57.04, GPU bound tonvidia, nouveau gone, 0 modeset warnings, camwall (4 panes on GPU) + Frigate (GPUdetector:onnx+ ffmpeg decode,healthy) + FreeCAD all back. - Rollback: the exact 550 package set is saved at
/tmp/nvidia-550-rollback.txt(oneapt install+ reboot).
Where we paused / open items
Not done yet
- AI image editor — DESIGNED & APPROVED, NOT BUILT. Decision: Claude edits (not generates) images via an image-editing MCP + a hand-editable canvas (miniPaint-style), self-hosted behind a chatcut-style node. Toolset = deterministic (ImageMagick / Pillow / OpenCV) + non-generative ML transforms (rembg background removal, Real-ESRGAN upscale, SAM segmentation, GFPGAN/CodeFormer, SwinIR). Approach “A” (one service, shared versioned project store so Claude + human edits compose) approved. Node name not chosen; nothing built. This is the main resumable build.
- Add the bambuddy MCP to Aperture — point Aperture at
https://bambuddy.taild4189d.ts.net/mcpso it surfaces asmcp__aperture__bambuddy_*(like chatcut). Aperture (ainode) is not self-hosted → it can only consume a network MCP endpoint (why we bridged the stdio server).- NVIDIA 610 — prove the fix. Box crashed 51× on 550; watch uptime /
dmesg | grep -c nv_drm_revoke_modeset_permissionover the coming days. If it holds, the chronic crash is solved.- 5G WAN — aim the NE200 antenna; check Telekom for a data cap.
- Flip the crash-cause record — update
[[project_telep_mainframe_load_limit]](auto-memory) + vault to “mitigation applied: nvidia-open 610.57.04 + nouveau blacklist.” (I was wrong all session citing “MCE under all-core load” — the evidence is nvidia_drm; correct the record.)- Minor: vault commit
de23601swept unrelated facekomFKITDEV-8279WIP into a bambuddy commit — may want to split. And the chatcut/bambuddy/mcpendpoints have no auth of their own (tag:telep ACL is the only gate) — tighten the ACL if owner-only is desired.
Key endpoints, paths & gotchas
Endpoints (tailnet-only): chatcut.taild4189d.ts.net (+/api/external-mcp/mcp) · bambuddy.taild4189d.ts.net (UI) + /mcp · orcaslicer.* removed.
Paths on telep-mainframe: ~/net-monitor/{ne200_signal.py,rflog.csv,netlog.csv} · ~/slicer-api/ · ~/bambuddy-mcp/ · /etc/modprobe.d/blacklist-nouveau.conf · /tmp/nvidia-550-rollback.txt.
Reusable gotchas: mcp==1.29.1 pin (2.x breaks mcp-proxy + bambuddy-mcp) · NVIDIA-repo install drops the nouveau blacklist · nvidia-open 595 infeasible here → 610 · dev-servers behind tailscale serve hit 3 Host/origin traps (Vite allowedHosts, loopback-socket → --network host, loopback-Host trust) · partial camwall layout exposes the uxplay window.
Related notes: telep-mainframe-handover · 2026-08-31-episodic-wan-degradation · 2026-08-31-openchatcut-chatcut-deploy · 2026-09-01-bambuddy-slicer-api-pipelines-mcp · 2026-09-01-orcaslicer-tailnet-deploy (retired) · tailnet-service-exposure-convention
Continuation prompt (copy-paste to resume)
Pick up the 2026-09-02 homelab session (read
projects/homelab/2026-09-02-session-handover.md, and use the historian for deeper context). Priorities: (1) build the approved AI image-editor — Claude edits (not generates) images via an image-editing MCP + hand-editable canvas, deterministic ImageMagick/Pillow/OpenCV + non-generative ML (rembg/Real-ESRGAN/SAM), one service with a shared versioned project store, behind a new chatcut-style sidecar node (need a node name); (2) confirm the bambuddy MCP got wired into Aperture (https://bambuddy.taild4189d.ts.net/mcp); (3) check whether NVIDIA 610.57.04 stopped the crashes (dmesg | grep -c nv_drm_revoke_modeset_permission, uptime). Everything else (bambuddy slicer-api/pipelines/maintenance/Telegram, chatcut, FreeCAD, camwall, driver update) is done & verified.