Deploy stack su Proxmox / deploy (push) Failing after 3s
Monorepo npm con apps/public (Angular SSR), apps/private (Angular SPA), apps/api (Fastify), packages/shared e packages/styles; Medusa 2.21 in medusa/; infrastruttura Docker (Postgres PostGIS+pgvector, Redis, Caddy, backup) e workflow Gitea Actions per il deploy via SSH a ogni push su master. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018jQyT6dR9czzGwqb7FkG6u
1.1 KiB
1.1 KiB
17 — API: blog
Leggi CLAUDE.md.
Obiettivo
Blog con contenuti markdown, ricerca full-text e gestione admin.
Cosa fare
- Pubblico:
GET /blog/posts(paginazione, categoria,qper ricerca full-text conwebsearch_to_tsquery('italian', unaccent(q))e ordinamento per rank),GET /blog/posts/:slug,GET /blog/categories. Solo postpublishedconpublished_at <= now(). - Il dettaglio restituisce sia
content_mdsiacontent_htmlrenderizzato conmarkede sanitizzato (sanitize-htmlcon whitelist). - Admin: CRUD post e categorie, slug generato dal titolo e univoco, cambio stato draft/published, preview (
POST /admin/blog/previewriceve markdown e restituisce HTML sanitizzato). GET /sitemap-datacon slug e date di aggiornamento (servirà al frontend SSR per la sitemap).
Criteri di accettazione
- La ricerca "pompa calore" trova un post intitolato "Pompe di calore: guida" (stemming italiano + unaccent).
- Markdown con
<script>oonerror=viene ripulito. - I draft non sono visibili via API pubblica.
- Test per ricerca, sanitizzazione e permessi admin.
CLAUDE.mdaggiornato.