Commit Graph

4484 Commits

Author SHA1 Message Date
naman-bruno
12961db95d feat(ai): AI model handling with reasoning support (#8539) 2026-07-08 22:04:35 +05:30
Bijin A B
7ce3bf431f Merge pull request #8535 from sid-bruno/fix/system-proxy-refresh
fix: system proxy refresh
2026-07-08 22:04:20 +05:30
Chirag Chandrashekhar
55c3003d6b fix(mount): persist raw file content in file-index for file mode (#8531) 2026-07-08 21:59:31 +05:30
naman-bruno
d0863e2a43 feat(app): introduce Enable App setting (#8521) 2026-07-08 21:46:11 +05:30
Pooja
139d71a8f8 fix(ws): preserve message editor scroll when selecting another message (#8536) 2026-07-08 19:12:12 +05:30
ravindra-bruno
4dadd6c69f fix(ai-assist): prevent double border and gap shift on AI generate button hover (#8517) 2026-07-08 18:48:24 +05:30
Sid
f6e3172239 feat(system-proxy): implement refreshShellEnvProxyVars to sync proxy vars from shell config 2026-07-08 18:16:22 +05:30
abhishekp-bruno
76f11e0385 FIXED proxy not refreshing from terminal
RESOLVED pr conversations

ADD test cases and os specific test casess

REVERTE comment removed for windows refetch

refactor: remove redundant afterEach cleanup in shell-env-proxy-refresh tests

RENAME the  test file and add more test for wider coverage among the test cases

test: add integration tests for refreshShellEnvProxyVars

delete: remove outdated system proxy integration test file

fix: enhance proxy variable restoration on shell-env subprocess failure

fix: implement timeout for shellEnv to prevent hanging on misconfigured shells

feat: add refreshShellEnvProxyVars function to shell-env-state.ts and update shell environment initialization logic

refactor: simplify shell environment refresh and update system proxy integration

refactor: implement withTimeout utility for shell environment operations to prevent indefinite hangs
2026-07-08 18:16:15 +05:30
naman-bruno
7a1ea5e381 style(app): app mode toggle button styling (#8523) 2026-07-08 14:57:30 +05:30
naman-bruno
2079c7a452 feat(ai): implement AI chat sidebar popout and sidebar resizing (#8509) 2026-07-08 14:56:44 +05:30
Chirag Chandrashekhar
da707ea0d5 fix(mount): survive large and corrupt files when mounting collections (#8514) 2026-07-08 13:08:55 +05:30
sachin-thakur-bruno
7af6150f42 fix(request-panel)/fixed overflow size column issue on first load (#8525)
* fix(request-panel)/fixed overflow size column issue on first load

* added tests

* refactor the total width calculation based on available space
2026-07-08 12:43:53 +05:30
Sid
86e4dc065b fix(ToggleSwitch): correct onChange handler for response pane (#8520)
* fix(ToggleSwitch): correct onChange handler to prevent unintended toggling

* fix(ToggleSwitch): update onChange handler to correctly trigger toggle action

* fix(tests): enhance clipboard handling and improve response pane interactions

* fix(ToggleSwitch): change event handler from onChange to onInput for better toggle interaction
fix(tests): update response pane click action to ensure proper interaction with dropdown

* fix(tests): remove clipboard initialization from test setup
2026-07-07 23:21:19 +05:30
adwait-bruno
ad14fdfba5 fix(openapi):validate API spec imports (#8322)
* fix(openapi):validate API spec imports and resolve preview to error state instead of hanging

* fix(openapi):allows opening of malformed files with correct extension

* fix(openapi):reject non-OpenAPI content in spec preview before timeout

* test(openapi): add unit + e2e coverage for spec import validation

* refactor(openapi):centralise spec error messages and fix dialog restore

* fix:removed nested try catch

* test:added common locators

* refactor:removed repeated lines

* refactor:removed redundant file reads

---------

Co-authored-by: Adwait Aayush <adwaitaayush@Adwaits-MacBook-Air.local>
2026-07-07 22:05:23 +05:30
Sid
0bba66a590 feat: variable descriptions (#8269)
* feat: add description column to various tables and enhance UI interactions
- Introduced a description column in Headers, VarsTable, and other components to allow multi-line descriptions.
- Added toggle buttons to show/hide the description column in relevant tables.
- Updated EditableTable component to support dynamic row addition with customizable labels.
- Enhanced UI for better user experience with consistent button styles and spacing adjustments.

* chore: resize fix handles

* fix: restrict column check for last index

* refactor: remove unwanted style and fix bottom padding of the last child in the table row

* tests: improve testability and fix impacted locators

* tests: fix locators for value fields

* fix: improve newline handling in description prefix

* fix: ts changes

* chore: remove redundant code and fix description roundtrip

* chore: remove redundant check

* tests(bru-lang): tests for description and annotation

* test: improve locators and tests

* tests: descriptions

* chore: re-add description setup

* fix: re-add description cols

* chore: fix the double click reset

* fix: account for hidden sidebar in request pane width calculation

* refactor: ui/ux fixes for data type toggle

* chore: inline common deps into bruno-lang and bruno-schema

* chore: tests

* chore: fix ux for descriptions

* fix: layout for environment vars table

* fix: ensure correct row selection for multipart file upload in tests

* feat: enhance UID assignment for request headers and variables in collections

* chore: simplify

* chore: update pkg

* chore: abstract the e2e utils

* chore: fix exports

* tests: fix locators for datatype vars

* fix: ux issue with secrets in environment table

* tests: update locators for collection headers and vars descriptions

* tests: update locators to use data attributes for datatype selectors

* chore: update default css width for actions column

* chore: remove tooltip for string type warnings

* fix: reduce name widths

* refactor: update annotation serialization to use single-quote delimiters for descriptions

* refactor(tests): simplify description formatting in jsonToEnv tests

* feat: add multiline description escaping and unescaping functions with tests

* refactor: clean up imports and improve multiline text block handling

* refactor: update locators to use new test IDs for environment variable editors

* refactor: streamline header input handling and improve environment variable row access

* refactor: update e2e-test job to support self-hosted runners

* refactor: update E2E test runner configuration to include e2e and macOS environments

---------

Co-authored-by: Pragadesh-45 <temporaryg7904@gmail.com>
2026-07-07 21:43:39 +05:30
Pooja
958ca49156 fix(ws): prevent message list from scrolling on request pane tab switch (#8448) 2026-07-07 20:42:34 +05:30
shubh-bruno
707489ef77 fix(tests): update openFolderRequest function for tests (#8506)
* fix(tests): update openFolderRequest function for tests

* fix: update imports for openFolderRequest

---------

Co-authored-by: shubh-bruno <shubh-bruno@shubh-bruno.local>
2026-07-07 19:52:12 +05:30
Sid
2cc382538d fix(e2e-test): update runner configuration to support self-hosted and e2e environments (#8524) 2026-07-07 19:43:26 +05:30
naman-bruno
337b962e66 feat(app): enhance EmptyAppState (#8522) 2026-07-07 19:24:55 +05:30
gopu-bruno
85e33c595a fix(ai): align AI preference tab with theme styling (#8518) 2026-07-07 17:32:58 +05:30
Pooja
4592d2c30e fix(app): scope env variable/secret search per tab (#8491) 2026-07-07 15:05:29 +05:30
sachin-thakur-bruno
6f8865e162 fix(request-panel)/changed request panel static width to percentage width of screen width (#8499) 2026-07-07 12:27:50 +05:30
Sid
cbed13a346 feat(snapshot): implement active workspace tab type tracking (#8487)
* feat(snapshot): implement active workspace tab type tracking and restoration

* feat(snapshot): introduce workspace tab types and update related logic
2026-07-07 00:09:38 +05:30
Utkarsh
4ddf65c0c1 fix: changelog test cases fail fixed (#8498) 2026-07-06 23:18:39 +05:30
naman-bruno
06ca9b9521 refactor(AI): update ToggleSwitch size to 'xs' (#8500) 2026-07-06 23:13:51 +05:30
ravindra-bruno
143cb5fe33 fix(ai): prevent AI preferences panel clipping and enforce min-height on Generate Tests textarea (#8495) 2026-07-06 19:18:59 +05:30
Abhisek M
440156d80e Fix icon ai (#8270)
* changing AI icon in Pref

* Fix final icon for AI

* delete unused file

* fix-merge-conflicts

---------

Co-authored-by: naman-bruno <naman@usebruno.com>
Co-authored-by: Utkarsh <utkarsh@usebruno.com>
2026-07-06 19:05:37 +05:30
ravindra-bruno
e9158123bd fix(migration): remaped snapshot tab paths and preserve uids on bru-t… (#8450)
* fix(migration): remaped snapshot tab paths and preserve uids on bru-to-yml migration

* ci: re-trigger checks

---------

Co-authored-by: Utkarsh <utkarsh@usebruno.com>
2026-07-06 18:47:26 +05:30
naman-bruno
153f0cd91f refactor(AI): remove platform modifier key mock (#8496) 2026-07-06 18:36:31 +05:30
naman-bruno
732356b7c0 refactor(AI): enhance active item retrieval logic and improve UI styling (#8477)
* refactor(AI): enhance active item retrieval logic and improve UI styling

* fix

---------

Co-authored-by: Utkarsh <utkarsh@usebruno.com>
2026-07-06 16:40:25 +05:30
ravindra-bruno
6b90e80c5d fix(ai): show platform-correct modifier key in AI shortcut hints (#8430)
* fix(ai): show platform-correct modifier key in AI shortcut hints

* test(ai): cover platform-correct modifier key in AI shortcut hint specs

* Added the import

* Added ai.enabled default to playwright default preferences

---------

Co-authored-by: Utkarsh <utkarsh@usebruno.com>
2026-07-06 15:35:44 +05:30
Pooja
0148ba6510 feat(ws): improve message panel UX (#8465) 2026-07-06 14:46:27 +05:30
Sid
b1f08b5131 fix(snapshot): active workspace restoration from snapshot (#8392)
* feat(workspaces): implement active workspace restoration from snapshot

- Added a new action to restore the active workspace from a snapshot.
- Integrated workspace restoration into IPC events for improved user experience.
- Refactored workspace loading logic to prioritize valid workspaces and handle invalid paths.
- Introduced utility functions for workspace path validation and normalization.
- Added tests to ensure correct functionality of workspace restoration and validation logic.

* feat(snapshot): refactor snapshot serialization and add environment preservation logic

- Moved snapshot serialization logic to a new file for better organization.
- Implemented environment preservation for collections during snapshot serialization.
- Added utility functions to handle collection environment checks and serialization.
- Introduced tests to validate the new serialization behavior and environment preservation.
- Enhanced existing tests to cover edge cases for unmounted collections and environment persistence.

* Add tests for missing and invalid environment files

* feat(snapshot): refactor devTools normalization and add saveToken to IPC handler

* refactor(snapshot): remove saveToken from IPC handler for renderer:snapshot:save

* feat(snapshot): implement collection deduplication logic in SnapshotManager and add corresponding tests

* feat(snapshot): enhance workspace-specific environment handling for shared collections

* feat(snapshot): remove sourceWorkspacePathname from snapshot serialization and related tests

* feat(snapshot): remove sourceWorkspacePathname from SnapshotManager and add tests for shared collection environment restoration

* feat(snapshot): refactor collection deduplication tests and enhance snapshot seeding utility

* feat(snapshot): enhance workspace path normalization and improve snapshot environment tests

---------

Co-authored-by: engineering-bruno <engineering@usebruno.com>
2026-07-04 17:38:41 +05:30
Bijin A B
b6187b40e1 chore: update coding conventions and best practices for this repo (#8482) 2026-07-04 16:55:52 +05:30
sachin-bruno
acc74745de (size/L)feat:Added the option for bruno version edit in the collection overview (#8424)
* feat:Added the option for bruno version edit

* Conflicts resolved

* Comments resolved

* Comments fixed

* Comments addressed

* Comments addressed

---------

Co-authored-by: bruno-sachin <bruno-sachin@brunos-MacBook-Air.local>
2026-07-03 22:34:33 +05:30
sanish chirayath
e7197d6363 fix(variables): correct scripted-variable persistence races and cross-request propagation (#8406)
* feat(collections): implement sliding window for script request UIDs to manage stale updates

- Introduced a bounded sliding window mechanism for tracking recent script request UIDs, allowing for better handling of stale updates from superseded or cancelled requests.
- Updated relevant functions to utilize the new `isStaleScriptRequest` utility for improved clarity and maintainability.
- Enhanced the persistence logic to ensure that updates from retired requests do not interfere with newer requests, improving data integrity during concurrent operations.
- Added comprehensive tests to validate the behavior of the new UID management system and its impact on variable propagation across requests.

* refactor(tests): remove outdated test for persistentEnvVariables in runtime tests

- Eliminated the test case that checked for the inclusion of persistentEnvVariables in the result, as it is no longer relevant.
- Cleaned up the test suite to enhance clarity and maintainability, focusing on relevant assertions for variable management.

* refactor(collections): simplify environment persistence logic and remove stale request handling

- Updated the `persistActiveEnvironment` and related functions to eliminate the requestUid parameter, streamlining the logic for environment persistence.
- Removed outdated checks for stale updates from superseded requests, enhancing clarity and maintainability.
- Deleted the `_scriptRequestUids` management code and associated tests, as they are no longer necessary for the current implementation.
- Improved the handling of environment updates to ensure accurate state management without stale data interference.

* refactor(filesystem): remove unused hasJsExtension function

- Deleted the `hasJsExtension` utility function from the filesystem module as it was no longer needed.
- Cleaned up the exports to enhance clarity and maintainability of the codebase.

* test(network): add unit tests for applyCollectionVarsToCollectionRoot

* refactor(ipc, environments): implement file locking for environment updates

- Updated the environment persistence logic in both `collection.js` and `workspace-environments.js` to utilize file locking during read and write operations.
- This change ensures that concurrent access to environment files is managed safely, preventing potential data corruption and enhancing reliability during updates.
2026-07-03 14:44:38 +05:30
adwait-bruno
b4e783d9e9 fix:Draft icon indicator on Workspace Environment tab (#8342) 2026-07-03 13:41:40 +05:30
shubh-bruno
efd61bf682 feat(auth): akamai auth integration (#8199) 2026-07-03 13:31:28 +05:30
Pooja
876a4c4cd3 fix(app): move env save-all icon to header actions (#8449) 2026-07-03 13:27:33 +05:30
Pooja
37aa720813 fix(ws): persist message name rename on cmd+s/ctrl+s while editing (#8447) 2026-07-03 13:25:54 +05:30
sachin-bruno
bf3abec50e CDN docs url changes (#8466)
Co-authored-by: bruno-sachin <bruno-sachin@brunos-MacBook-Air.local>
2026-07-03 00:34:11 +05:30
gopu-bruno
eca0939f31 fix(ai): render AI assist popup via portal to prevent clipping by devtools (#8463) 2026-07-02 16:07:42 +05:30
naman-bruno
408aef9eef feat(ai): add security preferences management to AI settings (#8453) 2026-07-02 14:42:48 +05:30
sharan-bruno
022426a3ab fix(import): linting issue in Import fails for gRPC request without URL in exported collection (#8462) 2026-07-02 14:33:44 +05:30
Utkarsh
bd271ffad8 feat(workspaces): dispatch closeAiSidebar action on workspace switch (#8451) 2026-07-02 13:43:56 +05:30
prateek-bruno
6f96dfd58c fix: remove the v4-migration legacy key from local storage (#8353) 2026-07-02 12:55:36 +05:30
naman-bruno
488c9f2444 feat(AI): add stop generation functionality and improve UI interactions (#8452) 2026-07-02 01:40:28 +05:30
Sid
99538283a3 chore: update lodash to version 4.18.1 across all packages (#8455) 2026-07-02 01:26:38 +05:30
sachin-bruno
9157eb4190 feat:Added collection name and minor UI changes to the generate doc modal (#8391)
* feat:Added collection name and minor UI changes to the generate doc modal

* feat:Removed the test file

* feat: updated the version number changes and test cases

* Comments fixed

---------

Co-authored-by: bruno-sachin <bruno-sachin@brunos-MacBook-Air.local>
2026-07-01 23:37:55 +05:30
adwait-bruno
7b155c0e0a fix:serialize object variable values before copying to clipboard (#8362)
* fix:serialize object variable values before copying to clipboard

* fix:guard JSON.stringify against circular and non-serializable object values

* refactor:added string helper function

* test:added playwright test

---------

Co-authored-by: Adwait Aayush <adwaitaayush@Adwaits-MacBook-Air.local>
2026-07-01 20:19:17 +05:30