Commit Graph
162 Commits
Author SHA1 Message Date
Yoan Huang a5f2f20966 feat: enhance SQLite migration handling and improve terminal output quality checks 2026-09-05 21:57:43 +08:00
hy b5825487e8 feat: update browser tool handling to remove success field and enhance error reporting 2026-09-04 14:51:31 +08:00
hy 8c0d05a216 refactor: update assistant execution summary and related tests
- Removed unused 'wait' status and replaced with 'learning' in assistant execution types.
- Enhanced assistant execution summary text for various tool actions, including improved translations for user feedback.
- Refactored logic for building execution summaries to streamline handling of tool statuses and text segments.
- Updated tests to reflect changes in execution summary behavior and ensure accurate assertions for tool actions.
- Improved terminal command handling in tests, allowing for detached execution scenarios and refining assertions for terminal command results.
- Adjusted e2e tests to validate rendering of process activities and final answers, ensuring compliance with updated requirements.
2026-09-03 15:28:17 +08:00
hy bb20a1ecdf fix: update documentation and test plan for AI tool prompt audit generation
- Updated architecture documentation to clarify the generation of AI tool prompt audit examples.
- Revised workbench test plan to specify Excel tool coverage and ensure accurate validation of user workflows without redundant operation enumeration.
- Modified script comments for generating AI tool prompt audit to reflect new command usage and clarify that generated examples are not stored in the repository.
2026-09-03 13:32:50 +08:00
hy a2608a9f55 feat: update package size budgets and enhance runtime package pruning logic for optimized builds 2026-09-01 18:03:14 +08:00
hy 7cd3782f1e Refactor macOS release handling: remove x64 support and streamline metadata processing
- Removed support for macos-x64 in fragment definitions and related scripts.
- Updated finalize-macos script to only handle macos-arm64, simplifying signature checks and metadata writing.
- Deleted merge-mac-metadata script as it is no longer needed.
- Adjusted storage layout and release status checks to reflect the removal of x64.
- Updated tests to ensure they only validate macos-arm64 functionality.
2026-09-01 16:36:09 +08:00
hy c193edf338 Refactor web crawler sidecar build process and improve Playwright browser handling
- Removed bundled Playwright browser assertions and adjusted driver bundle copying to ignore local browsers.
- Introduced new assertions to ensure no Playwright browser files are bundled with the sidecar.
- Updated macOS and Windows release scripts to remove references to the sidecar browser cache.
- Enhanced WebCrawlerService to utilize an isolated Electron CDP connection for better browser context management.
- Added ElectronWebCrawlerBrowserHost class to manage browser connections and views.
- Updated tests to reflect changes in the web crawler service and ensure proper handling of CDP connections.
- Improved message rendering for AI interactions, including better formatting for tool calls and AI messages.
- Adjusted various test cases to align with new functionality and ensure robustness.
2026-09-01 15:53:33 +08:00
hy 54530878d4 refactor: update environment variable names for release storage configuration 2026-09-01 12:30:39 +08:00
hy d622985d55 refactor: update URLs and storage configurations to use domestic services
- Changed external links in settings-test.md and package.json to point to the new domestic website (guanzhangai.cn).
- Updated electron-builder.yml to publish updates from the new domestic URL.
- Introduced a new storage client for Tencent COS and refactored existing R2 client code to support both storage options.
- Implemented environment variable checks and configurations for Tencent COS and Cloudflare R2.
- Added tests for release storage configuration and ensured proper handling of live publish locks.
- Updated telemetry service to use the new official website URL for event reporting.
2026-09-01 11:44:56 +08:00
hy b5bb0e221b refactor: reorganize test fixtures and update references
- Moved test fixtures from `tests/fixtures/workspace` to `tests/fixtures/backend` for better structure and clarity.
- Updated all references in test cases to point to the new fixture paths.
- Removed obsolete fixture generation scripts for Excel and DOCX files.
- Enforced read-only constraints on fixture files, ensuring tests do not modify them directly.
- Added new binary files for backend fixtures to support ongoing tests.
2026-08-31 15:51:52 +08:00
hy 233ae1110c fix(build): update main obfuscation markers to match current system prompt text 2026-08-31 14:44:39 +08:00
hy a61209a164 Remove unused chromium-bidi/utf-8-validate deps and add knip dead-code audit config 2026-08-31 14:36:24 +08:00
hy e9bef184bb feat: implement update required page and app startup status handling
- Added a new UpdateRequiredPage component to handle scenarios where an application update is required before accessing the main interface.
- Integrated app startup status retrieval in the App component to determine if the application is in a normal state or requires an update.
- Updated routing logic to conditionally render the UpdateRequiredPage or the main application layout based on the startup status.
- Enhanced the AppUpdateContext to manage update actions and states effectively.
- Introduced new selectors for testing the update required page and its components.
- Added constants for app startup channels to facilitate communication between the main and renderer processes.
- Updated shared types to include AppStartupStatus for better type safety.
- Created unit tests for SQLite migration to ensure database integrity during updates.
- Implemented end-to-end tests to verify the update flow and recovery page functionality.
2026-08-31 12:39:39 +08:00
Yoan Huang a0e32c98fe refactor: update web search tool to use type-based input for fetching and searching
- 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.
2026-08-30 19:16:30 +08:00
Yoan Huang 006eb43ca2 feat: enhance web search result rendering with markdown support and update documentation 2026-08-30 19:03:37 +08:00
Yoan Huang cf372c5522 feat: enhance AI tool prompt audit with detailed input cases and improved output structures
- 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.
2026-08-30 19:03:25 +08:00
Yoan Huang 4c5c4e945d feat: implement rendering functions for file envelopes, grouped sections, and prose
- 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.
2026-08-30 18:54:46 +08:00
Yoan Huang 37d5789995 feat: add script to generate AI tool prompt audit documentation
- 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.
2026-08-30 17:39:30 +08:00
Yoan Huang 27ac7db168 feat: update AI test plans and fixtures for Excel and PPT tools
- 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.
2026-08-30 12:44:25 +08:00
hy 04e405b467 feat: enhance image handling in AI executor and tests
- 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.
2026-08-28 18:51:52 +08:00
hy de33cf92c5 feat: add help option to runner and handle unknown arguments 2026-08-27 11:11:14 +08:00
hy af027a4df9 refactor: remove retries from workflow and update related tests 2026-08-26 19:41:34 +08:00
hy 17c9ca1056 fix: remove LIVE_BACKEND_RETRIES and set retries to 0 in workflow 2026-08-26 19:30:45 +08:00
hy 4f22999edc feat: add Excel and DOCX fixtures for enhanced testing and metadata indexing 2026-08-26 14:54:03 +08:00
Yoan Huang e111dfe7ab feat: enhance E2E test workflow and improve tool call handling in tests 2026-08-23 19:33:04 +08:00
Yoan Huang 09f37e7d29 feat: enhance environment configuration for Vitest with LANGSMITH_TRACING support 2026-08-23 14:57:36 +08:00
Yoan Huang 3f62417530 feat: Enhance AI testing and update process
- 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.
2026-08-21 23:15:23 +08:00
hy 35adfe50c7 feat: improve process termination handling for sidecar services 2026-08-21 18:19:14 +08:00
Yoan Huang 2c3122e0ef feat: enforce packaged Windows VC++ runtime DLL presence in audit 2026-08-20 21:12:32 +08:00
hy 5fb9590a00 feat: add Microsoft Visual C++ Redistributable DLLs and error handling for embedding initialization 2026-08-20 11:20:01 +08:00
hy 3ea0628a65 fix(release): seed native cache in macOS test stage
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.
2026-08-19 16:11:57 +08:00
hy 9dad1c9ec0 fix(test): always run vector warmup for package E2E when running multiple cases
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.
2026-08-19 15:15:32 +08:00
hy 746db0b522 fix: bundle vditor assets and inline i18n for markdown editor
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
2026-08-19 13:50:45 +08:00
hy 06324f7c11 refactor: streamline PlainTextEditor and remove editableDirtyRegistry
- 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.
2026-08-18 16:34:38 +08:00
hy 553b6830de feat: update Windows release process to remove Actions fallback and enforce local builds only 2026-08-07 11:15:02 +08:00
hy b0cf4fc052 feat: support multiple --case targets for release package E2E and drop dead resume-passed flow 2026-08-05 14:31:26 +08:00
hy a75ee93763 fix: prune stale playwright browsers from the sidecar venv before bundling 2026-08-05 12:07:08 +08:00
hy a8ec8aec08 fix: cap vector download e2e timeout, validate sidecar browser revision, pick chat-capable default model, and widen interrupted scan window 2026-08-05 11:32:23 +08:00
hy b3ac1ee046 fix: build mac sidecar venv outside the workspace root to avoid nltk CWD import blocks 2026-08-04 18:50:37 +08:00
hy 1731cf43e3 fix: allow empty version commit when releasing a mac version already present in package.json 2026-08-04 18:17:33 +08:00
hy 2b853c70e2 test: clean stale E2E temp dirs before runs and remove stray media capture test 2026-08-04 13:23:19 +08:00
Yoan Huang 2bffad753e merge: integrate ai live ppt excel tests 2026-08-01 20:58:20 +08:00
Yoan Huang 45c6d96663 feat: add human terminal data reconciliation live test and remove deprecated preview service test
- 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.
2026-08-01 19:02:11 +08:00
Yoan Huang 79b108d327 Revert "feat: record incremental release regressions"
This reverts commit 29c7c0dd5bb19b8f5118a123701e11b07558c4ec.
2026-08-01 16:40:26 +08:00
Yoan Huang d1d8d69ace feat: record incremental release regressions 2026-08-01 15:30:32 +08:00
Yoan Huang c1657dc313 fix: retain exceljs runtime modules in package 2026-08-01 12:25:03 +08:00
hy 2ba4711039 feat: enhance DOCX visual handling with new fixtures and tests for live reading 2026-07-30 11:44:28 +08:00
hy c3b51d82e5 feat(workbench): add e2e tests for interrupted task resume flow and adjust backend live retries 2026-07-28 18:10:20 +08:00
hy f582ba2e8e feat: enhance AI runtime context and human task management
- 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.
2026-07-28 17:04:59 +08:00
hy f21086b36a refactor: remove outdated Excel and PPT visual smoke tests; add new Excel diff and revert tests
- 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.
2026-07-28 11:46:28 +08:00