← Indice documentazione Guida all'architettura › Tutor

Il Tutor integrato

conoscenza verificata, stato corrente e apprendimento privato

Chiedi a Metnos con una richiesta come quella di questo esempio: «Che cosa contiene il file Metnos_Prospettive_Estese_v1.html

Il Tutor risponde alle domande su Metnos prima che intervenga il pianificatore operativo. Formula la risposta a partire da fonti ammesse e può aggiungere osservazioni correnti, ma non possiede strumenti e non esegue azioni.

domanda → distinzione fra spiegazione e azione → fonti autorizzate → eventuale osservazione corrente → risposta

1. Come riconosce una domanda sul prodotto

Il primo passaggio distingue una spiegazione, un'osservazione reale, un'azione che modifica lo stato, una richiesta mista oppure un'intenzione non abbastanza chiara. Una spiegazione può entrare nel Tutor. Un'osservazione vi entra soltanto quando una vista registrata copre per intero i dati richiesti; negli altri casi prosegue nel normale motore di Metnos.

La forma grammaticale non basta. «Mostrami la pagina Servizi» chiede di spiegare una parte dell'interfaccia; «mostrami i file presenti nella mia cartella» chiede invece dati reali. Il bersaglio della domanda, non il solo verbo, decide il percorso.

Il segnale di una fonte documentale

Quando la domanda contiene il nome esatto, il percorso relativo o l'indirizzo canonico di una pagina presente nell'inventario pubblico, il runtime riconosce l'identità della fonte prima della classificazione. Il confronto non è una ricerca per somiglianza: è una corrispondenza con il catalogo pubblicato, senza distinzione fra maiuscole e minuscole.

RichiestaEsito
«Che cosa contiene Metnos_Prospettive_Estese_v1.htmlIl Tutor vincola il recupero a quel documento e ne riassume il contenuto.
«Riassumi docs/it/Metnos_QuickTour.html»Il percorso identifica una fonte pubblicata; la risposta cita soltanto sezioni di quella pagina.
«Cancella Metnos_Prospettive_Estese_v1.html»Il nome è riconosciuto, ma l'intenzione è operativa: la richiesta non viene sottratta al motore.
«Che cosa contiene appunti_privati.htmlIl nome non appartiene alla documentazione pubblicata; resta una normale richiesta riguardante un file.

Se lo stesso nome appartiene a più traduzioni, la lingua corrente risolve la corrispondenza. Se l'identità resta ambigua, il controllo si arresta senza indovinare. Un percorso esplicito esterno alla pubblicazione, per esempio /tmp/nome.html o C:\Users\...\nome.html, resta un percorso dell'utente e non viene ridotto al solo nome. La parola «file», da sola, non è un segnale documentale.

2. Da quali fonti nasce la risposta

Il catalogo del Tutor viene compilato localmente e firmato. Comprende:

Non comprende file personali, messaggi, calendari, conversazioni, registri di esecuzione, roadmap o note interne di sviluppo. L'autorizzazione viene applicata prima che il testo raggiunga il modello. Se una fonte non è visibile alla persona che pone la domanda, non può contribuire alla risposta.

I documenti lunghi sono divisi in sezioni. Una corrispondenza semantica sceglie le sezioni pertinenti; quando è stata riconosciuta l'identità di un documento, la somiglianza serve soltanto a ordinare le sezioni di quella stessa fonte. Il modello compone il testo finale, ma non può introdurre capacità, permessi o fatti che le fonti non attestino.

Anche i manifesti hanno una struttura. Il contratto completo di un executor descrive l'operazione; i singoli argomenti ne precisano parametri e limiti. Se un campo generico risulta vicino alla domanda, ma nella stessa banda di pertinenza si trova un contratto completo, quest'ultimo diventa la fonte primaria. Le descrizioni dei suoi argomenti restano come fonti di dettaglio. La regola riguarda la gerarchia delle fonti e non contiene elenchi di domande, parole speciali o eccezioni per un dominio.

3. Quando serve lo stato corrente

Alcune domande non chiedono soltanto che cosa una pagina dovrebbe mostrare, ma che cosa sta mostrando in questo momento. Una fonte firmata può allora richiamare una sonda di sola lettura registrata dal runtime. Il modello non sceglie la sonda e non ne inventa gli argomenti.

La vicinanza di argomento non basta. Il runtime prima propone una vista, poi verifica di nuovo che quella sola vista comprenda ogni fatto richiesto e infine la confronta semanticamente con tutte le altre viste visibili. Deve risultare il primario con un margine sufficiente. Se uno dei controlli fallisce, il Tutor si ritira e la richiesta passa al normale executor di lettura. Per esempio, «Controlla se c'è posta metnos» usa la casella di posta: non viene gestita mediante lo stato dei servizi.

I controlli che attribuiscono autorità al Tutor hanno una finestra breve e comune. Una volta ammessa la vista, la sonda di sola lettura e la composizione dispongono invece del termine complessivo del turno. Se il controllo preliminare del Tutor è occupato, oppure la vista o il compositore non restituiscono un esito valido, la richiesta prosegue nel normale motore: un aiuto facoltativo non diventa un errore HTTP e non sottrae il turno al pianificatore.

Per una lingua appena aggiunta, una vista può usare temporaneamente il contratto inglese come fonte di ripiego. Il compositore riceve comunque la lingua corrente dell'utente: la lingua della fonte non determina quella della risposta.

