-
v0.1.3
Stablereleased this
2026-09-06 19:22:34 +02:00 | 20 commits to main since this releaseAdded
- supabase : agent Hermes dédié par utilisateur — migration
aria_hermes_agents(interne, deny-all) /aria_hermes_agent_access(projection par trigger, lisible par son propriétaire) /aria_hermes_llm_keys(pool de clés, invisible), RPCaria_claim_hermes_provisioningetaria_allocate_hermes_llm_key(ADR-015). Appliquée pour de vrai le 2026-09-06 contre l'instance partagée, sur autorisation humaine explicite (cf.docs/STATUS.md→ Décisions récentes) (T-115) - supabase : Edge Function
provision-hermes-agent— crée l'agent de l'utilisateur sur l'opérateur hermes-swarm au login, seule détentrice deHERMES_OPERATOR_API_KEY; renvoie au client le statut et les credentials du dashboard, jamais l'api_url/api_keyde l'agent (ADR-015). Déployée par l'humain le 2026-09-06 :POSTsans JWT / avec JWT bidon / sans body renvoie bien401 {"error":"unauthorized"}(après correction d'un500 function_not_configuredinitial, cause :docker compose restartne rechargeait pas les variables d'environnement). Reste seul point non vérifiable ici : provisioning de bout en bout avec un vrai JWT utilisateur (login réel) (T-116) - server : agent Hermes ciblé par utilisateur (ADR-015) —
AgentTarget(base_url/api_key) remplaceHERMES_URL/HERMES_API_KEYfixés à la construction duProtocolAgentProvider.run/run_stream(HermesAgentProviderreste un provider unique) ;SupabaseDB.get_hermes_agent/mark_hermes_agent_ready(lecturearia_hermes_agents, clé service) ;providers/agent/health.py::is_agent_healthy(nouveau, sonde/healthsans authentification) ;pipeline/agent.py::_resolve_agent_targetrésout l'agent dédié de l'utilisateur (ready, oucreatingpromu à la volée si joignable), sinon retombe surHERMES_URL/HERMES_API_KEY(fallback de développement, retiré par T-120), sinon aucun agent utilisable.AgentResult.statusgagne"not_ready"(contrat régénéré,packages/contract/openapi.json/openapi.types.ts) ;/v1/agent/streamémet{"type":"error","detail":"agent_not_ready"}dans ce cas.docs/API.mdréécrit pour/v1/agent(/stream). 21 tests ajoutés (tests/test_pipeline_agent_target.py), suite existante adaptée. Applicable en prod dès maintenant (T-115 appliquée) (T-117) - desktop : appel de
provision-hermes-agentà chaque login (ADR-015) —auth.rs::call_provision_hermes_agent(fire-and-forget) déclenché à chaque session posée (login, refresh horaire, reprise d'une session persistée au démarrage), échec seulement loggué (jamais bloquant), réessayé naturellement au prochain appel grâce à l'idempotence côté Edge Function (T-118) - desktop : Settings › « Mon agent » (ADR-015) — nouvelle page (
HermesAgent.tsx) lisantaria_hermes_agent_accessen direct via supabase-js (RLS select own) : agent en préparation / échec avec bouton réessayer / prêt avec lien dashboard et identifiants copiables (mot de passe masqué par défaut) (T-119) - desktop : boutons « Copier » sur les blocs de code et les tableaux markdown de la fenêtre agent (
AgentWindow.tsx) — répond à l'issue Forgejo #100 (« il n'est pas possible de copier » un tableau, code sans bouton dédié) (T-113)
Fixed
- desktop : fenêtre agent élargie (480×560 → 720×620) — jugée trop étroite (issue Forgejo #100) (T-113)
- desktop : l'URL du serveur n'est plus stockée/modifiable via
AriaConfig/Settings › Général — figée à la compilation (config::SERVER_URL), invisible et non modifiable depuis le client (issue Forgejo #101, ADR-014) (T-114)
Removed
- server : fallback de développement
HERMES_URL/HERMES_API_KEYretiré (T-120, ADR-015) — plus aucun utilisateur sans agent Hermes dédié ne peut retomber sur l'ancien Hermes unique et partagé (ubuntu-01, PoC personnel de l'humain) ; sans agentready,/v1/agent(/stream) répond systématiquementnot_ready/agent_not_ready. Variables retirées de.env/.env.example. 5 tests de fallback devenus sans objet retirés (tests/test_pipeline_agent_target.py) (T-120)
Changed
- process : provisioning Hermes confirmé de bout en bout par l'humain (2026-09-06) : dictée et mode agent testés en conditions réelles via l'agent dédié,
HERMES_AGENT_MODELréglé côté Edge Function (nouvel agent créé directement avec le bon modèle par défaut, vérifié après un reset complet — suppression du conteneur/volume via l'opérateur,purge=true, puis reprovisioning) — M8 (T-115 → T-120) formellement clos (T-120) - process : v0.1.2 publiée avec succès (
https://git.cloud-rennais.fr/cloud-rennais/aria/releases/tag/v0.1.2), premier--publishpropre du premier coup depuis les correctifs descripts/release.sh;latest.jsonrepublié (version0.1.2). Contient le correctif de la courseupdate://available/UpdateBanner— prête pour retester T-081/T-083 de bout en bout (T-080)
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- supabase : agent Hermes dédié par utilisateur — migration