archy/.claude/memory/project_session_20260328.md
Dorian 1e283daf13 fix: overhaul container lifecycle — recovery, health, uninstall, UI state
Container recovery:
- Health monitor: MAX_RESTART_ATTEMPTS 3→10, interval 60s→120s
- Dependency-aware restarts: won't restart services before their deps
- Reset dependent counters when a dependency recovers
- Handle "created" state containers (were invisible to health monitor)
- Added IndeedHub, mempool-api, mysql to tier system
- Crash recovery: podman start timeout 30s→120s with retry
- Podman client: socket timeout 5s→30s, added restart policy

UI state representation:
- Exit code 0 shows "stopped" (gray), not "crashed" (red)
- Exit code 137 shows "killed (OOM)"
- Non-zero exit shows "crashed" (red)
- Added exit_code field to PackageDataEntry

Install/uninstall fixes:
- Install returns error when container doesn't start (was silent success)
- Post-install hooks awaited instead of fire-and-forget tokio::spawn
- Uninstall: graceful rm before force, volume prune, network cleanup
- Uninstall returns error on partial failure (was 200 OK)

Config consistency:
- DB passwords read from /var/lib/archipelago/secrets/ (was hardcoded)
- Bitcoin: added ZMQ ports 28332/28333 for LND block notifications
- IndeedHub port 7777→8190 (was conflicting with strfry)
- Marketplace versions: LND 0.17.4→0.18.4, Mempool 2.5.0→3.0.0

Performance:
- Metrics collector interval 60s→300s (was duplicating health monitor)
- Podman client: proper error propagation instead of unwrap_or_default

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 07:03:57 +01:00

1.8 KiB

name, description, type
name description type
ISO Session 2026-03-28 Handoff Session handoff — branding overhaul, ISOLINUX config updated, terminal banners redesigned, UEFI still broken project

Session State (2026-03-28 ~latest)

Branding Overhaul (this session)

ISOLINUX boot menu:

  • Config updated: menu centered (HSHIFT 28, WIDTH 26), title "Bitcoin Node OS"
  • Selection: white on dark, hotkeys in Bitcoin orange (#fb923c)
  • Tab message: "Press TAB to edit | https://archipelago.sh"
  • MENU RESOLUTION kept at 1024x768 (uses GRUB background.png)
  • Three options: Install Archipelago, Install (verbose), Boot from local disk

Terminal banners — unified design across all screens:

  • Name: "A R C H I P E L A G O" (uppercase, spaced, bold white)
  • Separator: orange line
  • Subtitle: dim text (varies by context)
  • Colors: basic ANSI (works on bare-metal console, not 256-color)
  • Width: fits 80-col terminals (no overflow/clipping)
  • Build script auto-install.sh: centered + adaptive-width boxes
  • Standalone scripts: fixed 52-char boxes

Files changed:

  • build-auto-installer-iso.sh: ISOLINUX config, colors (256 to basic ANSI), case, header + completion
  • build/debian-iso/custom/etc/profile.d/z99-archipelago.sh: full rewrite
  • build/debian-iso/custom/archipelago/auto-start.sh: full rewrite
  • archipelago-scripts/archipelago-menu.sh: full rewrite
  • build/debian-iso/custom/isolinux/stdmenu.cfg, menu.cfg, live.cfg: updated
  • branding/generate-isolinux-splash.py: new file (640x480 splash generator, optional)

Outstanding Issues

  • UEFI boot broken — drops to grub> prompt, only Legacy BIOS works
  • ISOLINUX resolution kept at 1024x768, may clip on some hardware
  • Install + onboarding logs confirmed present on .198 (5 log files)
  • Need to review actual log content from .198

Target Machine

  • Dell on .198, Legacy BIOS, password: archipelago