OsservazioneAmbitoProtezione
executor ammessi, ciclo di vita e provenienzaamministratore dell'istanzanessun percorso o dettaglio dei rifiuti
salute dei serviziamministratore dell'istanzanessun endpoint, PID o nome di unità esposto al modello
salute e causa dello scheduleramministratore dell'istanzastato del ciclo e diagnosi limitata; nessun testo delle attività o risultato delle esecuzioni
dispositivi registrati e raggiungibilitàsolo i dispositivi posseduti dall'utentechiavi, impronte e profili restano esclusi
attività programmate e ultime esecuzionisolo l'attore autenticatotesto delle richieste e risultati delle esecuzioni restano esclusi

Ogni osservazione dichiara l'istante, la scadenza, la versione della fonte e uno stato fra ok, partial, stale e unavailable. Le dimensioni, il tempo di attesa e la durata in memoria sono limitati. Un dato scaduto o incompleto viene indicato come tale; non diventa mai, per omissione, uno stato sano.

Lo scheduler v2 vive nel processo HTTP: non è un servizio systemd separato. La sonda ne osserva direttamente il loop e distingue running, degraded, failed e stopped. Un'attività fallita non rende inattivo lo scheduler, così come un periodo senza esecuzioni non dimostra che il motore sia fermo. Se la domanda presuppone erroneamente un guasto, il Tutor corregge la premessa; indica una causa soltanto quando l'osservazione corrente la attesta.

Chiedi a Metnos con una richiesta come quella di questo esempio: «Quali servizi sono attivi e a che cosa servono?»

Chiedi a Metnos con una richiesta come quella di questo esempio: «Perché lo scheduler risulta fermo?»

4. Spiegazione e azione nella stessa richiesta

Una domanda può contenere una parte informativa e una parte operativa: «Spiegami la pagina Servizi e poi cerca README.md». Se le due clausole sono separabili senza riscriverle, il Tutor:

  1. risponde alla parte informativa;
  2. conserva la clausola d'azione esattamente come l'ha scritta l'utente;
  3. chiede se affidarla al normale motore di Metnos;
  4. la consegna soltanto dopo la conferma.

La conferma è legata all'utente, alla conversazione, alla versione del catalogo e a una scadenza. Può essere usata una sola volta. Se nel frattempo la conoscenza di sistema cambia, i dati non coincidono o la conferma è già stata consumata, nessuna operazione viene avviata. Dopo la conferma si applicano gli stessi controlli di qualunque nuovo turno: pianificazione, Vaglio, autonomia, consensi ed executor.

Un dialogo già aperto non viene sostituito. Se la separazione delle clausole non è sicura, Metnos chiede di formulare separatamente spiegazione e azione.

Chiedi a Metnos con una richiesta come quella di questo esempio: «Come si archiviano le email? Archivia anche quelle di ieri».

Il Tutor spiega l'operazione attestata dal manifest di move_messages, conserva senza riscriverla la clausola «Archivia anche quelle di ieri» e chiede il consenso. Solo dopo la conferma la clausola passa al normale motore, che applica contesto, pianificazione, autonomia e consensi. La risposta resta limitata alle procedure attestate dalle fonti.

5. Come usa il riscontro dell'utente

I pulsanti di riscontro della chat possono rendere più preciso il recupero per la stessa persona. Un riscontro positivo associa la rappresentazione della domanda alla fonte primaria effettivamente usata; un riscontro negativo rimuove l'eventuale associazione e registra una lacuna tipizzata.

Questo apprendimento ha confini stretti:

Le lacune sono raggruppate per causa e vicinanza semantica senza ricostruire il testo originario. Un controllo controfattuale verifica che le associazioni rimaste puntino ancora a fonti presenti e immutate. Il Tutor non pubblica da solo nuova documentazione e non trasforma la propria prosa in una prova.

6. Lingua e canale

Il recupero preferisce la lingua corrente per ogni concetto e usa l'inglese come ripiego quando manca una traduzione. La lingua della risposta è un dato esplicito: non viene scelta dalla lingua della fonte o dell'istruzione usata dal modello.

Le stesse domande possono essere poste nella chat web o su Telegram. Quando la risposta indica una pagina di Settings, il percorso si riferisce alla chat web dell'istanza; Telegram può mostrarne le istruzioni e il collegamento, ma non incorpora l'interfaccia amministrativa.

7. Aggiornamento e comportamento in caso di errore

Ogni modifica a una fonte ammessa cambia l'impronta del materiale in ingresso. Il compilatore costruisce un candidato completo, ne verifica schema, vettori e firma e lo sostituisce atomicamente al catalogo corrente. I vettori delle unità immutate possono essere riutilizzati, ma nessun catalogo parziale viene ammesso.

Se il recupero non trova alcuna fonte ammissibile, il Tutor non risponde e lascia la richiesta al normale motore. In quel caso l'unica cosa stabilita è che un classificatore ha letto la domanda come esplicativa, e chiudere il turno su quella sola lettura nasconderebbe dietro una supposizione ciò che il motore sa fare. Se invece le fonti ci sono e non bastano a comporre una risposta, il Tutor dichiara una lacuna: è un buco del corpus, non una domanda letta male. Se falliscono il catalogo, il modello di rappresentazione o la composizione, segnala l'indisponibilità tecnica. In nessuno di questi casi una domanda informativa viene trasformata per errore in un'azione.

8. Riferimenti tecnici