Mikä on commit-portti?

Commit-portti on valinnainen ominaisuus AI Diff Reviewissa, joka tarkistaa automaattisesti koodimuutoksesi ennen commitointia. Analyysitulosten perusteella se voi suositella commitin estämistä, jos se havaitsee korkean riskin ongelmia. Tämä toimii automaattisena turvaverkko, joka sieppaa ongelmia ennen kuin ne saavuttavat repositorysi.

Portti on suunniteltu olemaan älykäs ja hienovarainen—se ei estä jokaista pientä ongelmaa, vaan keskittyy todella ongelmallisiin muutoksiin, jotka voivat aiheuttaa turvallisuusaukkoja, tietojen menetystä tai vakavia toiminnallisuusrikkomuksia.

Miten commit-portti toimii

Painotettu pisteytysjärjestelmä

Commit-portti käyttää kehittynyttä painotettua pisteytysjärjestelmää arvioidakseen havaintojen vakavuutta. Eri tyyppiset ongelmat vaikuttavat eri määrin kokonaispisteeseen:

  • Turvallisuushuolenaiheet: KRITTIINEN=5, VAROITUS=3, INFO=2
  • Kriittiset ongelmat: KRITTIINEN=4, VAROITUS=3, INFO=2
  • Suorituskykyhuomautukset: VAROITUS=1.5, INFO=0.5
  • Ehdotukset: VAROITUS=1, INFO=0.5
  • Koodin laatu: VAROITUS=1, INFO=0.5
  • Testaussuositukset: VAROITUS=0.5, INFO=0.25

Tämä painotus varmistaa, että turvallisuusongelmat ja kriittiset ongelmat vaikuttavat enemmän päätökseen kuin pienet ehdotukset tai tyylisuositukset.

Vakavuustasot

Commit-portti tarjoaa kolme vakavuustasoa, jotka määrittävät, kuinka tiukka estotoiminta on:

INFO-taso

Estää commitit, kun kokonaispisteet saavuttavat 4.0 tai enemmän. Tämä on lievin asetus, sopii tiimeille, jotka haluavat siepata vain vakavimmat ongelmat.

VAROITUS-taso

Estää commitit, kun kokonaispisteet saavuttavat 6.0 tai enemmän. Tämä tarjoaa tasapainoisen lähestymistavan, sieppaamalla merkittäviä ongelmia samalla kun sallii pienten ongelmien kulkea läpi.

KRITTIINEN-taso

Estää commitit, kun kokonaispisteet saavuttavat 8.0 tai enemmän, TAI kun mikä tahansa KRITTIINEN kohde löytyy Turvallisuushuolenaiheet- tai Kriittiset ongelmat -kategorioista. Tämä on tiukin asetus, varmistaen, että vakavat ongelmat eivät koskaan pääse repositoryyn.

Kovien estoehtojen

Tiettyjen ehtojen täyttyessä käynnistyy aina estosuositus, riippumatta kokonaispisteistä:

  • Mikä tahansa KRITTIINEN vakavuuden kohde Turvallisuushuolenaiheet-kategoriassa
  • Korkean riskin turvallisuusongelmat kuten:
    • Salaisuuksien vuodot tai paljastetut tunnistetiedot
    • SQL-injektiohaavoittuvuudet
    • Etäkoodin suoritusriskit (RCE)
    • Todennuksen ohitusongelmat
    • Oikeuksien korotusvulnerabiliteetit

Nämä kovien estoehdot varmistavat, että vakavat turvallisuusaukot eivät koskaan vahingossa commitoida, vaikka kokonaispisteet olisivat alhaiset.

Eksplisiittiset tekoälysuositukset

Painotetun pisteytysjärjestelmän lisäksi tekoälymalli voi eksplisiittisesti suositella commitin estämistä asettamalla should_block_commit=true vastauksessaan. Kun tämä tapahtuu, lisäosa suosittelee commitin estämistä ja tarjoaa tekoälyn perustelun block_reason-kentässä.

Tämä antaa tekoälylle mahdollisuuden tehdä hienovaraisia päätöksiä kontekstin perusteella, joita pisteytysjärjestelmä ei yksinään saattaisi havaita. Esimerkiksi tekoäly voi havaita ongelmien kuvion, joka vaikka yksittäin on pieniä, yhdessä edustaa merkittävää ongelmaa.

