Remove Go implementation, promote TypeScript app as canonical

The TypeScript/OOP rewrite has reached full functional parity and is
now the only implementation:

- Delete cmd/, internal/, go.mod, go.sum.
- Promote Dockerfile.node -> Dockerfile and docker-compose.node.yml ->
  docker-compose.yml (service renamed sugarr-node -> sugarr).
- Update README and .gitignore to drop the "two implementations"
  framing and Go-specific entries.

Verified after the rename: tsc --noEmit clean, full test suite
passing (75/75), docker compose build succeeds.
This commit is contained in:
2026-08-12 21:45:32 +02:00
parent ae8bfaa2eb
commit 83bb16e2a0
22 changed files with 35 additions and 1400 deletions

View File

@@ -6,15 +6,16 @@ similarity/frequency fallback, resolves them against TMDb, excludes anything
already in your library or Radarr, and can auto-request the rest via Radarr.
Runs on a cron schedule and/or as an HTTP API.
This repo currently has two implementations:
Built with a TypeScript/OOP architecture (Node + Fastify + Langfuse): a
reusable `src/core/` framework (HTTP client base classes, an LLM tool/pipeline
abstraction with Langfuse-cached prompts, Fastify server scaffolding) and an
`src/app/` layer with Sugarr's concrete clients/tools/pipeline/controllers.
See `docs/superpowers/specs/2026-08-12-typescript-oop-rewrite-design.md` and
`docs/superpowers/plans/2026-08-12-typescript-oop-rewrite.md` for the design
and implementation plan (this repo previously also had a Go implementation,
now removed in favor of this one).
- **`cmd/`, `internal/`** — the original Go implementation.
- **`src/`** — a TypeScript/OOP rewrite (Node + Fastify + Langfuse), the one
documented below. See `docs/superpowers/specs/2026-08-12-typescript-oop-rewrite-design.md`
and `docs/superpowers/plans/2026-08-12-typescript-oop-rewrite.md` for the
design and implementation plan.
## Running the TypeScript app
## Running the app
```bash
pnpm install
@@ -36,12 +37,9 @@ See `.env.example` for the full list with defaults. At minimum you need:
### Docker
```bash
docker compose -f docker-compose.node.yml up -d --build
docker compose up -d --build
```
Uses `Dockerfile.node` / `docker-compose.node.yml`, kept separate from the Go
app's `Dockerfile` / `docker-compose.yml`.
## Seeding Langfuse prompts
The app fetches two chat prompts from Langfuse by name — `movie-recommender`