@@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77
88## [ Unreleased]
99
10+ ## [ 0.12.0] - 2026-07-13
11+
1012### Added
1113
1214- Added typed literal modifiers to ` {% block %} ` and ` {% fragment %} `
@@ -43,6 +45,41 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
4345 stable ` K-A11Y-* ` , ` K-TYP-* ` , and ` K-PATH-001 ` mappings. Accessibility,
4446 template-declaration type, and fragile-path findings expose computed ` code `
4547 properties without changing their constructor fields or CLI behavior.
48+ - Added K-WARN-002 detection for a Jinja ` {% set %} ` binding read after an
49+ ` if ` block, including nested branches, named blocks, and later reads in the
50+ same loop iteration. The advisory remains default-on and has no safe edit.
51+
52+ ### Changed
53+
54+ - GitHub pull-request release-note collection now uses typed, fixture-tested
55+ Python with pagination, report-contract validation, and explicit failures for
56+ malformed responses or invalid ref ranges. (` #139 ` )
57+ - The README and thread-safety contract now link the required Python 3.14t
58+ no-GIL pull-request lane and scheduled seeded debug-runtime stress evidence.
59+ (` #158 ` )
60+ - Split the CLI monolith into private command-owned modules behind the unchanged
61+ ` kida.cli:main ` entry point. Argument parsing, lazy dispatch, execution, and
62+ structured presentation now have direct test seams; all eight commands keep
63+ their flags, help, streams, serialized shapes, and exit statuses. Focused CLI
64+ line/branch coverage rose from 53.7% to 94.7%, cold-start medians did not
65+ regress, and no dependency was added.
66+ - Split compiler lowering, analysis, callable plans, block variants, and
67+ partial-evaluation tests into phase-owned modules without changing generated
68+ output, render surfaces, or the zero-dependency runtime.
69+
70+ ### Fixed
71+
72+ - Shared ` DependencyWalker ` , ` PurityAnalyzer ` , and ` BlockAnalyzer ` instances
73+ now isolate traversal state across concurrent calls. Thread-safety docs define
74+ the stable-source boundary for loaders and read-only metadata mappings. (` #158 ` )
75+ - K-WARN-002 now matches Jinja's block-sensitive assignment behavior: it warns
76+ for outer-name shadows in non-scoping ` if ` branches and avoids false positives
77+ for loop-local ` for ` assignments. (` #253 ` , ` #255 ` )
78+ - Live renderer updates are serialized under free-threading, and seeded no-GIL
79+ stress coverage now exercises shared templates, caches, registries, coverage
80+ instrumentation, runtime debugging, and analysis.
81+ - Streaming error boundaries inside named blocks now preserve fallback behavior
82+ across the synchronous and asynchronous render surfaces.
4683
4784## [ 0.11.0] - 2026-07-07
4885
@@ -53,12 +90,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
5390
5491### Changed
5592
56- - Split the CLI monolith into private command-owned modules behind the unchanged
57- ` kida.cli:main ` entry point. Argument parsing, lazy dispatch, execution, and
58- structured presentation now have direct test seams; all eight commands keep
59- their flags, help, streams, serialized shapes, and exit statuses. Focused CLI
60- line/branch coverage rose from 53.7% to 94.7%, cold-start medians did not
61- regress, and no dependency was added.
6293- Hardened GitHub release automation so releases fail before publishing when the
6394 worktree, main commit, tag, or curated release notes do not match. (` #134 ` )
6495- Consolidated duplicate ty checks into the report-producing ` Type Check (ty) `
0 commit comments