1939 Commits

Author SHA1 Message Date
Rohit Rajan 1c47809b3a feat: add ssl flag for hosted db conn 2026-04-19 17:32:45 +05:30
Rohit Rajan 214ac55860 chore: rm ignore deprecation 2026-04-10 22:53:44 +05:30
Rohit Rajan d9bfe5428a fix: ignore deprecation 2026-04-10 22:48:33 +05:30
Rohit Rajan 78e4652825 feat: add run status for cli and mcp 2026-04-03 14:38:11 +05:30
Rutetid cb54a6ff72 fixed issue with search robot 2026-03-30 01:04:31 +05:30
Rutetid 2443007ce9 applied all fixes 2026-03-29 20:29:02 +05:30
Rutetid 61e42b87ea Applied suggested fix by coderabbit 2026-03-29 19:22:04 +05:30
Rutetid bcfcaad2da Added Output Format Selection to Crawl and Search Robots 2026-03-29 19:17:21 +05:30
Karishma Shukla a5eb9b8203 Merge pull request #1010 from getmaxun/key-fix
fix: error handling apikey check
2026-03-24 20:25:50 +05:30
Karishma Shukla 64a16f687d Merge pull request #1005 from getmaxun/sdk-dup
feat: add sdk robot duplication
2026-03-24 20:24:54 +05:30
Karishma Shukla 4d6e934149 Merge pull request #998 from ritam1303/master
fix: enforce unique robot names across all creation flows and edit
2026-03-24 20:23:06 +05:30
Karishma Shukla d0e3048c05 Merge pull request #999 from ritam1303/fix/recording-session-timeout
fix(recorder): auto-discard recording session after 10-minute timeout
2026-03-24 17:28:40 +05:30
Rohit Rajan 36e51b562b fix: specify out formats 2026-03-24 16:47:25 +05:30
Rohit Rajan dfaf56f7b3 fix: outpuit display scrape 2026-03-24 15:09:10 +05:30
Rohit Rajan f88cc70b93 feat: add status check route sdk 2026-03-24 14:39:22 +05:30
ritamganguliac 95f40ffec7 fix(recorder): auto-discard recording session after 10-minute timeout
- Added RECORDING_TIMEOUT_MS and recordingTimeouts Map to track sessions
- Timer starts after browser is added to pool; emits recording-timeout
  socket event then destroys the remote browser after 1s delay (gives
  frontend time to handle the event before socket teardown)
- clearRecordingTimeout() exported and called in destroyRemoteBrowser
  and the /stop/:browserId route to cancel timer on normal save/discard
- RecordingPage listens for recording-timeout: broadcasts via
  BroadcastChannel then calls window.close(); falls back to
  navigate('/robots') if close is blocked by the browser
- PageWrapper (always mounted in original tab) listens on
  BroadcastChannel, navigates back to the page the recording was
  started from (stored in sessionStorage), and shows warning notification
- RobotCreate stores current pathname in sessionStorage before opening
  the recording tab so PageWrapper can navigate back on timeout
- Added timeout_discarded translation key to all 6 locale files

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-22 20:35:54 +05:30
ritamganguliac 833ece50be fix: address remaining coderabbit review comments
- Move LLM duplicate-name check before the expensive LLM call to avoid
  burning API time/cost on a name that will be rejected anyway
- Hoist trimmedName declaration in PUT endpoint to eliminate the
  redundant second name.trim() call outside the validation block
- Guard recording_meta.name type in Generator pre-check so legacy rows
  with missing/non-string names don't throw; normalize both sides to
  match the DB index semantics (lower + trim)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 13:44:13 +05:30
ritamganguliac 3953c724df fix: address PR review comments for unique robot names
- Reject whitespace-only names in all create endpoints (scrape, crawl,
  search, llm) using explicit string trim + fallback instead of ||.trim()
- Validate name type and emptiness in PUT endpoint with 400 responses
- Catch SequelizeUniqueConstraintError in all create/update/Generator
  paths and return 409/emit nameExists to close TOCTOU race window
- Add blank-name guard in Generator.saveNewWorkflow before DB write
- Propagate isDuplicate flag from updateRecording for i18n-aware error
  display in RobotEditPage

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 13:40:17 +05:30
ritamganguliac de05e41bf2 fix: enforce unique robot names across all creation flows and edit
- Add isRobotNameTaken() helper with case-insensitive, trimmed comparison
  using lower(trim(recording_meta->>'name')) in Sequelize queries
- Add 409 uniqueness checks in POST /recordings/scrape, /llm, /crawl,
  /search, PUT /recordings/:id (edit), and POST /recordings/:id/duplicate
- Trim all robot names before uniqueness check and before saving
- Add DB migration: unique index robot_user_name_unique on
  ("userId", lower(trim(recording_meta->>'name')))
- Generator.ts: trim fileName, case-insensitive conflict check before
  creating new robot, emit fileSaved { actionType: 'nameExists' } on conflict
- Frontend API: re-throw server error messages for all create/update/
  duplicate functions so callers surface the conflict message
- RobotCreate: check for duplicate name before optimistic update + navigation
  for LLM robot flow; try-catch for scrape/crawl/search flows
- RobotEditPage: use error.message in catch to surface conflict
- RobotDuplicatePage: add Robot Name field (pre-filled, auto-updates with URL)
- SaveRecording: replace confirm-to-overwrite with hard block using
  case-insensitive trimmed check; handle nameExists socket action
- Add name_exists and robot_duplication name translations for all 6 locales

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 13:20:43 +05:30
Rohit Rajan c088514249 fix: error handling apikey check 2026-03-21 12:16:29 +05:30
Rohit Rajan d7b8ba8875 feat: add sdk robot duplication 2026-03-12 18:37:21 +05:30
Rohit Rajan f1d357c017 fix: add type field 2026-03-12 16:57:12 +05:30
Rohit Rajan 0b7b294cd8 feat: enhance scrolling action remote browser 2026-03-12 16:53:05 +05:30
Karishma Shukla 181a2265b8 Merge pull request #994 from getmaxun/fix-edit
fix: robot edit url logic
2026-03-11 15:17:31 +05:30
Karishma Shukla 1bf2a48ce0 Merge pull request #993 from getmaxun/rob-dup
feat: add robot duplication
2026-03-11 15:17:10 +05:30
Lidiya 1098c36b70 Improve page reload handling with timeout and logging
Enhanced page reload functionality with timeout and stabilization delay.
2026-03-03 16:56:01 +05:30
Rohit Rajan 3d59b1ae4f fix: resolve major review issues 2026-02-27 14:18:49 +05:30
Rohit Rajan ac4f4069d1 fix: robot edit url logic 2026-02-27 14:01:36 +05:30
Rohit Rajan 247f9465d6 fix: add url validation 2026-02-27 13:47:22 +05:30
Rohit Rajan 711a11d7f5 feat: add robot duplication web2api 2026-02-27 11:28:50 +05:30
Rohit Rajan b8d55e4116 feat: add robot duplication logic 2026-02-27 11:26:58 +05:30
Rohit Rajan d33ef9d7d2 fix: sync sdk pag detection 2026-02-15 15:40:53 +05:30
Rohit Rajan 7c59800b8e feat: add list elem context pag detection 2026-02-15 15:37:00 +05:30
Rohit Rajan 0d07204fdc feat: enhance auto pagination detection logic 2026-02-15 12:06:19 +05:30
Karishma Shukla 7b60cc2672 Merge pull request #971 from getmaxun/fix-navig
fix: register navigation action
2026-02-15 02:21:39 +05:30
Rohit Rajan 9f1b8ae6e3 fix: register navigation action in workflow 2026-02-12 19:05:47 +05:30
Rohit Rajan d127f0c8f0 fix: rm record script injection 2026-02-12 18:42:16 +05:30
amhsirak 3bf77e4f8c Revert "Revert "feat: add auto search logic""
This reverts commit 536f046b60.
2026-01-23 17:50:26 +05:30
Karishma Shukla 536f046b60 Revert "feat: add auto search logic" 2026-01-23 17:45:11 +05:30
Karishma Shukla 9a7a794d95 Merge pull request #952 from getmaxun/api-key
fix: modify api key generation
2026-01-22 19:01:38 +05:30
Karishma Shukla 09a2257398 Merge pull request #948 from getmaxun/swagger-fix
fix: swagger api routes display
2026-01-22 18:57:31 +05:30
Karishma Shukla 05db2ccfe6 Merge pull request #946 from getmaxun/auto-search
feat: add auto search logic
2026-01-22 18:56:16 +05:30
Rohit Rajan 43302a5b1f fix: gen crypto api key 2026-01-19 14:20:37 +05:30
Karishma Shukla 5157c6c6d2 Merge pull request #942 from getmaxun/fix-recorder
fix: recorder flow
2026-01-19 13:02:15 +05:30
Rohit Rajan a8ab188864 fix: swagger api routes display 2026-01-19 00:50:06 +05:30
Rohit Rajan e3d36a1b57 chore: cleanup 2026-01-14 14:59:03 +05:30
Rohit Rajan d2aec2afc1 feat: add auto search logic 2026-01-14 14:55:18 +05:30
Rohit Rajan dddac2d966 feat: add replayer func client side 2026-01-09 17:59:18 +05:30
Rohit Rajan d7830ee6ef feat: add rrweb live recorder server side 2026-01-09 16:39:02 +05:30
amhsirak 8428f839c1 chore: deprecate robot duplication 2026-01-06 13:34:38 +05:30