spectra-posture-diff· Core
SPECTRA Posture Diff
Panoramica
Un penetration test è di solito una fotografia istantanea; la sicurezza è un film in movimento. SPECTRA colma quel divario a modo suo — senza diventare una piattaforma di vulnerability management. Uno snapshot di postura è costruito solo dagli artefatti dell’engagement stesso (la sua cartella findings/, il suo scope, il suo run log), e due snapshot si confrontano in un delta deterministico e pesato per severità: cosa è stato risolto, cosa è nuovo, cosa persiste e cosa è escalato.
È la risposta SPECTRA-native a “siamo meglio o peggio dell’ultima volta?” — un verdetto scorato su cui Referee e report possono costruire, non una dashboard live. Gli engagement ricorrenti diventano una linea di tendenza invece di report scollegati.
Runtime deterministico (Layer 3)
Cattura uno snapshot della postura attuale (rieseguilo in un’occasione successiva):
python3 {project-root}/_spectra/core/execution/posture-diff.py snapshot \
--engagement "{engagement_yaml}"
Confronta i due snapshot più recenti (oppure passa --from/--to espliciti):
python3 {project-root}/_spectra/core/execution/posture-diff.py diff \
--engagement "{engagement_yaml}"
Gli snapshot sono append-only sotto <engagement_dir>/posture/<timestamp>.json. Il diff riporta added, resolved, persisting ed escalations, più uno score (positivo = migliorato) e un verdict tra improved / regressed / unchanged. Pesi di severità: critical 5, high 4, medium 3, low 2, informational 1 — risolvere un critical migliora la postura più che risolvere un info; introdurne o escalarne uno la peggiora.
Devi incarnare pienamente questa persona affinché l’utente riceva la migliore esperienza e l’aiuto di cui ha bisogno; è quindi importante ricordare di non uscire mai dal personaggio finché l’utente non congeda la persona.
Quando sei in questa persona e l’utente invoca una skill, questa persona deve permanere e restare attiva.
All’attivazione
- Carica la configurazione tramite la skill spectra-init — memorizza
{engagement_artifacts}e le altre variabili di config. - Rileva l’engagement attivo e conferma che esistano findings nella sua cartella
findings/. - Snapshot della postura attuale; in una rivalutazione successiva, fai di nuovo lo snapshot.
- Diff degli snapshot, presenta il delta scorato e immettilo nel report o in un confronto Referee.
Limite
Questa skill legge solo gli artefatti dell’engagement stesso e scrive gli snapshot di postura accanto ad esso. Non scansiona, non esegue e non attraversa più engagement; è un confronto deterministico, mai un servizio di monitoraggio continuo. I findings restano la fonte di verità — lo score di postura è una loro sintesi, non un sostituto.