import type { Translations } from "./types"; export const it: Translations = { common: { save: "Salva", saving: "Salvataggio...", cancel: "Annulla", close: "Chiudi", confirm: "Conferma", delete: "Elimina", refresh: "Aggiorna", retry: "Riprova", search: "Cerca...", loading: "Caricamento...", create: "Crea", creating: "Creazione...", set: "Imposta", replace: "Sostituisci", clear: "Cancella", live: "In tempo reale", off: "Spento", enabled: "abilitato", disabled: "disabilitato", active: "attivo", inactive: "inattivo", unknown: "sconosciuto", untitled: "Senza titolo", none: "Nessuno", form: "Modulo", noResults: "Nessun risultato", of: "di", page: "Pagina", msgs: "msg", tools: "strumenti", match: "corrispondenza", other: "Altro", configured: "configurato", removed: "rimosso", failedToToggle: "Commutazione non riuscita", failedToRemove: "Rimozione non riuscita", failedToReveal: "Visualizzazione non riuscita", collapse: "Comprimi", expand: "Espandi", general: "Generale", messaging: "Messaggistica", pluginLoadFailed: "Impossibile caricare lo script di questo plugin. Controlla la scheda Network (dashboard-plugins/…) e il percorso dei plugin del server.", pluginNotRegistered: "Lo script del plugin non ha chiamato register(), oppure ha generato un errore. Apri la console del browser per i dettagli.", }, app: { brand: "Hermes Agent", brandShort: "HA", closeNavigation: "Chiudi navigazione", closeModelTools: "Chiudi modello e strumenti", footer: { org: "Nous Research", }, activeSessionsLabel: "Sessioni attive:", gatewayStatusLabel: "Stato gateway:", gatewayStrip: { failed: "Avvio non riuscito", off: "Spento", running: "In esecuzione", starting: "Avvio in corso", stopped: "Arrestato", }, nav: { analytics: "Analisi", chat: "Chat", config: "Configurazione", cron: "Cron", documentation: "Documentazione", keys: "Chiavi", logs: "Log", models: "Modelli", profiles: "profili : multi agent", plugins: "Plugin", sessions: "Sessioni", skills: "Competenze", }, modelToolsSheetSubtitle: "e strumenti", modelToolsSheetTitle: "Modello", navigation: "Navigazione", openDocumentation: "Apri la documentazione in una nuova scheda", openNavigation: "Apri navigazione", pluginNavSection: "Plugin", sessionsActiveCount: "{count} attive", statusOverview: "Panoramica dello stato", system: "Sistema", webUi: "Web UI", }, status: { actionFailed: "Azione non riuscita", actionFinished: "Completata", actions: "Azioni", agent: "Agente", activeSessions: "Sessioni attive", connected: "Connesso", connectedPlatforms: "Piattaforme connesse", disconnected: "Disconnesso", error: "Errore", failed: "Non riuscito", gateway: "Gateway", gatewayFailedToStart: "Avvio del gateway non riuscito", lastUpdate: "Ultimo aggiornamento", noneRunning: "Nessuno", notRunning: "Non in esecuzione", pid: "PID", platformDisconnected: "disconnesso", platformError: "errore", recentSessions: "Sessioni recenti", restartGateway: "Riavvia gateway", restartingGateway: "Riavvio del gateway…", running: "In esecuzione", runningRemote: "In esecuzione (remoto)", startFailed: "Avvio non riuscito", starting: "Avvio in corso", startedInBackground: "Avviato in background — controlla i log per i progressi", stopped: "Arrestato", updateHermes: "Aggiorna Hermes", updatingHermes: "Aggiornamento di Hermes…", waitingForOutput: "In attesa di output…", }, sessions: { title: "Sessioni", searchPlaceholder: "Cerca nel contenuto dei messaggi...", noSessions: "Nessuna sessione", noMatch: "Nessuna sessione corrisponde alla ricerca", startConversation: "Avvia una conversazione per vederla qui", noMessages: "Nessun messaggio", untitledSession: "Sessione senza titolo", deleteSession: "Elimina sessione", confirmDeleteTitle: "Eliminare la sessione?", confirmDeleteMessage: "Questa operazione rimuove definitivamente la conversazione e tutti i suoi messaggi. Non può essere annullata.", sessionDeleted: "Sessione eliminata", failedToDelete: "Eliminazione della sessione non riuscita", resumeInChat: "Riprendi nella chat", previousPage: "Pagina precedente", nextPage: "Pagina successiva", roles: { user: "Utente", assistant: "Assistente", system: "Sistema", tool: "Strumento", }, }, analytics: { period: "Periodo:", totalTokens: "Token totali", totalSessions: "Sessioni totali", apiCalls: "Chiamate API", dailyTokenUsage: "Utilizzo giornaliero token", dailyBreakdown: "Dettaglio giornaliero", perModelBreakdown: "Dettaglio per modello", topSkills: "Competenze più usate", skill: "Competenza", loads: "Caricato dall'agente", edits: "Gestito dall'agente", lastUsed: "Ultimo uso", input: "Input", output: "Output", total: "Totale", noUsageData: "Nessun dato di utilizzo per questo periodo", startSession: "Avvia una sessione per vedere le analisi qui", date: "Data", model: "Modello", tokens: "Token", perDayAvg: "/giorno medio", acrossModels: "su {count} modelli", inOut: "{input} in / {output} out", }, models: { modelsUsed: "Modelli utilizzati", estimatedCost: "Costo stim.", tokens: "token", sessions: "sessioni", avgPerSession: "media/sessione", apiCalls: "chiamate API", toolCalls: "chiamate strumenti", noModelsData: "Nessun dato sull'uso dei modelli per questo periodo", startSession: "Avvia una sessione per vedere i dati dei modelli qui", }, logs: { title: "Log", autoRefresh: "Aggiornamento automatico", file: "File", level: "Livello", component: "Componente", lines: "Righe", noLogLines: "Nessuna riga di log trovata", }, cron: { confirmDeleteMessage: "Questa operazione rimuove l'attività dalla pianificazione. Non può essere annullata.", confirmDeleteTitle: "Eliminare l'attività pianificata?", newJob: "Nuova attività cron", nameOptional: "Nome (facoltativo)", namePlaceholder: "es. Riepilogo giornaliero", prompt: "Prompt", promptPlaceholder: "Cosa deve fare l'agente a ogni esecuzione?", schedule: "Pianificazione (espressione cron)", schedulePlaceholder: "0 9 * * *", deliverTo: "Consegna a", scheduledJobs: "Attività pianificate", noJobs: "Nessuna attività cron configurata. Creane una sopra.", last: "Ultima", next: "Prossima", pause: "Pausa", resume: "Riprendi", triggerNow: "Esegui ora", delivery: { local: "Locale", telegram: "Telegram", discord: "Discord", slack: "Slack", email: "Email", }, }, profiles: { newProfile: "Nuovo profilo", name: "Nome", namePlaceholder: "es. coder, writer, ecc.", nameRequired: "Il nome è obbligatorio", nameRule: "Solo lettere minuscole, cifre, _ e -; deve iniziare con una lettera o cifra; fino a 64 caratteri.", invalidName: "Nome del profilo non valido", cloneFromDefault: "Clona la configurazione dal profilo predefinito", allProfiles: "Profili", noProfiles: "Nessun profilo trovato.", defaultBadge: "predefinito", hasEnv: "env", model: "Modello", skills: "Competenze", rename: "Rinomina", editSoul: "Modifica SOUL.md", soulSection: "SOUL.md (personalità / prompt di sistema)", soulPlaceholder: "# Come dovrebbe comportarsi questo agente…", saveSoul: "Salva SOUL", soulSaved: "SOUL.md salvato", openInTerminal: "Copia comando CLI", commandCopied: "Copiato negli appunti", copyFailed: "Impossibile copiare", confirmDeleteTitle: "Eliminare il profilo?", confirmDeleteMessage: "Questa operazione elimina definitivamente il profilo '{name}' — configurazione, chiavi, memorie, sessioni, competenze, attività cron. Non può essere annullata.", created: "Creato", deleted: "Eliminato", renamed: "Rinominato", }, pluginsPage: { contextEngineLabel: "Motore di contesto", dashboardSlots: "Slot del dashboard", disableRuntime: "Disabilita", enableAfterInstall: "Abilita dopo l'installazione", enableRuntime: "Abilita", forceReinstall: "Forza reinstallazione (elimina prima la cartella esistente)", headline: "Scopri, installa, abilita e aggiorna i plugin Hermes (parità con `hermes plugins`).", identifierLabel: "URL Git o owner/repo", inactive: "inattivo", installBtn: "Installa da Git", installHeading: "Installa da GitHub / URL Git", installHint: "Usa la forma breve owner/repo o un URL clone https:// o git@ completo.", memoryProviderLabel: "Provider di memoria", missingEnvWarn: "Imposta queste variabili in Chiavi prima di eseguire il plugin:", noDashboardTab: "Nessuna scheda nel dashboard", openTab: "Apri", orphanHeading: "Estensioni solo dashboard (nessuna corrispondenza con plugin.yaml)", pluginListHeading: "Plugin installati", providerDefaults: "integrato / predefinito", providersHeading: "Plugin provider runtime", providersHint: "Scrive memory.provider (vuoto = integrato) e context.engine in config.yaml. Effetto dalla prossima sessione.", refreshDashboard: "Riscansiona estensioni dashboard", removeConfirm: "Rimuovere questo plugin da ~/.hermes/plugins/?", removeHint: "Solo i plugin installati dall'utente in ~/.hermes/plugins possono essere rimossi.", rescanHeading: "Registro plugin SPA", rescanHint: "Riscansiona dopo aver aggiunto file su disco affinché la barra laterale rilevi i nuovi manifest.", runtimeHeading: "Runtime gateway (plugin YAML)", saveProviders: "Salva impostazioni provider", savedProviders: "Impostazioni provider salvate.", sourceBadge: "Origine", authRequired: "Autenticazione richiesta", authRequiredHint: "Esegui questo comando per autenticarti:", updateGit: "Git pull", versionBadge: "Versione", showInSidebar: "Mostra nella barra laterale", hideFromSidebar: "Nascondi dalla barra laterale", }, skills: { title: "Competenze", searchPlaceholder: "Cerca competenze e toolset...", enabledOf: "{enabled}/{total} abilitati", all: "Tutti", categories: "Categorie", filters: "Filtri", noSkills: "Nessuna competenza trovata. Le competenze vengono caricate da ~/.hermes/skills/", noSkillsMatch: "Nessuna competenza corrisponde alla ricerca o al filtro.", skillCount: "{count} competenz{s}", resultCount: "{count} risultat{s}", noDescription: "Nessuna descrizione disponibile.", toolsets: "Toolset", toolsetLabel: "Toolset {name}", noToolsetsMatch: "Nessun toolset corrisponde alla ricerca.", setupNeeded: "Configurazione necessaria", disabledForCli: "Disabilitato per CLI", more: "+{count} in più", }, config: { configPath: "~/.hermes/config.yaml", filters: "Filtri", sections: "Sezioni", exportConfig: "Esporta configurazione come JSON", importConfig: "Importa configurazione da JSON", resetDefaults: "Ripristina predefiniti", resetScopeTooltip: "Ripristina {scope} ai valori predefiniti", confirmResetScope: "Ripristinare tutte le impostazioni di {scope} ai valori predefiniti? Questa operazione aggiorna solo il modulo — le modifiche non vengono scritte in config.yaml finché non premi Salva.", resetScopeToast: "{scope} ripristinato ai valori predefiniti — controlla e Salva per rendere persistente", rawYaml: "Configurazione YAML grezza", searchResults: "Risultati della ricerca", fields: "camp{s}", noFieldsMatch: 'Nessun campo corrisponde a "{query}"', configSaved: "Configurazione salvata", yamlConfigSaved: "Configurazione YAML salvata", failedToSave: "Salvataggio non riuscito", failedToSaveYaml: "Salvataggio YAML non riuscito", failedToLoadRaw: "Caricamento configurazione grezza non riuscito", configImported: "Configurazione importata — controlla e salva", invalidJson: "File JSON non valido", categories: { general: "Generale", agent: "Agente", terminal: "Terminale", display: "Visualizzazione", delegation: "Delega", memory: "Memoria", compression: "Compressione", security: "Sicurezza", browser: "Browser", voice: "Voce", tts: "Sintesi vocale", stt: "Riconoscimento vocale", logging: "Log", discord: "Discord", auxiliary: "Ausiliario", }, }, env: { changesNote: "Le modifiche vengono salvate immediatamente su disco. Le sessioni attive rilevano automaticamente le nuove chiavi.", confirmClearMessage: "Il valore memorizzato per questa variabile sarà rimosso dal tuo file .env. Non può essere annullato dall'interfaccia.", confirmClearTitle: "Cancellare questa chiave?", description: "Gestisci chiavi API e segreti memorizzati in", hideAdvanced: "Nascondi avanzate", showAdvanced: "Mostra avanzate", llmProviders: "Provider LLM", providersConfigured: "{configured} di {total} provider configurati", getKey: "Ottieni chiave", notConfigured: "{count} non configurat{s}", notSet: "Non impostato", keysCount: "{count} chiav{s}", enterValue: "Inserisci valore...", replaceCurrentValue: "Sostituisci valore corrente ({preview})", showValue: "Mostra valore reale", hideValue: "Nascondi valore", }, oauth: { title: "Accessi provider (OAuth)", providerLogins: "Accessi provider (OAuth)", description: "{connected} di {total} provider OAuth connessi. I flussi di accesso vengono attualmente eseguiti tramite la CLI; clicca Copia comando e incolla in un terminale per configurare.", connected: "Connesso", expired: "Scaduto", notConnected: "Non connesso. Esegui {command} in un terminale.", runInTerminal: "in un terminale.", noProviders: "Nessun provider compatibile con OAuth rilevato.", login: "Accedi", disconnect: "Disconnetti", managedExternally: "Gestito esternamente", copied: "Copiato ✓", cli: "CLI", copyCliCommand: "Copia comando CLI (per uso esterno / fallback)", connect: "Connetti", sessionExpires: "La sessione scade tra {time}", initiatingLogin: "Avvio del flusso di accesso…", exchangingCode: "Scambio del codice per i token…", connectedClosing: "Connesso! Chiusura…", loginFailed: "Accesso non riuscito.", sessionExpired: "Sessione scaduta. Clicca Riprova per iniziare un nuovo accesso.", reOpenAuth: "Riapri pagina di autenticazione", reOpenVerification: "Riapri pagina di verifica", submitCode: "Invia codice", pasteCode: "Incolla codice di autorizzazione (con suffisso #state va bene)", waitingAuth: "In attesa che tu autorizzi nel browser…", enterCodePrompt: "È stata aperta una nuova scheda. Inserisci questo codice se richiesto:", pkceStep1: "È stata aperta una nuova scheda su claude.ai. Accedi e clicca Autorizza.", pkceStep2: "Copia il codice di autorizzazione mostrato dopo l'autorizzazione.", pkceStep3: "Incollalo qui sotto e invia.", flowLabels: { pkce: "Accesso browser (PKCE)", device_code: "Codice dispositivo", external: "CLI esterna", }, expiresIn: "scade tra {time}", }, language: { switchTo: "Passa all'inglese", }, theme: { title: "Tema", switchTheme: "Cambia tema", }, achievements: { hero: { kicker: "Agentic Gamerscore", title: "Hermes Achievements", subtitle: "Badge Hermes da collezione, ottenuti dalla cronologia reale delle sessioni. Gli achievement noti non completati vengono mostrati come Scoperti; gli achievement segreti restano nascosti finché non compare il primo comportamento corrispondente.", scan_subtitle: "Scansione della cronologia delle sessioni Hermes in corso. La prima scansione può richiedere 5–10 secondi su cronologie ampie.", }, actions: { rescan: "Riscansiona", }, stats: { unlocked: "Sbloccati", unlocked_hint: "badge ottenuti", discovered: "Scoperti", discovered_hint: "noti, non ancora ottenuti", secrets: "Segreti", secrets_hint: "nascosti fino al primo segnale", highest_tier: "Livello più alto", highest_tier_hint: "Copper → Silver → Gold → Diamond → Olympian", latest: "Più recente", latest_hint_empty: "usa Hermes di più", none_yet: "Nessuno ancora", }, state: { unlocked: "Sbloccato", discovered: "Scoperto", secret: "Segreto", }, tier: { target: "Obiettivo {tier}", hidden: "Nascosto", complete: "Completato", objective: "Obiettivo", }, progress: { hidden: "nascosto", }, scan: { building_headline: "Costruzione del profilo achievement…", building_detail: "Lettura di sessioni, chiamate agli strumenti, metadati del modello e stato di sblocco.", starting_headline: "Avvio della scansione achievement…", progress_detail: "Scansionate {scanned} di {total} sessioni · {pct}%. I badge si sbloccano man mano che viene elaborata altra cronologia.", idle_detail: "Lettura di sessioni, chiamate agli strumenti, metadati del modello e stato di sblocco. I badge appaiono qui non appena vengono sbloccati.", }, guide: { tiers_header: "Livelli", secret_header: "Achievement segreti", secret_body: "I segreti nascondono il loro trigger esatto. Quando Hermes rileva un segnale correlato, la carta passa a Scoperto e mostra il requisito.", scan_status_header: "Stato della scansione", scan_status_body: "Hermes sta scansionando la cronologia locale una sola volta, poi le carte appariranno automaticamente. Non è bloccato nulla se richiede qualche secondo.", what_scanned_header: "Cosa viene scansionato", what_scanned_body: "Sessioni, chiamate agli strumenti, metadati del modello, errori, achievement e stato di sblocco locale.", }, card: { share_title: "Condividi questo achievement", share_label: "Condividi {name}", share_text: "Condividi", how_to_reveal: "Come rivelarlo", what_counts: "Cosa conta", evidence_label: "Prova", evidence_session_fallback: "sessione", no_evidence: "Nessuna prova ancora", }, latest: { header: "Sblocchi recenti", }, empty: { no_secrets_header: "Nessun segreto nascosto rimasto in questa scansione.", no_secrets_body: "Indizio: i segreti di solito partono da fallimenti inusuali o pattern da utente esperto — conflitti di porte, muri di permessi, variabili d'ambiente mancanti, errori YAML, collisioni Docker, uso di rollback/checkpoint, cache hit o piccole correzioni dopo molto testo rosso.", }, filters: { all_categories: "Tutti", visibility_all: "tutti", visibility_unlocked: "sbloccati", visibility_discovered: "scoperti", visibility_secret: "segreti", }, share: { dialog_label: "Condividi achievement", header: "Condividi: {name}", close: "Chiudi", rendering: "Rendering…", card_alt: "Carta di condivisione {name}", error_generic: "Qualcosa è andato storto.", x_title: "Apre X con un post precompilato", x_button: "Condividi su X", copy_title: "Copia l'immagine per incollarla nel tuo post", copy_button: "Copia immagine", copied: "Copiato ✓", download_button: "Scarica PNG", hint: "Condividi su X apre un post precompilato in una nuova scheda. Clicca prima su Copia immagine se vuoi allegare il badge 1200×630 — X ti permette di incollarlo direttamente nell'editor del tweet. Scarica PNG salva il file per l'uso ovunque.", clipboard_unsupported: "La copia delle immagini negli appunti non è supportata in questo browser — usa Scarica invece.", tweet_text: "Just unlocked {tier_part}\"{name}\" in Hermes Agent ☤", }, }, kanban: { loading: "Caricamento bacheca Kanban…", loadFailed: "Caricamento della bacheca Kanban non riuscito: ", loadFailedHint: "Il backend crea automaticamente kanban.db alla prima lettura. Se il problema persiste, controlla i log del dashboard.", board: "Bacheca", newBoard: "+ Nuova bacheca", newBoardTitle: "Nuova bacheca", newBoardDescription: "Le bacheche ti permettono di separare flussi di lavoro non correlati — una per progetto, repository o dominio. I worker su una bacheca non vedono mai le attività di un'altra.", slug: "Slug", slugHint: "— minuscolo, trattini, ad es. atm10-server", displayName: "Nome visualizzato", displayNameHint: "(facoltativo)", description: "Descrizione", descriptionHint: "(facoltativo)", icon: "Icona", iconHint: "(un singolo carattere o emoji)", switchAfterCreate: "Passa a questa bacheca dopo la creazione", cancel: "Annulla", creating: "Creazione…", createBoard: "Crea bacheca", search: "Cerca", filterCards: "Filtra schede…", tenant: "Tenant", allTenants: "Tutti i tenant", assignee: "Assegnatario", allProfiles: "Tutti i profili", showArchived: "Mostra archiviati", lanesByProfile: "Corsie per profilo", nudgeDispatcher: "Sollecita dispatcher", refresh: "Aggiorna", selected: "selezionato/i", complete: "Completa", archive: "Archivia", apply: "Applica", clear: "Cancella", createTask: "Crea attività in questa colonna", noTasks: "— nessuna attività —", unassigned: "non assegnato", untitled: "(senza titolo)", loadingDetail: "Caricamento…", addComment: "Aggiungi un commento… (Enter per inviare)", comment: "Commento", status: "Stato", workspace: "Workspace", skills: "Competenze", createdBy: "Creato da", result: "Result", comments: "Commenti", events: "Eventi", runHistory: "Cronologia esecuzioni", workerLog: "Log del worker", loadingLog: "Caricamento log…", noWorkerLog: "— nessun log del worker ancora (l'attività non è stata avviata o il log è stato ruotato) —", noDescription: "— nessuna descrizione —", noComments: "— nessun commento —", edit: "modifica", save: "Salva", dependencies: "Dipendenze", parents: "Padri:", children: "Figli:", none: "nessuno", addParent: "— aggiungi padre —", addChild: "— aggiungi figlio —", removeDependency: "Rimuovi dipendenza", block: "Blocca", unblock: "Sblocca", notifyHomeChannels: "Notifica i canali home", diagnostics: "Diagnostica", hide: "Nascondi", show: "Mostra", attention: "Attenzione", tasksNeedAttention: "attività richiedono attenzione", taskNeedsAttention: "1 attività richiede attenzione", diagnostic: "diagnostica", open: "Apri", close: "Chiudi (Esc)", reassignTo: "Riassegna a:", copied: "Copiato", copyCommand: "Copia comando negli appunti", reclaim: "Recupera", reassign: "Riassegna", renderingError: "La scheda Kanban ha avuto un errore di rendering", reloadView: "Ricarica vista", wsAuthFailed: "Autenticazione WebSocket non riuscita — ricarica la pagina per aggiornare il token di sessione.", markDone: "Contrassegnare {n} attività come completate?", markArchived: "Archiviare {n} attività?", warning: "Avviso", phantomIds: "ID fantasma:", active: "attivo", ended: "terminato", noProfile: "(nessun profilo)", showAllAttempts: "Mostra tutti i tentativi", sendingUpdates: "Invio aggiornamenti a", sendNotifications: "Invia notifiche di completed / blocked / gave_up a", archiveBoardConfirm: "Archiviare la bacheca '{name}'? Verrà spostata in boards/_archived/ in modo da poterla recuperare in seguito. Le attività di questa bacheca non appariranno più da nessuna parte nell'UI.", archiveBoardTitle: "Archivia questa bacheca", boardSwitcherHint: "Le bacheche ti permettono di separare flussi di lavoro non correlati", taskCreatedWarning: "Attività creata, ma: ", moveFailed: "Spostamento non riuscito: ", bulkFailed: "Massivo: ", completionBlockedHallucination: "⚠ Completamento bloccato — ID schede fantasma", suspectedHallucinatedReferences: "⚠ Il testo ha fatto riferimento a ID schede fantasma", pickProfileFirst: "Scegli prima un profilo.", unblockedMessage: "Sbloccato {id}. L'attività è pronta per il prossimo tick.", unblockFailed: "Sblocco non riuscito: ", reclaimedMessage: "Recuperato {id}. L'attività è di nuovo pronta.", reclaimFailed: "Recupero non riuscito: ", reassignedMessage: "Riassegnato {id} a {profile}.", reassignFailed: "Riassegnazione non riuscita: ", selectForBulk: "Seleziona per azioni massive", clickToEdit: "Clicca per modificare", clickToEditAssignee: "Clicca per modificare l'assegnatario", emptyAssignee: "(vuoto = rimuovi assegnazione)", columnLabels: { triage: "Triage", todo: "Da fare", ready: "Pronto", running: "In corso", blocked: "Bloccato", done: "Fatto", archived: "Archiviato", }, columnHelp: { triage: "Idee grezze — un specifier elaborerà la specifica", todo: "In attesa di dipendenze o non assegnato", ready: "Dipendenze soddisfatte; assegna un profilo per il dispatch", running: "Preso in carico da un worker — in esecuzione", blocked: "Il worker ha richiesto input umano", done: "Completato", archived: "Archiviato", }, confirmDone: "Contrassegnare questa attività come completata? La presa in carico del worker viene rilasciata e i figli dipendenti diventano pronti.", confirmArchive: "Archiviare questa attività? Sparirà dalla vista predefinita della bacheca.", confirmBlocked: "Contrassegnare questa attività come bloccata? La presa in carico del worker viene rilasciata.", completionSummary: "Riepilogo di completamento per {label}. Memorizzato come result dell'attività.", completionSummaryRequired: "Il riepilogo di completamento è obbligatorio prima di contrassegnare un'attività come completata.", triagePlaceholder: "Idea approssimativa — l'IA la specificherà…", taskTitlePlaceholder: "Titolo della nuova attività…", specifier: "specifier", assigneePlaceholder: "assegnatario", priority: "Priorità", skillsPlaceholder: "competenze (facoltative, separate da virgole): translation, github-code-review", noParent: "— nessun padre —", workspacePathDir: "percorso del workspace (richiesto, ad es. ~/projects/my-app)", workspacePathOptional: "percorso del workspace (facoltativo, derivato dall'assegnatario se vuoto)", logTruncated: "(mostrando ultimi 100 KB — log completo in ", logAt: ")", }, };