fix(quotas): unifier le décompte IA (BYOK, rollback) et combler les fuites
All checks were successful
CI / Lint, Unit Tests & Build (push) Successful in 6m55s
CI / Deploy production (on server) (push) Successful in 36s

Centralise la réserve via ai-quota, corrige admin unavailable (-1), brancher les routes sans quota et le host-pays brainstorm, avec usage-meter élargi, noms de clusters, MCP et ajustements dashboard/insights.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Antigravity
2026-07-15 20:42:25 +00:00
parent 30da592ba2
commit 4fe31ebc99
75 changed files with 2949 additions and 785 deletions

View File

@@ -1718,6 +1718,8 @@
"mcpSettings": {
"title": "MCP",
"description": "Gestisci le chiavi API e configura gli strumenti esterni",
"tierRequired": "Solo Pro+",
"upgradeHint": "L'accesso MCP (chiavi API per Cursor, Claude Desktop, ecc.) richiede un piano Pro o superiore. Esegui l'upgrade in Fatturazione per sbloccare questa funzionalità.",
"whatIsMcp": {
"title": "Cos'è MCP?",
"description": "Il Model Context Protocol (MCP) è un protocollo aperto che consente ai modelli di IA di interagire in modo sicuro con strumenti e fonti di dati esterni. Con MCP puoi collegare strumenti come Claude Code, Cursor o N8N alla tua istanza Memento per leggere, creare e organizzare le tue note a livello di programmazione.",
@@ -1743,7 +1745,12 @@
"lastUsed": "Ultimo utilizzo",
"never": "Mai",
"confirmRevoke": "Sei sicuro di voler revocare questa chiave? Gli strumenti che la utilizzano perderanno l'accesso.",
"confirmDelete": "Sei sicuro di voler eliminare definitivamente questa chiave?"
"confirmDelete": "Sei sicuro di voler eliminare definitivamente questa chiave?",
"errors": {
"generate": "Generazione della chiave non riuscita",
"revoke": "Revoca della chiave non riuscita",
"delete": "Eliminazione della chiave non riuscita"
}
},
"createDialog": {
"title": "Genera chiave API",
@@ -1773,6 +1780,15 @@
"title": "N8N",
"description": "Usa queste credenziali nel tuo nodo MCP N8N:"
}
},
"helpBox": {
"title": "Cos'è MCP (Model Context Protocol)?",
"step1": "MCP è un protocollo che consente agli agenti IA di Memento di connettersi a strumenti esterni (database, API, file, ecc.).",
"step2": "Memento espone un server MCP con 22 strumenti — i tuoi agenti possono leggere/creare note, cercare nel tuo database, gestire i taccuini, ecc.",
"step3": "Crea una chiave API qui, poi configurala nel tuo client MCP (Claude Desktop, Cursor, Continue.dev…) con l'URL del server.",
"step4": "Formato di configurazione: URL del server MCP + la tua chiave nell'header Authorization.",
"step4Link": "Documentazione MCP",
"step5": "Caso d'uso: chiedi a Claude Desktop di scrivere una nota in Memento, cercare nei tuoi taccuini o creare un agente."
}
},
"agents": {
@@ -2500,7 +2516,23 @@
"instantActivation": "Attivazione istantanea",
"secureDesc": "Pagamenti sicuri tramite Stripe",
"secureTransactions": "Transazioni sicure",
"satisfactionGuarantee": "Garanzia di soddisfazione di 30 giorni"
"satisfactionGuarantee": "Garanzia di soddisfazione di 30 giorni",
"cancelConfirm": "Sei sicuro di voler annullare il tuo abbonamento? Manterrai l'accesso Pro/Business fino alla fine del periodo di fatturazione corrente.",
"cancelSuccess": "Il tuo abbonamento è stato annullato con successo. Terminerà alla fine del periodo di fatturazione corrente.",
"invoices": "Fatture e ricevute",
"invoiceAmount": "Importo",
"invoiceDate": "Data",
"invoiceNumber": "Numero",
"invoiceStatus": "Stato",
"noInvoices": "Nessuna fattura disponibile.",
"checkoutFailed": "Impossibile avviare il checkout. Riprova.",
"portalFailed": "Impossibile aprire il portale di fatturazione.",
"cancelFailed": "Impossibile annullare l'abbonamento.",
"downloadPdf": "Scarica PDF",
"fetchStatusFailed": "Impossibile recuperare lo stato della fatturazione",
"fetchQuotasFailed": "Impossibile recuperare le quote",
"fetchInvoicesFailed": "Impossibile caricare lo storico delle fatture.",
"savePercent": "Risparmia ~17%"
},
"landing": {
"nav": {
@@ -3029,5 +3061,13 @@
"hintNavigate": "navigare",
"hintOpen": "aprire",
"hintClose": "chiudere"
},
"quotaPaywall": {
"title": "Limite mensile raggiunto",
"description": "Hai esaurito i tuoi crediti {feature} per questo mese.",
"upgrade": "Migliora piano",
"useOwnKey": "Usa la tua chiave API",
"later": "Forse più tardi",
"closingIn": "Chiusura tra {n}s"
}
}