Skip to content

release: v0.2.31 - #1023

Merged
XingYu-Zhong merged 27 commits into
masterfrom
develop
Jul 25, 2026
Merged

release: v0.2.31#1023
XingYu-Zhong merged 27 commits into
masterfrom
develop

Conversation

@XingYu-Zhong

Copy link
Copy Markdown
Collaborator

Summary

Prepare Kun v0.2.31 for release from develop to master.

Changes

  • Preserve thread-referenced Git checkpoints during automatic cleanup and enable checkpoint creation by default for newly normalized settings.
  • Recover safely from unreadable Windows DPAPI credential state, with explicit confirmation and backup before reset.
  • Include runtime, settings, updater, OfficeCLI, composer/context, and subscription changes accumulated since v0.2.30.
  • Add user-facing release notes at release/release-v0.2.31.md.

Tests

  • npm run typecheck
  • npm --prefix kun run typecheck
  • npm run lint
  • npm run audit:production
  • npm run check:extensions
  • Root and Kun full test suites (Node 22)
  • npm run build
  • macOS arm64/x64 packaging with OfficeCLI manifest and after-pack validation

Release notes

See release/release-v0.2.31.md.

XingYu-Zhong and others added 27 commits July 25, 2026 03:00
…ttachment handling

- Added attachmentStore dependency to TurnService for managing attachments.
- Implemented binding of attachments to specific threads in TurnService.
- Updated tests for AttachmentStore to cover new binding functionality and authorization checks.
- Introduced JSON file preview capabilities in WorkspaceFilePreviewPanel, allowing for editing and saving JSON content.
- Enhanced McpServersEditor to include plan-mode read-only tools configuration.
- Updated various components and tests to ensure compatibility with new features and maintain functionality.
- Refactor context capacity model to utilize RequestContextSnapshot for improved accuracy.
- Introduce new runtime attachment upload functionality to handle various document formats.
- Update context capacity UI messages for clarity on estimation sources.
- Implement context snapshot storage for active threads to optimize context management.
- Add tests for context snapshot handling and queued message guidance.
- Introduce support for local office document reading and associated types.
- Update runtime image attachment metadata to include document format and visual preview.
…acity handling

- Implemented mapping for delegated runtime capabilities, including state management for active threads.
- Enhanced context snapshot handling to preserve SDK-managed native history without inventing occupancy.
- Updated context capacity calculations to reflect SDK-managed history and added relevant UI updates.
- Modified tests to cover new functionality for delegated runtime and context capacity.
- Improved localization for new context capacity messages and initial setup dialog options.
…and capabilities

- Added tests to validate preservation of delegated SDK continuity metadata on projected requests.
- Updated event projection logic to include tool results and delegated metadata.
- Enhanced model request trace handling to support delegated capabilities and context management.
- Improved UI components to display delegated SDK execution details, including continuity and capability limits.
- Added localization strings for new features in multiple languages.
- Added migration for context compaction defaults in app settings.
- Introduced initialSetupCompleted flag to track onboarding completion status.
- Updated tests to validate initial setup completion behavior for various configurations.
- Implemented Claude subscription token validation logic.
- Enhanced model provider presets to support new Gemini CLI subscription.
- Added workspace file API enhancements for preview leases and file operations.
- Updated speech-to-text protocols to include new options for Gemini and XAI.
Update DelegationRuntime tests to reflect changes in profile modes and error handling

Enhance HybridThreadStore tests with mock attachmentStore

Add mcp_read_only_call tool to MCP tool provider tests

Upgrade electron-updater to version 6.8.9 in package.json and package-lock.json

Implement ANSI escape sequence redaction in Claude subscription auth

Add test for scoped model profiles in runtime config

Refactor kun-runtime-config-service to resolve model profiles correctly

Update model provider settings to ensure profiles are scoped to providers

Enhance upstream model fetching to support default model selection

Improve chat message timeline bubble component with memoization

Add read-only tools configuration to settings localization files

Enhance chat store app actions to handle default model selection from multiple providers

Refactor composer model selection logic to include provider context

Update app settings normalization to handle keyless subscription providers

Refactor kun-gui-api types to include default model selection structure
…tcuts

- Implemented input history functionality in FloatingComposer using localStorage.
- Added keyboard navigation for input history with ArrowUp and ArrowDown keys.
- Updated FloatingComposer to display shortcut hints for Enter and Shift+Enter.
- Refactored tests to cover new input history features and keyboard interactions.
- Updated localization files to reflect changes in shortcut hints across multiple languages.
- Introduced `createEnabled` option for Git checkpoint creation to allow users to opt-in for creating checkpoints when sending messages, preventing unbounded disk growth.
- Updated `checkpointCleanup` settings to include `lastAppVersion` tracking for cleanup passes after upgrades.
- Enhanced cleanup logic to consider checkpoint creation dates and added `maxAgeDays` parameter for better retention management.
- Modified related tests and settings to accommodate new `createEnabled` functionality and ensure backward compatibility.
- Updated localization files to reflect changes in checkpoint management settings.
- Add tests to reject empty user input calls and questions without text in local tool host.
- Update user input tool description to clarify requirements for prompts and questions.
- Implement validation to ensure user input requires non-empty prompts or questions.
- Modify cleanup logic to enforce maximum checkpoints per thread during cleanup.
- Introduce new functions to prune checkpoints based on thread ownership.
- Update settings descriptions for checkpoint management to clarify behavior on startup and upgrades.
- Refactor rendering logic to ensure live reasoning and assistant content are handled correctly in the UI.
- Enhance chat projection reducer to ignore user input requests lacking question text.
}

function sha256(value: string): string {
return createHash('sha256').update(value).digest('hex')
expect(headers.originator).toBe('codex_cli_rs')
expect(headers['User-Agent']).toBe(codexUserAgent())
expect(headers['User-Agent']).toMatch(
new RegExp(`^codex_cli_rs\\/${CODEX_CLI_VERSION.replace(/\./g, '\\.')} \\(.+; .+\\)$`)
}

export function sanitizeStaticHtml(html: string): string {
const withoutScripts = html.replace(/<script\b[^>]*>[\s\S]*?<\/script\s*>/gi, '')
}

export function sanitizeStaticHtml(html: string): string {
const withoutScripts = html.replace(/<script\b[^>]*>[\s\S]*?<\/script\s*>/gi, '')
Comment on lines +298 to +299
return withoutScripts
.replace(/\son[a-z]+\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]+)/gi, '')
@XingYu-Zhong
XingYu-Zhong marked this pull request as ready for review July 25, 2026 13:26
@XingYu-Zhong
XingYu-Zhong merged commit 2f578f6 into master Jul 25, 2026
11 of 12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants