EasyxLab
Valoda: LV Latviešu

Angļu valodas oriģināla MI tulkojums; atsauces versija ir oriģināls angļu valodā. Lasīt angļu valodā

Pētījumi / S5

Kas publicē apliecinājumus PyPI un npm — un kas to pārtrauca?

Darba versijaPublicēts 2026-10-03

Kopsavilkums

PEP 740 apliecinājumi (attestations) ļauj ikvienam pārbaudīt, ka PyPI failu ir izveidojis konkrēts repozitorijs un darbplūsma (workflow). Apliecinājumu trūkums ir norma. 2026. gada 2. oktobrī mēs izmērījām:

  • 15 000 visvairāk lejupielādēto PyPI projektu pilnu augšupielāžu vēsturi (hugovk 2026. gada 1. oktobra saraksts);
  • katra projekta ar apliecinājumiem publicētāja identitāti (PyPI Integrity API);
  • 1500 npm pakotņu izlasi.

No 14 995 projektiem, kurus varējām analizēt, 11 336 (75,6 %) nekad nav augšupielādējuši failu ar apliecinājumu.

Ieviešana. Jaunākajai versijai ir apliecinājums 3479 no 14 995 projektiem (23,2 %) un 31,1 % no tiem projektiem, kuru jaunākā versija pirmo reizi augšupielādēta pēc 2024. gada 1. oktobra. Pa ranga joslām:

vieta rangājaunākā versija ar apliecinājumu
1–10059,0 %
10 001–15 00020,3 %

To projektu īpatsvars, kuru jaunākajai versijai ir apliecinājums, pieauga no 4,0 % (2024. gada novembra beigās) līdz 23,2 % (2026. gada septembra beigās). Mūsu rezultāti sakrīt ar Trail of Bits Are we PEP 740 yet? datiem par 359 no tā 360 pakotnēm.

Projekti, kas pārtrauca. 148 projekti augšupielādēja failu ar apliecinājumu un vēlāk izlaida versiju bez tā. 138 projektiem versiju līnijai, ko instalē pip, bija apliecinājumi, bet tās jaunākajai versijai nav neviena: tie ir 3,8 % no 3659 projektiem, kas jebkad publicējuši apliecinājumus. Pēc cēloņa:

cēlonisprojekti
rīka vai darbplūsmas maiņa96
viens atsevišķs laidiens15
atjaunots pēc jaunākā laidiena1
nezināms26

53 rīka vai darbplūsmas maiņas gadījumos publicēšanas darbplūsma tagad palaiž uv publish bez apliecināšanas soļa. Piemēri, katru no kuriem pamato commit, kas norādīts paper.md §5.3: fastapi, typer, fastmcp un supabase. Pārtraukšana liecina par laidienu rīku maiņu, nevis par kompromitēšanu.

Publicētāja maiņas. Vismaz 307 projekti ar apliecinājumiem mainīja publicētāju. No 188 maiņām, kurās mainījās repozitorijs vai publicētāja veids:

  • 160 apstiprina publiski dati;
  • 16 saskan ar paša projekta metadatiem;
  • 12, 5 projektos, nav apstiprinātas.

npm. 30,8 % no 1000 populārākajām pakotnēm publicē izcelsmes datus (provenance); 4 no 459 pakotnēm, kas to jebkad darīja (0,9 %), to pārtrauca.

Iepriekšējie darbi. Tuvākais esošais mērījums ir Trail of Bits izsekotājs, kas aptver 360 populārākās PyPI pakotnes un vērtē to jaunāko laidienu. Šis pētījums papildus sniedz sadalījumu ārpus šīm 360 pakotnēm, vēsturi, pārtraukšanas gadījumus un to cēloņus, kā arī publicētāju auditu (paper.md §2).

Automatizācija un pārskatīšana. Pētījumu veica un tekstu uzrakstīja MI aģenti. To pārbaudīja neatkarīgs MI recenzents (paper.md §4.1).

Citējiet šo pētījumu

Atsauce
EasyxLab (2026). Who publishes attestations on PyPI and npm — and who stopped? Study S5. EasyByte Hub S. Coop. Mad. https://github.com/easybytehub/easyxlab/tree/main/studies/s5-pypi-attestations
BibTeX
@techreport{easyxlab_s5,
  title       = {Who publishes attestations on PyPI and npm — and who stopped?},
  author      = {{EasyxLab}},
  institution = {EasyByte Hub S. Coop. Mad.},
  number      = {S5},
  year        = {2026},
  url         = {https://github.com/easybytehub/easyxlab/tree/main/studies/s5-pypi-attestations}
}