- Optimize session creation to use timestamp naming by default without requiring modal input
- Improve UI layout to display titles and descriptions more effectively in both list and
detail views
- Apply code formatting improvements across the codebase for better readability
- Fix linting issues in scripts and component files
- Add x and y coordinates to the event data sent to the Chrome extension
- Update RecordTimeline component to utilize new coordinate properties for element positioning
- Ensure compatibility with existing event handling logic
- Add @rsbuild/plugin-node-polyfill to support Node.js polyfills in the project
- Update event recording logic to include viewport dimensions and element positioning
- Improve screenshot handling by integrating new properties in RecordedEvent interface
- Enhance RecordTimeline component to display element positioning and dimensions
- Optimize event handling and UI updates for better user experience
- Clean up and refactor code for improved readability and maintainability
- Downgrade React and React DOM to 18.3.1 in all packages for consistency
- Update @types/react and @types/react-dom to 18.3.1
- Ensure TypeScript version is consistently set to ^5.8.3
- Adjust dependencies in package.json files for various apps and packages
- Enhance Chrome extension functionality with safe API wrappers for better error handling
- Implement checks for Chrome extension environment in recording components
- Add screenshot capture before and after each recorded event
- Implement screenshot capture in chrome extension service worker
- Add screenshot fields to RecordedEvent interface
- Create UI components for displaying screenshot thumbnails in timeline
- Add hover effects and popover for screenshot preview
- Remove unused AGENTS.md file
- Update React to ^19.1.0 and React DOM to >=19.1.0 in all packages
- Update @types/react to ^19.1.4 and @types/react-dom to ^19.1.3
- Update TypeScript to ^5.8.3 across all packages
- Update dayjs to use caret version ^1.11.11
- Align all rsbuild and rslib plugin versions
- Fix dependency version inconsistencies to pass CI checks
- Add new record UI components (record.tsx, record.less)
- Integrate recording capabilities into popup extension
- Update worker script to handle recording events
- Add content script wrapper for recording injection
- Remove EventRecorder from record-form app (moved to extension)
- Update manifest.json permissions for recording
- Update dependencies for recording functionality
- Enhance store with recording state management
* fix(web-integration): sanitize content for reportHtmlContent
* fix(workflow): version
* fix(web-integration): recover after retrieve
* fix(web-integration): test
* chore(core): fix lint
* fix(report): remove ! for content
* chore(core): add test case
* chore(core): add test case
---------
Co-authored-by: yutao <yutao.tao@bytedance.com>
* fix(web-integration): handle undefined aiInput case in ScriptPlayer
* fix(workflow): version
* fix(core): yaml player
---------
Co-authored-by: yutao <yutao.tao@bytedance.com>
* feat(web-integration): support disable cache for a single api call
* feat(workflow): version mismatch
* feat(web-integration): cache rename to cacheable
* feat(web-integration): add cacheable option to multiple API methods and update caching documentation
* docs(site): update cacheable option descriptions to reference caching feature documentation
* docs(core): update caching doc
---------
Co-authored-by: yutao <yutao.tao@bytedance.com>
* fix(web-integration): cache hit when element.id exist and scroll element instantly
* fix(web-integration): use parent xpath for text node
* fix(web-integration): only scroll in to view when element is not completly visible
* fix(shared): distinct text node
* test(web-integration): getElementInfoByXpath
* test(web-integration): rename desc
* test(web-integration): fix
* test(web-integration): snapshot attributes only
* test(web-integration): fix test
* feat(web-integration): use xpath for cache instead of id
* feat(web-integration): enhance TaskCache to support xpaths for cache matching and add new test cases
* feat(web-integration): add debug log for unknown page types in TaskCache
* feat(web-integration): update caching logic and cache hit conditions for Plan and Locate tasks
* chore(core): update debug log
* feat(web-integration): update rspress.config and enhance TaskCache structure with new properties
* feat(web-integration): recalculate id when hit cache
* fix(web-integration): update mock implementation in task-cache test to use evaluate method
* feat(web-integration): enhance element caching by adding XPath support and improving cache hit logic
* chore(core): lint
* feat(web-integration): improve XPath handling in web-extractor
* test(web-integration): fix tests
* feat(core, web-integration): add attributes to LocateResultElement and enhance element handling
* fix(core): lint
* feat(web-integration): add midsceneVersion to TaskCache and update cache validation logic
* fix(core): test
* fix(web-integration): update cache validation logic to prevent reading outdated midscene cache files
* feat(web-integration): enhance TaskCache to track used cache items and improve cache retrieval logic
* fix(core): xpath logic (#710)
* feat(core): resue context for locate
* feat(core): build yamlFlow from aiAction
* feat(core): refine task-cache
* feat(core): update cache
* feat(core): refine task-cache
* feat(core): refine task-cache
* feat(core): remove unused checkElementExistsByXPath
* feat(core): use yaml file as cache
* chore(core): fix lint
* chore(core): print warning for previous cache
* refactor(core): remove quickAnswer references and improve element matching logic
* fix(core): update import path for buildYamlFlowFromPlans
* chore(web-integration): update output image and skip task error test
* fix(web-integration): update test snapshots to handle beta versions
* fix(web-integration): adjust test snapshots for version consistency
* fix(web-integration): track original cache length and adjust matching logic in tests
* fix(web-integration): update test URLs to reflect new target site and enable previously skipped test
* chore(core): update cache docs
* fix(core): test
* feat(core): try to match element from plan
* fix(web-integration): cache id stable when retry in palywright
* fix(web-integration): typo
* style(web-integration): lint
* fix(web-integration): stable cacheid in tests
* fix(web-integration): cache id
---------
Co-authored-by: quanruzhuoxiu <quanruzhuoxiu@gmail.com>
* feat(android): implement repeat function for scrolling until actions
* fix(shared): fix potential error in getAIConfig by ensuring trim is called correctly
* feat(android): update scrolling behavior with adjustable duration and added sleep
* feat(android): refine scrolling durations with new constants for fast and normal scroll