<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="it">
	<id>https://wiki.marcoparet.com/index.php?action=history&amp;feed=atom&amp;title=Registro_strumenti</id>
	<title>Registro strumenti - Cronologia</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.marcoparet.com/index.php?action=history&amp;feed=atom&amp;title=Registro_strumenti"/>
	<link rel="alternate" type="text/html" href="https://wiki.marcoparet.com/index.php?title=Registro_strumenti&amp;action=history"/>
	<updated>2026-09-13T20:40:48Z</updated>
	<subtitle>Cronologia della pagina su questo sito</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://wiki.marcoparet.com/index.php?title=Registro_strumenti&amp;diff=5343&amp;oldid=prev</id>
		<title>WikiBot: Registro strumenti: prima costruzione a ritroso</title>
		<link rel="alternate" type="text/html" href="https://wiki.marcoparet.com/index.php?title=Registro_strumenti&amp;diff=5343&amp;oldid=prev"/>
		<updated>2026-09-05T10:09:14Z</updated>

		<summary type="html">&lt;p&gt;Registro strumenti: prima costruzione a ritroso&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nuova pagina&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Registro strumenti&amp;#039;&amp;#039;&amp;#039; è l&amp;#039;inventario delle capacità operative di ISI-CNV e degli strumenti (script, pipeline cron, route del Command Center) che le realizzano. Costruito il 2026-09-05 a ritroso da tre fonti: crontab della VM (190 voci), cartella &amp;lt;code&amp;gt;/home/claudeuser/scripts&amp;lt;/code&amp;gt; (786 script), export delle chat Claude 25/01–31/08/2026 (668 conversazioni). Sorgente dati: BigQuery &amp;lt;code&amp;gt;isicnv_workflows.strumenti&amp;lt;/code&amp;gt; (registro) e &amp;lt;code&amp;gt;isicnv_workflows.strumenti_rilevati&amp;lt;/code&amp;gt; (grezzo). Rigenerazione: &amp;lt;code&amp;gt;python3 /home/claudeuser/scripts/registro_strumenti.py &amp;amp;&amp;amp; python3 /home/claudeuser/scripts/registro_strumenti_wiki.py&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Regola d&amp;#039;uso (R108, proposta) ==&lt;br /&gt;
