Skip to content

Commit eea5baf

Browse files
committed
docs: add v2.3.1 changelog for chunking fixes and port cleanup improvements
1 parent b821f6b commit eea5baf

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,21 @@ All notable changes to this repository are documented here.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [2.3.1] - 2026-02-12
9+
10+
### Fixed
11+
- **Chunking Fallback for Data-Only Copybooks** - Added line-based chunking fallback in `SemanticUnitChunker` when no semantic units (DIVISION/SECTION/PARAGRAPH) are found, fixing crash on pure-data copybooks like `STRESSCOPY.cpy` (10K lines)
12+
- **SemaphoreSlim Disposal** - Added `using var` to `SemaphoreSlim` across 5 files to ensure proper disposal
13+
- **RateLimiter Over-Release** - Added `lockHeld` flag pattern to prevent `SemaphoreSlim.Release()` being called without a matching `WaitAsync()`
14+
- **Config Script Injection** - Replaced `eval` with `envsubst` in `Config/load-config.sh` to prevent command injection
15+
- **Port Cleanup Stability** - Fixed `doctor.sh` port cleanup in both `launch_portal_background()` and `launch_mcp_web_ui()` to use `lsof -sTCP:LISTEN` instead of `lsof -ti:`, preventing accidental killing of client connections (e.g., VS Code browser tabs)
16+
17+
### Added
18+
- **Chunking Stress Test** - New unit test `ChunkFileAsync_NoSemanticUnits_LargeFile_FallsBackToLineBased` validating line-based fallback for large copybooks
19+
20+
### Changed
21+
- **doctor.sh** - Updated to 2,274 LoC with improved port cleanup logic
22+
823
## [2.3.0] - 2026-02-06
924
### Changed
1025
- **Streamlined Workflow** - Removed "Spec-Driven Migration" (MITM) workflow to focus on the "Deep Code Analysis" pipeline.

0 commit comments

Comments
 (0)