Phase 0: take ownership of build, CI, and telemetry - #314
Conversation
Caddy TLS front (public 80/443) -> internal traefik -> pinned moonrailgun/tailchat:1.11.12 stack with legacy admin panel. MinIO credentials parameterized; env template + runbook included. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ocalhost to ::1 Gateway listens IPv4-only; the failing healthcheck made traefik drop service-core from routing (every route except /admin 404'd). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… rotation) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
STC production deployment for netcup-vps-01
Adds a file_server site block for stc-worldwide.com + www (content at /opt/landing on the host, source repo STC-Worldwide/stc-worldwide.com) and mounts /opt/landing read-only into the caddy container. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Serve stc-worldwide.com landing page via Caddy
… 2465, landing page - vps-nftables.conf: custody copy of the live firewall incl. the 80/443 input rule and docker0/br-* forward accepts (containers have no outbound without them) - README: firewall, Resend SMTP (netcup blocks 465/587 -> port 2465, SMTP_SENDER single-quote form), landing page serving + redeploy - env example: corrected SMTP examples to the working forms Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sync deploy runbook with live VPS state
The RN WebView shell was stale since 2023-12 and tied to getui/Huawei push; mobile will be a native wrap of the web client instead. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- docker-publish.yml now builds ghcr.io/stc-worldwide/tailchat via GITHUB_TOKEN (amd64, gha cache) on master pushes and v*.*.* tags - drop 8 workflows tied to msgbyte infra (Docker Hub, Vercel, Deno, Laf, Codemagic, issue translator) plus codemagic.yaml / vercel.json - ci.yaml + admin.yaml: run on pull_request, actions v4, plain build (no Perfsee) - Dockerfile: pin tailchat-cli@1.5.14 instead of @latest Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Drop the unconditional tianji.moonrailgun.com pixel in init.tsx and the umami inject script (only consumed by the deleted Vercel workflows). Admin-configured tianji injection (useInjectTianjiScript) is unchanged. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- compose + runbook now reference ghcr.io/stc-worldwide/tailchat:1.12.0 - runbook documents the tag-to-release flow and GHCR package visibility - ignore .env.local repo-wide (was only in one clone's .git/info/exclude) - bump root version to 1.12.0 for the fork's first release Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
👷 Deploy request for tailchat-nightly pending review.Visit the deploys page to approve it
|
|
Opened against the wrong repository by mistake — this belongs on the STC-Worldwide fork. Apologies for the noise. |
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (18)
📒 Files selected for processing (116)
📝 WalkthroughWalkthroughThe change removes legacy desktop and mobile clients, updates CI and GHCR publishing, removes several deployment workflows, disables client telemetry, pins the CLI version, and adds a complete STC production deployment with Compose, Caddy, backups, documentation, and nftables rules. ChangesCI and release publishing
Legacy client cleanup
STC deployment
Estimated code review effort: 4 (Complex) | ~45 minutes Sequence Diagram(s)sequenceDiagram
participant Client
participant Caddy
participant Traefik
participant Tailchat
participant MongoDB
participant Redis
Client->>Caddy: Send HTTPS request
Caddy->>Traefik: Proxy request to internal port 80
Traefik->>Tailchat: Route by request path
Tailchat->>MongoDB: Read or write application data
Tailchat->>Redis: Use Redis transporter
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
First step of the fork takeover plan (full review: internal artifact "Tailchat Takeover Review").
What this does
docker-publish.ymlnow pushesghcr.io/stc-worldwide/tailchatusing the workflow's ownGITHUB_TOKEN— no external secrets, no Docker Hub. Builds onmasterpushes andv*.*.*tags, amd64, with GHA layer cache.codemagic.yamlandvercel.json.ci.yaml/admin.yamlnow also run on pull requests and use v4 actions; the web build step no longer needs upstream's Perfsee token.tianji.moonrailgun.compixel frominit.tsxand the umamiinject-analytics.js. The admin-configurable tianji hook stays (it only fires when explicitly configured server-side).client/mobile(RN 0.71 WebView shell, stale since 2023-12, getui/Huawei push) andclient/desktop-old(2022). AGENTS.md/.dockerignore updated.deploy/stc/docker-compose.ymland the runbook now pinghcr.io/stc-worldwide/tailchat:1.12.0; root version bumped to 1.12.0..env.localignored repo-wide.After merge (deploy checklist)
v1.12.0→ watch the Docker Publish run (~30–60 min).read:packagesPAT.docker compose pull && docker compose up -d, smoke-test per runbook.Not in scope (next phases)
Playwright-in-CI, the
$regexsearch escape, platform upgrades (TS 5 / Tailwind 4 / Node 22 / Mongo 7), and the UI facelift.🤖 Generated with Claude Code
Summary by CodeRabbit
New Features
Chores