Ogni chat, nel primo messaggio, dichiara oltre al deliverable le &amp;#039;&amp;#039;&amp;#039;capacità&amp;#039;&amp;#039;&amp;#039; che le servono usando questo vocabolario chiuso. Per ogni capacità si usa lo strumento marcato &amp;#039;&amp;#039;canonico&amp;#039;&amp;#039;; uno strumento nuovo si costruisce solo se la capacità non è coperta, e va registrato qui prima dell&amp;#039;uso. &amp;lt;code&amp;gt;GET /session/open?scopo=&amp;lt;/code&amp;gt; dovrà restituire la riga canonica di questa tabella.&lt;br /&gt;
&lt;br /&gt;
== Vocabolario delle capacità ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Capacità !! Copertura !! Strumenti canonici (in cron o regola) !! Candidati&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;pubblica_pagina&amp;lt;/code&amp;gt; || 87 || email_health_check.py, analgesia_ciclo.sh, bq_sink_cruscotto.py, campaigns_monitor.py, cruscotto.py, fabbrica_pagine.py, fc_backup.py, gen_video_status.py || /docs, /wiki, /jobs/list, /streak/boxes, /vm/task-status, /wiki/search&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;scrive_wiki&amp;lt;/code&amp;gt; || 4 || wiki_qualita.py || /wiki/read, /wiki/article/get, interchat.py&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;invia_email&amp;lt;/code&amp;gt; || 68 || auto_dedup_newsletter.py, mail_engine.py, monitor_campaigns.py, ads_refresh_daily.py, argo_watch.py, bounce_processor.py, bounce_to_mailwizz.py, campaign_dashboard.py || /mail, /mailwizz/send-campaign, /bq/insert, /mailwizz/lists, /mailwizz/campaign-status, /mailwizz/campaigns&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;legge_email&amp;lt;/code&amp;gt; || 39 || hermes_email_autoreply.py, email_assistant.py, ingest_informazionicorsi.py, sentinella_blocchi.py || /drive/upload-docx, /oauth/start-isicnv, /wp/mu-update, /oauth/start-gmail-marcoparet, /pipelines, /oauth/start-gmail-drmarcoparet&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;drive_docs_sheets&amp;lt;/code&amp;gt; || 26 || &amp;#039;&amp;#039;nessuno&amp;#039;&amp;#039; || /docs/append-v2, /sheets2/append, /drive2/list, /sheets2/read, /drive2, /sheets2&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;interroga_bq&amp;lt;/code&amp;gt; || 87 || tesoriere_v2.py, trust_promotion.py, complete_riattivazione.py, complete_riattivazione_6k.py, complete_riattivazione_batch2.py, consolida_form_db.py, dedup_registry.py, dr_lite.py || /bq/query, /bq/load, /bq/log-event, /streak/pipelines, /bq/export-csv, /bq/export-to-sheet&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;contabilita&amp;lt;/code&amp;gt; || 42 || finance_daily_sync.py, perche_spesa.py || /oauth, /tasks/list, /yt/captions-list, ads_payment_check.py, agente_giornaliero.py, agente_verifica.py&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;video_archivio&amp;lt;/code&amp;gt; || 22 || gen_indice_proxy.py, trascrivi_drive.py || qwen_wrapper.py, browser_session.py, video_matcher.py, analgesia_doc_trascrizioni.py, analgesia_runner.sh, analgesia_spezzoni.py&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;biblioteca&amp;lt;/code&amp;gt; || 22 || ingest_pdf_biblioteca.py, reindex_oracolo.sh || /vm/reset, /memory/search, bibliotecario.py, oracolo_notebooklm.py, agent_a_registry.py, anomalie_autori_v1.py&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;youtube&amp;lt;/code&amp;gt; || 16 || &amp;#039;&amp;#039;nessuno&amp;#039;&amp;#039; || /vm/task, /oauth/start-yt-neurolinguistic, /vm/health, /yt-intelligence-355215672266, /yt/video-update, /yt/localization-update&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;social&amp;lt;/code&amp;gt; || 4 || web_mentions_monitor.py || /oauth/callback-linkedin, /oauth/start-linkedin, attribuzione.py&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;crm&amp;lt;/code&amp;gt; || 17 || check_streak_form_boxes.py, lead_followup_check.py || /learnings/check, /drive/upload-file, /memory, /streak/pipeline-stages, /jobs/execute-next, /learnings&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ads_seo&amp;lt;/code&amp;gt; || 13 || gsc_migrate.py, stratega.py || /oauth2, /meta, ads_weekly_data.py, analisi_visite.py, analytics_ads2.py, arricchitore.py&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;qa_screenshot&amp;lt;/code&amp;gt; || 9 || gate_deliverable.py, marcoparet_smoketest.py, memoria_revisione.py || /memory/embed, mp_translation_audit.py, shot.py, eval_playwright.py, notebooklm_add_source.py, visione.py&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;orchestrazione&amp;lt;/code&amp;gt; || 32 || cc_backup_encrypted.py, job.py, marcoparet_diagnose.py, marcoparet_sentinel_check.py, piano.py, chat_journal.py, form_poller.py, handoff.py || /jobs/update, /jobs/add, /jobs, /briefing/task, runpod_rescue.py, sync_audit_to_sheet.py&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;oauth_token&amp;lt;/code&amp;gt; || 18 || &amp;#039;&amp;#039;nessuno&amp;#039;&amp;#039; || /oauth/start-any, /oauth/callback, /docs/read-v2, /oauth/start, /oauth/start-infocorsi, /gcs/read-v5&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;memoria_cc&amp;lt;/code&amp;gt; || 13 || briefing_engine.py || /memory/get, /memory/add, /memory/list, /memory/read, /session/open, /memory/persist&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;infra_server&amp;lt;/code&amp;gt; || 11 || drive_text_mirror.py, monitor_hetzner.sh || /vm/exec-direct, /vm/status, /vm/ping-internal, notebooklm_oracle.py, helper_http_server.py, cita_step.sh&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;altro&amp;lt;/code&amp;gt; || 481 || ippocampo.py, marcoparet_autoheal_v2.py, analisi_processi.py, auto_confirm_fixes.sh, autocura_cc.py, backup_chrome_profiles.sh, capoufficio_watch.py, cassa_check.py || /sheets-connector-424757051842, /drive, /vm/agent, /sheets, /vm/cmd, /vm/exec&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Pipeline deterministiche attive (crontab) ==&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Script !! Capacità !! Schedule !! Descrizione&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;gsc_migrate.py&amp;lt;/code&amp;gt; || ads_seo || &amp;lt;code&amp;gt;7-59/15 * * * *&amp;lt;/code&amp;gt; || GSC MIGRATE — rende informazionicorsi owner verificato dei siti (metodo FILE via cPanel). Cron 15min: dorme finche&amp;#039; il t&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;stratega.py&amp;lt;/code&amp;gt; || ads_seo || &amp;lt;code&amp;gt;30 5 * * 0&amp;lt;/code&amp;gt; || STRATEGA — il secondo motore: decide QUALI pagine scrivere e prepara il QUESTIONARIO per Marco. Ogni domenica: legge 90 &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ippocampo.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;40 4 * * *&amp;lt;/code&amp;gt; || IPPOCAMPO — folding della memoria CC (da CogniFold, arXiv 2605.13438, adattato) La memoria CC accumula e basta: solo str&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;marcoparet_autoheal_v2.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;10,25,40,55 * * * *&amp;lt;/code&amp;gt; || marcoparet.com AUTO-HEAL ENGINE v2.0 ===================================== Upgrade from v1: handles ModSecurity self-blo&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;analisi_processi.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;34 8 * * *&amp;lt;/code&amp;gt; || analisi_processi.py — decide COL NUMERO se il registro puo&amp;#039; passare da SOFT a DURO. Gira ogni mattina alle 08:15. In SOF&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;auto_confirm_fixes.sh&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;11 * * * *&amp;lt;/code&amp;gt; || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;autocura_cc.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;*/5 * * * *&amp;lt;/code&amp;gt; || autocura_cc.py v3 - configurazione dichiarata, fatta rispettare. Tre compiti, ogni 5 minuti: 1. BASELINE: se la memoria &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;backup_chrome_profiles.sh&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;9 4 * * 0&amp;lt;/code&amp;gt; || Backup cifrato profili Chrome → GCS encrypted bucket&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;capoufficio_watch.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;6-59/15 * * * *&amp;lt;/code&amp;gt; || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;cassa_check.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;55 7 * * *&amp;lt;/code&amp;gt; || CASSA CHECK giornaliero — chi deve pagare, cosa arriva, confronto foglio Salsina. TG semaforo.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;cc_vm_keepwarm.sh&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;*/4 * * * *&amp;lt;/code&amp;gt; || Keep CC ↔ VM channel warm to avoid Cloud Run egress cold-start&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;census_driveuploader.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;33 5 * * 1&amp;lt;/code&amp;gt; || -*- coding: utf-8 -*-&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;da_classificare_check.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;50 3 * * *&amp;lt;/code&amp;gt; || Sentinella DA_CLASSIFICARE: alert Telegram se il conteggio risale rispetto allo snapshot.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;disk_guardian.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;3-59/10 * * * *&amp;lt;/code&amp;gt; || disk_guardian.py — presidio dello spazio disco della VM. Perche esiste: il disco (49G) si riempie a PICCHI transitori (e&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;dispensa.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;10 5 * * 1&amp;lt;/code&amp;gt; || DISPENSA — gestione integrata dello spazio fra i server ISI-CNV. PROBLEMA: i quattro dischi non si parlano. Il 28/08/202&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;gen_catalogo.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;10 */6 * * *&amp;lt;/code&amp;gt; || -*- coding: utf-8 -*-&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;hermes_migliorie.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;40 19 * * *&amp;lt;/code&amp;gt; || hermes_migliorie.py — la F3 mai costruita di hermes_daily: propone 2-3 miglioramenti al sistema, ogni sera alle 19:30. V&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;listino.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;40 4 * * *&amp;lt;/code&amp;gt; || listino.py v2 — SCOPERTA AUTOMATICA del modello migliore per classe. Difetto della v1, corretto qui: i candidati erano s&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;mem_guard.sh&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;* * * * *&amp;lt;/code&amp;gt; || Memory guard: previene l&amp;#039;OOM-wedge uccidendo il processo-hog PRIMA che il kernel&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;mro_check.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;15 6 * * *&amp;lt;/code&amp;gt; || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;notte.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;23 3 * * *&amp;lt;/code&amp;gt; || notte.py — SENTINELLA NOTTURNA. Gira i controlli che oggi si lanciano a mano, confronta con lo stato di ieri, e AVVISA S&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;pulizia_pre_backup.sh&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;44 2 * * *&amp;lt;/code&amp;gt; || Pulizia preventiva pre-backup: residui altrui in /tmp + log. Creato 12/08/2026.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;radar_lead_schede.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;2 9 * * 1&amp;lt;/code&amp;gt; || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;radar_marketing.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;7 8 * * 1&amp;lt;/code&amp;gt; || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;refresh_local_creds.sh&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;5 4 * * 0&amp;lt;/code&amp;gt; || Refresh credenziali locali da GCS (settimanale)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;refresh_tiers.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;40 5 * * 1&amp;lt;/code&amp;gt; || Refresh Tiers — ISI-CNV Ricostruisce le liste tier (GOLD 1461, SILVER 1462, WARM 1463, DORMANT 1464) dall&amp;#039;engagement cor&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;riapplica_regole.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;14 7 * * *&amp;lt;/code&amp;gt; || riapplica_regole.py — ripristina le classificazioni dopo il sync giornaliero. MOTIVO (scoperto 11/08/2026): finance_dail&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;riparatore.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;2-59/5 * * * *&amp;lt;/code&amp;gt; || riparatore.py — QUINTO PEZZO: quando un punto del piano FALLISCE, prova a risolvere e riprende la catena, fino a FINITO.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;skill_property_extractor.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;2 3 * * *&amp;lt;/code&amp;gt; || SKILL PROPERTY AUTO-EXTRACTOR Scansiona tutte le memorie CC (kind=skill/rule/documentation), cerca menzioni di property_&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;spazio.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;2-59/20 * * * *&amp;lt;/code&amp;gt; || spazio.py — GESTORE DELLO SPAZIO. Censisce, pulisce, e sposta i dati freddi dove c&amp;#039;e&amp;#039; posto, invece di aspettare che il &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;spingi_processi.sh&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;* * * * *&amp;lt;/code&amp;gt; || spinge sul gateway sia il registro processi sia il listino dei prezzi&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;tracce.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;7-59/15 * * * *&amp;lt;/code&amp;gt; || tracce.py - Tracciabilita&amp;#039; costi per cantiere (FinOps agentico, 04/09/2026). Sottocomandi: check --session S --b64 B -&amp;gt; &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;virtual_user_bot.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;0 */4 * * *&amp;lt;/code&amp;gt; || ISI-CNV Virtual User Bot Simula utente &amp;quot;qualunque&amp;quot; che cerca su motori e naviga assets ISI-CNV. Versione: 1.0 - 2026-04-&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;virtual_user_daily_report.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;14 9 * * *&amp;lt;/code&amp;gt; || Virtual User Bot - Daily Report Aggrega ultime 24h, manda email + Telegram, alert se issues HIGH Uso: python3 virtual_us&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;vm_self_heal.sh&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;*/5 * * * *&amp;lt;/code&amp;gt; || Auto-heal: se l&amp;#039;agent locale non risponde, tenta restart del servizio&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;weekly_brain_backup.py&amp;lt;/code&amp;gt; || altro || &amp;lt;code&amp;gt;11 4 * * 0&amp;lt;/code&amp;gt; || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ingest_pdf_biblioteca.py&amp;lt;/code&amp;gt; || biblioteca || &amp;lt;code&amp;gt;40 */4 * * *&amp;lt;/code&amp;gt; || -*- coding: utf-8 -*-&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;reindex_oracolo.sh&amp;lt;/code&amp;gt; || biblioteca || &amp;lt;code&amp;gt;51 3 * * *&amp;lt;/code&amp;gt; || reindex_oracolo.sh — reindicizza la Biblioteca SOLO se ci sono documenti in coda.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;finance_daily_sync.py&amp;lt;/code&amp;gt; || contabilita || &amp;lt;code&amp;gt;4 6 * * *&amp;lt;/code&amp;gt; || FINANCE DAILY SYNC - orchestratore giornaliero (cron). 1) ledger Wise: estrazione+merge+load incrementale (OUT+IN via ac&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;perche_spesa.py&amp;lt;/code&amp;gt; || contabilita || &amp;lt;code&amp;gt;25 7 * * *&amp;lt;/code&amp;gt; || PERCHE_SPESA — report 5 blocchi per un movimento/spesa. Zero LLM. Wiki: /wiki/Contabilita USO: perche_spesa.py --merchan&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;check_streak_form_boxes.py&amp;lt;/code&amp;gt; || crm || &amp;lt;code&amp;gt;12 */6 * * *&amp;lt;/code&amp;gt; || CRON: check_streak_form_boxes.py ISI-CNV — 31/05/2026 Eseguito ogni 6 ore sulla VM GCP. Controlla i box Streak creati au&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;lead_followup_check.py&amp;lt;/code&amp;gt; || crm || &amp;lt;code&amp;gt;7 7,13 * * *&amp;lt;/code&amp;gt; || LEAD FOLLOWUP CHECK - cron job Per ogni touchpoint form_submit creato 48-72h fa: - Verifica box Streak ha note nuove (po&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;drive_text_mirror.py&amp;lt;/code&amp;gt; || infra_server || &amp;lt;code&amp;gt;6 6 * * 6&amp;lt;/code&amp;gt; || Mirror TESTUALE del Drive isicnv -&amp;gt; Hetzner Storage Box (Claude/drive_mirror/). Struttura cartelle preservata. Increment&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;monitor_hetzner.sh&amp;lt;/code&amp;gt; || infra_server || &amp;lt;code&amp;gt;2-59/5 * * * *&amp;lt;/code&amp;gt; || Cross-monitor da GCP: verifica Hetzner secondary VM via SSH ping&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;tesoriere_v2.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;57 7 * * *&amp;lt;/code&amp;gt; || TESORIERE v2 — Sistema deterministico di analisi contabilità ISI-CNV. Zero LLM. Ogni numero deriva da BigQuery/API con r&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;trust_promotion.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;16 * * * *&amp;lt;/code&amp;gt; || trust_promotion.py - Cron ogni ora Aggiorna contact_trust_score con auto-promotion secondo tassonomia Marco v2.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;complete_riattivazione.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;7-59/10 * * * *&amp;lt;/code&amp;gt; || Completa automaticamente la riattivazione 2026: quando MillionVerifier finalizza il file 31427141, scarica gli OK, inser&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;complete_riattivazione_6k.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;8-59/10 * * * *&amp;lt;/code&amp;gt; || Pipeline riattivazione 6000 (3 tranche): quando MV finalizza il file 31427412, scarica gli OK, li divide in 3 tranche da&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;complete_riattivazione_batch2.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;3-59/10 * * * *&amp;lt;/code&amp;gt; || Pipeline batch2 riattivazione (16.205 → serbatoio diluizione). Quando MV finalizza il file 31431018: scarica OK, crea il&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;consolida_form_db.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;12 6 * * *&amp;lt;/code&amp;gt; || FUNZIONE AUTOMATICA: tutti i fogli-risposte Google Form -&amp;gt; BQ form_db_all + foglio DATABASE. Cron.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;dedup_registry.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;35 6 * * *&amp;lt;/code&amp;gt; || dedup_registry.py — rilevamento CONTINUO e merge PERIODICO dei duplicati nel registro property (isicnv_properties.regist&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;dr_lite.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;7 4 1 * *&amp;lt;/code&amp;gt; || ISI-CNV Disaster Recovery LITE Veloce: NO BQ data, solo bucket CC + secrets + docs Tempo target: 3-5 minuti Versione: 1.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;gen_lavori_mancanti.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;35 */3 * * *&amp;lt;/code&amp;gt; || SELECT DISTINCT CONCAT(i.disk_label, &amp;#039;/&amp;#039;, LOWER(REGEXP_REPLACE(i.rel_path, r&amp;#039;\\\\&amp;#039;, &amp;#039;/&amp;#039;))) k FROM `leafy-responder-48341&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;gruppi_sync.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;17 7 * * 0&amp;lt;/code&amp;gt; || SYNC GRUPPI GOOGLE -&amp;gt; BQ (usa la sessione jules salvata, niente login). Cron settimanale.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ingest_forms.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;3 6 * * 0&amp;lt;/code&amp;gt; || Legge TUTTI i Google Form attivi (Drive) + risposte (Forms API) -&amp;gt; BQ forms_all_responses. Aggiorna anche il foglio DB.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;isicnv_worker.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;3-59/5 * * * *&amp;lt;/code&amp;gt; || ISI-CNV Worker daemon v4 (Python - più robusto del bash)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;pnl_all.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;32 */6 * * *&amp;lt;/code&amp;gt; || pnl-nlp.org — completamento: thumbnail+estratti, sync leads-&amp;gt;BigQuery, rigenerazione file mancanti.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;propensity_allievo.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;25 5 * * *&amp;lt;/code&amp;gt; || PROPENSITY SCORING ALLIEVI - job notturno ISI-CNV Creato: 06/08/2026 da Claude (chat TabICL vs XGBoost) Cosa fa: 1. Estr&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;storagebox_backup.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;42 4 * * *&amp;lt;/code&amp;gt; || Backup notturno ISI-CNV -&amp;gt; Hetzner Storage Box (account separato Marco). BQ dati+schemi in streaming (basso uso disco) +&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;tesoriere_daily.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;46 7 * * *&amp;lt;/code&amp;gt; || TESORIERE DAILY — pipeline conversione lead-&amp;gt;pagamento, deterministica, cron giornaliero. Fonti verita: Streak (lead) + &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;vm_logs_snapshot.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;34 2 * * *&amp;lt;/code&amp;gt; || Snapshot log VM -&amp;gt; GCS (file gz) + BQ isicnv_agents.log_archive (indice). Cron 02:30.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;wiki_proprieta.py&amp;lt;/code&amp;gt; || interroga_bq || &amp;lt;code&amp;gt;13 5 * * 2&amp;lt;/code&amp;gt; || wiki_proprieta.py — verifica che le pagine wiki PROMESSE dal registro esistano davvero, e crea quelle mancanti con lo sc&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;auto_dedup_newsletter.py&amp;lt;/code&amp;gt; || invia_email || &amp;lt;code&amp;gt;7-59/10 * * * *&amp;lt;/code&amp;gt; || AUTO_DEDUP_NEWSLETTER_PAUSED — runs every 10min via cron. Cerca campagne paused con name che inizia per NL_*_Costel*, NL&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;monitor_campaigns.py&amp;lt;/code&amp;gt; || invia_email || &amp;lt;code&amp;gt;14-59/30 * * * *&amp;lt;/code&amp;gt; || monitor_campaigns.py - Cron ogni 30 min Monitora campagne attive e applica auto-fix o alert se anomalie.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ads_refresh_daily.py&amp;lt;/code&amp;gt; || invia_email || &amp;lt;code&amp;gt;9 6 * * *&amp;lt;/code&amp;gt; || ISI-CNV — Auto-refresh giornaliero ads_intelligence VMK Esegue ogni giorno alle 06:00 UTC via cron. - campaigns_daily: p&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;argo_watch.py&amp;lt;/code&amp;gt; || invia_email || &amp;lt;code&amp;gt;17 7 * * *&amp;lt;/code&amp;gt; || ARGO WATCH — monitor giornaliero Google Ads ISI-CNV (R56). Controlli: spesa ieri vs budget per campagna attiva, change_e&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;bounce_processor.py&amp;lt;/code&amp;gt; || invia_email || &amp;lt;code&amp;gt;28-59/30 * * * *&amp;lt;/code&amp;gt; || Auto-bounce processor — legge MAILER-DAEMON da Gmail isicnv/marcoparet, estrae email destinataria, classifica HARD/SOFT,&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;bounce_to_mailwizz.py&amp;lt;/code&amp;gt; || invia_email || &amp;lt;code&amp;gt;23 * * * *&amp;lt;/code&amp;gt; || BOUNCE TO MAILWIZZ — Worker che legge bounce_HARD_pending.jsonl e inserisce in mw_email_blacklist via SSH+SQL. Cron: 5 *&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;campaign_dashboard.py&amp;lt;/code&amp;gt; || invia_email || &amp;lt;code&amp;gt;14-59/15 * * * *&amp;lt;/code&amp;gt; || Notifica Telegram&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;fasce_2791.py&amp;lt;/code&amp;gt; || invia_email || &amp;lt;code&amp;gt;*/5 * * * *&amp;lt;/code&amp;gt; || Controllore invio a fasce per campagna Mailwizz 2791 (riapertura_scuola_set2026). Cron */5: apre la campagna nelle fasce&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;form_leads_sync.py&amp;lt;/code&amp;gt; || invia_email || &amp;lt;code&amp;gt;11 * * * *&amp;lt;/code&amp;gt; || Form Leads Sync — ISI-CNV Ogni ora: legge le risposte del Form Google (Sheet) e inserisce le email in lista 5 (master It&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;lead_sync.py&amp;lt;/code&amp;gt; || invia_email || &amp;lt;code&amp;gt;30 */6 * * *&amp;lt;/code&amp;gt; || LEAD SYNC (R38) — REGOLA ASSOLUTA: ogni nuovo contatto email che entra dai moduli del sito viene registrato in BigQuery &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;mailwizz_to_storia_sync.py&amp;lt;/code&amp;gt; || invia_email || &amp;lt;code&amp;gt;35 5 * * *&amp;lt;/code&amp;gt; || Sync incrementale Mailwizz -&amp;gt; BQ storia_invii (finestra 7 giorni, MERGE idempotente). Creato 02/09/2026 dopo il buco 14/&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;verifica_invii.py&amp;lt;/code&amp;gt; || invia_email || &amp;lt;code&amp;gt;11 14 15 7 *&amp;lt;/code&amp;gt; || VERIFICA INVII — controllo post-spedizione automatico. Gira dopo le campagne programmate, verifica l&amp;#039;esito reale e invia&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;hermes_email_autoreply.py&amp;lt;/code&amp;gt; || legge_email || &amp;lt;code&amp;gt;*/15 * * * *&amp;lt;/code&amp;gt; || HERMES EMAIL AUTOREPLY v2 - Marker-based detection (04/05/2026 ore 16:35) CAMBIO RISPETTO v1: - v1 detectava &amp;quot;thread con&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;email_assistant.py&amp;lt;/code&amp;gt; || legge_email || &amp;lt;code&amp;gt;*/2 * * * *&amp;lt;/code&amp;gt; || EMAIL ASSISTANT - Marco scrive a isicnv@gmail.com con subject &amp;quot;?...&amp;quot; o &amp;quot;Q:...&amp;quot; e riceve risposta NLU. Riusa stesso patte&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ingest_informazionicorsi.py&amp;lt;/code&amp;gt; || legge_email || &amp;lt;code&amp;gt;6-59/30 * * * *&amp;lt;/code&amp;gt; || ingest_informazionicorsi.py v2 (2026-05-14) Polls informazionicorsi@gmail.com inbox, estrae lead REALI da form, popola c&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;sentinella_blocchi.py&amp;lt;/code&amp;gt; || legge_email || &amp;lt;code&amp;gt;7 * * * *&amp;lt;/code&amp;gt; || Sentinella indipendente ISI-CNV. Cron ogni ora. Se qualcosa e&amp;#039; FERMO, manda EMAIL a Marco (ogni ora finche&amp;#039; dura) con la&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;cc_backup_encrypted.py&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;14 3 * * *&amp;lt;/code&amp;gt; || ISI-CNV Command Center bucket - Encrypted Backup Daily backup di gs://isicnv-command-center-routes (primario, europe-wes&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;marcoparet_diagnose.py&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;18 */8 * * *&amp;lt;/code&amp;gt; || marcoparet.com - Diagnose script (READ-ONLY) Output: report Markdown su /tmp + Drive + email. NON modifica nulla sul sit&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;marcoparet_sentinel_check.py&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;3,18,33,48 * * * *&amp;lt;/code&amp;gt; || marcoparet_sentinel_check.py Hermes VM client per marcoparet.com Fortress Sentinel. Esegue ogni N minuti (chiamato da ca&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;form_poller.py&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;9-59/10 * * * *&amp;lt;/code&amp;gt; || form_poller.py v2 — Poller UNIVERSALE risposte form ISI-CNV (10/06/2026) - Scopre automaticamente TUTTI i form dell&amp;#039;acco&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;handoff.py&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;7 */2 * * *&amp;lt;/code&amp;gt; || handoff.py - scrive lo stato di un cantiere a milestone. Uso: handoff.py --write --id SLUG --obiettivo &amp;quot;...&amp;quot; [--vincoli &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;hermes_learner.py&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;11 * * * *&amp;lt;/code&amp;gt; || HERMES LEARNER — Worker DeepSeek che distilla hermes_inbox PENDING in skill/rule/learning persistenti. Pattern: 1. Marco&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;bq_backup_cron.sh&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;1 5 * * 0&amp;lt;/code&amp;gt; || retention: tieni ultime 8 date&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;chat_controller.py&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;17-59/30 * * * *&amp;lt;/code&amp;gt; || chat_controller.py - R94: cron 30min. Sessioni con ultimo evento != END piu vecchio di 45min -&amp;gt; crea handoff gate=auto (&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;fascicolo_sync.py&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;23-59/30 * * * *&amp;lt;/code&amp;gt; || fascicolo_sync — aggancia nuove righe chatgpt al registry, merge email, aggiorna stati. Pensato per cron.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;finalizzatore.py&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;6-59/10 * * * *&amp;lt;/code&amp;gt; || finalizzatore.py - R109 FINALIZATION/CALLBACK. Cron ogni 10 min. Un job DONE non conclude la commessa: genera QA + conse&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;job_guardian.py&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;5-59/30 * * * *&amp;lt;/code&amp;gt; || job_guardian.py - R93: riavvia job morti/incodati di job.py. Cron ogni 30 min.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;job_runner.py&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;4-59/5 * * * *&amp;lt;/code&amp;gt; || job_runner.py — lancia job lunghi in background con AUTO-VERIFICA via cron. Perche esiste: i job lunghi (&amp;gt;2 min) non dev&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;marcoparet_backup.py&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;49 */4 * * *&amp;lt;/code&amp;gt; || marcoparet.com - Backup snapshot incrementale Ogni 2 ore via cron: snapshot DB + file critici, mantiene rolling 12 backu&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;monitor_job_ledgers.py&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;4-59/15 * * * *&amp;lt;/code&amp;gt; || monitor_job_ledgers.py - Monitor GENERICO dei job-ledger (CAPOUFFICIO). Cron */15. ALERT BY EXCEPTION via Telegram: avvi&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;vm_watchdog.py&amp;lt;/code&amp;gt; || orchestrazione || &amp;lt;code&amp;gt;4-59/5 * * * *&amp;lt;/code&amp;gt; || VM Watchdog - monitora stato VM agent + auto-reset via Qwen oracle quando deadlock. Esecuzione: cron */5 min sulla VM st&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;email_health_check.py&amp;lt;/code&amp;gt; || pubblica_pagina || &amp;lt;code&amp;gt;13 8 */5 * *&amp;lt;/code&amp;gt; || Email Health Check — ogni 5 giorni. Invia via CC, verifica su informazionicorsi.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;analgesia_ciclo.sh&amp;lt;/code&amp;gt; || pubblica_pagina || &amp;lt;code&amp;gt;15 */4 * * *&amp;lt;/code&amp;gt; || Ciclo asincrono del manuale (cron ogni 4h, con lock): nuove finestre fini -&amp;gt; 8 spezzoni -&amp;gt; manuale -&amp;gt; pubblicazione&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;bq_sink_cruscotto.py&amp;lt;/code&amp;gt; || pubblica_pagina || &amp;lt;code&amp;gt;35 7 * * *&amp;lt;/code&amp;gt; || BQ SINK del cruscotto — ogni giorno versa le metriche del cruscotto in BigQuery (dataset pillar_intelligence, tabella me&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;campaigns_monitor.py&amp;lt;/code&amp;gt; || pubblica_pagina || &amp;lt;code&amp;gt;* * * * *&amp;lt;/code&amp;gt; || Campaigns Monitor — pubblica stato live di tutte le campagne Mailwizz su CC. Polling ogni 2 minuti. Mostra: in invio ora&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;cruscotto.py&amp;lt;/code&amp;gt; || pubblica_pagina || &amp;lt;code&amp;gt;15 7 * * *&amp;lt;/code&amp;gt; || CRUSCOTTO v2 — analisi giornaliera con registro automatico delle pagine. Misura: totali di sito, OGNI pagina (nuove e pr&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;fabbrica_pagine.py&amp;lt;/code&amp;gt; || pubblica_pagina || &amp;lt;code&amp;gt;0 5 * * 1&amp;lt;/code&amp;gt; || FABBRICA PAGINE - ciclo autonomo di creazione: prende il primo tema dalla coda, raccoglie il materiale dalla memoria CC,&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;fc_backup.py&amp;lt;/code&amp;gt; || pubblica_pagina || &amp;lt;code&amp;gt;46 1 * * 0&amp;lt;/code&amp;gt; || Estensione di sites_backup.py per i siti FastComet (no SSH, metodo PHP+FTP). Viene chiamato da sites_backup.py --fastcom&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;gen_video_status.py&amp;lt;/code&amp;gt; || pubblica_pagina || &amp;lt;code&amp;gt;7-59/10 * * * *&amp;lt;/code&amp;gt; || Genera https://wiki.marcoparet.com/agent/status.html dall&amp;#039;avanzamento in BigQuery&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;pipeline_pillar.py&amp;lt;/code&amp;gt; || pubblica_pagina || &amp;lt;code&amp;gt;44 6 * * 1&amp;lt;/code&amp;gt; || PIPELINE PILLAR v2 — MOTORE DETERMINISTICO A PASSI. Il sistema decide i passaggi, li esegue TUTTI in ordine e li verific&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;sites_backup.py&amp;lt;/code&amp;gt; || pubblica_pagina || &amp;lt;code&amp;gt;17 1 * * 0&amp;lt;/code&amp;gt; || sites_backup.py v2 — backup siti HostGator su GCS (sessione SSH singola per sito). Copre: 3 WP reali (mesmerismus, neuro&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;visite_pillar.py&amp;lt;/code&amp;gt; || pubblica_pagina || &amp;lt;code&amp;gt;56 7 * * 1&amp;lt;/code&amp;gt; || MISURA VISITE (R35) — GSC clicks/impressions per pagine strategiche: 7g vs 7g precedenti e 28g vs 28g. Domini: neuroling&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;marcoparet_smoketest.py&amp;lt;/code&amp;gt; || qa_screenshot || &amp;lt;code&amp;gt;6 6 * * *&amp;lt;/code&amp;gt; || marcoparet.com - Smoketest cliente virtuale (Playwright headless) Apre 5 pagine chiave, fa screenshot, verifica struttur&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;memoria_revisione.py&amp;lt;/code&amp;gt; || qa_screenshot || &amp;lt;code&amp;gt;10 8 * * 1&amp;lt;/code&amp;gt; || memoria_revisione.py - Revisione settimanale anti memory-poisoning (04/09/2026). Elenca i ricordi CC scritti negli ultim&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;wiki_qualita.py&amp;lt;/code&amp;gt; || scrive_wiki || &amp;lt;code&amp;gt;58 7 * * 1&amp;lt;/code&amp;gt; || CONTROLLO QUALITÀ WIKI (R34) — la wiki è la referenza assoluta, quindi mai supporla perfetta. Scansiona le voci di wiki.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;web_mentions_monitor.py&amp;lt;/code&amp;gt; || social || &amp;lt;code&amp;gt;16 7 * * *&amp;lt;/code&amp;gt; || ISI-CNV Web Mentions Monitor Cerca menzioni Marco Paret + ISI-CNV su web pubblico (Google/DDG/Bing/Yandex) con filtri pe&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;gen_indice_proxy.py&amp;lt;/code&amp;gt; || video_archivio || &amp;lt;code&amp;gt;50 */3 * * *&amp;lt;/code&amp;gt; || -*- coding: utf-8 -*-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Route CC più usate dalle chat ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Route !! Capacità !! Conversazioni !! di cui FATTO&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/docs&amp;lt;/code&amp;gt; || pubblica_pagina || 127 || 14&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/sheets-connector-424757051842&amp;lt;/code&amp;gt; || altro || 94 || 11&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/vm/exec-direct&amp;lt;/code&amp;gt; || infra_server || 88 || 11&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/drive&amp;lt;/code&amp;gt; || altro || 81 || 9&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/wiki&amp;lt;/code&amp;gt; || pubblica_pagina || 70 || 22&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/vm/task&amp;lt;/code&amp;gt; || youtube || 50 || 10&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/docs/append-v2&amp;lt;/code&amp;gt; || drive_docs_sheets || 44 || 3&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/vm/reset&amp;lt;/code&amp;gt; || biblioteca || 38 || 7&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/bq/query&amp;lt;/code&amp;gt; || interroga_bq || 38 || 5&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/memory/search&amp;lt;/code&amp;gt; || biblioteca || 37 || 4&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/learnings/check&amp;lt;/code&amp;gt; || crm || 34 || 7&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/sheets2/append&amp;lt;/code&amp;gt; || drive_docs_sheets || 27 || 3&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/drive2/list&amp;lt;/code&amp;gt; || drive_docs_sheets || 24 || 3&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/memory/get&amp;lt;/code&amp;gt; || memoria_cc || 23 || 1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/memory/add&amp;lt;/code&amp;gt; || memoria_cc || 22 || 3&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/oauth/start-any&amp;lt;/code&amp;gt; || oauth_token || 22 || 2&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/jobs/list&amp;lt;/code&amp;gt; || pubblica_pagina || 22 || 4&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/vm/agent&amp;lt;/code&amp;gt; || altro || 20 || 1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/vm/status&amp;lt;/code&amp;gt; || infra_server || 19 || 3&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/sheets2/read&amp;lt;/code&amp;gt; || drive_docs_sheets || 15 || 2&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/drive2&amp;lt;/code&amp;gt; || drive_docs_sheets || 14 || 3&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/bq/load&amp;lt;/code&amp;gt; || interroga_bq || 14 || 1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/oauth/callback&amp;lt;/code&amp;gt; || oauth_token || 14 || 2&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/streak/boxes&amp;lt;/code&amp;gt; || pubblica_pagina || 13 || 2&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/vm/task-status&amp;lt;/code&amp;gt; || pubblica_pagina || 13 || 2&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/sheets&amp;lt;/code&amp;gt; || altro || 12 || 2&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/sheets2&amp;lt;/code&amp;gt; || drive_docs_sheets || 12 || 2&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/vm/cmd&amp;lt;/code&amp;gt; || altro || 11 || 1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/drive2/search&amp;lt;/code&amp;gt; || drive_docs_sheets || 11 || 1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/drive2/search-v2&amp;lt;/code&amp;gt; || drive_docs_sheets || 11 || 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Limiti ==&lt;br /&gt;
* L&amp;#039;export chat contiene il testo dei messaggi, non i blocchi tool: i comandi eseguiti dentro i tool sono invisibili (es. &amp;lt;code&amp;gt;gate_deliverable.py&amp;lt;/code&amp;gt; risulta 0 citazioni). La fonte forte è la VM, non la chat.&lt;br /&gt;
* La classificazione per capacità è a parole chiave: la colonna &amp;#039;&amp;#039;altro&amp;#039;&amp;#039; va ripulita a mano o con un passaggio LLM.&lt;br /&gt;
* Solo 36 conversazioni chiudono con &amp;#039;&amp;#039;ESITO: FATTO&amp;#039;&amp;#039; esplicito: la convenzione è recente, il conteggio FATTO sottostima.&lt;br /&gt;
&lt;br /&gt;
== Storia ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Data !! Chi !! Cosa&lt;br /&gt;
|-&lt;br /&gt;
| 2026-09-05 || Claude (sessione claude-registro-strumenti) || Prima costruzione del registro da crontab + scripts + claude_export&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>WikiBot</name></author>
	</entry>
</feed>