Ändringslogg
Anmärkningsvärda ändringar i boken och dess verktyg. De nyaste posterna står först. Datum använder ISO 8601 (ÅÅÅÅ-MM-DD).
[Unreleased]
Changed
- Nederländska (
nl-nl): översatte de återstående engelska rubrikerna och sluggarna i ämnena 9.0, 9.3 och 9.4 (bijlagen,controlelijsten,sjablonen). - Walesiska (
cy-001,cy-gb): terminologin anpassades till TermCymru:risg(risk, i stället förperygl, med genusöverensstämmelse),cyfnewidiad(avvägning),dangosydd rhagfynegiochdangosydd ôl-fynegi(ledande och eftersläpande indikator, i stället förhwyrfrydig),cynhwysedd(kapacitet),dosraniad(fördelning),cydberthynas(korrelation),allbwnför output i ämne 1.3 ochcyfradd gadael staff(personalomsättning). Fyra ämnessluggar döptes om för att stämma. - Webbplats:
@lilydesignsystem/svelte-picker-baruppgraderades till 0.2.0, som lägger till en sökväljare i sidhuvudets fält; den skickar till den befintliga webbplatssökningen/?<query>. - Lade till
scripts/generate-sitemap.mjs, som körs i slutet avpnpm buildoch skriversitemap.xmlur de förrenderade sidorna (endast kanoniska lokal-URL:er, inga dubbletter av tvåbokstavsalias), så att radenSitemap:irobots.txtgår att lösa. AGENTS.mdär nu ett kort register; detaljerna flyttade tillAGENTS/layout.md,style.md,locales.mdochworkflow.md.- Dokumentationsstädning: uppdaterade
AGENTS.md,index.md, den genererade lokaltexten i README,spec/index.md,spec/locales.mdsamt webbplatsensAGENTS.mdochREADME.mdför 27 lokaler, katalognamn för avsnitt per lokal och de nya verktygen; lade tillCLAUDE.md(en pekare tillAGENTS.md); rättade föråldradedocs/-sökvägar i båda agentfärdigheterna och gjordeskills/till den kanoniska kopian av.claude/skills/(kontrolleras av tester). - Lade till
llms.txtochllms.json(ett register för AI-agenter över varje betjänad lokal och ämne) i webbplatsensstatic/, genererade avtools/gen_llms.py(just llms) och kontrollerade av tester. - Webbplatsens startsida: listan med rutor “nio delar” är nu en nästlad lista “Innehåll” över alla delar och ämnen, och avsnittet “Goodharts lag, överallt” togs bort.
- Ändrade “chapter” till “topic” i bokens prosa i varje lokal (till exempel “ämne 2.1”, “Ämnena i den här delen”), med varje språks eget ord för “topic”
(
tema,sujet,Thema,тема,主題och så vidare), och även i specifikationen, den verktygsgenererade texten och webbplatsens gränssnittssträngar. Filnamn, URL:er och avsnittsnycklar är oförändrade. - Översatte varje avsnittskatalogs namn under
locales/:chapters/är nutopics/(och dess översättning i varje annan lokal, somtemas/,sujets/,themen/), ochexamples/föres-001är nuejemplos/. Namnen finns ispec/section-names.json; verktygen, testerna och webbplatsens innehållssynkronisering läser dem därifrån, och webbplatsens URL:er är oförändrade.
Changed
- Reviderade den walesiska lokalen (
cy-001,cy-gb, hålls identiska) mot den walesiska regeringens terminologilista TermCymru:llesiantför välbefinnande,cynhyrchiantför produktivitet,gwendid/gwendidauför sårbarhet,llywodraethiantför styrning,cydberthynasför korrelation,ôl-groniadför backlog (tidigare lämnat på engelska),cost a buddför kostnadsnytta ochdeallusrwydd artiffisial (AI)vid första omnämnandet av AI i varje ämne.
Added
- Svenska (
sv-001) lades till som 30:e fullt översatta lokal: alla 63 ämnen och alla övriga avsnitt, med matchande.locale-peer-id-sidofiler, identisk i innehåll medsv-se. Kopplad till webbplatsen och betjänad på/sv-001/(alias/sv/). - Avsnitten förtext, exempel, bidra och projekt (14 filer, plus ändringslogg, startsida och innehållsförteckning) har översatts till den här lokalen, med översatta katalognamn.
- Tyska (
de-001) lades till som 26:e fullt översatta lokal: alla 63 ämnen med matchande.locale-peer-id-sidofiler, identisk i innehåll medde-de. Kopplad till webbplatsen och betjänad på/de-001/(alias/de/). - Portugisiska (
pt-001) lades till som 25:e fullt översatta lokal: alla 63 ämnen med matchande.locale-peer-id-sidofiler, identisk i innehåll medpt-pt. Kopplad till webbplatsen och betjänad på/pt-001/(alias/pt/). - Slutförde en fullständig handöversättning från grunden av alla 63 ämnen till urdu (
ur-001, höger till vänster), den 24:e fullt översatta lokalen, med matchande.locale-peer-id-sidofiler. Varje ämne översattes direkt från den engelska källan, registret (ämne 9.7) mappar om varje intern länk till dess urdu-filnamn och avsnittskatalogen ärموضوعات. Kopplad till webbplatsen och betjänad på/ur-001/(alias/ur/). - Slutförde en fullständig handöversättning från grunden av alla 63 ämnen till indonesiska (
id-001), med matchande.locale-peer-id-sidofiler. Det fanns ingen tidigare indonesisk lokal att bygga på, så varje ämne översattes direkt från den engelska källan, och registret (ämne 9.7) mappar om varje intern länk till dess indonesiska filnamn. Kopplad till webbplatsen och betjänad på/id-001/(alias/id/). - Ryska (
ru-001) och kinesiska (zh-001) lades till som 21:a och 22:a fullt översatta lokaler: var och en med alla 63 ämnen, med matchande.locale-peer-id-sidofiler, identiska i innehåll medru-ruochzh-cn. Kopplade till webbplatsen och betjänade på/ru-001/och/zh-001/(alias/ru/och/zh/). - Franska (
fr-001) lades till som 20:e fullt översatta lokal: alla 63 ämnen med matchande.locale-peer-id-sidofiler, identisk i innehåll medfr-fr. Kopplad till webbplatsen och betjänad på/fr-001/(alias/fr/). - Bengaliska (
bn-001) lades till som 19:e fullt översatta lokal: alla 63 ämnen med matchande.locale-peer-id-sidofiler, identisk i innehåll medbn-bd. Kopplad till webbplatsen och betjänad på/bn-001/(alias/bn/). - Arabiska (
ar-001) lades till som 18:e fullt översatta lokal: alla 63 ämnen med matchande.locale-peer-id-sidofiler, identisk i innehåll medar-eg. Kopplad till webbplatsen och betjänad på/ar-001/(alias/ar/). - Walesiska, Storbritannien (
cy-gb) lades till som 17:e fullt översatta lokal: alla 63 ämnen med matchande.locale-peer-id-sidofiler, identisk i innehåll medcy-001(samma förhållande somhi-idhar tillhi-001). Kopplad till webbplatsensSERVED_LOCALE_CODESoch betjänad på/cy-gb/. - Slutförde en fullständig handöversättning från grunden av alla 63 ämnen till nederländska, Nederländerna (
nl-nl), med matchande.locale-peer-id-sidofiler ochjust testsom går igenom. Det fanns ingen tidigare nederländsk lokal att bygga på, så varje ämne översattes direkt från den engelska källan. Registret (ämne 9.7) mappar om varje intern ämneslänk till dess nederländska filnamn, enligt det tillvägagångssätt som användes förar-eg,bn-bd,ko-kr,es-es,pt-pt,ja-jp,ru-ru,fr-frochsv-se. Ännu inte kopplad till webbplatsen. - Slutförde en fullständig handöversättning från grunden av alla 63 ämnen till svenska, Sverige (
sv-se), med matchande.locale-peer-id-sidofiler ochjust testsom går igenom. Varje ämne översattes direkt från den engelska källan. Registret (ämne 9.7) mappar om varje intern ämneslänk till dess svenska filnamn, enligt det tillvägagångssätt som användes förar-eg,bn-bd,ko-kr,es-es,pt-pt,ja-jp,ru-ruochfr-fr. Ännu inte kopplad till webbplatsen. - Slutförde en fullständig handöversättning från grunden av alla 63 ämnen till franska, Frankrike (
fr-fr), med matchande.locale-peer-id-sidofiler ochjust testsom går igenom. Varje ämne översattes direkt från den engelska källan. Registret (ämne 9.7) mappar om varje intern ämneslänk till dess franska filnamn, enligt det tillvägagångssätt som användes förar-eg,bn-bd,ko-kr,es-es,pt-pt,ja-jpochru-ru. Ännu inte kopplad till webbplatsen. - Slutförde en fullständig handöversättning från grunden av alla 63 ämnen till ryska, Ryssland (
ru-ru), med matchande.locale-peer-id-sidofiler ochjust testsom går igenom. Varje ämne översattes direkt från den engelska källan. Registret (ämne 9.7) mappar om varje intern ämneslänk till dess ryska filnamn, enligt det tillvägagångssätt som användes förar-eg,bn-bd,ko-kr,es-es,pt-ptochja-jp. Ännu inte kopplad till webbplatsen. - Slutförde en fullständig handöversättning från grunden av alla 63 ämnen till japanska, Japan (
ja-jp), med matchande.locale-peer-id-sidofiler ochjust testsom går igenom. Varje ämne översattes direkt från den engelska källan. Registret (ämne 9.7) mappar om varje intern ämneslänk till dess japanska filnamn, enligt det tillvägagångssätt som användes förar-eg,bn-bd,ko-kr,es-esochpt-pt. Ännu inte kopplad till webbplatsen. - Slutförde en fullständig handöversättning från grunden av alla 63 ämnen till portugisiska, Portugal (
pt-pt), med matchande.locale-peer-id-sidofiler ochjust testsom går igenom. Varje ämne översattes direkt från den engelska källan. Registret (ämne 9.7) mappar om varje intern ämneslänk till dess portugisiska filnamn, enligt det tillvägagångssätt som användes förar-eg,bn-bd,ko-kroches-es. Ännu inte kopplad till webbplatsen. - Spanska, Spanien (
es-es) lades till som fullt översatt lokal, alla 63 ämnen, med utgångspunkt i en kopia av den befintliga spanska (es-001) översättningen (som vid granskning visade sig redan vara grammatiskt neutral, med ett ordförråd som till stor del redan lutade mot Spanien) och därefter en riktad terminologigenomgång av de återstående minoritetsanvändningarna, särskilt “incidente” till “incidencia” för bokens område incidentmätetal, med motsvarande rättningar av genusöverensstämmelse överallt. Ännu inte kopplad till webbplatsen. - Slutförde en fullständig handöversättning av alla 63 ämnen till koreanska, Korea (
ko-kr), med matchande.locale-peer-id-sidofiler ochjust testsom går igenom. Registret (ämne 9.7) mappar om varje intern ämneslänk till dess koreanska filnamn, enligt det tillvägagångssätt som användes förar-egochbn-bd. Ännu inte kopplad till webbplatsen. - Hindi, Indien (
hi-id) lades till som fullt översatt lokal, alla 63 ämnen, genom att ordagrant kopiera den befintliga hindiöversättningen (hi-001) under den landsmärkta lokalkoden, eftersom standardhindi inte har en oberoende Indien-specifik variant som behöver handöversättas separat. Ännu inte kopplad till webbplatsen. - Slutförde en fullständig handöversättning av alla 63 ämnen till bengaliska, Bangladesh (
bn-bd), med matchande.locale-peer-id-sidofiler ochjust testsom går igenom. Ännu inte kopplad till webbplatsen. - Slutförde en fullständig handöversättning av alla 63 ämnen till arabiska, Egypten (
ar-eg), med matchande.locale-peer-id-sidofiler ochjust testsom går igenom. Ännu inte kopplad till webbplatsen. - Slutförde en fullständig handöversättning av alla 63 ämnen till tyska, Tyskland (
de-de), med matchande.locale-peer-id-sidofiler ochjust testsom går igenom. Ännu inte kopplad till webbplatsen. - Slutförde fullständiga handöversättningar av alla 63 ämnen i tre lokaler: walesiska (
cy-001), kinesiska (zh-cn) och hindi (hi-001), var och en med matchande.locale-peer-id-sidofiler ochjust testsom går igenom. - Ytterligare två planerade översatta lokaler, walesiska - Storbritannien (
cy-gb) och kinesiska (zh-001), lades till ispec/locales-for-global-sharing-with-svelte/locales.tsvochspec/locales.md(nu tretton planerade lokaler, upp från elva), ochzh-cn:s tidigare obeslutade endonym fastställdes som 中文. WebbplatsensLOCALE_LABELSfick motsvarande poster (cy-gb: “Cymraeg (Prydain Fawr)“,zh-001: “中文”,zh-cn: “中文 (中国)”). Än så länge endast infrastruktur: ingen av dessa lokaler har en kataloglocales/<code>/eller översatt innehåll. - Publicerade boken i fyra lokaler under
locales/:en-gb-oxendict(brittisk engelska, Oxford-stavning; den handskrivna källan),en-001(internationell engelska),en-gb(vanlig brittisk engelska) ochen-us(amerikansk engelska).en-001,en-gbochen-ushärleds mekaniskt uren-gb-oxendictav det nyatools/localize.py; sespec/locales.md.docs/finns inte längre; varje hänvisning till den ispec/,AGENTS.md,tests/validate.py,tools/gen_nav.pyochtools/stats.pypekar nu pålocales/<locale>/. - Lade till två Claude Code-färdigheter,
software-engineering-metrics-skill(för läsare som tillämpar bokens vägledning på sitt eget team) ochsoftware-engineering-metrics-maintainer-skill(för bidragsgivare som lägger till eller redigerar ämnen), underskills/och speglade i.claude/skills/. - Flyttade källkoden till den publicerade webbplatsen in i det här repositoryt som
software-engineering-metrics.github.io/, tidigare ett separat repository. Den läser nulocales/direkt från repositoryts rot i stället för från en utcheckad kopia bredvid..github/workflows/deploy.ymli roten kontrollerar vid varje push tillmainatt webbplatsen fortfarande bygger och skickar sedan enrepository_dispatchtill repositorytsoftware-engineering-metrics.github.io(behållet som ett tunt driftsättningsskal, eftersom GitHub Pages bara serverar den bara domänen från ett repository med exakt det namnet), som checkar ut det här monorepot, bygger webbplatsen och driftsätter den. - Lade till infrastruktur för översatta (inte bara stavningshärledda) lokaler, enligt den nya underspecifikationen
spec/locales-for-global-sharing-with-svelte/:tools/gen_locale_peer_ids.pyger varje innehållsfil en.locale-peer-id-sidofil, identisk över lokaler, som en framtida översatt lokal (med sin egen slug i originalskrift) kan använda för att lösa “den här sidan, i lokal X” i stället för att matcha på slug;tests/validate.pykontrollerar att varje sidofil finns och stämmer.spec/locales.mdregistrerar tio planerade översatta lokaler (arabiska, bengaliska, walesiska, spanska, franska, hindi, indonesiska, portugisiska, ryska, urdu och kinesiska - Kina). På webbplatssidan fickscripts/locales.mjsLOCALE_LABELS/localeLabel()(visningsnamn för varje planerad lokal, klara före routningen) ochsortedLocaleEntries()(den sorteringsordning en framtida lokallista bör använda), ochsrc/lib/i18n.jsplockade ut gränssnittssträngarna (navigering, sidopanel, sidbläddrare, väljare, sidfot, hopplänkar) som varje.svelte-komponent tidigare hårdkodade på engelska, ledda genomui(locale), med reservläge till engelska för varje lokal utan egen översättning. - Ersatte webbplatsens handbyggda sidhuvudskontroll för enbart lokal med
@lilydesignsystem/svelte-picker-barfrån Lily Design System: en riktig temaväljare (ljus/mörk, via nyastatic/assets/themes/{light,dark}.css), en riktig lokalväljare (kopplad till den här webbplatsens URL-baserade routning i stället för dess standardbeteende med enbart lang/dir), en textstorleksväljare (Lilys sjustegsskala) och en delningsväljare (e-post, Mastodon, kopiera länk). Fäste@lilydesignsystem/svelte-{theme,locale,text-size,share}-pickervid^0.1.2och@lilydesignsystem/svelte-headlessvid^0.2.0via overrides ipnpm-workspace.yaml, och kringgick därmed ett verkligt publicerat fel isvelte-picker-bar0.1.0:s egna beroendeintervall (se varje väljaresCHANGELOG.md, “0.1.2”, och den här webbplatsensAGENTS.md). - Tog bort startsidans statistikrad (delar/ämnen/“Free Always”) och dess avsnitt “How to read it”, och ersatte rutnätet med kort “Browse the nine parts” med en enkel punktlista.
Changed
- Lade till
scripts/generate-sitemap.mjs, som körs i slutet avpnpm buildoch skriversitemap.xmlur de förrenderade sidorna (endast kanoniska lokal-URL:er, inga dubbletter av tvåbokstavsalias), så att radenSitemap:irobots.txtgår att lösa. - Lade till ämne 2.8, lean-värdeflödesmätetal (ledtid, processtid, cykeltid, procent fullständigt och korrekt och taktid från klassisk lean-värdeflödeskartläggning, plus beräkningen av rullande genomströmningsutbyte), placerat efter köteorin. Mätetalen för pull requests och kodgranskning flyttade från 2.8 till 2.9 och ämnet DORA-mätetal från 2.9 till 2.10. Varje berörd korsreferens i hela boken uppdaterades.
- Döpte om del 2 från “Delivery and Flow Metrics” till “Flow Metrics” och omstrukturerade den kring Mik Kerstens Flow Framework. Lade till fyra nya ämnen: 2.1 Flow Framework, 2.2 Flödesobjekt (funktioner, defekter, risker, skuld), 2.3 Flödeshastighet och flödesfördelning och 2.4 Flödestid och flödesbelastning. De fyra enskilda DORA-mätetalsämnena (driftsättningsfrekvens, ledtid, andel misslyckade ändringar, återhämtningstid) slogs ihop till ett enda referensämne, 2.9 DORA-mätetalsramverket, flyttat till slutet av delen. Flödeseffektivitet och pågående arbete numrerades om till 2.5 och ämnet köteori (tidigare 2.9) döptes om och numrerades om till 2.7 Köteori. Cykeltid (2.6) och mätetal för pull requests och kodgranskning (2.8) behåller sina nummer. Varje korsreferens i hela boken, ordlistan, formelreferensen, självbedömningen av mognad och förtexten uppdaterades för att stämma.
Added
- Första utgåvan: 45 innehållsämnen i 8 delar, plus en förtext och en bilaga med 7 ämnen (del 9), som täcker DORA- och SPACE-ramverken, kod- och kvalitetsmätetal, produkt- och affärsmätetal, mätetal för tillförlitlighet och säkerhet och generativ AI:s inverkan på utvecklingsmätetal.
- Repositoryinfrastruktur speglad från systerprojektet
software-engineering-guide: ett specifikationsdrivetspec/(index, struktur, konventioner, oxford-stavning, färdplan), en valideringssvit itests/validate.py, en navigeringsgenerator itools/gen_nav.py, enjustfile,AGENTS.mdmed vägledning för bidragsgivare underdocs/contributing/,CONTRIBUTING.mdoch den här ändringsloggen. spec/structure.md, det kanoniska ämnesmanifestet som testerna kontrollerar filerna mot.- Två utarbetade exempel i
docs/examples/: en ifylld metrikstadga och en specifikation för en instrumentpanel.
Historik
Boken byggdes utifrån specifikationen och utåt: nioddelsstrukturen deklarerades först i spec/structure.md, sedan författades varje ämne mot den delade mallen i docs/contributing/chapter-template.md, med tests/validate.py som hela tiden upprätthöll struktur och husstil.
Konventioner för den här filen
- Gruppera ändringar under Added, Changed, Fixed, Removed eller Deprecated.
- Håll posterna korta och specifika. En rad vardera där det går.
- Använd inte heller här långa tankstreck; testerna kontrollerar den här filen också.