# Changelog

## Baseline

- First survey — no prior run to compare against. CAI 57.

## Lenses

- Code Health 80
- Architecture 100
- Maturity 75
- Readiness 76
- Security 74
- Domain Modelling 45
- Accessibility 57

## Changes since last survey

- 300 commits — 154 feature/other, 146 fixes

## By area

- (root) — 58 commits
- web_src/js — 28 commits
- options/locale — 23 commits
- .github/workflows — 22 commits
- modules/git — 19 commits
- routers/web — 19 commits
- services/actions — 12 commits
- models/actions — 10 commits
- routers/api — 10 commits
- web_src/css — 8 commits
- templates/repo — 7 commits
- modules/actions — 5 commits
- services/repository — 5 commits
- services/webhook — 5 commits
- tests/integration — 5 commits
- models/issues — 4 commits
- modules/gitrepo — 4 commits
- services/gitdiff — 4 commits
- modules/packages — 3 commits
- .github/actions — 2 commits

## Notable commits

- fix: build: fix snapcraft release (#38260)
- fix: chore(ci): fix renovate custom manager regex (#38656)
- fix: chore: fix git diff render (#38746)
- fix: ci: fix `jq` broken pipe in cache-prune (#38734)
- fix: enhance(ui): tweak tooltip style and misc fixes (#38524)
- fix: fix(actions): address workflow status badge review feedback (#38241)
- fix: fix(actions): align status icon span for Safari rendering (#38558)
- fix: fix(actions): allow Actions bot to push to protected branches (#38284)
- fix: fix(actions): authenticate snapcraft before nightly remote build (#38252)
- fix: fix(actions): cancel tasks immediately when the runner stopped reporting (#38616)
- fix: fix(actions): coerce workflow_dispatch boolean inputs to native types (#38472)
- fix: fix(actions): correctness and hardening fixes (#38518)
- fix: fix(actions): deny fork-PR cross-repo access via collaborative owner (#38214)
- fix: fix(actions): don't swallow HTML entities into linkified URLs (#38239)
- fix: fix(actions): dynamic matrix expansion correctness fixes (#38690)
- fix: fix(actions): ensure all waiting jobs get runners in large workflows (#38200)
- fix: fix(actions): explain why a blocked or waiting job has not started (#38476)
- fix: fix(actions): fail unexpandable reusable workflow callers and decouple the job emitter's cross-run processing (#38565)
- fix: fix(actions): fix 500 error when canceling a canceling task (#38223)
- fix: fix(actions): fix runner docs link (#38783)
- …and 280 more
