Commit Graph

  • 12e63d09fa fix(fallback): connectTimeoutMs 2500→15000 e breakerTripAfter 2→3 main Matteo Benedetto 2026-09-16 10:26:52 +02:00
  • 76eedcd526 fix(store): submitOrQueue restituisce ok — niente più falso "Errore 200" a salvataggio riuscito enne2 2026-09-15 23:24:10 +02:00
  • 6607135856 fix(search): query opzionale — queries-only valido, derive base query da queries[0] (evita fallimenti validazione glm/deepseek) enne2 2026-09-15 23:14:34 +02:00
  • 9dd24298cc perf(fallback): connect timeout breve + circuit breaker persistente (fast-fail) Matteo Benedetto 2026-09-13 18:09:50 +02:00
  • d1985514e1 feat(sync): tombstone, pull dall'export, ritocchi flush e fallback su 404 Matteo Benedetto 2026-09-13 17:53:59 +02:00
  • d509778448 chore(gateway): rimuove la copia duplicata del gateway dal package (dedup) Matteo Benedetto 2026-09-13 17:37:45 +02:00
  • 322b4cf446 feat(outbox): store offline con coda locale e sincronizzazione al ritorno della rete Matteo Benedetto 2026-09-13 17:29:09 +02:00
  • 1832562a7f feat: indice locale SQLite/FTS5 + fallback testuale offline per qmem Matteo Benedetto 2026-09-13 15:53:56 +02:00
  • 1b293efb2c test: aggiorna fake cross per soglia SUGGEST 0.85 enne2 2026-09-08 13:04:57 +02:00
  • 681834d2a3 fix(gateway): calibrazione soglie cross-gate (BLOCK 0.90, SUGGEST 0.85 su distribuzione reale: dup 0.9989 / correlato 0.8766 / irrilevante 0.0), find_similar top-5, GET id invalido → 404 enne2 2026-09-08 13:04:45 +02:00
  • 128059dd4b feat(gateway): strategie rerank oltre la search (A-F) enne2 2026-09-08 12:57:33 +02:00
  • fcd6b1670e feat(gateway): catena di fallback per gli embedding + retry transiente su Qdrant enne2 2026-09-08 12:19:16 +02:00
  • 78a93ee771 fix(gateway): troncamento documenti rerank (RERANK_MAX_DOC_CHARS=800) — evita 500 batch-size e costi oltre il ctx enne2 2026-09-08 12:12:38 +02:00
  • 20766de540 feat(gateway): stadio rerank con catena di fallback resiliente (frigate→brain) enne2 2026-09-08 12:10:27 +02:00
  • c21ef5e92a fix(qmem): ripristina GATE dentro QMEM_RULES (portabile con estensione), rimuovilo da AGENTS.md (globale+qwen-light) per evitare duplicazione — QMEM_RULES 526 token, AGENTS globale senza GATE enne2 2026-08-28 16:55:22 +02:00
  • 21c610835f perf(qmem): rimuovi GATE da QMEM_RULES (era duplicato in AGENTS.md) — regole qmem-only in inglese compatto 591→229 token; GATE vive ora in AGENTS.md (globale + qwen-light) enne2 2026-08-28 16:52:20 +02:00
  • 7097c4002b perf(qmem): skill qmem in inglese conciso — description sempre-on 70→42 token, corpo on-demand 1817→1028 token (totale -43%), procedure preservate enne2 2026-08-28 16:38:33 +02:00
  • ca89679b3c perf(qmem): A2 schemi tool in inglese compatto — testo model-visible 2242→462 token (-79%) col tokenizer Qwen3.8; nomi/parametri/enum/default invariati, promptGuidelines duplicate rimosse (già in QMEM_RULES) enne2 2026-08-28 16:27:49 +02:00
  • 6c1c4f526f fix(qmem): frontmatter skill quotato (YAML ': ') + A1 regole iniettate compatte (procedure → skill qmem) enne2 2026-08-28 16:02:35 +02:00
  • 86ac1996fb feat(private): memorie riservate escluse dalle ricerche standard enne2 2026-08-25 20:14:28 +02:00
  • 5a5081e5d9 feat(prompt): regola vincolante identificazione macchina nei record qmem (hostname auto-rilevato, layout modulare) + bump v1.8.0 enne2 2026-08-24 22:55:51 +02:00
  • 4776b4b496 refactor: split gateway and pi-qmem extension into modules Matteo Benedetto 2026-08-24 16:19:19 +02:00
  • e68fca3388 feat(reparenting): supersede di un record ri-parenta automaticamente i figli attivi Matteo Benedetto 2026-08-24 15:43:33 +02:00
  • 0283d3964e feat(hierarchy): aggiunti tool qmem_tree e regole operative per gestione gerarchica L1/L2 Matteo Benedetto 2026-08-23 13:16:13 +02:00
  • 369a2c2d9e feat(hierarchy): supporto metadati strutturati e gerarchici su Qdrant (parent_id, level, topic, links) Matteo Benedetto 2026-08-23 13:07:16 +02:00
  • fc11f878f6 feat(prompt): blocco Riflessione in QMEM_RULES (loop Reflexion-style) + bump v1.7.1 Matteo Benedetto 2026-08-22 16:10:17 +02:00
  • a448241ba2 fix(monitoring): migliora leggibilità dashboard qmem Matteo Benedetto 2026-08-20 15:13:08 +02:00
  • 94e9bb44b1 docs: sez. 11.11 istanza frigate (embedding llama.cpp) + bump v2.7.0 Matteo Benedetto 2026-08-18 22:48:50 +02:00
  • 2626649e5a feat: backend embedding configurabile — EMBED_API=ollama|llamacpp Matteo Benedetto 2026-08-18 22:46:26 +02:00
  • b7809fc92d feat(version): endpoint /v1/version + git_commit nel build Docker Matteo Benedetto 2026-08-18 16:19:36 +02:00
  • eccb2cb870 feat(guardrail): similarità pre-scrittura su POST /v1/memories Matteo Benedetto 2026-08-18 12:58:05 +02:00
  • 91ec4c82d7 feat: tool qmem_get per recupero deterministico record per UUID Matteo Benedetto 2026-08-17 18:07:42 +02:00
  • 24634f62fe chore: url di default del gateway = https://qmem.enne2.net (era http://10.8.0.3:8082) enne2 2026-08-17 01:51:21 +02:00
  • 6b4924d0db docs: sez. 11.10 incidente backfill (upsert→update_vectors) + lezioni apprese Matteo Benedetto 2026-08-16 20:41:01 +02:00
  • c4bfa1d5bf fix CRITICO: backfill usa update_vectors (non upsert) — preserva payload e vettore denso Matteo Benedetto 2026-08-16 20:39:12 +02:00
  • 35be152be5 docs: permanenza esplicita — expires_at omesso = memoria permanente, mai cancellata dal cleanup Matteo Benedetto 2026-08-16 19:58:54 +02:00
  • aed962cfcd chore: bump versioni (gateway 2.6.0, estensione 1.7.0) Matteo Benedetto 2026-08-16 19:56:09 +02:00
  • 027ba15817 docs: sez. 11.8 reranker rimandato (criteri futuri) + 11.9 hybrid retrieval Matteo Benedetto 2026-08-16 19:56:00 +02:00
  • 70f3699396 test: suite pytest per il gateway (21 test) + script di verifica pre-push Matteo Benedetto 2026-08-16 19:53:45 +02:00
  • faa4e84611 feat: metriche gateway con push a VictoriaMetrics + dashboard Grafana Matteo Benedetto 2026-08-16 19:51:08 +02:00
  • 6c2417eab7 feat: avviso duplicati in qmem_store (search pre-salvataggio, soglia 0.92, non blocca) Matteo Benedetto 2026-08-16 19:45:18 +02:00
  • eba9c19179 feat: campo confidence (high/medium/low, default medium) nei record Matteo Benedetto 2026-08-16 19:43:30 +02:00
  • 7abced1566 feat: hybrid retrieval (BM25 + vettoriale, RRF) opt-in via hybrid=true Matteo Benedetto 2026-08-16 19:41:42 +02:00
  • 2d354bfde6 feat: X-Request-ID per richiesta (header risposta + audit log) Matteo Benedetto 2026-08-16 19:32:29 +02:00
  • a2bb659e31 docs: sez. 11.7 accesso condiviso — rischio e criteri per chiavi per-scope future Matteo Benedetto 2026-08-16 19:29:22 +02:00
  • 3f7c3cee51 security: hash SHA-256 della query nell'audit log (niente contenuto in chiaro) Matteo Benedetto 2026-08-16 19:28:01 +02:00
  • f30966a77c feat: rate limit leggero (30/min per IP) su /v1/status pubblico Matteo Benedetto 2026-08-16 19:22:18 +02:00
  • 87d59ccb5c feat: validazione expires_at ISO 8601 (422 con messaggio chiaro, niente fallback silenzioso) Matteo Benedetto 2026-08-16 19:21:01 +02:00
  • 748356d769 perf: client httpx riusato per gli embedding (lazy, chiuso a shutdown) Matteo Benedetto 2026-08-16 19:18:41 +02:00
  • ec0fdb972a refactor: lifespan al posto di @app.on_event (deprecato) + bump v2.5.0 Matteo Benedetto 2026-08-16 19:17:19 +02:00
  • 25ccb13f5b security: utente non-root (appuser, uid 10001) nel Dockerfile del gateway Matteo Benedetto 2026-08-16 19:14:54 +02:00
  • 625e569389 feat: soglia di sicurezza in qmem_correct con query (correctMinScore default 0.60) Matteo Benedetto 2026-08-16 19:13:38 +02:00
  • bb182dc370 feat: retry con backoff su errori transitori + timeoutMs applicato Matteo Benedetto 2026-08-16 19:12:12 +02:00
  • 66e898f8b5 docs: sez. 11.6 idempotency nel playbook Matteo Benedetto 2026-08-16 19:10:51 +02:00
  • a7d4bbb4a8 feat: idempotency su POST /v1/memories (Idempotency-Key, replay → stessa risposta, payload diverso → 409) Matteo Benedetto 2026-08-16 19:10:32 +02:00
  • 9cb3008f4d docs: aggiungi gateway/README.md con istruzioni di deploy (referenziato dal README principale) Matteo Benedetto 2026-08-16 19:01:49 +02:00
  • 13d12b59b9 feat: regole QMEM_RULES imperative con trigger (MUST/MUST NOT + sequenza errore) Matteo Benedetto 2026-08-13 18:58:44 +02:00
  • 9925c37ea0 fix: virgole orfane dopo promptGuidelines (parse error) enne2 2026-08-13 13:37:00 +02:00
  • c7088d4338 feat: regole comportamentali autocontenute nell'estensione (v1.5.0) enne2 2026-08-13 13:35:53 +02:00
  • 72ebb949c8 feat: project_id obbligatorio (gateway v2.4.0 + estensione v1.4.0) enne2 2026-08-13 13:24:22 +02:00
  • 334f9c6b44 fix(gateway): with_vectors (plurale) in qdrant.scroll per /v1/meta/overview enne2 2026-08-13 13:09:10 +02:00
  • 4b1f13c118 feat: discovery endpoint GET /v1/meta/overview + tool qmem_meta enne2 2026-08-13 13:06:10 +02:00
  • f6d9c5872d feat: min_score anti-rumore nella ricerca + igiene metadata enne2 2026-08-13 13:02:37 +02:00
  • 1891f22a5e fix(qmem_correct): eredita kind/scope/project_id anche quando memory_id è passato direttamente (GET del record prima del supersede) enne2 2026-08-13 12:42:58 +02:00
  • 1713e68b82 feat: supersede di memorie false (qmem_correct, include_superseded, playbook sez. 11) enne2 2026-08-13 12:41:14 +02:00
  • eadd2a756b pi-qmem: memoria centralizzata condivisa per agenti AI (estensione pi + gateway) enne2 2026-08-11 23:14:40 +02:00