# Changelog

All notable changes to this project will be documented in this file.
Generated by [git-cliff](https://git-cliff.org) from
[Conventional Commits](https://www.conventionalcommits.org).
## [unreleased]

### Features

- (detectors) Lift arg-swap/clone-drift/config-interaction audit scope ([ee7f566](https://github.com/ktrysmt/cntrdct/commit/ee7f5663c0693bf11fb92a7477618f0e96bed05a))

- (unreachable-after-terminator) Add F4d compound divergence rules ([8339be9](https://github.com/ktrysmt/cntrdct/commit/8339be9f78dd175f4a8c52454ee6f4f47549205e))

- (clone-drift) Require URL-shaped Source line + lift seed recall to 0.93 ([23743fd](https://github.com/ktrysmt/cntrdct/commit/23743fd61001d10b202da1981cbc311b9e75b6c1))

## [0.5.0](https://github.com/ktrysmt/cntrdct/compare/v0.4.3..v0.5.0) - 2026-05-20

### CI

- (release) Ship cntrdct-lsp binary in release artefacts ([b60cb77](https://github.com/ktrysmt/cntrdct/commit/b60cb770dd403dc8786cc50d1d3499f3231b2819))


### Documentation

- (book) Flesh out Configuration chapters ([0c93d88](https://github.com/ktrysmt/cntrdct/commit/0c93d8819a68f5a239c75a5d39d08bd773f04ff2))

- (book) Flesh out Workflows chapters ([ce1fccf](https://github.com/ktrysmt/cntrdct/commit/ce1fccfd8647763b8e8121803a7a8932dffe865b))

- (book) Flesh out Detectors chapters ([f7a747b](https://github.com/ktrysmt/cntrdct/commit/f7a747b9f2b6fea4d629c85d4b7f56fedf88c127))

- (book) Flesh out Concepts chapters ([734b267](https://github.com/ktrysmt/cntrdct/commit/734b2674547992bc5b46e7ee149c8a5fec541469))


### Features

- (pr-miner) Close FM-A + FM-B via R6 stop-list and R8 manifest tag ([d4c22b9](https://github.com/ktrysmt/cntrdct/commit/d4c22b927cc9a1b39fd6cba75c7177db937e56bb))

- (pr-miner) Add F4b item-cardinality post-filter (R7 primitive) ([562800c](https://github.com/ktrysmt/cntrdct/commit/562800c905ad46a2f286d36efc97aac43174dec8))

## [0.4.3](https://github.com/ktrysmt/cntrdct/compare/v0.4.2..v0.4.3) - 2026-05-20

### CI

- (release) Auto-update CHANGELOG.md on master after tag push ([3687943](https://github.com/ktrysmt/cntrdct/commit/3687943697b993c53acf660029bd9988eb9baa30))


### Documentation

- (book) Add releases and versioning reference chapter ([17be234](https://github.com/ktrysmt/cntrdct/commit/17be234ad230b25a2e7c82cc609f4104fbb842be))

## [0.4.2](https://github.com/ktrysmt/cntrdct/compare/v0.4.1..v0.4.2) - 2026-05-19

### Documentation

- (book) Scaffold mdBook user guide (T3-13 Phase 1) ([18ce3c1](https://github.com/ktrysmt/cntrdct/commit/18ce3c10c668826b501af03d0dac6e6dd0e46616))

## [0.4.1](https://github.com/ktrysmt/cntrdct/compare/v0.4.0..v0.4.1) - 2026-05-19

### Bug Fixes

- (tests) Bump baselines fixture directory to v0.4.0 ([93fa4ed](https://github.com/ktrysmt/cntrdct/commit/93fa4ed9c507cbd3b6c627ae9d5542e9a5fab489))


### Features

- (baselines) Scaffold PyBugLab adapter for arg-swap (Q-15 Phase B) ([37415ad](https://github.com/ktrysmt/cntrdct/commit/37415ad722c80dc454679e3b390b640a265817eb))

## [0.4.0](https://github.com/ktrysmt/cntrdct/compare/v0.3.0..v0.4.0) - 2026-05-19

### Chores

- Drop OSF preregistration discipline ([83eefb2](https://github.com/ktrysmt/cntrdct/commit/83eefb242ffa4e0c28d9f5a60fd37db9702366b9))


### Features

- (eval) SOTA baseline comparator harness ([5e10d1c](https://github.com/ktrysmt/cntrdct/commit/5e10d1cb728530a4fcdaa5ca240d0bb5036052c6))

## [0.2.0-rc.35](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.34..v0.2.0-rc.35) - 2026-05-18

### Features

- (recall-audit) Q-14 Phase B batch 32 (comment-code Pattern C diversification via readur twenty-third upstream) ([f670eac](https://github.com/ktrysmt/cntrdct/commit/f670eac0d3fc7f93525c916945fadada99bee597))

## [0.2.0-rc.34](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.33..v0.2.0-rc.34) - 2026-05-18

### Features

- (recall-audit) Q-14 Phase B batch 31 (comment-code Pattern C diversification via lakeFS twenty-second upstream) ([ddb71c3](https://github.com/ktrysmt/cntrdct/commit/ddb71c32bde2b1a04ecf78d4b942213948023814))

## [0.2.0-rc.33](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.32..v0.2.0-rc.33) - 2026-05-17

### Features

- (recall-audit) Q-14 Phase B batch 30 (comment-code Pattern C diversification via move-language twenty-first upstream) ([e6f4ddf](https://github.com/ktrysmt/cntrdct/commit/e6f4ddf678fcbd5c9562972f5f93f02f8e2c9c20))

## [0.2.0-rc.32](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.31..v0.2.0-rc.32) - 2026-05-17

### Features

- (recall-audit) Q-14 Phase B batch 29 (comment-code Pattern C diversification via teensycore twentieth upstream) ([f09d02f](https://github.com/ktrysmt/cntrdct/commit/f09d02fb88e650968019d41ff6ade42b2fae60d2))

## [0.2.0-rc.31](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.30..v0.2.0-rc.31) - 2026-05-17

### Features

- (recall-audit) Q-14 Phase B batch 28 (comment-code Pattern C diversification via azalea nineteenth upstream) ([0d47100](https://github.com/ktrysmt/cntrdct/commit/0d47100b0e7c6672a523964e5aacf254b09b6ce8))

## [0.2.0-rc.30](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.29..v0.2.0-rc.30) - 2026-05-17

### Features

- (recall-audit) Q-14 Phase B batch 27 (comment-code Pattern C diversification via reflex eighteenth upstream) ([3cf67ca](https://github.com/ktrysmt/cntrdct/commit/3cf67caa024d59f455565f080b9fc53d42858b83))

## [0.2.0-rc.29](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.27..v0.2.0-rc.29) - 2026-05-17

### Features

- (recall-audit) Q-14 Phase B batch 26 (comment-code Pattern C diversification via lsvine seventeenth upstream) ([8a12b88](https://github.com/ktrysmt/cntrdct/commit/8a12b880e3e61b5a64f2b55be3b394ce0935a0f2))

- (recall-audit) Q-14 Phase B batch 25 (comment-code Pattern C diversification via Any-code sixteenth upstream) ([a03ae85](https://github.com/ktrysmt/cntrdct/commit/a03ae8552dd8f51bf2a71502de15414969033440))

## [0.2.0-rc.27](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.26..v0.2.0-rc.27) - 2026-05-17

### Features

- (recall-audit) Q-14 Phase B batch 24 (comment-code Pattern C diversification via smolvm fifteenth upstream) ([a29830a](https://github.com/ktrysmt/cntrdct/commit/a29830ab7bd84baba1d9ff208aec7785383d7ac9))

## [0.2.0-rc.26](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.25..v0.2.0-rc.26) - 2026-05-16

### Features

- (recall-audit) Q-14 Phase B batch 23 (comment-code Pattern C diversification via nono fourteenth upstream) ([3d40c93](https://github.com/ktrysmt/cntrdct/commit/3d40c93e2eb1330ec2123655adf28bde9d5c3b0d))

## [0.2.0-rc.25](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.24..v0.2.0-rc.25) - 2026-05-16

### Features

- (recall-audit) Q-14 Phase B batch 22 (comment-code Pattern C diversification via rust-vst2 thirteenth upstream) ([3548ab9](https://github.com/ktrysmt/cntrdct/commit/3548ab91cb7e7459048667eb0e858d4a021a7003))

## [0.2.0-rc.24](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.23..v0.2.0-rc.24) - 2026-05-15

### Features

- (recall-audit) Q-14 Phase B batch 21 (comment-code Pattern C diversification via vcpkg-rs twelfth upstream) ([017cd94](https://github.com/ktrysmt/cntrdct/commit/017cd942d2812adef4ec1bc38e59cabd77da7670))

## [0.2.0-rc.23](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.22..v0.2.0-rc.23) - 2026-05-15

### Features

- (recall-audit) Q-14 Phase B batch 20 (comment-code Pattern C diversification via sui mysten-metrics eleventh upstream) ([513e66d](https://github.com/ktrysmt/cntrdct/commit/513e66dc3aa389d207235d32f28426437b5c4c5b))

## [0.2.0-rc.22](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.21..v0.2.0-rc.22) - 2026-05-15

### Features

- (recall-audit) Q-14 Phase B batch 19 (comment-code Pattern B diversification via vortex-buffer tenth upstream) ([507a0e5](https://github.com/ktrysmt/cntrdct/commit/507a0e5cc3604ff75a4d4ac93491c4f8c160ad68))

## [0.2.0-rc.21](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.20..v0.2.0-rc.21) - 2026-05-15

### Features

- (recall-audit) Q-14 Phase B batch 18 (comment-code Pattern A diversification via rust-s3 ninth upstream) ([7188efa](https://github.com/ktrysmt/cntrdct/commit/7188efa5c689dfa3ac79f1a7f1eede6a461e6b65))

## [0.2.0-rc.20](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.19..v0.2.0-rc.20) - 2026-05-15

### Features

- (recall-audit) Q-14 Phase B batch 17 (comment-code Pattern A diversification via wasmtime eighth upstream) ([dd4819b](https://github.com/ktrysmt/cntrdct/commit/dd4819be71fa8250585111e9fcc4914c89b04e5f))

## [0.2.0-rc.19](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.18..v0.2.0-rc.19) - 2026-05-15

### Features

- (recall-audit) Q-14 Phase B batch 16 (comment-code Pattern B diversification via parking_lot_core seventh upstream) ([2bb2c87](https://github.com/ktrysmt/cntrdct/commit/2bb2c8760d5ca9e102678164a8de597f1cccf17e))

## [0.2.0-rc.18](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.17..v0.2.0-rc.18) - 2026-05-15

### Features

- (recall-audit) Q-14 Phase B batch 15 (comment-code Pattern A coverage via boundless sixth upstream) ([8456c31](https://github.com/ktrysmt/cntrdct/commit/8456c31a03cd11df67270b21e9709357f36ba4cd))

## [0.2.0-rc.17](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.16..v0.2.0-rc.17) - 2026-05-15

### Features

- (recall-audit) Q-14 Phase B batch 14 (comment-code Pattern B coverage via zarrs fifth upstream) ([0031209](https://github.com/ktrysmt/cntrdct/commit/00312094122dbdf32b3bb0ca34411b9501a98774))

## [0.2.0-rc.16](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.15..v0.2.0-rc.16) - 2026-05-15

### Features

- (recall-audit) Q-14 Phase B batch 13 (comment-code TP diversification via pkg-config-rs fourth upstream) ([8369886](https://github.com/ktrysmt/cntrdct/commit/8369886690e6730a3fbb3e4cafc9a65b465e7659))

## [0.2.0-rc.15](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.14..v0.2.0-rc.15) - 2026-05-13

### Features

- (recall-audit) Q-14 Phase B batch 12 (comment-code TP diversification via glium third upstream) ([dc50fe5](https://github.com/ktrysmt/cntrdct/commit/dc50fe56b7c28ba0aaa72c04809b721b96889a45))

## [0.2.0-rc.14](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.13..v0.2.0-rc.14) - 2026-05-13

### Features

- (recall-audit) Q-14 Phase B batch 11 (comment-code TP diversification via rusticata/tls-parser) ([5bc81c9](https://github.com/ktrysmt/cntrdct/commit/5bc81c932a4b1fd7b75a25027bbb6d0f68a9162c))

## [0.2.0-rc.13](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.12..v0.2.0-rc.13) - 2026-05-13

### Features

- (recall-audit) Q-14 Phase B batches 9-10 (pr-miner TP via density-support files) ([f9a0fc9](https://github.com/ktrysmt/cntrdct/commit/f9a0fc9583e6cc3f1bc6c10168a809978873c6e2))

- (recall-audit) Q-14 Phase B batch 8 (semgrep + pr-miner via TuGraph open-never-closed) ([2734a79](https://github.com/ktrysmt/cntrdct/commit/2734a79a86c063d0cf35709c7f0c9863e5ab907a))

## [0.2.0-rc.12](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.11..v0.2.0-rc.12) - 2026-05-12

### Features

- (recall-audit) Q-14 Phase B batch 7 (codeql via Python UnreachableCode test fixture) ([66e107d](https://github.com/ktrysmt/cntrdct/commit/66e107dd2b1723b5a90c16f5b924b62b30796129))

## [0.2.0-rc.11](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.10..v0.2.0-rc.11) - 2026-05-12

### CI

- Bump setup-dotnet to v5 (Node 24 native) ([7cdaca6](https://github.com/ktrysmt/cntrdct/commit/7cdaca6539fb933aa222f0ae70e94529fb0850f6))

- Bump upload-artifact to v7 and pin all actions by SHA (pinact) ([9aab1fd](https://github.com/ktrysmt/cntrdct/commit/9aab1fdddda2c2f4378d54b247baacb9a56865d9))


### Features

- (recall-audit) Q-14 Phase B batch 6 (config-interaction via rustc UI test) ([69d5130](https://github.com/ktrysmt/cntrdct/commit/69d51309222c88212cdbdd794a2e8a612b176658))

## [0.2.0-rc.10](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.9..v0.2.0-rc.10) - 2026-05-12

### CI

- Bump Node 20 actions to Node 24 majors ([cc6cb0d](https://github.com/ktrysmt/cntrdct/commit/cc6cb0dd6cfd0e1e319af72ec9184ec5758e1d0d))


### Chores

- (pages) Retire never-deployed Jekyll workflow ([3dfe5a8](https://github.com/ktrysmt/cntrdct/commit/3dfe5a8c06e84575efaaba5a116df2451037b25c))


### Features

- (recall-audit) Q-14 Phase B batch 5 (clippy via rust-clippy UI tests) ([8103e0b](https://github.com/ktrysmt/cntrdct/commit/8103e0bce18efacec4288d688e983caccd162629))

## [0.2.0-rc.9](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.8..v0.2.0-rc.9) - 2026-05-12

### Features

- (recall-audit) Q-14 Phase B batch 4 (paper-appendix via PyPIBugs) ([950f4c1](https://github.com/ktrysmt/cntrdct/commit/950f4c1b4376ed367a79438e2957e62d5aacfe06))

## [0.2.0-rc.8](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.7..v0.2.0-rc.8) - 2026-05-12

### Features

- (recall-audit) Q-14 Phase B batch 3 (comment-code via whisky-archive) ([1ba69df](https://github.com/ktrysmt/cntrdct/commit/1ba69df911ee6dccb294c1654ea657bed66e50f9))

## [0.2.0-rc.7](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.6..v0.2.0-rc.7) - 2026-05-12

### Features

- (recall-audit) Q-14 Phase B batches 1+2 + Phase C refresh discipline ([b33ab2f](https://github.com/ktrysmt/cntrdct/commit/b33ab2f1e1027b90f8f5090bf847452adaa4bdfd))

## [0.2.0-rc.6](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.5..v0.2.0-rc.6) - 2026-05-10

### CI

- (mutants) Q-16 cargo-mutants nightly mutation testing ([74e24de](https://github.com/ktrysmt/cntrdct/commit/74e24de578b86c84838024ea2551318888a9e359))


### Features

- (recall-audit) Q-14 Phase A harness scaffolding ([a581acb](https://github.com/ktrysmt/cntrdct/commit/a581acb8d1db3d0c424d8d25b669994a5e17508e))

## [0.2.0-rc.5](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.4..v0.2.0-rc.5) - 2026-05-10

### Documentation

- (readme) Trim to end-user-facing surface; move internals to CLAUDE.md ([ee3b402](https://github.com/ktrysmt/cntrdct/commit/ee3b402d7515460113492ca6b6cb08ffbfd6c8ea))


### Features

- (adjudicator) Q-12 LLM Platt calibration + Q-13 cross-model κ audit ([3bfc571](https://github.com/ktrysmt/cntrdct/commit/3bfc5716d3cd7a36d3c1f7948cd895360811de2c))

## [0.2.0-rc.4](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.3..v0.2.0-rc.4) - 2026-05-10

### Features

- (ranker) Small-N Wilson -> Jeffreys interval switching (Q-11) ([632f9f4](https://github.com/ktrysmt/cntrdct/commit/632f9f4f0bc2c79fb08e9dc405c04d713d54f198))

- (cli) Wire --version / -V (P-5 followup) ([700bd66](https://github.com/ktrysmt/cntrdct/commit/700bd66d9a903977816d1f25e21b8c632dc52036))

## [0.2.0-rc.3](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.2..v0.2.0-rc.3) - 2026-05-08

### Features

- (lsp) Per-URI generation counter (T3-12 phase 1.c+) ([05070b5](https://github.com/ktrysmt/cntrdct/commit/05070b53e122fffc61eba6c93de5aec5685d77a3))

## [0.2.0-rc.2](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-rc.1..v0.2.0-rc.2) - 2026-05-08

### Documentation

- (roadmap) Refresh post-v0.2.0-rc.1 ([dcb9722](https://github.com/ktrysmt/cntrdct/commit/dcb9722df281c6af34fc0da056db3877e00b2b75))


### Features

- (lsp) Per-URI didChange debouncing (T3-12 phase 1.c) ([af561e9](https://github.com/ktrysmt/cntrdct/commit/af561e989d5d1735df288cca9d974551ff46085c))

- (lsp) Document events + Finding -> Diagnostic mapping (T3-12 phase 1.b) ([e1b8b7f](https://github.com/ktrysmt/cntrdct/commit/e1b8b7fbc303acb495795fec455855fe44e697a2))

## [0.2.0-rc.1](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-beta.1..v0.2.0-rc.1) - 2026-05-08

### Bug Fixes

- (detectors) Clone-drift residual FP cleanup (P-7) ([9c5986e](https://github.com/ktrysmt/cntrdct/commit/9c5986ee39609fa74a51f76e597e5a4806c3924a))

- (detectors) Wild β corpus FP reduction pass (P-6) ([9ecf4c2](https://github.com/ktrysmt/cntrdct/commit/9ecf4c2709bdcde3a46e128aaacb7748199fbc3b))


### CI

- Homebrew tap auto-bump workflow (T3-14) ([414cadb](https://github.com/ktrysmt/cntrdct/commit/414cadb1ed54a03f71352e588abfc7aef259042d))

- Fix netns sandbox + add cargo-binstall metadata (T3-16, T3-14) ([ddeddb0](https://github.com/ktrysmt/cntrdct/commit/ddeddb0d1d1c21512e8b9480687d2dda9544193e))

- Telemetry-free assurance via netns-isolated scan (T3-16) ([9bdbf63](https://github.com/ktrysmt/cntrdct/commit/9bdbf636355a566e90388973cdcc13a00f387509))

- (release) Wire git-cliff into release workflow (T3-15) ([c19c6d3](https://github.com/ktrysmt/cntrdct/commit/c19c6d3a735deeef65f6a8a38c535f3fcf193862))


### Chores

- (prereg) Extend skip filter for failure-modes-v1 promotion (TECH-1) ([6691c59](https://github.com/ktrysmt/cntrdct/commit/6691c593a00a1a043cef304fd68542753883696b))


### Documentation

- (readme) Add Release process section ([8dac33d](https://github.com/ktrysmt/cntrdct/commit/8dac33d27a73688872f1de97939bff907bfbfd90))


### Features

- (lsp) Cntrdct-lsp scaffolding behind `lsp` feature (T3-12 phase 1) ([8a1251c](https://github.com/ktrysmt/cntrdct/commit/8a1251cdd89a685650633a9b6786e61e2d1c374f))

- (quality) Close Phase G + Phase H Q-series (Q-1..Q-10) ([7a93868](https://github.com/ktrysmt/cntrdct/commit/7a9386865a30fdf8122bdd234904757038326172))

## [0.2.0-beta.1](https://github.com/ktrysmt/cntrdct/compare/v0.2.0-beta.0..v0.2.0-beta.1) - 2026-05-06

### Chores

- (ci) Drop x86_64-apple-darwin from release matrix ([4cebc55](https://github.com/ktrysmt/cntrdct/commit/4cebc552e6959a19748a60b639ab739b5bd48141))

## [0.2.0-beta.0] - 2026-05-06

### CI

- (release) Publish pre-built binaries on tag push ([9494084](https://github.com/ktrysmt/cntrdct/commit/9494084f43a0c50b16d9c975c77320c3c2cc82ec))

- (sarif) Validate scan output against OASIS 2.1.0 schema ([b3a1a0b](https://github.com/ktrysmt/cntrdct/commit/b3a1a0ba8de68b6c508c0e44c2b7c026c129cb08))

- Enforce permissive-license-only policy via cargo-deny ([6e1cf21](https://github.com/ktrysmt/cntrdct/commit/6e1cf21de27f882b82df8f6e8c3d2ba1eb685201))

- Add GitHub Actions workflow for fmt/clippy/test ([af2b7f7](https://github.com/ktrysmt/cntrdct/commit/af2b7f7713ec7308e7022055340bfaf318e820cb))


### Chores

- (community) Scaffold contributor guide and issue/PR templates ([70a2d2a](https://github.com/ktrysmt/cntrdct/commit/70a2d2aeeebdf877a45967b89dcc1fa50b638938))

- (priors) Recalibrate against pr-miner v0.1 corpus ([e8bc547](https://github.com/ktrysmt/cntrdct/commit/e8bc547e0ae2c0d5b36cb169469dc0c978428ec1))

- (priors) Recalibrate against P-1 wild-corpus ([94a5541](https://github.com/ktrysmt/cntrdct/commit/94a55410fb514c0f5ef7daf9bf1117c872f4ea78))

- (fmt) Apply rustfmt across both workspaces ([60efb4e](https://github.com/ktrysmt/cntrdct/commit/60efb4e23c791c0c024e4c46e4049d440c8f5c2c))

- (workspace) Move projects/ into research/ and split CI per workspace ([f65ba06](https://github.com/ktrysmt/cntrdct/commit/f65ba0697e931458caf5cc681c51ad45fca11d38))

- (workspace) Split research crates into research/ workspace ([75e2e9a](https://github.com/ktrysmt/cntrdct/commit/75e2e9a2e19a2120d3af11ba49c359142e32373c))

- (fmt) Apply rustfmt to corpus-fetch baseline ([a389b3b](https://github.com/ktrysmt/cntrdct/commit/a389b3b2e538cbd9184d3ff039c39badb33f2506))

- (detector-comment-code) Satisfy clippy 1.95 manual_pattern_char_comparison ([6c3d3d8](https://github.com/ktrysmt/cntrdct/commit/6c3d3d8ed2b6bb677cb55815fd987e0650231312))

- (phase0) Move labelling pipeline scripts into scripts/phase0/ ([6a14705](https://github.com/ktrysmt/cntrdct/commit/6a14705f4180001dea7806fa51a3440cac0eb9fb))


### Documentation

- (tech-requests) 2026-05-06 request document for TECH-1, TECH-3 ([4261ea2](https://github.com/ktrysmt/cntrdct/commit/4261ea27a0305967326f66e6841461e1bbe8a142))

- (cli-research) DESIGN.md design contract ([05c31db](https://github.com/ktrysmt/cntrdct/commit/05c31dbad766afee23c64e274d00739e527dba37))

- (track-c) Add §3 and §4 Mermaid flowcharts (C-3) ([0921264](https://github.com/ktrysmt/cntrdct/commit/0921264c930e277dc4460b986855c088488c26fd))

- (track-a,track-b) Sync READMEs with current draft / shipped state ([f73512a](https://github.com/ktrysmt/cntrdct/commit/f73512a3ee2cb5715f312594e5f1cd3cf2165718))

- (track-c) Add Claim C5 (corpus as research artefact); renumber sections ([3ff7da7](https://github.com/ktrysmt/cntrdct/commit/3ff7da75da66b125c3513805988d356a2ee05deb))

- (phase1) Wild-corpus failure-modes dry-run + 2 vocabulary additions ([dec300c](https://github.com/ktrysmt/cntrdct/commit/dec300cda45fc805771375f40296b9860eb98d60))

- (plan) Record β paper structure and USR-1..3 user-gates ([e0d72e1](https://github.com/ktrysmt/cntrdct/commit/e0d72e19934a3399304473c5da14972846f361a2))

- (track-b) Replication-spec v1.1 rust-analyzer addendum ([8c6db61](https://github.com/ktrysmt/cntrdct/commit/8c6db61eaee4b0dd90ec74d97fa77eb4cd72173b))

- (track-c) Expand §6 C5 + add §1.1 architecture diagram ([492d91b](https://github.com/ktrysmt/cntrdct/commit/492d91b3a6fa58f18fec99792f0dc9ea8db76c4f))

- (pr-miner) Empirical FP analysis from v0.1 priors recalibration ([63986e8](https://github.com/ktrysmt/cntrdct/commit/63986e81826014b161349cf3eb9b28e8ae1dec10))

- (track-c) Expand §7 related-work with 7-row analyser comparison ([7abbc1c](https://github.com/ktrysmt/cntrdct/commit/7abbc1c1bb17c8f802eb70215eb9fc67d80bb9ca))

- (track-b) Replication-spec-v0 scaffold (Rice 2017 placeholders) ([d925f89](https://github.com/ktrysmt/cntrdct/commit/d925f89665cc0fb4ad430ce75afd114039e53001))

- (phase1) Failure-modes-v1.md draft (per-detector FP taxonomy) ([7c414de](https://github.com/ktrysmt/cntrdct/commit/7c414deaa2e2cd3ceab09c0dbd2067dd0ad4d5e4))

- (phase1) Rubric v1 draft (Phase 1 two-rater protocol) ([e511a42](https://github.com/ktrysmt/cntrdct/commit/e511a42dfc39417a8901c6bf228357a3a17f8160))

- (spec) Pr-miner v0 spec draft (P-2 progress) ([3df6ab6](https://github.com/ktrysmt/cntrdct/commit/3df6ab60a5317fdfa9c690b135fa9f662632b182))

- (track-c) Stage 2 essay v0 skeleton for Onward! Essays ([e0c373b](https://github.com/ktrysmt/cntrdct/commit/e0c373b87e7250e7a3a7075daecfb4e8113384e7))

- (research) Refresh post-split paths and CLI form in comments ([c7e3ae0](https://github.com/ktrysmt/cntrdct/commit/c7e3ae04f45af80fad68451bccbe337248cff82f))

- (workspace) Introduce CLAUDE.md with split-workspace contract ([24ac7ab](https://github.com/ktrysmt/cntrdct/commit/24ac7ab8612073c298c6e60b2c671a818dd2cf78))

- (prereg) Phase 0 single-rater addendum + skip sibling artefacts in consistency test ([bef9318](https://github.com/ktrysmt/cntrdct/commit/bef9318ed64975e8e28202e033f00b145956ba0f))

- (roadmap) Mark M-6 (citation policy) complete ([158afe5](https://github.com/ktrysmt/cntrdct/commit/158afe5ebb2d08e17de7d244aaa56ecec1fda84a))

- (spec) Revise multilang-v0 and citations-policy per review ([ea5e2bd](https://github.com/ktrysmt/cntrdct/commit/ea5e2bd78ac2ff459a211fdb99581cbada35e6f9))

- (spec) Multilang-v0.md and citations-policy.md drafts ([d0fee70](https://github.com/ktrysmt/cntrdct/commit/d0fee70acc889b3bab20b2a17480165534298b84))

- (roadmap) Add Multi-language track (M-series), defer Phase D ([22af90a](https://github.com/ktrysmt/cntrdct/commit/22af90a66cb5581d554560c05f3fc00cd466ae83))

- (roadmap) Mark T2-9 (GitHub Action wrapper) complete ([b6c36cd](https://github.com/ktrysmt/cntrdct/commit/b6c36cd1054a990ddd8644e45a26f727e9868f0d))

- (roadmap) Mark T2-8 (pre-built binaries) and P-3 (SARIF validation) complete ([5aa98ad](https://github.com/ktrysmt/cntrdct/commit/5aa98adc09fa41d8bb979eecb93b6c530b31985b))

- (roadmap) Mark T2-11 (cargo subcommand) complete ([54f32fb](https://github.com/ktrysmt/cntrdct/commit/54f32fb2ff6bb5f0dc38473b6359d46f0c7fb364))

- (roadmap) Mark T2-7 (suppression mechanism) complete ([7d1a466](https://github.com/ktrysmt/cntrdct/commit/7d1a4666842ee9eaa931db2205d85ed1dcfb4f2b))

- (roadmap) Mark T2-10 (rayon parallelisation) complete ([37c1b60](https://github.com/ktrysmt/cntrdct/commit/37c1b60d05d01cba3b36960ff99a808ff0e73864))

- (roadmap) Mark Phase A (T1-1 through T1-6) complete ([88c322c](https://github.com/ktrysmt/cntrdct/commit/88c322c13f2caeb6411b423378f1becd73bdb8eb))

- (readme) Polish for OSS audience ([e3fbbdf](https://github.com/ktrysmt/cntrdct/commit/e3fbbdf7130523dc3a90bc6f47f75dabe06e17e9))

- (examples) Add scan/calibrate/adjudicate runnable examples ([3565840](https://github.com/ktrysmt/cntrdct/commit/35658406d776a335c11e9acaa58c58b504718855))

- (core) Document the cntrdct-core public surface ([955c718](https://github.com/ktrysmt/cntrdct/commit/955c718441b9f5afefab123de563453cb2ebcb69))


### Features

- (phase1) Validate_phase1_csv.py pre-flight validator + tests ([1bb2f4a](https://github.com/ktrysmt/cntrdct/commit/1bb2f4a0800644196c595819647bc0451928ef46))

- (phase1) Phase1_failure_modes_aggregate.py closes deferred §6 ([6d0e3c2](https://github.com/ktrysmt/cntrdct/commit/6d0e3c2e7e63fb6be272c5d630a2e85435683345))

- (pr-miner) Python v0.1 closes P-2 step 3 ([929ed4a](https://github.com/ktrysmt/cntrdct/commit/929ed4a452bbebe9c25e8bf9b81a3c14f4463941))

- (pr-miner) Rust v0.0 detector closes P-2 step 2 ([a8ec86b](https://github.com/ktrysmt/cntrdct/commit/a8ec86bd030c2c4731ac03edc1207db404d83af0))

- (workspace) Close P-1 (Rust wild corpus) and approve P-2 spec ([a6a3d6e](https://github.com/ktrysmt/cntrdct/commit/a6a3d6eb2fdcf005a4b485b679b85e093a235e0b))

- (phase1) Phase1_precision.py — per-detector precision + Wilson CI from consensus_label ([a229e75](https://github.com/ktrysmt/cntrdct/commit/a229e75a49d97a4fe258f1e8ab10004762344e8f))

- (phase1) Build_phase1_csv.py — turn stratified-sample into rater CSV + context sidecar ([20821b3](https://github.com/ktrysmt/cntrdct/commit/20821b39b67f6d4ce7c53df72719bda9de3933f4))

- (cli) Embed default priors so scan ships calibrated (closes P-4) ([9555bbc](https://github.com/ktrysmt/cntrdct/commit/9555bbcb98659a2c1d7297469c9f1ed1febc59ae))

- (workspace) Close M-5 (tooling surface) and M-4 (Python wild corpus) ([17bb76f](https://github.com/ktrysmt/cntrdct/commit/17bb76fc15e9c74b89f89d213b1425d1ba1cffca))

- (phase1) Cntrdct-research stratified-sample subcommand ([2435b08](https://github.com/ktrysmt/cntrdct/commit/2435b08cb74a4f8ccbd6dd5db62d4cfa48971fc8))

- (phase1) Cohen's kappa + Wilson CI analyser for two-rater labels ([8899bc0](https://github.com/ktrysmt/cntrdct/commit/8899bc0627a85f8ccb7b706ef588c45b941a26d7))

- (detector) Clone-drift Python (closes M-3) ([a26a7d3](https://github.com/ktrysmt/cntrdct/commit/a26a7d37d5e16cc08730fb48c5b1de8fb10a2834))

- (detector) Arg-swap Python (M-3 progress) ([0defa39](https://github.com/ktrysmt/cntrdct/commit/0defa39adb2208909ef61aef9a37352471102a22))

- (corpus-fetch) Retry policy for db_dump downloader ([10d9065](https://github.com/ktrysmt/cntrdct/commit/10d9065b191769f094f1029470c8ca733e9f2605))

- (core) F4 phase 4b + comment-code Python (M-3 partial) ([743db11](https://github.com/ktrysmt/cntrdct/commit/743db11f4122ccbeb26289ffa4370d62a8c607dd))

- (detector) Python pilot for unreachable-after-terminator (closes M-2) ([f809883](https://github.com/ktrysmt/cntrdct/commit/f80988377ef349ee26e0254a96816d553a1f06d7))

- (cli) Generalize file walker via cntrdct-parsers (closes M-1) ([5886cb0](https://github.com/ktrysmt/cntrdct/commit/5886cb0aeab35871f9d1725120414aa76693b1aa))

- (citations) Per-language citation policy (Citation.languages, LanguageCitationStatus) ([4da4183](https://github.com/ktrysmt/cntrdct/commit/4da41833af4c90d8ec62eb648b79563d1731893e))

- (corpus-fetch) Phase 0 fetcher + rank/aggregate/clippy/overlap ([69c4192](https://github.com/ktrysmt/cntrdct/commit/69c419270ef6a4102b4a00d50d3825c5311802df))

- (parsers) Cntrdct-parsers crate (Language enum + parser providers) ([147d3b9](https://github.com/ktrysmt/cntrdct/commit/147d3b9b86a069f0e58373839bea1fbdf17fac44))

- (action) GitHub Action wrapper for cntrdct ([2a6ed03](https://github.com/ktrysmt/cntrdct/commit/2a6ed03f2c1f9a2ff71241b3298b1c8c5e0933c8))

- (cli) Add cargo cntrdct subcommand shim ([44b44f9](https://github.com/ktrysmt/cntrdct/commit/44b44f9af256c6661b7e985872f09fd7635a7bf1))

- (suppression) Cntrdct.toml + #[cntrdct::allow] attribute ([cf74269](https://github.com/ktrysmt/cntrdct/commit/cf74269ca82b1887be794a139e13b386e30161ae))


### Performance

- Parallelise per-file detector work with rayon ([02620ae](https://github.com/ktrysmt/cntrdct/commit/02620aea73dcc2e63f6e76b621e0e8e4e8626917))


### Tests

- (corpus-fetch) Sha256_mismatch integration tests + common fixture refactor ([64a0f24](https://github.com/ktrysmt/cntrdct/commit/64a0f24b93d0eeb8d3ff7ce379f5863dbcc9ec63))

- (corpus-fetch) Integration test for license-hint precedence ([16214d2](https://github.com/ktrysmt/cntrdct/commit/16214d2ec4b650a759320e1aefd5dbb86ff6d73d))

- (corpus-fetch) Integration test for orphan-recovery in fetch_one ([381316b](https://github.com/ktrysmt/cntrdct/commit/381316bca4ac8860bba10fab700a37e1c7fda7bb))

- (corpus-fetch) Integration tests for malicious tarball rejection ([aedb487](https://github.com/ktrysmt/cntrdct/commit/aedb4879bbf034e175aa0b712775ab65a8950501))


### Build

- Populate crates.io metadata for every workspace member ([55f5912](https://github.com/ktrysmt/cntrdct/commit/55f5912ce43d785288e09a33837fe8b861e0d259))


### Style

- Apply cargo fmt across workspace ([d8a99d6](https://github.com/ktrysmt/cntrdct/commit/d8a99d6626164587d39985e07ee7ac39be6ca3f1))


