- Fix false positive when cursor is between two code blocks: the old
upward search couldn't distinguish closing fences from opening ones
- Fix nested fence support: closing fence must be >= opening fence
length per CommonMark spec; shorter inner fences are now treated
as content lines
- Extract detection logic to pure function detectCodeBlockFromLines
in src/codeBlockDetect.ts for testability
- Add 37 unit tests covering the bug scenario, nested fences,
unclosed blocks, all CodeBlockBehavior modes, and fence-line edges
- Add CodeBlockBehavior enum: COPY_CONTENT / COPY_WITH_FENCES / GENERATE_BLOCK_LINK / DISABLED
- Add CODEBLOCK ContextType, detectCodeBlock() method in main.ts
- Code block detection runs before block ID generation (conflict resolution)
- Add Code Block settings group in settingTab.ts with dropdown
- Add CHANGELOG.md with full version history
- Update release workflow to extract notes from CHANGELOG.md