tzdata was prompting for a timezone interactively during apt-get install,
which hangs the Dokploy build. Pin TZ=Etc/UTC and skip the prompt.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Split monolithic chat service into modular structure with Matrix client
support, extract web server into per-resource route modules, introduce
bootstrap/main-loop separation, and add comprehensive vitest coverage
across services, repositories, and utilities. Adds project docs and
CLAUDE.md agent instructions.