[FIX] ARIA polish post #439/#440: help Inventario allineato + regola anti-invenzione
Completa i 2 punti rimandati dal supervisore:
- help.js sezione Inventario: documentate le nuove funzioni che il supervisore ha
aggiunto (commit 9c36604) → "Mappa Dipendenze" con il campo Dipendenze per popolarla;
"Elimina bene" (cestino, org_admin) distinto dallo stato "dismesso".
- AIService::navigationMapBlock: 2 regole nuove → (5) NON citare nomi file .html/URL
interni; (6) NON inventare pulsanti/funzioni/passi inesistenti, usare solo le funzioni
della guida/contesto della pagina. Elimina l'allucinazione "rischi.html" e simili.
Smoke: ARIA cita Elimina + Mappa Dipendenze, zero nomi-file, "Gestione > Rischi".
Cache-buster help.js -> 20260625a. php-fpm reload.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
9c36604b2b
commit
b33e0d051e
@@ -77,7 +77,9 @@ class AIService
|
||||
. "1. Quando indichi DOVE cliccare o COME raggiungere una funzione, usa ESCLUSIVAMENTE i nomi delle voci qui sopra, esattamente come scritti, indicando la sezione (es. \"nella sezione Operativo, voce Inventario\").\n"
|
||||
. "2. NON inventare nomi di menu, \"fasi\", codici (es. \"A4\", \"Fase 4.1\") o moduli che NON compaiono in questo elenco.\n"
|
||||
. "3. L'inventario degli asset si trova in: sezione Operativo > Inventario. La valutazione del rischio in: sezione Gestione > Rischi. Misure e requisiti in: sezione Principale > Misure e Requisiti.\n"
|
||||
. "4. Se l'utente cerca una funzione che non corrisponde ad alcuna voce, dillo chiaramente e suggerisci la voce piu' vicina, senza inventarne una.\n";
|
||||
. "4. Se l'utente cerca una funzione che non corrisponde ad alcuna voce, dillo chiaramente e suggerisci la voce piu' vicina, senza inventarne una.\n"
|
||||
. "5. NON citare MAI nomi di file (es. \"rischi.html\", \"assets.html\") nE URL interni: l'utente naviga dalle voci di menu qui sopra, non dai file.\n"
|
||||
. "6. NON inventare pulsanti, campi o passaggi che non esistono. Se non sei certo che una funzione/pagina esista, NON darla per scontata: dillo e invita ad aprire la guida \"?\" della pagina; usa solo le funzioni descritte nel contesto/guida della pagina, se forniti.\n";
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1095,7 +1095,7 @@
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="js/i18n.js?v=20260631"></script>
|
||||
<script src="js/help.js?v=20260624e"></script>
|
||||
<script src="js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
loadSidebar();
|
||||
|
||||
@@ -167,7 +167,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
// ── Auth check ───────────────────────────────────────────
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
+1
-1
@@ -375,7 +375,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
// ── Auth & Init ─────────────────────────────────────────
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
@@ -156,7 +156,7 @@
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
'use strict';
|
||||
/*
|
||||
|
||||
@@ -356,7 +356,7 @@
|
||||
<script>if (window.bootstrap && bootstrap.loadFonts) { bootstrap.loadFonts('vendor/bootstrap-italia/dist/fonts'); }</script>
|
||||
<script src="js/common-bi.js?v=20260624f"></script>
|
||||
<script src="js/i18n.js?v=20260631"></script>
|
||||
<script src="js/help.js?v=20260624e"></script>
|
||||
<script src="js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
|
||||
@@ -188,7 +188,7 @@
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script src="/js/competenze.js?v=20260617"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -141,7 +141,7 @@
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
'use strict';
|
||||
/* Controlli periodici (control monitoring §9.1/A.8.16): controlli ricorrenti + esecuzioni (evidenza) + NC/AC. */
|
||||
|
||||
@@ -156,7 +156,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
// ── Auth check ───────────────────────────────────────────
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
+1
-1
@@ -1154,7 +1154,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
// La guida è accessibile anche da non autenticati (utile per onboarding)
|
||||
// ma se sei loggato carichi sidebar + i18n normalmente. Stessa logica
|
||||
|
||||
@@ -364,7 +364,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
// ── Auth & Init ──────────────────────────────────────────────
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
@@ -144,7 +144,7 @@
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
'use strict';
|
||||
/*
|
||||
|
||||
+1
-1
@@ -197,7 +197,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script src="/js/isms.js?v=20260620b"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
+4
-2
@@ -928,7 +928,8 @@ const HelpSystem = (function () {
|
||||
{
|
||||
heading: 'Mappa delle Dipendenze',
|
||||
items: [
|
||||
'La <strong>Mappa Dipendenze</strong> visualizza le relazioni tra i beni.',
|
||||
'Il pulsante <strong>Mappa Dipendenze</strong> visualizza le relazioni tra i beni (quali beni dipendono da quali).',
|
||||
'Per popolarla, in <strong>modifica del bene</strong> usa il campo <strong>Dipendenze</strong> e seleziona i beni da cui quel bene dipende; nel dettaglio le dipendenze sono mostrate per nome.',
|
||||
'Identifica le dipendenze critiche e i singoli punti di guasto (SPOF).',
|
||||
'Utile per la valutazione dell\'impatto in caso di incidente o indisponibilita\'.'
|
||||
]
|
||||
@@ -938,7 +939,8 @@ const HelpSystem = (function () {
|
||||
items: [
|
||||
'Tracciamento dello stato del bene: attivo, in manutenzione, dismesso.',
|
||||
'Registrazione di proprietario, ubicazione, fornitore e contratti di supporto.',
|
||||
'Alert automatici per beni con supporto in scadenza o fine vita.'
|
||||
'Alert automatici per beni con supporto in scadenza o fine vita.',
|
||||
'Per <strong>rimuovere</strong> un bene non piu\' pertinente usa il pulsante <strong>Elimina</strong> (icona cestino, in lista o nel dettaglio del bene): l\'operazione richiede il ruolo org_admin. Da non confondere con lo stato "dismesso", che mantiene lo storico del bene.'
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
+1
-1
@@ -163,7 +163,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script src="/js/kb.js"></script>
|
||||
<script>
|
||||
// Gate auth + chrome come le altre pagine -bi.
|
||||
|
||||
@@ -131,7 +131,7 @@
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
'use strict';
|
||||
/*
|
||||
|
||||
@@ -172,7 +172,7 @@
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
'use strict';
|
||||
/*
|
||||
|
||||
@@ -125,7 +125,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
loadSidebar();
|
||||
|
||||
@@ -143,7 +143,7 @@
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script src="/js/organigramma.js?v=20260617"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -346,7 +346,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
// ── Auth & Init ─────────────────────────────────────────
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
+1
-1
@@ -136,7 +136,7 @@
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script src="/js/raci.js?v=20260619"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
+1
-1
@@ -456,7 +456,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
// ── Auth & Init ─────────────────────────────────────────
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
@@ -146,7 +146,7 @@
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
'use strict';
|
||||
/*
|
||||
|
||||
+1
-1
@@ -507,7 +507,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
// ── Auth & Init ──────────────────────────────────────────────
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
@@ -701,7 +701,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
// ── Auth check ───────────────────────────────────────────
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
@@ -199,7 +199,7 @@
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
'use strict';
|
||||
/*
|
||||
|
||||
@@ -196,7 +196,7 @@
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
'use strict';
|
||||
/*
|
||||
|
||||
@@ -490,7 +490,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260621sp"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
// ── Auth & Init ─────────────────────────────────────────
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
@@ -305,7 +305,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
// ── Auth & Init ─────────────────────────────────────────
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
@@ -220,7 +220,7 @@
|
||||
</script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="/js/i18n.js?v=20260631"></script>
|
||||
<script src="/js/help.js?v=20260624e"></script>
|
||||
<script src="/js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
loadSidebar();
|
||||
|
||||
@@ -326,7 +326,7 @@
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script src="/js/common-bi.js?v=20260624f"></script>
|
||||
<script src="js/i18n.js?v=20260631"></script>
|
||||
<script src="js/help.js?v=20260624e"></script>
|
||||
<script src="js/help.js?v=20260625a"></script>
|
||||
<script>
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
loadSidebar();
|
||||
|
||||
Reference in New Issue
Block a user