* Add vault-crypto/mime utilities and remove heavyweight third-party imports
- Add AES-GCM vault-crypto utility with tests (replaces node-forge usage)
- Add common/mime.ts to replace mime-types package dependency
- Replace tough-cookie import in response-cookies-viewer with inline parser
- Replace @grpc/grpc-js status import in grpc-status-tag with inline constant
- Replace electron.ipcRenderer in auth.clear-vault-key with showToast()
- Remove unused analytics call from window-utils
* Fix impure Date.now() key on CodeEditor; use setValue via ref instead
Replace key={Date.now()} with a useEffect that calls editorRef.current.setValue(snippet)
whenever snippet changes, keeping the editor mounted. Also apply prettier fixes from quick-check.
* fix: address Copilot review comments on PR #9992
- vault-crypto: replace forge-in-renderer with IPC bridge (main process
retains forge; renderer calls window.main.vault.{en,de}cryptSecretValue)
- mime.ts: expand lookup table to 48 entries (webp, wasm, mp4, docx, xlsx,
fonts, audio/video, etc.) and fix remaining mime-types import in send route
- response-viewer: move charset alias map to module level; normalise iconv-lite
alias names (utf8, latin1, win1252, …) to WHATWG labels for TextDecoder
- auth.clear-vault-key: fix typo "all you local" → "all your local"
* fix: sort imports in send route
* feat: disable nodeIntegration in renderer mainWindow, remove import check tooling
- Set nodeIntegration:false and contextIsolation:true on mainWindow webPreferences
(hidden window keeps nodeIntegration:true for user script execution)
- Split script-security-rules.ts out of script-security-policy.ts so the renderer
can import display-only constants without pulling in require-interceptor
- Add templating/renderer-safe.ts with Node-free render/reload/getTagDefinitions;
update all renderer callers to import from it instead of templating/index
- Split insomnia-testing generate.ts: move generateToFile to generate-to-file.ts
so generate() has no Node imports; expose generateToFile from new entry point
- Move runTests execution to main process via IPC (run-tests channel) so the
renderer routes no longer import the Mocha-backed test runner directly
- Delete vite-plugin-electron-node-require.ts, check-renderer-node-imports.ts,
renderer-node-import-baseline.json and all related scripts/plugins now that the
renderer bundle is free of Node built-in imports
* fix: sort imports, use static TestResults type, remove unused analytics import
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* remove mime stuff
* remove ci step
* update plan
* insomnia testing adapter
* use export method
* trick react router ssr
* add renderer errors
* globalThis
* improve error
* move plugin types
* ipc validate proto
* fix import
* plugin types
* polyfill events for jshint
* restore node require plugin
* vault adapter
* add crypto bridges
* tough-cookie ipc
* util stub
* split cookie into network adapter
* assert
* fix plugin index import
* serialise cookie
* decouple renderer from scripting
* Fix rebase conflicts and import path issues
- Fix incorrect ~/insomnia-data imports (should be insomnia-data package)
- Remove non-existent mime utility imports and provide simple fallback
- Remove incorrect analytics call from main process
- Remove unused imports (Settings, Cookie)
- Fix Response type annotation for getResponseBodyBuffer
* lint
* fix tests
* fix: use dynamic import for crypt in session.ts for main process compatibility
The session.ts module is used in both renderer and main process contexts (via sync.invoke IPC handlers). When running in the main process, window.main is undefined, causing TypeError when trying to access window.main.crypt.decryptAES().
Changes:
- Use dynamic import of crypt module (only loaded in main process context)
- In renderer: window.main.crypt is always available so dynamic import never executes
- In main process: dynamic import loads crypt with node:crypto support
- Protect loginStateChange() calls with window existence checks
This avoids bundling node:crypto in the Vite renderer build while still supporting both execution contexts.
Fixes E2E test failures in sync operations (remoteBackendProjects, _assertSession, etc.) caused by disabled nodeIntegration.
* fix: add aria-label to template tag preview and browser-safe encoding fallback
- Add aria-label="Live Preview" to textarea in TagEditor for better Playwright accessibility
- Add atob() fallback for decodeEncoding in browser contexts where Buffer isn't available
- Fixes smoke test element discovery for template tag preview modal
* fix: add explicit waits for element stability in environment test
Add toBeEnabled() and toBeVisible() waits before clicking elements in the
'kv pair environment can be updated' test. This prevents timeout errors from
unstable/flickering elements during modal interactions, especially in
high-concurrency shard execution.
* remove unused
* add autocomplete generate test step
* fix lint
* put analytics back in
* combine vault and crypto adapter
* remove unused export split
* remove insomnia-testing cruft, addressing feedback
* fix: use direct imports in insomnia-inso after insomnia-testing index.ts removal
* fix circular reference
* fix: move createElectronNotifier to main process to fix SSR error
Move the electron-dependent createElectronNotifier function from repo-file-watcher.ts
to git-service.ts to prevent electron imports from being evaluated in the renderer/SSR context.
* export har ipc bridge
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: integrate AI plugin and configure LLMs in preferences (#9192)
* poc: LLM configuration
* fix formatting + tidy script
* fix openpath type send method
* exempt node_modules from vitest
* reset package-lock for inso build
* switch from send/on to invoke/handle
* switch to pluginData
* remove unnecessary animation
* remove extraneous external defs in frontend bundle config
* rebase fix
* feat: mock server gen (#9201)
* add ipc handler methods in front of llm config service (#9202)
* feat: gemini first class config support (#9209)
* feat: add gemini as a backend
* fix: save api key the first time
* chore: call plugin from utility process (#9210)
* feat: additional mock server event tracking (#9215)
* feat(Git Commit): Automatically generate commits (#9164)
* feat: add AI-generated commit message functionality in staging modal
* feat: enhance AI commit message generation with error handling and improved UI
* fix: update button icon and text for commit generation state in staging modal
* feat: add diff functionality to Git service and integrate with AI commit message generation
* feat: update isomorphic-git to version 1.33.1 and add stash functionality to Git VCS
* feat: implement multiple commit functionality for Git VCS and integrate with staging modal
* feat: add validation for staged changes before generating commit messages
* feat: implement generateCommitsFromDiff functionality for AI commit message generation
* Cleanup staging modal and use tree data for reordering and submitting multiple commits
* Revert "feat: update isomorphic-git to version 1.33.1 and add stash functionality to Git VCS"
This reverts commit b731372debdfb07ac118d84900c2cecb635a34b4.
* feat: update type definitions for diff changes in Git VCS
* refactor: remove console logs and commented code from staging modal and AI commit generation
* feat: implement git commit generation process using a separate utility process for improved error handling and performance
* fix: improve error handling messages in AI commit generation
* chore: update optional dependency for AI plugin to alpha version 1.0.3
* fix: ensure data dir exists prior to reading (#9220)
* fix: ensure data dir exists prior to reading
* rename handler
* feat: mock server gen ux improvements (#9221)
* fix: include mockgen script in build (#9222)
* feat: add git commit generation process to build script (#9226)
* fix: set min height for git folder selector (#9242)
* chore: ai plugin 1.0.4 (#9243)
* feat: toggle ai features (#9232)
* feat: track commit generation and saving events for analytics (#9293)
* feat: add analytics tracking for commit message generation events
* fix: update segment event names to camelCase for consistency
* Update package-lock with the plugin modules
* fix(build): add x64ArchFiles option back (#9297)
* fix: autoselect self hosted mock when cloud mock disabled (#9299)
* fix: hide ai settings from scratch pad user (#9300)
---------
Co-authored-by: Shelby Moore <13246465+shelby-moore@users.noreply.github.com>
Co-authored-by: James Gatz <jamesgatzos@gmail.com>
* Add support for multiple remote projects per Team (#6009)
* update fetching of teams
* create and delete remote projects
* backend project sync using the new teamProjectId in the API
* indicator
* use team api to get organization data
* handle logged out state
* remove remote from duplicate modal
* remaining insomnia fetch fixes
* fix ts issues
* fix ts log issue
* fix ts error
* fix ts update
* fix tests
* remove log
* add types to insomniaFetch
* named arguments in vcs
---------
Co-authored-by: jackkav <jackkav@gmail.com>
* Project Presence (#6079)
* fix ts log issue
* fix ts update
* update fetching of teams
* create and delete remote projects
* real-time
* update api changes
* check for successful response
* get user profile
* cleanup
* update fetch
* update network status
* fix for insomniaFetch new api
* insomnia fetch from window
* fix missing stat
* fix project dropdown
* update avatar
* update presence when closing the app
* update the presence every minute
* cleanup presence
* use eventsource and improve debugging
* Cloud only projects (#6167)
* Add support for multiple remote projects per Team (#6009)
* update fetching of teams
* create and delete remote projects
* backend project sync using the new teamProjectId in the API
* indicator
* use team api to get organization data
* handle logged out state
* remove remote from duplicate modal
* remaining insomnia fetch fixes
* fix ts issues
* fix ts log issue
* fix ts error
* fix ts update
* fix tests
* remove log
* add types to insomniaFetch
* named arguments in vcs
---------
Co-authored-by: jackkav <jackkav@gmail.com>
* login routes
* cleanup logged in state
* update organizations
* fixes
* update migration
* auto init sync on workspaces without git
* fix auto init sync
* checkpoint
* update import options in empty project pane
* responsive styles
* update package-lock
* join an org in sidebar
* readability improvements
* move modals and root loader to org
* cleanup root
* expire session take 1
* cleanup default org id
* fix ts issue
---------
Co-authored-by: jackkav <jackkav@gmail.com>
* Add Scratch Pad collection (#6221)
* add scratchpad collection
* filter scratchpad from cloud migration
* disable sync for scratchpad
* update settings for scratchpad
* log in rename
* check if user is logged in or has logged in before
* use organization api
* organizations api fixes
* update urls
* move modals to root
* update org navbar links
* lint fix
* type-check
* Add form for setting up the staging env
* add autolinking
* onboarding
* remove default org id
* staging urls
* avatar styles
* update urls
* use display name for orgs
* update settings modal with dev
* proper project deletions
* fix api calls perf
* sidebar improvements
* layout styles
* disable tests for now
* fix boolean
* fix data migration
* dev settings styles
* test init
* organization names
* link styles
* improve scratchpad banner styles
* http colors
* url bar styles
* spinner styles
* breadcrumbs styles
* help and feedback links
* settings to root
* onboarding
* fetch remote projects on org nav
* update avatar styles
* use name initials in avatars
* don't allow to delete default organization project
* add scratchpad checks
* tests
* workspace settings tabs types
* export all workspaces
* fix types and personal org
* project permission checks
* continue with sso
* organization avatars
* project presence avatars
* fix privacy/terms links
* add the no-wrap classname
* update user name and email in the app
* fix delete action
* ai fetching
* generate tests in sequence to help with rate limiting
* wip testing
* wip test
* improve test and migration script
* fix ts
* local to cloud projects test
* set local-to-cloud-projects.test as slow
* fix e2e tests
* update settings tests
* update more apis that changed from teams -> organizations
* simplify remote project migration
* org.branding can be undefined
* fix imports issue in sr
* remove .only
* remove unused gql query
* fix onboarding height jump
* trust some rnd and upload artifacts on failure
* fix env vars replacement on prod
* fix constant name
* bring back checks
* fix inso test
* add temp changes
* fix inconsistent response handling
* handle bad auth code errors
* show email when logged in
* remove the concept of default_project
* cleanup auth styles
* fix: use scratchpad constants wherever needed and remove seed
* fix sentry lint error
* migrate with update
* add scratch pad fixture and typing
* refactor pushSnapshotOnInitialize to always work
* remove console.log
* remove account from preferences
* improve trail-lines styles
* fix project sidebar scroll issue
* only create diff of projects
* fix lint
* sync
* feat: add plan upgrading modal for git sync (#6516)
* feat: add plan upgrading modal for git sync
* feat: add plan upgrading modal to project git menu and grid menu
* fix: use JSON.parse for getting flag value
* update ask modal
* remove git option from workspace settings
---------
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
* sort projectswith default at top
* create local copies of remotes
* update presence exit update
* renames
* fix deleting/renaming projects with remoteId
* remoteId instead of projectId
* remote-collections
* fix initializeProjectForTeam
* fix missing parentId in remote projects
* add missing billing api
* add migration page and check for migrations
* cleanup project sync logic
* fix remote projects updating
* add notes
* fix backend-project test
* fix: use features API for fetching feature list (#6538)
* members -> collaborators
* remove dev settings
* use shouldRunMigrations in onboarding
* fix empty pane styles
* remove beforeUnload for presence
* show expiry info
* better error for upgrade in new project action
* extend retry period
* fallback and control revalidate
* add pending indicator for switching organizations
* fix exports (#6553)
* Sync Organizations (#6551)
* organization cache and updates
* error handling in org sync
* sort organizations
* clean up sort
* org sort and avatar fallback
---------
Co-authored-by: jackkav <jackkav@gmail.com>
* Presence updates (#6552)
* use remoteId for presence
* use project loader for the active project
* fix in present users
* logic clean
* match remoteId checks
---------
Co-authored-by: jackkav <jackkav@gmail.com>
* add default color to loading indicator
* fix redirect loop when there are no projects
* scratchpad fallback on initial route load
* re-enable ai check
* update error in renameProject
* db query to get projects in workspace
* review fix
* comments
* remove initModelFrom magic
* fix lint issue
---------
Co-authored-by: jackkav <jackkav@gmail.com>
Co-authored-by: Mark Kim <mark.kim@konghq.com>
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
Co-authored-by: Hexxa <hexxa@outlook.com>
* Initial exploration multiple test projects
* Replace duplicate scenario with one to be filled in
* Simplify number of playwright project configs
* Fix testMatch setting on playwright config
* Edit github actions to distinguish between CI and Release runs