Commit Graph
169 Commits
Author SHA1 Message Date
hyandCursor 50448bddda fix: allow aborting unpublished release tags for same-version retake
Failed pre-publish tags can be deleted and reused instead of stacking versions; docs and prepare errors point at release:abort.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 17:59:14 +08:00
hy 6b505d9f17 feat: enhance seed partner timeline script and improve digest handling in memory services 2026-09-11 15:40:39 +08:00
hy 84f324cdea Refactor AI context compaction tests and utilities
- Removed unused imports and consolidated message handling in context compaction tests.
- Updated context compaction logic to utilize new message log structures.
- Enhanced test coverage for message log recovery and tail processing.
- Improved scheduled task trigger tests to ensure timing accuracy.
- Aligned AI run context creation in tool harnesses for consistency.
- Added options parameter to createWorkbenchNewSession for flexible model selection.
2026-09-11 15:18:46 +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 88ea2a9de4 feat: add MessageTimeline component for visualizing message history
- Implemented MessageTimeline component to display messages in a timeline format.
- Integrated timeline functionality into ChatPage, allowing users to navigate through message history by day, month, and year.
- Added utility functions for handling timeline data, including building timeline nodes and collecting message day starts.
- Updated tests to cover new timeline features and ensure correct functionality.
- Refactored existing code to remove redundant functions and improve clarity.
- Enhanced UI elements for better user experience when interacting with the timeline.
2026-09-07 17:42:54 +08:00
hy b9e8733662 feat: update release process and storage layout for improved artifact management and download handling 2026-09-07 14:43:11 +08:00
hy b8c8bb73e0 feat: enhance AWS CLI integration with virtual addressing style support and update related tests 2026-09-07 13:00:49 +08:00
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