# Changelog

## Score

- CAI 58 → 47 (-11.4)
- Rubric changed (rubric-2026.08.18 → rubric-2026.08.15) — scores are not directly comparable.

## Lenses

- Code Health 65 → 100 (+35.5)
- Maturity 64 → 57 (-7.6)
- Readiness 46 → 27 (-18.5)
- Security 69 → 64 (-4.7)

## Resolved (107)

- Build action pinned to a mutable branch
- CookieJar::get_cookie_header (cognitive 23) (crates/obscura-net/src/cookies.rs)
- CookieJar::get_js_visible_cookies (cognitive 26) (crates/obscura-net/src/cookies.rs)
- CookieJar::set_cookie (cognitive 42) (crates/obscura-net/src/cookies.rs)
- CookieJar::set_cookie (cyclomatic 20) (crates/obscura-net/src/cookies.rs)
- CookieJar::set_cookie_from_js (cognitive 42) (crates/obscura-net/src/cookies.rs)
- CookieJar::set_cookie_from_js (cyclomatic 19) (crates/obscura-net/src/cookies.rs)
- Coverage not included — suite not readable by the collector
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- DomTree::append_child (cognitive 17) (crates/obscura-dom/src/tree.rs)
- DomTree::find_body_or_root (cognitive 21) (crates/obscura-dom/src/tree.rs)
- DomTree::import_node_from (cognitive 22) (crates/obscura-dom/src/tree.rs)
- DomTree::insert_before (cognitive 17) (crates/obscura-dom/src/tree.rs)
- DomTree::serialize_worklist (cognitive 38) (crates/obscura-dom/src/serialize.rs)
- DomTree::serialize_worklist (cyclomatic 18) (crates/obscura-dom/src/serialize.rs)
- FileTooLong: src/lib.rs (crates/obscura-mcp/src/lib.rs)
- FileTooLong: src/main.rs (crates/obscura-cli/src/main.rs)
- FileTooLong: src/page.rs (crates/obscura-browser/src/page.rs)
- FileTooLong: src/runtime.rs (crates/obscura-js/src/runtime.rs)
- FileTooLong: src/server.rs (crates/obscura-cdp/src/server.rs)
- …and 87 more

## New (5)

- Dimension evaluation failed
- Hotspot: crates/obscura-js/js/bootstrap.js (crates/obscura-js/js/bootstrap.js)
- LLM evaluation failed
- No automated tests
- No tests found

## Changes since last survey

- 51 commits — 18 feature/other, 33 fixes

## By area

- crates/obscura-js — 24 commits
- (root) — 10 commits
- crates/obscura-dom — 7 commits
- crates/obscura-cdp — 6 commits
- crates/obscura-net — 3 commits
- crates/obscura-mcp — 1 commit

## Notable commits

- fix: Merge pull request #494 from mnaza/fix/clonenode-structural-490
- fix: Merge pull request #507 from mnaza/fix/insert-adjacent-html-495
- fix: Merge pull request #508 from mnaza/fix/history-preserve-url-496
- fix: Merge pull request #510 from mnaza/fix/childnode-coerce-498
- fix: Merge pull request #511 from mnaza/fix/quirks-mode-selectors-499
- fix: Merge pull request #512 from mnaza/fix/remove-double-free-500
- fix: Merge pull request #514 from mnaza/fix/attribute-ns-503
- fix: Merge pull request #523 from stack3mpty/fix/missing-event-constructors-521-522
- fix: Merge pull request #530 from lisa0314/fix/524-react-controlled-inputs
- fix: Merge pull request #532 from alectimison-maker/fix/dynamic-script-data-urls
- fix: Merge pull request #533 from h4ckf0r0day/fix/509-performance-clock
- fix: Merge pull request #534 from h4ckf0r0day/fix/517-string-timers
- fix: Merge pull request #535 from h4ckf0r0day/fix/492-style-sync
- fix: Merge pull request #539 from dgcavalcante-png/fix/stealth-honors-ssl-cert-file
- fix: Merge pull request #540 from dgcavalcante-png/fix/webidl-globals-non-enumerable
- fix: Merge pull request #542 from lisa0314/fix/531-scroll-into-view-if-needed
- fix: Merge remote-tracking branch 'origin/main' into maintainer/pr-492-fix
- fix: Merge remote-tracking branch 'origin/main' into maintainer/pr-492-fix
- fix: Merge remote-tracking branch 'origin/main' into maintainer/pr-509-fix
- fix: Merge remote-tracking branch 'origin/main' into maintainer/pr-509-fix
- …and 31 more