Päätöksenteko ihmisen osallistumisella

Commit-portti ei estä automaattisesti commitointia—se antaa suosituksen ja antaa sinulle viimeisen sanan. Kun yrität committaa portin ollessa käytössä, näet päätösdialogin, joka näyttää:

  • Portin suosituksen (ESTÄ tai JATKA)
  • Kokonaispisteet ja kynnysarvo
  • Havaintojen määrä vakavuuden mukaan
  • Keskeisten havaintojen yhteenveto
  • Eniten vaikuttavat ongelmat

Tämä läpinäkyvyys auttaa sinua ymmärtämään, miksi commit merkittiin ja tekemään perustellun päätöksen. Jos päätät jatkaa ESTÄ-suosituksesta huolimatta, voit antaa syyn, joka lisätään commit-viestiisi.

Commit-portin määrittäminen

Portin ottaminen käyttöön

Ottaaksesi commit-portin käyttöön, siirry Asetukset → Työkalut → AI Diff Review ja valitse "Ota käyttöön ennen commitointia tarkistus". Voit sitten valita haluamasi portin vakavuustason.

Oikean tason valitseminen

Oikea vakavuustaso riippuu tiimisi tarpeista:

  • INFO: Hyvä tiimeille, jotka vasta alkavat automatoidun tarkistuksen kanssa tai joilla on hyvin kokenut kehittäjiä
  • VAROITUS: Tasapainoinen vaihtoehto useimmille tiimeille, sieppaamalla merkittäviä ongelmia ilman liiallista rajoittamista
  • KRITTIINEN: Paras turvallisuusherkille projekteille tai tiimeille, jotka haluavat maksimaalisen suojan

Diff-alueen tietoisuus

Commit-portti on tietoinen diff-alueen asetuksista. Oletuksena vain muutettujen rivien (tai pienen läheisyysikkunan sisällä) liittyvät havainnot vaikuttavat pisteytykseen. Globaalit tai kohdistamattomat INFO-kohdet jätetään tyypillisesti huomiotta portin tarkoituksiin, varmistaen, että portti keskittyy ongelmiin, jotka todella aiheutuvat muutoksistasi.

Parhaat käytännöt

Aloita konservatiivisesti

Jos olet uusi commit-porteissa, aloita INFO-tasolla ja lisää vähitellen tiukkuutta, kun tiimisi tulee mukavaksi prosessin kanssa. Tämä auttaa välttämään turhautumisen liian aggressiivisesta estämisestä.

Tarkista estetyt commitit

Kun commit estetään, ota aikaa tarkistaa havainnot. Vaikka päätät jatkaa, ymmärtäminen, miksi se merkittiin, auttaa sinua oppimaan ja parantamaan koodin laatua.

Käytä ohitusta järkevästi

Mahdollisuus ohittaa estosuositus on tärkeä joustavuuden vuoksi, mutta käytä sitä harkiten. Jos ohitat usein estoja, harkitse, onko porttitasosi liian tiukka tai onko koodissasi kuvioita, jotka täytyy käsitellä.

Tiimin viestintä

Varmista, että tiimisi ymmärtää, miten commit-portti toimii ja miksi tietyt commitit estetään. Tämä auttaa rakentamaan luottamusta järjestelmään ja varmistaa, että kaikki ovat linjassa koodin laatuvaatimusten kanssa.

Yhteenveto

Commit-portti on tehokas työkalu koodin laadun ja turvallisuuden ylläpitämiseen, mutta se on tehokkain, kun se on määritetty sopivasti tiimisi tarpeiden mukaan. Ymmärtämällä, miten painotettu pisteytys toimii ja valitsemalla oikean vakavuustason, voit luoda tehokkaan turvaverkon, joka sieppaa ongelmia muuttumatta pullonkaulaksi.

Muista, portti on siellä auttamaan, ei estämään. Käytä sitä työkaluna parantamaan koodin laatua ylläpitäen samalla kehittäjien tuottavuutta. Oikealla määrityksellä ja tiimin tuella commit-portista tulee korvaamaton osa kehitysprosessiasi.

Valmis määrittämään commit-porttisi? Asenna AI Diff Review ja aloita koodipohjasi suojaaminen tänään.