- Changed the web search tool to differentiate between 'fetch' and 'search' types using a discriminated union in the input schema.
- Updated the handling of web search results to return structured outputs for both fetching a URL and searching for content.
- Refactored related functions and types to accommodate the new structure, including output types and error handling.
- Adjusted tests to reflect the new input structure and ensure proper functionality for both fetching and searching scenarios.
- Enhanced the rendering of web search results to align with the new output format.
- Added input fields to OutputCase type for better context in terminal and file operations.
- Updated terminal run cases to include command explanations and refined output data.
- Expanded text file edit cases to cover batch replacements and detailed error messages.
- Enhanced knowledge base search and document listing with additional metadata and improved error handling.
- Improved PDF and DOCX handling with more comprehensive data structures and examples.
- Refined Excel operations to include detailed input parameters and error messages.
- Added new image generation cases with specific input requirements and output details.
- Added `renderFileEnvelope`, `renderNumberedFileLines`, and `formatReadRangeFooter` in `envelope.ts`.
- Introduced `renderGroupedHeader`, `renderGroupedFooter`, `joinGroupedSections`, and `renderNoMatches` in `grouped.ts`.
- Created `renderUntrustedWebContent` in `markdownWeb.ts` to handle untrusted web content rendering.
- Developed prose rendering functions in `prose.ts` including `renderProse`, `renderFileMutationProse`, and `renderResourceMutationProse`.
- Implemented shared utility functions in `shared.ts` for XML escaping and line wrapping.
- Added terminal rendering functions in `terminal.ts` for output streams and markers.
- Updated terminal tool schemas to reflect changes in output types and statuses.
- Refactored terminal status handling in `terminalToolStatus.ts` for better clarity and consistency.
- Enhanced terminal tool tests to validate new status mappings and output structures.
- Created unit tests for model tool result renderers to ensure correct output formatting.
- Implemented a new script `generate-ai-tool-prompt-audit.mts` that generates a markdown document for auditing AI tool prompts.
- The script extracts input and output specifications from the tool registry and formats them into a structured markdown format.
- Includes detailed examples for each tool, enhancing documentation clarity and usability.
- Refactored test plans for Excel-related tasks, including updates to task descriptions and expected outcomes.
- Introduced a new fixture generator for creating a detailed Excel file for weekly reviews.
- Updated existing tests to reference new Chinese-named Excel and PPT files, ensuring consistency in naming conventions.
- Enhanced test assertions to validate specific changes made during Excel editing tasks.
- Removed outdated fixture files and replaced them with new ones in Chinese.
- Improved descriptions in test cases to reflect the changes in language and context.
- Added support for forwarding image blocks to the main model in llm-executor-text.test.ts, including error handling for unsupported image formats.
- Improved image normalization and caching logic in read-image-multimodal.test.ts, ensuring consistent handling of local and remote images.
- Updated terminal-session-manager.test.ts to improve command execution validation.
- Refined llm-config-guard.test.ts and llm-presets-contract.test.ts to enhance config validation and preset handling.
- Enhanced web crawler service tests for better coverage and reliability.
- Improved workspace index worker tests to ensure accurate file handling and content hashing.
- Updated composer attachment tests to validate attachment handling and ensure proper UI interactions.
- Refined model selector tests to improve user experience and error handling in the workbench.
- Added agent control tool harness for better testing capabilities in AI tool interactions.
- Updated AI test plan with new results for visual reading tests, marking them as completed after fixing configuration issues.
- Added a new script for real upgrade testing on Windows, allowing verification of silent upgrades and proper handling of old installations.
- Introduced concurrency handling in visual recognition service to improve performance during image processing.
- Refactored legacy document editing tests to ensure proper rejection of .doc file edits and adherence to decision hints.
- Adjusted PowerPoint management review tests to include both Chinese and English date formats for better validation.
The test stage builds a clean workspace from the tag but only ran
pnpm install without seeding the prebuilt native cache, so package E2E
re-downloaded better-sqlite3 from GitHub release assets on every run and
failed on flaky network. Seed the cache like the prepare stage does.
The only warmup case lives under the settings domain, so filtering with
--domain/--suite/--case excluded it and left every selected case to index
the workspace fixture from scratch. Package E2E now appends the warmup
case whenever more than one case is selected, and the warmup task bypasses
--testNamePattern so targeted --case runs still seed the shared cache.
vditor loads lute/katex/highlight/i18n at runtime via its cdn option,
so its dist resources must be copied into the renderer public dir during
build. The vditor-assets script was never wired into build and had TS
type annotations that made it fail as plain .mjs.
- wire vditor-assets into the build chain before electron-vite build
- rewrite vditor-assets to plain JS
- pass an inlined zh_CN i18n object to Vditor so it no longer loads
i18n/zh_CN.js dynamically and cannot pop its own vditor-tip toast
- Refactored PlainTextEditor to utilize autoSave and flushSave for managing content changes.
- Removed the editableDirtyRegistry as its functionality is now integrated within useEditableTextFile.
- Updated the markdownEditor CSS for improved styling and consistency.
- Enhanced useEditableTextFile to handle automatic saving and external changes more efficiently.
- Adjusted ChatPage to eliminate unused discard edits confirmation logic.
- Updated selectors to remove references to deleted editable file components.
- Improved end-to-end tests for markdown and plain text editors to reflect new auto-save behavior and UI changes.
- Introduced a new test for human terminal data reconciliation that verifies the reconciliation of invoices and payments, ensuring the correct generation of exception CSV files.
- Removed the outdated human terminal preview service live test, which was no longer relevant.
- Updated human text file read/write tests to focus on checkout configuration readiness and cutover processes.
- Enhanced web crawl tests to ensure accurate multi-hop crawling and URL inference for public service information.
- Refactored llmConfig and run-backend-case to streamline live model configuration handling, including vision model support.
- Improved error handling in electron app launch process to capture diagnostics on failure.
- Added humanRuntimeOverrides to the AI run context to allow for runtime configuration adjustments.
- Updated HumanResumeSnapshot to include taskContext for better tracking of task interruptions and recoveries.
- Introduced functions to create and render human task contexts, capturing interruption reasons and user inputs.
- Enhanced error classification to include runtime limits and unexpected errors.
- Implemented database migration to reset resume snapshots for versioning.
- Updated tests to cover new runtime limit features and ensure proper handling of task contexts during interruptions.
- Improved workspace knowledge cache to support shared content caching and statistics tracking.
- Deleted the unit tests for Excel tools and PPT visual smoke tests as they are no longer relevant.
- Introduced new end-to-end tests for Excel file creation, update, and revert functionality, ensuring proper diff handling and file state validation.
- Updated workbench conversation tests to enhance attachment handling and AI interaction.
- Improved file preview actions to support Excel file types and validate their previews.
- Set execution mode to 'exclusive' for specific e2e tests to ensure isolated execution.
- Set execution mode to 'live' for various e2e tests to enable real-time interactions.
- Refactor workspace binding in tests to use direct binding method for improved reliability.
- Enable file parallelism in Vitest configurations to enhance test execution efficiency.
- Remove obsolete end-to-end test for system notification session navigation.
- Enhance workspace scan progress tests to verify UI state restoration.
- Update web prepare progress tests to ensure correct UI behavior after navigation.
- Refactor unit tests for AI persistence and model configuration to improve naming consistency.
- Modify release tests to use localized product names and ensure correct artifact naming.
- Adjust vector and workspace backend tests to reflect unit test categorization.
- Improve error handling in web crawler test utilities.
- Update Electron app launch environment to support additional environment variables.
- Refactor end-to-end test cases for workbench to improve readability and maintainability.
- Introduced a new documentation file for the Tidy process, outlining steps for aligning documentation with implementation, organizing PRD and test cases, and verifying settings.
- Updated package.json to include a new test command for non-live AI tests and adjusted existing test commands for settings and updates.
- Implemented a cleanup function for local test logs in the release scripts to ensure a clean environment.
- Enhanced the release preparation script to include unit and non-live AI tests in the workflow.
- Added a new script to validate test architecture, ensuring that test cases align with defined plans and rules.
- Refactored existing test cases to improve organization and clarity, including renaming and restructuring tests for better maintainability.
- Adjusted timeout settings for specific tests to improve reliability.
- Corrected domain assignments in several unit tests to ensure proper categorization.