Guida alla versione preliminare · 0.1.0

Estendere i sorgenti con contratti chiari

Trova i confini di scanner, evidenze, client e flussi che un contributo circoscritto deve preservare.

Il riferimento API è in inglese.

CodeSecurity offre punti di contribuzione nei sorgenti: adapter e regole, evidenze normalizzate, flussi persistenti, workbench React e client VS Code. Sono confini d’implementazione esaminati. Non esistono SDK di plugin runtime, registri arbitrari di eseguibili o integrazioni generiche tramite chiavi API.

Scegli un contributo limitato

Modifica sorgenti / contribuire uno scannerDiagramma
  1. Individua il contratto

    Parti da registro pubblico, dispatch degli adapter e schema normalizzato del rilievo.

  2. Esamina input di strumenti e dati

    Aggiorna input fissati di build, avvisi e requisiti dei dati pertinenti.

  3. Implementa l’adapter limitato

    Definisci argomenti, ambiente e parsing esatti. Conserva ambito, limiti d’output e oscuramento di pattern noti.

  4. Collega disponibilità e copertura

    Rendi visibili dati mancanti, strumenti indisponibili e analisi limitata al preflight e al risultato.

  5. Esercita il comportamento cambiato

    Usa piccoli fixture sintetici e controlli mirati di parsing, errori, disponibilità e raccolta risultati.

  6. Esamina la modifica completa

    Collega modifiche sorgente e contratti interessati di UI e API prima di condividere il contributo.

Integrare uno scanner richiede una modifica verificata dei sorgenti. Registro fisso, contratti degli adapter e controlli mirati formano il percorso; non esiste SDK di plugin runtime.
Area Punto di partenza Contratto da preservare
Esecuzione Registro e adapter nativi Identità fissata, configurazione controllata, esecuzione limitata ed esiti veritieri di parser e copertura.
Regole e dati Lock strumenti, lock regole e validazione generazioni Input verificati, identità, compatibilità, validità e attivazione atomica.
Rilievi e artefatti Normalizzazione e confine artefatti Posizione e fingerprint canonici, metadati limitati, oscuramento sensibile e pubblicazione attestata.
Flussi persistenti Repository job ed esecuzione worker Idempotenza, isolamento per lease e tentativo, scadenze, annullamento e checkpoint recuperabili.
Browser Applicazione React Aggiornamento autorevole, revisioni attese, stati pendenti ed errori utili, accessibilità.
Editor Sorgenti VS Code Generazione attiva, Workspace Trust, identità dei sorgenti e azioni host esplicite.

Un piccolo fixture di regola o una correzione circoscritta di flusso può essere un primo contributo utile. Descrivi comportamento corretto ed evidenza che lo dimostra. Non trasformare categorie ampie come supporto SAST in promesse su ogni linguaggio o debolezza.

Cambia uno scanner come modifica coordinata dei sorgenti

Il registro fisso valida versioni, comandi versione, argomenti, passaggi supplementari, ambienti e formati contro il lock. Aggiungere un binario a un’immagine non basta. L’esecuzione rifiuta ID scanner sconosciuti.

  1. Esamina sorgenti upstream, licenza, modifiche e input esatti di build e download. Conserva gli avvisi necessari e lega l’identità dell’immagine.
  2. Aggiorna catalogo e lock con comando, formato e regole o dati previsti. Separa preparazione in rete ed esecuzione sui sorgenti.
  3. Implementa adapter e parser con controlli propri, limiti finiti, posizioni canoniche ed errori veritieri. Non convertire output malformato in zero rilievi.
  4. Integra disponibilità e copertura. Un prerequisito mancante deve restare visibile prima dell’ammissione o nelle evidenze incomplete.
  5. Aggiungi secondo necessità casi positivi, senza rilievi, malformati, sovradimensionati, timeout e controlli dei sorgenti. Verifica lo strumento nativo oltre ai fixture del parser.
  6. Esamina normalizzazione, oscuramento sensibile, fingerprint deterministici e pubblicazione completa del worker. Un report nativo grezzo non è automaticamente un artefatto supportato.

La matrice d’esecuzione spiega le differenze: Trivy ha due passaggi; Grype dipende da Syft; Checkov controlla la scoperta della configurazione; Bearer usa una build modificata. Aggiornarli richiede nuove evidenze dei contratti specifici.

Conserva la semantica delle evidenze nei nuovi flussi

Uno stato o un’azione nuovi possono cambiare più di un’etichetta. I rilievi hanno revisioni e decisioni; le scansioni copertura e gate; i job lease ed esiti finali. Mantieni distinti questi significati.

Accettare il rischio esclude un rilievo dal gate ma non fornisce copertura mancante. Marcarlo corretto registra una decisione ma non verifica sorgenti cambiati. Una scansione completa del working tree non autorizza un push con alberi diversi nei commit precedenti.

I client devono riconciliare REST dopo eventi, reset e modifiche, senza trattare segnali come risorse complete. Una risposta obsoleta non deve sovrascrivere una decisione nuova. Esamina contratto delle revisioni API e comportamento visibile durante navigazione, riconnessione, annullamento e errore.

Mantieni le integrazioni nell’autorità esistente

I client usano sessione e CSRF browser o scope IDE esatti consentiti, più controlli di proprietà delle route. I protocolli interni non sono API d’integrazione supportate. Aggiungere una route non deve concedere accidentalmente a ogni editor associato azioni riservate al proprietario o mount più ampi.

Le estensioni Advisor devono conservare la divulgazione. Una conferma remota singola lega destinazione, modello, configurazione, consenso e identità del prompt; la risoluzione automatica sull’intera scansione resta locale. Il connettore usa route Ollama verificate: un altro provider richiede modifiche a sorgenti e contratto di sicurezza, non un trucco di configurazione non documentato.

Usa autorità dei sorgenti e servizi interni per identificare chiamante e confine di fiducia prima di proporre cambiamenti.

Riporta l’evidenza al livello che dimostra

I test unitari mirati stabiliscono i casi eseguiti. I fixture nativi stabiliscono il comportamento di strumenti e dati esatti usati. I percorsi browser stabiliscono il flusso osservato. Egress dell’immagine, hook host e accettazione della piattaforma richiedono osservazioni proprie. Nessuno equivale a qualifica completa del rilascio.

Esistono test mirati di proprietà dei job, eventi, ammissione artefatti e controlli scanner definiti dai sorgenti. La loro esistenza orienta i contributori; non afferma che siano stati eseguiti per una nuova modifica.

Segui la guida ai contributi, i controlli di sviluppo e i limiti di rilascio. Registra sorgenti e input esatti provati, risultato osservato e lacune rimanenti.