feat(private): memorie riservate escluse dalle ricerche standard

- gateway: campo private (bool) in MemoryIn; filtro must_not private=true
  di default in search_filter; include_private in SearchIn per ricerche
  esplicite; campo private esposto in format_results
- estensione: parametro private in qmem_store, include_private in qmem_search
  (con descrizioni e avvertenze sui prompt dei modelli)
- testato su brain: record private invisibile alla ricerca standard,
  visibile solo con include_private=true; topic esplicito da solo non sblocca
- deploy: /opt/memory/gateway ricostruito (container memory-gateway)
This commit is contained in:
enne2
2026-08-25 20:14:28 +02:00
parent 5a5081e5d9
commit 86ac1996fb
5 changed files with 29 additions and 1 deletions
+9
View File
@@ -59,6 +59,14 @@ export function registerQmemStore(pi: ExtensionAPI) {
}),
),
topic: Type.Optional(Type.String({ description: "Topic ID gerarchico (es. ALFA-ROMEO-GT-1300-JUNIOR/SPECS)." })),
private: Type.Optional(
Type.Boolean({
description:
"RISERVATO: se true, il record è escluso dalle ricerche standard (invisibile a qmem_search/qmem_tree/meta) " +
"e accessibile solo con qmem_search include_private=true. Usalo per dati personali/sensibili che non devono " +
"finire nei prompt dei modelli. NON usarlo per conoscenza normale.",
}),
),
links: Type.Optional(
Type.Array(
Type.Object({
@@ -108,6 +116,7 @@ export function registerQmemStore(pi: ExtensionAPI) {
supersedes_id: p.supersedes_id,
supersede_reason: p.supersede_reason,
parent_id: p.parent_id,
private: p.private ?? false,
level: p.level,
topic: p.topic,
links: p.links,