Commit Graph

9 Commits

Author SHA1 Message Date
Kantin-Petit d824d16eed feat(infra): prêt au déploiement GitOps Portainer + Telegram optionnel (v0.32.0)
Compose de prod docker-compose.prod.yml (GitOps, sans env_file, réseau proxy
réel, certresolver letsencrypt) + runbook docs/deploy.md (Phase 1, users
chlova restreints Portainer/n8n). Surface Telegram rendue optionnelle pour un
déploiement UI-only ; garde assertHasSurface fail-closed. Typecheck + 78 tests
verts.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016w5jRe87MGdd6AMvXQcHNi
2026-06-23 11:27:07 +02:00
Kantin-Petit 2bfa58f440 feat: outil propose_asset + auto-extension exposée, fin Phase 5 v1 (v0.27.0)
Outil local sanctionné chlova.propose_asset : l'agent propose un asset →
write+commit+version+doc → need-review (privilégié = BLOQUÉ). Notion
ToolSpec.sanctioned (autorisé par gatekeeper, audité). Flag
CHLOVA_AUTOEXT_ENABLED (off défaut) + CHLOVA_REPO_ROOT. Prompt impose un
palier honnête. 75 tests, 0 vuln, compose OK.

Palier de risque : privilégié (l'agent écrit+commit) — derrière flag +
Phase 2 ; l'asset produit n'est jamais exécuté, il reste sous review.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 06:38:45 +02:00
Kantin-Petit e6edf1a8bc feat: UI vue Review + backend sert le SPA, fin Phase 4 v1 (v0.24.0)
Vue Review (liste assets, approuver/refuser + confirm, refresh, 401→logout).
Backend sert le SPA same-origin (@fastify/static + fallback) si CHLOVA_WEB_ROOT.
Dockerfile multi-stage build web+API (contexte racine), image embarque /app/web.
Compose contexte .., image chlova/backend:0.2.0. 65 tests, 0 vuln, compose OK.

Palier de risque : privilégié (surface exposée complète) — non déployée ;
auth + CHLOVA_PHASE requis pour activer.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 05:56:01 +02:00
Kantin-Petit e97c885ebf feat: exposition Traefik + provisioning auth (v0.21.0)
Backend exposé via Traefik+TLS (réseau traefik-public externe, labels,
CHLOVA_DOMAIN) — surface unique. Script provision-auth (hash scrypt +
TOTP otpauth + JWT). .env.example section API/UI. security.md : surface
exposée Phase 4. Compose revalidé.

Palier de risque : privilégié (exposition réseau) — non déployé ; auth
requise pour activer l'API.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 02:15:17 +02:00
Kantin-Petit b617487d0d feat: workflow n8n d'alerte + doc, fin Phase 3 (v0.18.0)
Export JSON workflows-n8n/chlova-alerts.v1.0.0.json (webhook → mail,
formate par type d'alerte) + doc d'asset (palier privileged, rollback).
ALERT_WEBHOOK_URL dans .env.example + compose (vide = log-only).
need-review.md : alertes implémentées. Compose revalidé, 53 tests, 0 vuln.

Palier de risque : privilégié (workflow envoie des mails) — désactivable
via ALERT_WEBHOOK_URL vide ; non exécuté depuis le dépôt.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 01:54:46 +02:00
Kantin-Petit bfae5bbbdb docs: fige le chemin endpoint MCP natif n8n /mcp-server/http (v0.15.1)
Confirme MCP_N8N_URL = .../mcp-server/http (hôte interne préféré, URL
publique TLS possible + egress du domaine). Note egress dans networks.md.

Palier de risque : n/a (doc).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 01:46:43 +02:00
Kantin-Petit ceddb86198 refactor(infra): MCP n8n natif, retrait du conteneur dédié (v0.15.0)
n8n ≥ 2.18.4 sert son propre MCP : suppression du service mcp-n8n,
MCP_N8N_URL pointe vers l'endpoint natif de l'instance (auth MCP Access
Token Bearer). Portainer reste un sidecar officiel. Aucun changement de
code (registry HTTP+Bearer inchangé). Docs + .env alignés, compose
revalidé.

Palier de risque : n/a (infra + config).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 01:40:49 +02:00
Kantin-Petit 52980837a9 docs: documentation + gate de phase compose, fin Phase 2 (v0.14.0)
docs/need-review.md (cycle complet : états, sursis, gatekeeper, cron,
review, rollback). CHLOVA_PHASE dans .env.example + compose (défaut 1).
risk-tiers + README : application par phase. Compose revalidé, 45 tests,
0 vuln.

Palier de risque : n/a (doc + config).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 01:34:12 +02:00
Kantin-Petit a301281594 chore: scaffold dépôt CHLOVA (v0.1.0)
Pose le socle méta : CLAUDE.md (architecture cible + règles non
négociables versioning/sécurité/risque), README, CHANGELOG, .env.example
(références secrets only), .gitignore, squelette d'arborescence.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 00:57:23 +02:00