61 Commits
Author SHA1 Message Date
huangyuan 508132adba perf(test): reuse knowledge computations and expand skill live evaluation
Share content-addressed parsing and embedding caches across isolated test runs, fingerprint relevant dependencies and model assets, and remove implicit UI warm-up. Add realistic two-round Skill delivery evaluation and cache regressions.
2026-10-23 18:50:49 +08:00
Yoan Huang 66b6ebcf79 fix(test): read Windows desktop launch environment variables
Signed-off-by: Yoan Huang <xiaoyuan9816@gmail.com>
2026-10-21 20:44:35 +08:00
hy 4a829624a4 fix: respect release regression impact scope
Signed-off-by: hy <xiaoyuan9816@gmail.com>
2026-10-21 16:29:52 +08:00
hy b88e127e53 fix: resolve CLI entry paths through filesystem aliases
Signed-off-by: hy <xiaoyuan9816@gmail.com>
2026-10-21 14:17:33 +08:00
hy 3b9ba40774 fix: gate releases on packaged cache regression evidence
Signed-off-by: hy <xiaoyuan9816@gmail.com>
2026-10-21 13:47:40 +08:00
hy 0ea1860085 feat: enhance desktop launch handling and improve exit classification for macOS
- Added `findInstalledWindowsShortcut` to locate Windows shortcuts for installed applications.
- Integrated `launchEntryPath` into the E2E application preparation process to improve launch entry tracking.
- Removed loopback URL checks and related functions from `httpPageFetch.ts` to simplify HTTP fetching logic.
- Updated `web/index.ts` to streamline HTTP page fetching logic and remove unnecessary loopback checks.
- Modified E2E tests to correctly retrieve Electron process IDs and improve test reliability.
- Introduced `isExpectedMacDesktopTeardownExit` to classify macOS application exits more accurately.
- Enhanced Electron app launch process to support desktop launch configurations and ensure proper teardown.
- Added tests for desktop launch configurations to ensure sensitive data is not exposed.
- Improved error handling and logging during Electron app launches and exits.
2026-10-21 12:33:06 +08:00
hy 0b95642b92 feat: unify document references and interaction cards, tidy docs and tests 2026-10-11 10:08:28 +08:00
hy 7bbbebaf7e feat(settings): enhance workspace management and indexing
- Updated `settings-test.md` to include new test cases for sequential workspace address preparation and indexing.
- Modified `workbench-test.md` to clarify restrictions on direct calls to workspace preparation methods in E2E tests.
- Revised `test.md` to establish stricter rules for backend case testing, prohibiting the use of mocks and requiring production implementations.
- Refactored IPC handlers to improve job handling and indexing speed application.
- Enhanced `EmbeddingService` to apply indexing speed settings directly.
- Added new tests for sequential workspace preparation and indexing to ensure proper job execution order.
- Introduced utility functions for adding and removing workspace directories through the settings UI in E2E tests.
2026-09-20 13:41:25 +08:00
hy b2b7910dec refactor: streamline embedding runtime configuration and testing
- Removed the 'Not' field from test plan validation to simplify requirements.
- Updated the test architecture validation script to reflect changes in test plan fields.
- Introduced new functions for handling embedding runtime environment variables and session options.
- Refactored embedding runtime process to utilize new environment parsing logic.
- Enhanced unit tests to validate the correct mapping of thread budgets and session options for different performance tiers.
- Ensured that runtime environment variables are correctly set and parsed, maintaining consistency with budget configurations.
2026-09-20 12:58:08 +08:00
hy 5e77c7ddc6 feat(tests): add knowledge test plan and update related documentation 2026-09-20 12:31:22 +08:00
Yoan HuangandCursor 8c3f8173ad fix(test): exclude showcase from backend release gate
Showcase collection must stay on pnpm test:showcase; including it under backend polluted release:start and caused Electron launch contention.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-19 09:23:01 +08:00
hy 240ab91f7b refactor: remove unused test scripts and improve argument validation
- Removed `test:ai`, `test:settings`, and `test:workbench` scripts from package.json.
- Updated test plan documentation to reflect the removal of `test:workbench`.
- Enhanced argument parsing in release scripts to ensure required values are provided.
- Added validation for unknown arguments in release scripts.
- Improved error handling for invalid arguments in test workflow.
- Updated unit tests to cover new validation logic for release arguments.
2026-09-18 14:49:01 +08:00
hy d7e84edda9 Add showcase tests for PPT management, review, knowledge base replies, and service contracts
- Implemented `ppt-management-briefing-edit.showcase.test.ts` to test editing PPTs with AI assistance.
- Created `ppt-management-briefing-review.showcase.test.ts` for reviewing PPTs generated by AI.
- Added `xinghe-kb-reply.showcase.test.ts` to validate knowledge base replies against local documents.
- Developed `xinghe-service-contract.showcase.test.ts` to test AI responses based on PDF contract queries.
- Introduced shared utility functions in `shared.ts` for handling file operations and cost calculations.
- Updated Vitest configuration to include new test paths for showcase cases.
2026-09-18 14:33:38 +08:00
hy 203f8ab180 feat(showcase): add new tests for PPT management and knowledge base interactions
- Implemented `ppt-management-briefing-edit.showcase.test.ts` to test editing PPTs with AI assistance, including cost computation and screenshot capture.
- Created `ppt-management-briefing-review.showcase.test.ts` for reviewing PPTs, ensuring the generation of review screenshots and cost analysis.
- Added shared utility functions in `shared.ts` for handling showcase fixtures, workspace seeding, and cost computation.
- Developed `xinghe-kb-reply.showcase.test.ts` to validate knowledge base interactions, capturing screenshots of responses and ensuring correct tool usage.
- Introduced `xinghe-service-contract.showcase.test.ts` to test PDF contract inquiries, verifying unchanged source documents and capturing relevant screenshots.
- Configured Vitest for showcase tests in `vitest.showcase.config.mts`, setting appropriate timeouts and test inclusion/exclusion criteria.
2026-09-18 14:22:54 +08:00
hy 2c431406f0 feat(tests): enhance testing framework with explicit collection tasks and execution profiles
- Added `showcase` as an explicit collection task in the testing framework, distinct from product regression.
- Introduced explicit collection task rules and updated documentation to reflect changes in testing structure.
- Updated E2E testing commands to utilize `--execution-profile` for better control over test execution.
- Implemented validation to prevent the selection of certain groups (e.g., `showcase`) during release command parsing.
- Enhanced regression selection logic to allow opt-in groups for release impact assessment while rejecting disallowed groups.
- Updated related scripts and test cases to ensure compliance with new testing rules and execution profiles.
2026-09-18 13:56:30 +08:00
hy 5cff282d2c feat(e2e): introduce default exclude groups for E2E tests and update related scripts 2026-09-18 12:36:56 +08:00
Yoan Huang 33de80f1c3 feat(e2e): enhance E2E installation and cleanup process
- Refactor E2E installation logic to improve handling of Windows and macOS paths.
- Introduce cleanup functions to remove E2E installation directories and associated shortcuts.
- Update tests to cover new cleanup functionality and ensure proper detection of E2E install paths.
- Modify package isolation helpers to streamline the installation and cleanup processes.
2026-09-17 23:23:28 +08:00
Yoan HuangandCursor 6b1f1ce229 fix(tests): make package E2E shortcut isolation resilient to locked Start Menu links
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-17 22:01:45 +08:00
Yoan Huang 6a440a21d6 feat: enhance E2E application isolation and workspace file explorer functionality
- Update E2E testing commands in documentation to clarify installation paths for macOS and Windows.
- Refactor package application script to improve handling of E2E installations, including renaming and restoring shortcuts.
- Introduce new module for E2E isolation helpers, including functions for detecting installation paths and renaming applications.
- Optimize workspace source service to use Promise.all for concurrent processing of file entries.
- Add reload token mechanism in WorkbenchContentPanel to refresh file explorer state.
- Implement directory loading and refresh logic in WorkspaceFileExplorer to ensure visibility of newly created files.
- Enhance ChatPage workspace selection logic for better path normalization.
- Add unit tests for E2E isolation helpers and E2E tests for workspace file explorer refresh behavior.
2026-09-17 21:18:21 +08:00
Yoan Huang d483c4a208 feat: implement office file write notifications and handling for WPS Office
- Introduced `withOfficeFileWrite` utility to manage file write operations with proper closing and reopening of documents.
- Updated `notifyOfficeFileWritten` to utilize the new utility and handle office file paths more effectively.
- Enhanced `WpsSyncService` to manage document closing and reopening during write operations, ensuring proper synchronization with connected clients.
- Added tests to verify the closing and reopening behavior of documents during write operations, ensuring that the correct events are dispatched to connected add-ins.
- Refactored existing code to improve readability and maintainability, including the handling of file paths and error management.
2026-09-16 21:29:22 +08:00
hy 79a1f567ad refactor: enhance message timeline and workbench content handling; improve compact state management and tooltip integration 2026-09-09 15:46:58 +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 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 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 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
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 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 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 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
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
hy 180986beb6 test: allow three concurrent live E2E cases 2026-07-28 09:42:07 +08:00
hy 8ff10ae0b2 test: refine macOS release E2E scheduling 2026-07-27 19:24:41 +08:00
hy cb740580ed test: add cross-architecture warm-up checks to app update publish config 2026-07-27 17:07:21 +08:00
hy 35a6e67864 fix(test): serialize browser-backed ppt cases 2026-07-27 15:45:22 +08:00
hy ed3f555efb fix(test): stabilize parallel release coverage 2026-07-27 15:28:13 +08:00
Yoan Huang fd09e47210 fix(tests): prepare Node SQLite binding for package e2e 2026-07-26 13:50:44 +08:00
Yoan Huang 95118ea6a0 feat(tests): warm vector cache before parallel e2e 2026-07-26 12:24:26 +08:00
Yoan Huang 81b130bb67 feat(tests): update execution modes and improve workspace binding
- 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.
2026-07-26 10:54:29 +08:00