brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
sismabonus-classificazione-rischio-pamCalcolo code-driven della classe di rischio sismico di un edificio ai sensi del DM 58/2017 Allegato A (sostituito dal DM 65/2017), con il metodo convenzionale: PAM, IS-V e classe finale come la peggiore delle due. Implementazione deterministica e riproducibile: la versione 0.1.0-alpha include solo test di consistenza interna delle formule; la validazione di…
Independent GitHub snapshot · Automated classification · Original documentation governs
name: sismabonus-classificazione-rischio-pam description: "Calcolo code-driven della classe di rischio sismico di un edificio ai sensi del DM 58/2017 Allegato A (sostituito dal DM 65/2017), con il metodo convenzionale: PAM, IS-V e classe finale come la peggiore delle due. Implementazione deterministica e riproducibile: la versione 0.1.0-alpha include solo test di consistenza interna delle formule; la validazione di campo e' prerequisito del release stabile e non e' ancora stata eseguita. Skill solo per il METODO CONVENZIONALE su edifici esistenti; il metodo semplificato per edifici in muratura e la generazione dei modelli di asseverazione (Allegato B / B-bis) sono fuori scope di questa versione. Use when an Italian structural engineer asks to compute the seismic risk class of an existing building under DM 58/2017 (sismabonus), check whether an intervention produces a class jump, or verify PAM/IS-V values produced by other software. Target users are structural engineers preparing sismabonus asseverations or vulnerability studies under NTC 2018 cap. 8." license: MIT area: strutture-geotecnica title: "Sismabonus - Classificazione rischio (DM 58/2017)" summary: "Calcolo code-driven della classe di rischio sismico DM 58/2017 (sismabonus, metodo convenzionale): PAM come area su SLID/SLO/SLD/SLV/SLC + coda SLR, IS-V = PGA_C/PGA_D(SLV), classe finale = peggiore tra PAM e IS-V, salto classi stato di fatto vs progetto." normative_refs:
Usare quando un ingegnere strutturista italiano deve:
Non usare quando l'utente chiede:
Questa skill e' uno strumento di supporto al calcolo di PAM, IS-V e classe di rischio sismico DM 58/2017. Non sostituisce il giudizio del progettista strutturale firmatario. L'output e' deterministico (formule chiuse trapezoidali) e quindi confrontabile dal progettista contro software certificati (ClaSS, CDM Win, EdiSis, MasterSap-SismiClass): il confronto resta in capo al professionista. Nello stato v0.1.0-alpha la skill non e' ancora stata validata con confronto numerico vs software certificati su casi reali; i test interni coprono solo la consistenza delle formule, i bordi delle tabelle classi e l'anti-drift fixture-based. La skill non produce l'asseverazione tecnica Allegato B / B-bis pronta al deposito e non firma elaborati. L'analisi di vulnerabilita' (NTC 2018 cap. 8) che produce PGA_C e TR_C per i 4 SL NTC e' prerequisito non automatizzato dalla skill: e' responsabilita' esclusiva del progettista strutturale.
In base alla richiesta dell'utente, carica il task file appropriato:
tasks/calcola-classificazione.mdtasks/valida-input.mdtasks/run-test-suite.mdSe la richiesta e' generica ("aiutami con il sismabonus"), chiedi se l'utente vuole solo classificare lo stato di fatto, confrontare fatto+progetto per il salto classi, o validare gli input. La sequenza naturale e': prima valida-input (sanity check su monotonia e coerenza fisica), poi calcola-classificazione.
Le formule chiuse del DM 58/2017 Allegato A (PAM trapezoidale, capping passo 2.1.3, IS-V, classificazione, salto classi) sono implementate nel modulo Python tasks/lib/sismabonus.py. La test suite tasks/lib/test_sismabonus.py copre consistenza interna + verifica numerica vs valore di riferimento del decreto: formula PAM (4 trapezoidi + coda SLR) verificata vs il valore PAM = 1,13% dichiarato dal decreto stesso per V_R=50 ai minimi NTC, capping prescritto al passo 2.1.3 con default attivo + flag --no-capping, bordi delle tabelle classi PAM (8 classi A+..G) e IS-V (7 classi A+..F) coerenti con il testo letterale dell'Allegato A, regola "classe finale = peggiore", regola salto classi, rilevamento curva non monotona residua (warning), validazione input (NaN/inf, negativi, stringhe, bool, JSON RFC 8259), CLI con --input-json + error handling friendly su chiavi mancanti e fallback strict su PGA_D parziali, anti-drift fixture-based su examples/caso-conforme-fittizio/{input,expected}.json. Non confronta vs software certificati su edifici reali: la validazione di campo e' prerequisito del release stabile e va eseguita seguendo tasks/run-test-suite.md.
REGOLA OPERATIVA INVIOLABILE. Per ogni calcolo numerico (lambda da TR, PAM, IS-V, classi PAM/IS-V, classe finale, salto classi) devi invocare il modulo Python via Bash. NON riprodurre i numeri "a mano" leggendo le formule dagli estratti in
references/estratti/: gli estratti sono materiale di citazione normativa, non sostituiscono l'esecuzione del modulo. Calcolare a mano vanifica l'intera ragion d'essere della skill (output deterministico e riproducibile, confrontabile dal progettista) e introduce errore stocastico.
In Claude Code la variabile ${CLAUDE_SKILL_DIR} punta a questa skill. Usala in tutti i comandi Bash:
python3 ${CLAUDE_SKILL_DIR}/tasks/lib/sismabonus.py --help
python3 ${CLAUDE_SKILL_DIR}/tasks/lib/sismabonus.py --input-json caso.json
In Codex e altri agent compatibili AGENTS.md la variabile potrebbe non essere risolta: in tal caso sostituiscila con il path assoluto della directory che contiene questo SKILL.md (l'agent conosce sempre il path da cui ha caricato la skill). Non usare path relativi tipo tasks/lib/sismabonus.py: la CWD dell'utente quasi mai coincide con la skill dir.
Il modulo non ha dipendenze esterne (solo libreria standard Python 3.9+).
tasks/.tasks/calcola-classificazione.md) e invoca il modulo Python con --input-json.Riferimenti completi in references/sources.yaml. Fonti primarie:
tasks/run-test-suite.md)Estratti testuali in references/estratti/.
Questa skill NON fa:
spettro-risposta-ntc per supporto al calcolo dello spettro/PGA al sito)Ogni output va verificato dal progettista strutturale prima di essere usato per asseverazione, deposito al SUE o richiesta di detrazione fiscale.