- Rename functions to follow proper naming conventions:
- _envDiff() → calculateEnvironmentDiff()
- _objIsEqual() → areObjectsEqual()
- Replace cryptic property names with descriptive ones:
- @I → @iso, @t → @total, @c → @currency
- t → tabs, @p → @path
- Add comprehensive error handling to all context modules
- Improve type safety by replacing 'any' types with proper interfaces
- Add JSDoc documentation for all new functions
- Add depth limits to prevent infinite recursion in diff algorithm
- Add proper TypeScript types throughout the codebase
These changes address the critical issues identified in the PR review while
maintaining the performance optimization functionality.
Updated the getEnvironmentDetails.spec.ts tests to expect XML format instead of markdown headings. The implementation was changed to use XML format with the fast-xml-parser library, but the tests were still expecting markdown format. This change updates the tests to match the new XML structure while preserving the same semantic checks.
Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
Added prevEnvDetails property to Task class to store previous environment state.
Modified getEnvironmentDetails to recursively compare current and previous
environment details, returning only the differences.
This optimization reduces the size of environment details in responses by
omitting any records that are identical to the previous state.
Fixes: #5844
Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
Converted monolithic environment details implementation into separate context modules.
Each module handles a specific aspect of the environment (VSCode, terminal, files, etc.).
Replaced reminder.ts with integrated todo implementation and standardized XML attributes.
Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
* improved chat row first pass
* big UI improvements
* working functionality
* tests working
* ok finally tests working for real!
* translations
* add back hidden flag
* remove option to skip notif
* fixed image issue
* ui fix
* put back edit flag
* oops test fix
* reduce margins
* code review
fix: remove invalid skip-checkout parameter from GitHub Actions workflows
- Removed skip-checkout parameter from nightly-publish.yml
- Removed skip-checkout parameter from marketplace-publish.yml
- Removed skip-checkout parameter from changeset-release.yml
The setup-node-pnpm action only accepts: node-version, pnpm-version, skip-install, and install-args.
The skip-checkout parameter was causing warnings in workflow runs.
Fixes#5674
* feat: add Cmd+Shift+. keyboard shortcut for previous mode switching
- Add switchToPreviousMode function that cycles backwards through modes array
- Update handleKeyDown to detect Cmd+Shift+. keyboard combination
- Update modeShortcutText to display both next and previous mode shortcuts
- Add forPreviousMode translation key to all 18 language files
- Implements backwards mode cycling using modulo arithmetic for proper array wrapping
Fixes#5692
* fix: correct keyboard shortcut detection for Cmd+Shift+. (previous mode)
When Shift is pressed with the period key, event.key becomes ">" instead of ".".
Fixed line 1576 to check for event.key === ">" for proper Cmd+Shift+. detection.
Fixes keyboard shortcut issue reported in PR comment.
* fix: use event.code for cross-platform keyboard shortcut compatibility
- Replace event.key checks with event.code === "Period" for both shortcuts
- Fixes keyboard layout compatibility issue where Shift+Period produces different characters on non-US layouts
- Consolidates both shortcuts into a single conditional block for better maintainability
- Addresses feedback from @daniel-lxs in PR #5695
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
Co-authored-by: Daniel <57051444+daniel-lxs@users.noreply.github.com>
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
Co-authored-by: Daniel <57051444+daniel-lxs@users.noreply.github.com>