Changelog

New features, fixes, and improvements shipped to Glitchgrab.

v1.123.4

Bug Fixes

  • •next.config: increase turbopack memory limit to 2GB (8582b4d)

v1.123.3

Bug Fixes

  • •chore: update issue tracker tracking URL (#530) (cdc77e4), closes #123

v1.123.2

v1.123.1

Bug Fixes

  • •skill: update registered apps for dev and live (#525) (4a51daf)

v1.123.0

Features

  • •infra: month view with projection + history backfill for spend (#522) (c37103c)
  • •refine: improve marker handling and remove unnecessary (#523) (2f143d7)

v1.122.0

Features

  • •dev: add GitHub pull request tracking feature (#519) (267af89)

v1.121.0

Features

  • •package-lock: update version to 1.4.25 (#518) (9a67919)

v1.120.1

Bug Fixes

  • •editor: improve Narration script panel interactions (#516) (9da5ebd), closes #515 #515 #514

v1.120.0

Features

  • •align: improve aligning script to audio time measurement (d9e1bb9)

Bug Fixes

  • •narration: align-measure-fallback.test: add test for rate limit fallback (6398e28)

v1.119.4

v1.119.3

Bug Fixes

  • •editor: display comment on issue panel (#503) (e5a4a61), closes #502 #501 #502 #501

v1.119.2

Bug Fixes

  • •reindex: add SEO health snooze logic (#496) (03f850b), closes #493 #494 #498 #499 #497

v1.119.1

Bug Fixes

  • •issue491: index problems detected by Glitchgrab nightly cron on 22 (#492) (cfba218), closes #491 #491

v1.119.0

Features

  • •editor: add reset-to-original button to timeline editor (#486) (42d6a43), closes #485 #487 #488 #489 #490

v1.118.0

Features

  • •narration-panel: add script generation options (#481) (29b1da8), closes #480 #480 #482 #483 #484

v1.117.0

Features

  • •mac-sign: handle notarization in mac-sign script (cd89e21)

v1.116.0

Features

  • •glitchrecord-editor: fix incorrect error message when signed in (#477) (8ecec78), closes #476 #478 #476 #478 #479

v1.115.0

Features

  • •meet-pill: use findPeopleButton to open the People panel (41c80f7)

Bug Fixes

  • •extension: remove redundant aria-label for people toggle (4d483b5)
  • •meet-admit.test: update aria-label lookup for People button (0880ea8)

v1.114.0

Features

  • •agent_docs): fix(README: update meet-bot documentation for redeploy and hidden signout bug (6d32e3c)
  • •api: add reporterSessionEnded function to check session status (b3e37d0)
  • •booking-dialog: add Glitchgrab mark to bottom of dialog (88bfbd3)
  • •bot-status: add support for bot service restart and redeploying in the lobby (d6315a7)
  • •claude: add tester session confirmation procedure (d6665d8)
  • •glitchgrabaccount: add QA tester login/logout handling (9a212b3)
  • •glitchrecord: update InlineReport to support user testing (2d9f051)
  • •main: add sign-in button to QA link dropdown (4516660)
  • •meet: improve button detection in join meeting process (26d44d7)
  • •server.test: add `getAuthStatus` test for QA tester (410b38f)

Bug Fixes

  • •agent-docs: remove series bar from Home and replace with "Next part" button (53ff0e9)
  • •auth.test: add tests for tester sign-in persistence (cc6b009)
  • •auth: persist tester sign-in state in file (7dbdf9f)
  • •bot-failure-issue.test: skips a call lost to a bot redeploy — known cause, not a defect (#456) (050385c)
  • •bot-failure-issue: handle bot service restarts and retries correctly (0fbb0ea)
  • •bot-reconcile.test.ts: names a restart when the bot booted after the row last moved (#456) (af06940)
  • •bot-reconcile: add bootedAt field to bot-snapshot (44e2e7f)
  • •homewindow: improve walkthrough button UX (a1a9f32)
  • •job: add api base param to start job (637b24c)
  • •jobs: add apiBase field to startJob and liveJobs (05dfa88)
  • •join-retry: use JOIN_BUTTON regex (313a620)
  • •meet-bot: add `updatedAt` field to select statement (af68c50)
  • •meet-bot: add JOIN_BUTTON test (6471945)
  • •meet-bot: add shutdown test (a3dc695)
  • •meet-bot: improve empty room handling and credential eviction error detection (1918568)
  • •meet-bot: reduce grace periods for empty room detection (0780485)
  • •meet: run full Chromium in headless mode instead of Playwright's shell (20c99d4)
  • •preload: add tester logout function (e9bb99f)
  • •readme: clarify redeploy details (02e0e03)
  • •readme: update login process to avoid Chrome leakage (ed1f546)
  • •server: improve shutdown handling (a9cb224)
  • •server: use loadTester instead of loadAuth (6ec68e2)
  • •shutdown: add support for restarting the bot (88d1440)
  • •tester-install: add Sign in functionality (f67b368)

v1.113.0

Features

  • •bot-failure-issue.test: skips a bot someone removed before it got in (#461) (751f9ba)
  • •connectionstatus: add refresh feature to connection status component (cb2a8ff)
  • •connectionstatusbar: add refresh button to ConnectionStatusBar (f159915)
  • •github: add missing `number` property to `GitHubIssueDetail` interface (36aeb83)
  • •github: improve error handling and clarify return type for fetchGitHubIssueDetail (6b24b42)
  • •join-retry: implement isCredentialEviction to detect credential eviction scenarios in Meetbot (572f5d0)

Bug Fixes

  • •app: add playwright-core dependency (034e96b)
  • •autopace.test: improve handling of blinky anchors (2c54c6a)
  • •bot-failure-issue: remove unnecessary `BOT_REMOVED_BEFORE_JOIN` regex (e1cbe3b)
  • •bun: upgrade Bun to 1.55.0 (80ded74)
  • •coverage.test: add coverage test for missed selections scenario (f4f5a19)
  • •coverage: add missedSelections and instruction for narration (2d048b9)
  • •coverage: use the more specific scope `narration` (37d80f6)
  • •detail: update route.ts (af44fcc)
  • •extension: fix removedBeforeJoin condition (c25d5aa)
  • •job: handle stopped before join error (88b2053)
  • •join-retry.test: update join-retry.test.ts (ff670d6)
  • •join-retry.test: update join-retry.test.ts (3f581c4)
  • •knip: update test coverage configuration (b7f6396)
  • •meet: add logic to stop bots knocking and recording before admission (26d8bca)
  • •meet: remove unnecessary retry delays and improve error handling (0208b96)
  • •package-lock: update package-lock.json version to 1.4.13 (20a11ae)
  • •prompt: clarify hover/move routine lines (a6f2c8d)
  • •readme: handle sign-in credentials changing on every join (5665787)
  • •repo: add optional screenshot field for FAIL QA checks (cfce4fa)
  • •repo: improve handling of missed selections in capture sessions (4a80b8c)
  • •screenshot-preview: fix overflow issue (6448f54)
  • •verify-queue: add optional screenshot field to verify form (19df96c)
  • •web: add verify-image-zoom.e2e.test.ts test for issue #463 (225ddfe)

v1.112.0

Features

  • •api: refine script truncation detection (108862e)
  • •capture.test: add hover tests for plain and shifted pointer interactions (a00f71b)
  • •capture.test: use capture test helper for plain hover test (b671120)
  • •capture: add hover event tracking (e5b95a4)
  • •claude: update documentation for multi part walkthroughs, improve output ceiling, and fix response parsing errors (bd961dc)
  • •client: implement GeminiTruncatedError and finishTruncated for handling truncated responses (b0baba8)
  • •clude: add script generation support for selected projects (cfb3ca3)
  • •controlMcp: add parts option in buildServer function (d7a0c95)
  • •core: add multi-select functionality to TimelineEditor (4b0b34a)
  • •errors.test: add Gemini error handling for free-tier keys (61030c4)
  • •eventstats: add hover detection to event logging (1902466)
  • •github-app: preview whole site instead of property (b88d430)
  • •glitchbridge: add narrationWav utility to calculate WAV length (a98c342)
  • •glitchbridge: add page type to CaptureEvent (0ac71f6)
  • •glitchrecord: add walkthrough management features (3745a70)
  • •main: add logic to continue an earlier recording from the same walkthrough (b80f24f)
  • •multi-part-walkthroughs: add multi-part walkthrough docs (5e10fb9)
  • •narrationwav.test: add wavDurationSec test (0730d7f)
  • •preload: improve event handling and part management (4298d0a)
  • •prompt: add hover narration explanation (9b88f25)
  • •pruny.config: add 'renewals' link to dashboard settings (b2ab662)
  • •repo: improve Gemini chat and vision models (4a21944)
  • •repo: update handling of previous parts for narration script generation (e4457f0)
  • •sarvam: add rate limiting retry for fetch to SarvamTtsError (b2f0cec)
  • •seo-health-issues: add `agent_docs/seo-health-issues.md` (1705b71)
  • •seo-health: refactor and add state marker for SEO findings (63b3c00)
  • •tab-gate.test: implement test for isEngaged and forget functions (8a90784)
  • •timed: split timed script into paragraphs and handle markers (c16d8ec)
  • •timelinemodel: add isNarration field to timelineModel (f2d31dd)
  • •trackrail: add track header component (ccafbad)
  • •usetimelineselection: add support for Shift and Meta modifiers in onSelectZoom function (abe5d7c)
  • •video-editor: add autoPace test suite (c4027d2)
  • •video-editor: add zoom selection functionality (448395d)
  • •video-editor: adds test for event details component (15245a5)
  • •videoeventhandlers.test: ensure no re-skip of cut during seek in flight (dd1af82)

Bug Fixes

  • •align: fix marker regex in locateMarkers function (8b62a89)
  • •align: improve phrase parsing for better performance (e95c46b)
  • •api: add support for previous parts in generateScript (1c317ed)
  • •api: improve response structure for narrateViaServer (f2b308f)
  • •autopace: implement auto-pace logic (6e1e965)
  • •background: add 'mutate' event type to CaptureEvent (25184ba)
  • •background: add logic to record returning tabs and mark as detached if they remain inactive for a long time (f024514)
  • •background: add page property to CaptureEvent (76ac2eb)
  • •brief: add brief for repo tiles (f7b117b)
  • •capture.test: strip account's own data from labels and digest page offers (025676a)
  • •capture: add digests to capture event types (9d7bdd9)
  • •claude: update description for events to include hover event type (e58aa40)
  • •client: describe gemini errors for vision chat (c3cff30)
  • •editorPreferences.test: add test for `withEditorPreferenceFallbacks` (7b78f64)
  • •editorpreferences: add withEditorPreferenceFallbacks function (e2dd689)
  • •electron-env.d: add durationSec and segments to audioRecorder options (7b4abd8)
  • •electron: add repoId to session creation (15913bd)
  • •electron: handle narration WAV generation (afc1267)
  • •eventdetails: add hover description for video editor event details (7e3ef8d)
  • •eventicon: improve icon selection for hover (8486971)
  • •eventstats: exclude 'page' from SKIP set (ca1c51e)
  • •glitchbridge.test: refactor test for shiftEventsToVideo (601bdca)
  • •glitchbridge: add `videoStartedAt` field to Session type (49cf5f1)
  • •glitchbridge: ensure GLITCH.md prompt is included in the generated script (2191cfd)
  • •glitchgrabeventfeed: add page reading event (2f6e179)
  • •glitchgrablogpanel: handle and show pace note (009d46a)
  • •glitchgrablogpanel: load earlier parts on series start (db39a77)
  • •glitchgrablogpanel: update select for script language (fd21f65)
  • •labeler: add digest information to labeler events (5930597)
  • •labeler: handle labeler navigation events (da8d539)
  • •main: update script AI for DeepSeek execution (d0a43ae)
  • •narrate: align timed script and strip timed markers (542876d)
  • •narration.align: add alignment tests for alignPhrases and locateMarkers (7bb8a50)
  • •narration: add alignScriptToAudio function (c5eb9a4)
  • •narration: clarify why data values are important in stat tiles and nav menus (3d3d61f)
  • •parts-prompt.test: add tests for parts-prompt.test.ts (87ffe4d)
  • •parts-prompt.test: update script and events for new part (7ebec5f)
  • •parts.test: add test suite for parts archive and continue-next flag. (27a52aa)
  • •parts: initial implementation of parts.ts (d7204d0)
  • •preload: add duration and segments for narration WAV (72d8eca)
  • •prompt.test: improve Hinglish guard and brief directive (ec4b9bb)
  • •prompt: add client field to events (c146fe3)
  • •refine: improve Gemini chat handling for Gemini Pro (077d9e3)
  • •repo: add gemini flash → deepseek fallback in POST route (1dc5d06)
  • •repo: improve hinglish detection and fixing (32f7706)
  • •sanitize: sanitize meta field to limit length (1f9bb70)
  • •seo-health.test: update tests for new features in seo-health.ts (17ef307)
  • •seo-health: add GitHub issue creation and commenting for SEO health checks (cef852c)
  • •seo-health: add openSiteIssues for site issues (28eceb3)
  • •seo-issue-preview-sheet: update detail about nightly check comments (62baff6)
  • •server: improve series management (4d9924a)
  • •server: re-time events from "Record pressed" to "first video frame" (1ec5cea)
  • •settingspanel: add support for applying zoom depth to all selected zooms (4b3c93b)
  • •tab-gate: handle tab re-engagement without leaving traces (e4f520e)
  • •timed.test: add inline markers - one piece per item (d2aa674)
  • •timed: update regex for any marker (da8ed6f)
  • •timed: use new `TimedSegment` type for better readability (524b298)
  • •timeline-row: remove side bar from collapsed lane (3dcd25b)
  • •timelinecanvas: fix select zoom on lane header (31c33b2)
  • •timeline: handle shift + click to extend selection (18166c2)
  • •timelinelayout: update row height calculation (e94d896)
  • •timelinetypes: add isNarration toTimelineRenderItem (967697c)
  • •trackeditor: add trackheader component (118015a)
  • •trackrail.test: add trackRail test file (6b63ea1)
  • •truncation.test: add truncation script and tests (63c9b44)
  • •video-editor: add 'mods' parameter to onSelectZoom function (bfee169)
  • •video-editor: add hover text for row in captured-steps list (b87955a)
  • •video-editor: add script for narration studio (23ed809)
  • •video-editor: update default auto zoom depth (55a706e)
  • •video-editor: update event details display (caa7585)
  • •videoeditor: add auto pace and reset to original functionality (7aee81f)
  • •zoomselection.test: add tests for zoom functionality (94e8720)

v1.111.0

Features

  • •prompt: add timedScriptDirective and formatClock (b74dc25)
  • •tab-gate: add TabGate class (4f397c1)
  • •timed: add timed narration functionality (31b97f7)

Bug Fixes

  • •api: add 'timed' option to generateScript (d95875c)
  • •app: add timed script directive for recording sessions (6186065)
  • •background: improve tab gating and logging (45ef375)
  • •main: handle @mark segments in script generation (50b3162)
  • •narration: add support for timed scripts (1e653c8)
  • •tab-gate.test: add test for `TabGate` class (f271c9c)
  • •timed.test: add tests for timed narration features (c7162f0)

v1.110.0

Features

  • •controlauth: add profile email to controlAuth.ts (#460) (174a6f1)

v1.109.0

Features

  • •join-retry.test: add test to guard against bot leaving a live call after 60s, fixes #257 (077128e)
  • •login: add profile copying and cleanup for concurrent recordings (65e37cf)
  • •meet: add descriptive message for blank meet page dump (491914a)
  • •meet: add stopwatch for meeting join (abb983e)
  • •whatsapp_templates: add bot_waiting_admit template (9c988df)

Bug Fixes

  • •bot-admit-alert: use WhatsApp to alert about bot waiting for admission (977d60d)
  • •bot-status: update route handling for bot statuses (48171d0)
  • •eventstats: limit scroll, idle and DOM-mutation events to be noise (ea9f081)
  • •google-session.test: recognize Meet's own join-refusal page (9a957fb)
  • •issuebody.test: improve step listing in issue body (24de53e)
  • •issuebody: update description and formatting to be more concise and clear (374c3c1)
  • •jobs: remove duplicate Meet link comparison in activeJobForMeetUrl (6d9828e)
  • •login: acquire profile: remove stale lock when holding it (20920d9)
  • •meet-bot: add join retry logic (6be1b59)
  • •meet-bot: improve button matcher tests (4a521c5)
  • •meet-bot: improve profile handling (4cf50c4)
  • •meet-bot: reduce retry time for knocking while Meet says the room is not open (19c6229)
  • •meet-bot: update meet link matcher (24f120b)
  • •meet-pill: handle "Admitting the bot…" when Meet is showing a request (faa1864)
  • •meet-pill: hide search box when not needed (77ce394)
  • •meet: add logging of presence readings (5c526fa)
  • •meet: handle failed attempts to open Meet room during join attempt (5985de9)
  • •meet: handle interstitials better in joinMeeting (a0b1c1c)
  • •meet: handle skipped name step in joinMeeting (c32a6ba)
  • •meet: improve waitUntilAdmitted to handle blank pages and retries (be51223)
  • •meet: skip Google sign-in check when a job is using the profile (b9d5e76)
  • •meet: use a copy of the Chrome profile for Meet join (0eaf6ef)
  • •readme: handle multiple active jobs on one call (a9df3fd)
  • •readme: mention when the bot "does not join" (6c61fdd)
  • •readme: update sign-in details handling (dc44a4a)
  • •readme: update step timing print (f62df3b)
  • •server: prevent bot from starting to record a call when the session is not active (e94040a)
  • •useaudiopreviewsync: remove unnecessary cancel flag (733c34a)

v1.108.0

Features

  • •meet: improve login handling in meet-bot (8415b8d)

Bug Fixes

  • •readme: document stop session before call dispatch (b96d818)

v1.107.1

Bug Fixes

  • •booking: normalise phone numbers (7fe79f3)
  • •migration: prefix all booking phone numbers with country code (841643a)

v1.107.0

Features

  • •log-buffer.test: add test for log buffer functionality (b3be119)
  • •meet-bot-failure-issues: update fileBotFailure to handle Meet bot failures (ca24e2f)
  • •meet-bot: add API for fetching bot service status, list recent bot recordings (347838e)
  • •meet-bot: add meet bot status page (1905f38)
  • •server: update server.ts (1a226ea)
  • •settings: add bot status link (4d96696)

Bug Fixes

  • •bot-status: handle failed join bot status responses (2a9362f)
  • •claude: update `tsup.config.ts` and `exports` in `package.json` (58b2783)
  • •google-session: add Google session detection and storage (005a125)
  • •log-buffer: add logging buffer support for failed joins (4352871)
  • •login: use `resetGoogleSession` in `stopLogin` to clean up Google session after logout (c81618a)
  • •meet-bot: add background file bot failure issue and background run (1e5179f)
  • •meet-bot: add bot health check endpoint (e8ed06a)
  • •meet-bot: update bot service reading response format (13a2e61)
  • •meet-bot: update test for google session status retrieval (45fa7e4)
  • •meet: remove signInCheckIdle and noteGoogleSession (7ca19c5)
  • •readme: update pre-join screen status check (92e0f92)
  • •server.test: add test to verify attachment creation for server errors (526fa46)
  • •server: ensure log buffer is installed (234981c)
  • •server: update log attachment in report server request (8945fe7)
  • •upload: add console logs to status report (c0bf6b2)
  • •web-bot-failure: add test for bot failure issue (2e61657)

v1.106.0

Features

  • •api: add notify recipients handling to booking page route (fc7ee27)
  • •booking-alerts.test: add tests for booking alert phone functionality (93c6ee5)
  • •booking-settings.test: add test for notifyRecipients setting (3bbf768)
  • •booking-settings: add notifyRecipients field to BookingSettings (70c996f)
  • •booking: add bookingCalendarConnection (72dbaba)
  • •bookings: add route.ts for managing demos (79f26d9)
  • •detail: add route to fetch full issue detail and details about the latest comments (df4a3e0)
  • •editor: add backToHome and home strings (f9c1b55)
  • •editor: add support for back-to-home and home buttons (edf21fa)
  • •electron-env.d: add openHome and isEditorFullScreen methods (9af9dfd)
  • •launch: add backToHome translation (e0a5f90)
  • •launch: add backToHome translation (c307a1e)
  • •main: add editor fullscreen check and open home functionality (7cee9a0)
  • •recordingmeta: add recording date and title helpers for cards (bfbc871)
  • •server: add methods for calling and cancelling demos (d01d057)
  • •video-editor: add full screen handling for preview and toolbar (0cabeca)

Bug Fixes

  • •api: remove stale code in route.ts (440fffa)
  • •back-to-home.e2e.test.ts: close editor and open home (146e13f)
  • •booking-alerts: add bookingAlertPhones function to alert owners and notify recipients (7b6b10b)
  • •booking-mutations: handle missing calendar error (c3c36ba)
  • •booking-mutations: update to include new and updated booking logic (b3086f4)
  • •booking-page: add support for new booking setting field (cc05c1a)
  • •booking-reschedule: implement new booking rescheduling logic (aa80880)
  • •booking-settings.test: add tests for readNotifyRecipients and update MAX_NOTIFY_RECIPIENTS (67dff5d)
  • •booking-settings: add recipient form (2323297)
  • •booking-settings: add support for additional notification recipients (f4ba62f)
  • •booking-settings: update booking notify recipient model to use Meta's format for phone numbers (0b528d8)
  • •booking: add functionality to alert owners on booker lead #444 (97da71a)
  • •claude: update meeting routes for demo sharing and booking rescheduling (3232151)
  • •e2e: add Back to Home test (22910e8)
  • •editor: add "backToHome" and "home" keys to zh-CN/editor.json (e0c754c)
  • •editor: add backToHome and home strings to editor.json (31c1041)
  • •editor: add support for `backToHome` and `home` keys in editor.json (66180dd)
  • •editor: add translations for backToHome and home in editor.json (df025dd)
  • •editor: update back-to-home and home strings in editor locale (bbe75df)
  • •editor: update Chinese localization for "返回首頁", "首頁" (1342458)
  • •editor: update editor.json to include new translations (38795ae)
  • •editor: update Portuguese translation for editor.json (a03d747)
  • •electron: remove unnecessary condition in closeCountdownWindow (3d85143)
  • •glitchgrablogpanel: improve button styling and logic (255ff6e)
  • •glitchrecord: add back-to-home button (0b6725f)
  • •glitchrecord: add GlitchgrabPopover and GlitchgrabEventFeed to LaunchWindow (9c8f748)
  • •guide-markdown-view: add `breaks` option to guide markdown view (a139f8f)
  • •guide-markdown.test: renderGuideMarkdown breaks with breaks enabled (4c4cadc)
  • •guide-markdown: use `break` nodes to render newline breaks in markdown text (5d1f26c)
  • •i18n: add back-to-home translation (8173aec)
  • •launch: add "backToHome" translation for pt-BR locale (d459a83)
  • •launch: add back button to main menu (2fee945)
  • •launch: add back to home option in launch.json (e95715e)
  • •launch: add backToHome translation (5194a66)
  • •launch: add backToHome translation (460a312)
  • •launch: add backToHome translation for zh-TW (eb39c1d)
  • •launch: add duration for videos in HomeWindow (c665315)
  • •launchwindow: add home button to launch window (f9da868)
  • •package: add back-to-home page for Glitch Record backend tests (09f402a)
  • •prisma: add notifyRecipients field to BookingPage (835e6af)
  • •qa-client: prevent reset of filters when switching views (d06a764)
  • •qa: improve tester overview display (b789d37)
  • •qa: update verify filters parser for check and remove unused q (cdeea0e)
  • •testersetupcard: update component for showing latest installer, hiding unnecessary buttons, and folding steps (d038b69)
  • •video-editor: update VideoEditor.tsx (617bbf8)
  • •whatsapp_templates: add WhatsApp alert template for booking alerts (c903a36)
  • •whatsapp-booking: add booking alerts (99a21c0)
  • •whatsapp-booking: simplify connection lookup (07ee6fa)
  • •windows: request full screen on macOS and notify app about fullscreen state (bc13355)

v1.105.0

Features

  • •booking-settings: add host name and photo URL fields (6db4169)
  • •host-theme: add host theme utilities to detect and convert colors (5c7c977)
  • •host-theme: implement host theme detection and contrast calculation (199b4f5)
  • •README: add hostName and hostAvatarUrl fields (be1ebfd)
  • •report-dialog: add color detection functions for host accent and contrast text (a957093)

Bug Fixes

  • •availability: add host information to the availability route response (4747c72)
  • •booking-settings.test: update hostname in booking settings test (4b66eab)
  • •booking-settings.test: update readAvatarUrl to handle invalid urls (059ec98)
  • •booking-settings: add missing fields for booking settings (e15f66d)
  • •glitchrecord-release: add missing monorepo dependencies for Windows publishing (a37f03e)
  • •host-theme: detect dark mode and host accent (cc2f885)
  • •migration: add hostName and hostAvatarUrl columns to BookingPage model (cced6f6)
  • •prisma: update booking page fields (c0fabbe)
  • •report-dialog: added logic to detect dark theme and host accent color (8a49484)
  • •report-ui: add detectDark and detectHostAccent functions (1dcc76b)
  • •seo-health.test: add getMeta function and tests (b8437f1)
  • •seo-health: remove `property=` from Open Graph tags (bf7ef12)
  • •server: add `hostName` and `hostAvatarUrl` fields to `BookingSettings` (785501f)

v1.104.0

Features

  • •gsc-runner.test: add tests for property resources handling (ce442d5)
  • •gsc-runner: use readFirstAccessible to find the first accessible property and account, and save it in a new object with an email field (e4fb05e)
  • •health-preview: add dynamic route for health preview cron (aee09b8)
  • •migration: add console resources and accounts to GscProperty (1117009)
  • •properties: add consoleResource and consoleAccount to GET route (ef474f4)
  • •validation: add route for validating fixes in Search Console (3b224b3)

Bug Fixes

  • •api: update health-preview route to include indexing issues (77939e5)
  • •background: ensure validation logic is executed (a096207)
  • •content: add validation for GSC scan and validate requests (83f7427)
  • •extension-bridge: add methods for search console fixes (f093c87)
  • •extensions: add support for Search Console validation in SEO issue preview sheet (0d18584)
  • •glitchrecord-mac-signing-check: add timeout for macOS signing check (4403956)
  • •gsc-read.test.ts: reads the live no-access page (#441) (3fbbffd)
  • •gsc-read.test: add tests for readSignedInAccount, readValidationStarted, and reasonRowByName (568115c)
  • •gsc-read: add functions to read various elements from a Google Search Console page (da13177)
  • •gsc-read: update wording to match live no-access page (e272570)
  • •gsc-runner: improve handling of Google accounts when scanning properties (78c87e8)
  • •gsc-scan-payload.test: carry where the report was read when the extension knows (#441) (ccb59c4)
  • •gsc-scan-payload: add logic to determine if the report was read as extension build before sending it (b9b5bb7)
  • •gsc-scan: handle new parameter `openedAs` (f432866)
  • •import-mac-signing-cert: remove -l option in set-keychain-settings (ff1e0e3)
  • •issues: update issue fetching logic (84d415a)
  • •open-issues-by-repo: add component to list open issues by repo (b811f50)
  • •open-issues-by-repo: update open-issues-by-repo.tsx (361e2db)
  • •org-overview: add consoleUrl to SeoPropertyRow (79c5eb5)
  • •seo-health.test.ts: add tests for nextSeoHealthRun and issueDate to ensure the cron runs on the correct day. (4f6191a)
  • •seo-health.test: update indexing reason descriptions and test for caching (d1f91eb)
  • •seo-health: add indexing reason details and update query selectors (c24d838)
  • •seo-health: add logic to fetch and process indexing issues (5a89e5d)
  • •seo-health: add missing date comparison and update issueDate function (4092bf8)
  • •seo-health: add new file and functions for checking SEO health issues (715e38c)
  • •seo-health: add support for GitHub App installations and issues (d8adee1)
  • •seo: add console resource and account details to gsc-properties.tsx (3bacee0)
  • •seo: add consoleResource and consoleAccount fields to org seo page (1c7406e)
  • •seo: update console resource and account references in OrgGscPropertyPage (01fe6c7)

v1.103.3

v1.103.2

Bug Fixes

  • •chore: open PR for issue tracking (#439) (258a2d2)

v1.103.1

Bug Fixes

  • •smoke-packaged-binaries: skip NVIDIA CUDA compositor helper on Windows with custom build flag (d6b4b3e)

v1.103.0

Features

  • •meet-bot.test: remove unnecessary query and hash from meet bot link (e3d69d2)
  • •s3-upload.test: add s3 upload tests (cbadcb3)

Bug Fixes

  • •bot: add canonicalMeetUrl function for bot meeting routing (565cc17)
  • •build-whisper-runtime: use OS's tar on Windows (709375a)
  • •extension: adopt recording with knock (06fa3ad)
  • •extension: adopt recording with knock (#437) (b319f95), closes #XXX
  • •meet-admit: add knock notice detection and handling (a5dcca5)
  • •meet-bot: canonicalize Meet URLs (175d37b)
  • •release-cdn: update s3-upload logic (5033146)
  • •releasing: upload installers and stable copies in parallel multipart uploads, update feed files (01357ca)
  • •s3-upload.mjs: update s3-upload.mjs (ba3a67f)

v1.102.1

Bug Fixes

  • •bot: ensure bot can be invited to meetings (eb7b66e)
  • •send-bot: add preInvited field to meeting bot response (ae53670)

v1.102.0

Features

  • •glitchrecord-release: update CI to use windows-publish for Windows builds (26d91a2)
  • •glitchrecord-windows: add GlitchRecord Windows build workflow (c4bad36)

Bug Fixes

  • •build-nvidia-cuda-compositor: skip NVIDIA CUDA export on non-Windows CI builds (d3e5f07)
  • •download-client: update to include Windows and beta versions (39a853b)
  • •download: improve Windows warning message (24d0b72)
  • •glitchrecord: handle new Windows installation and app protection pop-ups (b51a529)
  • •release-cdn: improve error message, add platform flags (563c8d5)
  • •releasing: update build process for Mac and Windows builds (1c30049)
  • •tester-install: update Windows build info (f1414b5)

v1.101.1

Bug Fixes

  • •verify: improve screenshot upload functionality (#435) (0734a12), closes #434 #432 #436 #434 #436 #424

v1.101.0

Features

  • •develop: add documentation for new feature (#433) (df12709)
  • •docs: update open source claim on Glitchgrab homepage (#431) (292e5ab), closes #428 #427 #426 #428 #427 #426 #425

v1.100.1

Bug Fixes

  • •chrome-extension: reload tab after update (#429) (4136e1c), closes #416 #370

v1.100.0

Features

  • •api: implement narrateViaServer (4075d9a)
  • •claude: Narration service now runs on server and does not route tts/ through vercel (#425) (b250c76)
  • •main: add Sarvam narration support (d2069b2)
  • •narrate: add narrate route to generate narration audio (7f63920)
  • •tts: add sarvam text-to-speech implementation (2ded802)

Bug Fixes

  • •electron-env.d: improve API key handling (1c0c0d9)
  • •preload: add narrationKeyStatus and onNarrationProgress methods (e69528e)
  • •tts.test: refactor tests for chunkText, concatWavs (8914b5a)

v1.99.0

Features

  • •glitchwindow: fix logo resolution in packaged build (e60b85c)
  • •testertools: use ~/Downloads/glitchgrab-extension for extensionDir and legacyExtensionDir (daf0912)

Bug Fixes

  • •auth: add support for tester-auth deep link (a5867ad)
  • •home-assets: fix image assets not resolving during packaged build (fee47dc)
  • •package: update ui tests to include home-assets.e2e.test.ts (1ac4aa5)
  • •releasing: add GLITCHRECORD_DOWNLOADS_DIR environment variable (05c8f96)
  • •tester-setup.e2e.test: downloads Glitchgrab Extension to ~/Downloads instead of hidden app data (32c675f)
  • •testersetupcard: remove old entry from chrome://extensions after moving extension to downloads (fd505d3)

v1.98.0

Features

  • •download-client: remove Windows and Linux build options (3ffcccb)

Bug Fixes

  • •glitchrecord-release: update script to include macOS release build (05a78bb)
  • •releasing: remove unnecessary instructions about Windows/Linux builds in release guide (f06aa44)

v1.97.0

Features

  • •glitchrecord-release: add warning to clarify that no new releases were made (7d85604)

Bug Fixes

  • •package: update version number to 1.4.1 (02a82d9)

v1.96.0

Features

  • •electron-builder: use glitchrecord:// scheme in packaged app (ffbb2e2)

Bug Fixes

  • •download: update link to GlitchRecord.app (9b94a98)

v1.95.1

v1.95.0

Features

  • •docs: add issue tracking info (#423) (ac5bf97)

v1.94.0

Features

  • •public-nav: add download link (10954f7)

Bug Fixes

  • •download: link download page from site nav (bedd73d)
  • •download: update download client for macOS permissions issue (c086830)
  • •next-sitemap.config: remove unused `/download` route (db51d5c)
  • •package: update version number to 1.4.0 (ff4fd91)

v1.93.0

Features

  • •booked-demo-recording.test: add tests for booked demo recording and scheduling (73b15b5)
  • •booked-demo-recording: add scheduled recording functionality (43619dd)
  • •claude: enable packaging of GLITCHRECORD extension for distribution (e0d4577)
  • •claude: update prod migrations for neon in vercel deployment (57657a8)
  • •electron-env.d: add tester functions (07a87fd)
  • •launch: add setup card for tester on first launch (51ebf8b)
  • •meet-bot: add support for placeholder meetings (1376faa)
  • •release-cdn: bundle the Chrome extension and include it in all releases (070423d)
  • •tester-install: add install instructions for testers on mac and chrome (6569d4d)
  • •testertools: add testerTools.ts (64256af)
  • •verify: schedule booked demo after confirming verify result (fe80a6b)
  • •whatsapp-booking: schedule demo when confirm is called (172a73e)

Bug Fixes

  • •api: add handling for model call failure in glitchbridge/api.ts (a7e8b13)
  • •api: drop clear:false without question the model could phrase (626da69)
  • •background: fix API base resolution for recording sessions (06df5db)
  • •calendar: add booker scope to calendar recordings (7494748)
  • •docs(explain-gestures): add AI-generated narration for recording comments (7f5985a)
  • •download-client: add machine detection and logic (c865e6c)
  • •download: add internal download page for GlitchRecord (c7abd73)
  • •electron: improve window behavior when maximizing (6f078a6)
  • •glitchrecord: add tester-setup.e2e.test.ts for GlitchRecord's E2E tests (259d8dc)
  • •glitchrecord: open the narration rail panel and reopen it if necessary (1b1acc4)
  • •knip: update scripts for next.js compilation (762a1e7)
  • •logic: refine logic to avoid silently swallowing unanswered spots (de593f5)
  • •main: improve testing tools and UI for testers (75c8b10)
  • •meeting-dispatch: update sync and booking logic for new demo bookings (8ed1f79)
  • •migrate-deploy: apply pending Prisma migrations in Vercel production build (a792bc7)
  • •next-sitemap.config: add download path to PRIVATE_PATHS (165660e)
  • •note-questions: improve handling of vision failures and clarify cluster criteria (c75e9b5)
  • •package: add script to run migrations and deploy on build (a241de9)
  • •popup: use correct API base for connection indicator (3a34a95)
  • •preload: add tester functions (03a79a7)
  • •prod-migrations: update Prisma migration process to deploy and resolve migrations only when needed (1a418dd)
  • •releasing: update version and release assets (279608d)
  • •tester-setup.e2e.test: add test for GlitchRecord dev setup card (dd717c1)
  • •testersetupcard: add testing and installation steps (72ab4a5)
  • •testing: add test for tester setup (111c571)
  • •videoeditor: update narration workflow icon (808b925)

v1.92.0

Features

  • •call-export.test.ts: add test cases for callAudioTracks and framePage functionalities (da16bdb)
  • •calls-key: add calls key functionality (764e782)
  • •calls-key: add calls key management API (6694b1d)
  • •calls-tabs: add calls tabs component (2aa9638)
  • •mcp-http-server: use 'list_calls', 'get_call' for Call tool API (2409906)
  • •mcp-token-scope.test: add recording and public token tests (348b578)
  • •mcp-token-scope: add guide write key token scope (72798a4)
  • •meeting-detail: add client share feature (efb655c)
  • •meetings-list: add delete button and selection controls (6b4594d)

Bug Fixes

  • •api: add deleted-meeting controls (321f553)
  • •call-export: add new file and export functions (87f43bd)
  • •call-export: improve call participant and audio track descriptions (5541968)
  • •calls-key.test: add calls-key test suite (5bf9276)
  • •calls.test: update tests for new Glitchgrab API and types (9748b32)
  • •calls: add route for reading and deleting meetings (68ea100)
  • •client-call-sharing: use client-call-sharing as scope (18d0550)
  • •client-share: add client access component (ae74d99)
  • •delete: add dynamic route for meeting deletion (61f4c3a)
  • •glitch: update description for new pages and functionalities (9d538bd)
  • •meeting-delete: add meeting-purge functionality (4c4caad)
  • •meeting-delete: handle deletion of bot participants (5ea21be)
  • •meetings: add CallsTabs component to meetings page (5d8d3cc)
  • •meetings: add route to mark calls as shared (8ffb2a2)
  • •org-overview: improve button placement and text in GSC property list (f7845c9)
  • •prisma: add callsKeyHash field to Meeting (e4f07e9)
  • •README: document admin panel call features (2e0e6aa)
  • •recordings: add deleteRecordingObjects function for managing recording objects in AWS S3 (2768358)
  • •repo: remove recording from call request (c487b95)

v1.91.1

v1.91.0

Features

  • •report-dialog: enhance severity handling during filing a draft (#404) (6f89f9d), closes #399 pre-#400
  • •web: update sidebar behavior to behave like practicestack (#397) (f787fc3), closes #399

Bug Fixes

  • •dev: add countdown and "stop report" button to AI chat flow (#407) (97daa83), closes #406 #405

v1.90.0

Features

  • •auto-auth: use ExtensionSession for extension auto-login (328f132)
  • •extension-session: add createTesterExtensionSession to mint session for QA testers (4a4bb5c)
  • •issue-drafts: update route.ts (1d25f1c)
  • •meet-pill: fix bot status polling to detect when an extension reload or update has orphaned this content script (ff120f6)
  • •meet-stop.test: remove bot from call? (3dabda7)
  • •prisma: add `summary` field toMeeting model (9944ca7)
  • •prompt.test: add normalization for summary stamps (e59e3b2)
  • •prompt: update summary and Moments type to be more explicit (9081755)
  • •route.test: add QA tester session sign-in test (c47d843)

Bug Fixes

  • •api: remove unused code and optimize screenshot collection in meetings route (b2bda21)
  • •auth: add createTesterExtensionSession function (13a32ee)
  • •background: update to support `gg_tester` cookie for QA tests (36e1e2e)
  • •bot-reconcile.test: add tests for STOP_CORRECTABLE_STATES (f4c4be8)
  • •bot-reconcile: correct stop states to handle upload retries (5aa763c)
  • •claude: update summary + issues button on call page (eea05a3)
  • •glitch: update Glitchgrab extension and improve call handling (ba69d9f)
  • •meet-stop: add stop reply logic (dbd0290)
  • •meeting-detail: update call detail page to display summary and screenshots (17c18cf)
  • •meeting-issues: extract meeting summary and screenshots from call (d775342)
  • •meeting-issues: improve summary extraction (c6a6807)
  • •meetings-issues: update meeting-issues.tsx (88ae26a)
  • •meetings: stop bot recording when meeting ends (ffa14e2)
  • •prisma: add meeting summary field (db29ee9)
  • •resolve: add record unfiled check (c8318cb)

v1.89.0

Features

  • •repo: add dynamic route for chat with developer (5fdd196)
  • •reporter-contact: implement reporter contact button functionality (f752e4f)
  • •reporter-details-rules.test: add tests for reporter details rules (63c8b10)
  • •reporter-details-rules: add reporter-details-rules.ts (295de8a)
  • •reporter-work-started: add functionality to notify reporters about pull request work start (3f8091c)
  • •webhook: add work-started notice to Glitchgrab-filed issues (266fa55)
  • •whatsapp_templates: update template documentation and logic (519b0d1)
  • •whatsapp: add sendGitHubAccessLostWhatsApp and sendIssueWorkStartedWhatsApp (207695d)

Bug Fixes

  • •api: handle reporter details for whatsapp webhook (86b852f)
  • •app: add WhatsappMessagesSection component to enhance landing page (ad088f2)
  • •auto-error-issue: read close event from `Issue.resolvedAt` (347ff6a)
  • •claude: add work start notifications and reporting (77baa01)
  • •docs: add whatsapp notifications page (7fd1647)
  • •features: update whatsapp messages section (85d55aa)
  • •mail: send work started email - tell reporters the team is working on their report (#390) (134e750)
  • •marketing: add whatsapp messages component (4008e94)
  • •migration: add work started fields to Issue model (2f7e853)
  • •migration: create reporter_details_session table (556720d)
  • •prisma: update issue schema (48f1402)
  • •rate-limit-cleanup: remove expired `ReporterDetailsSession` entries (8aa6596)
  • •reporter-details: add reporter details handling (914aabc)
  • •settings: update Whatsapp settings form templates (6614fb0)
  • •sitemap: resolve developer personal numbers from WhatsApp messages (6b2a72e)
  • •vercel: add cron job for meeting dispatch notifications (2bef84b)
  • •whatsapp: remove image (cd56da4)
  • •work-started-contact: update work-started-contact.ts (eaec668)
  • •work-started-notify: add route to handle work started notifications (19870b4)
  • •work-started.test: add test coverage for work started notice logic (02720b3)
  • •work-started: add work started notice feature (e448373)

v1.88.0

Features

  • •agent-token-security: update per-token + per-IP hourly limits for direct calls (f5cf7dc)
  • •ai-report-assist: remove monthly cap (2bbdc20)
  • •claude: update issue pipeline for AI-report-assist (9dacb00)
  • •qa-client: update filter handling (c77f9b1)
  • •quota: remove monthly conversation cap, add per-credential hourly limits (a63fc4c)
  • •repo: add QA label management and handling in route.ts (2eb9cc4)
  • •report-chat: improve flood guard logic (72a7eea)

Bug Fixes

  • •auto-error-issue: update time constants for new error window size (de84ae5)
  • •chat: adjust image source slicing for AI assist chat (a513a19)
  • •signature: normalize asset and query string URLs in log errors (229fa54)
  • •src: add support for `related` and `solved` parameters in `assistTurn` (2be4e06)
  • •stat-card: add onClick prop to stat card buttons (07deb16)
  • •tester-overview: open queue on To verify button click (3727914)
  • •tester-shell: implement missing extension installation link (8e79577)
  • •use-extension-state: add useExtensionState hook to check Chrome extension state (00432ba)
  • •use-tester-view: add support for verify filters (62d8f03)
  • •verify-queue: fix search query to match issues by number, improve filter logic, and add clear filters button (9c25d84)

v1.87.0

Features

  • •ai-assist: add related issue for different requirement for same feature (934c9ca)
  • •ai-report-assist: add duplicate check to Send button (51da8aa)
  • •auto-error-grouping: add auto-captured errors that were filed before (9487728)
  • •auto-error-issue.test: add unit tests for auto-captured errors (0a19609)
  • •chat: add `related` field to assist result (b9dd8ac)
  • •duplicate-issue.test: add unit tests for duplicate issue announcement (fc2bbba)
  • •meet: add logging for when participants are not ok anymore (77c79eb)
  • •report-chat: add duplicate issue handling in POST request (956ab2e)
  • •report-dialog.test: improve "Related request" and "Add to" functionality for WhatsApp punch-in flow (7de67d4)

Bug Fixes

  • •assist-sheet: improve duplicate handling in assist sheet (1f45953)
  • •auto-error-issue: add logic to find and record seen again comments for auto-captured errors (e780adc)
  • •duplicate-issue: handle duplicate and related request comments (26b28e6)
  • •meet-bot: close browser cleanly when shutting down (982d129)
  • •report-dialog: add support for duplicate issues and related requests (abafad1)
  • •report-network.test: update error reporting functionality in `report-network` (a7a80dd)
  • •report-ui: update test for related request flow (76f8e08)
  • •report: add 'related' field to report component (af7a13b)
  • •report: add related requests and fix duplicate comment generation (081e49a)
  • •report: update route.ts (836dc90)
  • •signature.test: update signature.test.ts (327d45a)
  • •signature: normalize dynamic values, enhance error title key, improve page fingerprint (7461e46)
  • •src: handle different kinds of issues for report attachments (441799b)
  • •utils: add 'related' field to `assistTurn` interface (854450e)

v1.86.0

Features

  • •extension: add meet-admit detection (73012bb)

Bug Fixes

  • •batch.test: trackFilesForOutput correctly identifies and handles failed files in batch testing (a1f42ea)
  • •batch: handle partially completed jobs with empty outputs (8dda5a4)
  • •calendar: use meetCodeOf to validate Meet link (c1b93e5)
  • •meet-admit.test: add tests for meeting status changes (8043c28)
  • •meet-pill: improve logic for admitting the bot (10539c2)
  • •meeting-detail: update audio controls to show pending status and error if needed (7352df7)
  • •meeting-issues: remove stale hasTranscript dependency and add loading state to prevent flashing "loading issues…" during transcript arrival (8fa68de)
  • •sarvam: handle partially completed and no output files when collecting transcript (822cf52)

v1.85.0

Features

  • •bug-chat: save report when access is restored (61e3e14)
  • •contributions: fetch repo activity data from GitHub and build contribution grid (b1f07f7)
  • •create: create GitHub issue for lost access (c42f580)
  • •github-access: add GitHub access loss handling (7356ce0)
  • •issues: fetch issues from GitHub via search (85dcc50)
  • •meet: ignore `--mute-audio` in headless launch (7211957)
  • •member-stats: refactor route to use `scanOrgRepos` for repo scanning (e6588d1)

Bug Fixes

  • •github-access-loss: handle github-access-retries and refile queued reports (358c5a8)
  • •github-access.test: add tests for GitHub access loss scenarios (483c194)
  • •github-access: improve reporting and restoration logic (59e4997)
  • •github-app: improve repo id fetching and settings URL calculation (031c44c)
  • •github-app: refactor token cache to support repository selection (934f3ea)
  • •github-webhook: handle installation events and background tasks (7c1629e)
  • •github: handle GitHub access errors (24c8053)
  • •glitchgrab-self-report: enhance handling for GitHub access errors (ab55540)
  • •issue: add handling for GitHub access errors (cf89f65)
  • •mail: add functionality to send emails notifying about GitHub access loss (5664511)
  • •migration: add columns for GitHub access loss tracker (7ac7ca6)
  • •org-overview: add repo scan warning for team panel (65b2a16)
  • •org-repo-list: handle access lost for GitHub repos (5b0f3c3)
  • •org-repo-scan.test: add unit tests for org repo scan (86be61e)
  • •org-repo-scan: add scanOrgRepos function to org-repo-scan.ts (5f68cd2)
  • •prisma: add githubAccessLostAt for repo and report models (d99cc45)
  • •readme: update instructions for Chromium audio mute (d0ace77)
  • •repo: handle GitHub access errors and queue reports (a52ec10)
  • •report-dialog: update report-dialog.tsx (d942093)
  • •report-ui: avoid clipping project picker in header (c155aa3)
  • •report-ui: update assist-sheet component to handle project search list overflow in extension #380 (d87a9d3)
  • •report: add GitHub access tracking and retry logic (c89e1ed)
  • •report: improve GitHub access handling (54fb0a3)
  • •reports: update response to include fail code and createdAt fields (1e9868a)
  • •repos: add access settings link to repo list (6d943ae)
  • •repos: add accessLost field to repo route (650070b)
  • •src: add status field to ReportResult (fae548f)
  • •types: add missing `status` field to `ReportResult` interface (97ef113)
  • •whatsapp_templates: add WhatsApp access lost alert (3b86826)
  • •whatsapp: handle GitHub access lost notification (fb1ea89)

v1.84.0

Features

  • •claude: add info about Glitchgrab's hosted guides (92d6fae)
  • •footer: add guide link (f068c07)
  • •guide-markdown-view: add markdown rendering support (f03063a)
  • •guide-markdown.test: update test to exercise development export condition (81c27f0)
  • •guides: add Glitchgrab's own guide listing (ea2d1f7)

Bug Fixes

  • •docs: add guide page for [slug] (eb893a1)
  • •glitch: update card icon to indicate not installed (86bfe38)
  • •guide-editor-dialog: add prop to guide Markdown View component (6c323b2)
  • •guide-markdown-view: remove guide markdown view file (c7bb532)
  • •guide-markdown: add 'withoutPrism' plugin (ee861e6)
  • •guide-reader-dialog: update the markdown view component (9789154)
  • •guide: add page and refactor guide logic (ddd6fa7)
  • •guides: update guide link for Glitchgrab's own guides (cc412b4)
  • •prisma: update guide schema to include new product support (ffb7d46)
  • •public-nav: add link to guides section (ba04c24)

v1.83.0

Features

  • •ai-report-assist: improve button retirement logic (8d184ae)
  • •glitchgrab-problem: add support for multiple screenshots in the glitchgrab problem panel (97587f4)
  • •glitchgrab-self-report: add "+ Add screenshot" button and paste handler (2ea7e35)
  • •issues: add scoreIssueMatches method (4bc688c)
  • •issues: add support for prompt issues (50c519e)
  • •prompt.test: send excerpt of open issues too (0650911)
  • •prompt: add "What it reports" to open issues in prompt.ts (462bcd9)

Bug Fixes

  • •ai-report-assist: add more context to scores in ai-report-assist (69c1f3d)
  • •issue-matching.test: add #1860 issues for prompt test (1b82e55)
  • •issue-matching.test: remove ! from excerpt length check (e6f298f)
  • •report-chat: add IP_TURN_LIMIT and BUSY_RESPONSE (b5584ca)
  • •report-chat: improve issue ranking and prompt generation (d2920b1)
  • •report-dialog: prevent reusing assist notice after retry (bb1b0c5)
  • •report-ui: clear events on degraded (1eb8eb0)
  • •report-ui: ensure AI assistant retries gracefully (651112c)
  • •report: add retryable flag to report dialog (f79e0e5)
  • •src: clear assistant dialog on degraded and retryable reports (839ab3d)
  • •test: use assist-turn.test for assistTurn tests (67287f8)
  • •utils: improve assistance turn handling (55d8c88)

v1.82.0

Features

  • •api: add guide API routes (94253b8)
  • •guide-key.test: add test coverage for guide key generation and reading (a2dbadd)
  • •guide-key: add generate, read, and resolve functions for guide write keys (4cb452a)
  • •guide-key: add routes for generating and revoking guides write keys (8c44692)
  • •guide-markdown.test: add unit tests for rendering markdown (e6703ef)
  • •guides-base-url-dialog: add guide base URL dialog (24a2f5e)
  • •guides-prompt.test: add test for guide links and prompts (e6f1622)
  • •guides: add guide components and logic (482f534)
  • •guides: add guides page, remove old table (e9e30cf)
  • •guides: add routes for guides in dashboard (d6b793b)
  • •mcp-token-scope: add tools for read and write guides (839f9ac)
  • •meet-bot: fetch bot snapshot (30dc67c)
  • •meeting-detail: add retranscribe button and handle audio stored status (acda011)
  • •meeting-dispatch: reconcile stuck bot rows (da8bf5f)
  • •org-bottom-nav: add Guides button (34d4f2c)
  • •prisma: add guides table (381cab3)
  • •prompt.test: enhance ASSIST_SYSTEM_PROMPT to include handling of attached files (8e0588d)
  • •prompt: improve guide links in prompt docs (404045b)
  • •README.md: add section about when delivery fails (9f56d2a)
  • •repo: add feature to preview text attachments in report route (5dcc749)
  • •report-network: allow list "guidekey" credential as an alternative to tokens (e6cde99)
  • •report-ui: add support for attaching files in assist sheets (1bd8b44)
  • •reports: support previewing text files on the CDN as plain text (6e6ec17)
  • •restart: add restart transcription functionality for stored audio (9f6f5e2)
  • •retranscribe: add retranscription endpoint (7ca1360)
  • •spool.test: add new test file and tests for retryDecision, recoverInterrupted, and spool on disk (2890168)
  • •spool: add recording of bot audio to the cloud server (1e9ee7f)
  • •tokens: add MCP connect card to org tokens page (b77e857)
  • •upload.ts: improve failure handling in upload logic (7a35355)

Bug Fixes

  • •add `//` before comment strings to avoid marking them as comments by some editors (6b9f6f0)
  • •assist-files.test.tsx: add tests for file attachments in assist sheet (1d1a389)
  • •assist-sheet: sort files, remove unused refs (c0ee9a0)
  • •attachment-storage: add functionality to upload text attachments to S3 (6485569)
  • •attachments-constants: improve inline attachment preview handling (02097af)
  • •attachments.test: link the stored copy even when the file fit inline (49c3a5b)
  • •background: stop bot meeting in call (3962ff5)
  • •bot-reconcile.test: add tests for bot reconciliation logic (85c256d)
  • •bot-reconcile: handle phase transitions when updating verdict (2b269fd)
  • •chat.test: add HTML mockup for attached files (7dbbeb2)
  • •claude: update bot and delivery functionality to account for new features and changes in Meet's API (2093502)
  • •events.test: improve file logging tracking (23f6a94)
  • •events: add non-image and file events (a907f84)
  • •extension: add meet-pill component to remove bot from call (ef04d6a)
  • •glitch: remove Glitchgrab bot from calls (7f7b4f8)
  • •guide-editor-dialog: add guide editor dialog for new and edit functionality (db57ceb)
  • •guide-fields: add missing constant for MAX_GUIDE_URL (bcd5a0e)
  • •guide-fields: add new TypeScript types for guide fields and validation functions (4d11df6)
  • •guide-key: handle missing `id` and `fullName` fields in `GuideKeyRepo` (cdd1b1c)
  • •guide-markdown-view: add support for guide markdown rendering (7381288)
  • •guide-markdown: add renderGuideMarkdown function to guide markdown library (7355513)
  • •guides-base-url: add dynamic route and validation for guides base URL (64b4cb2)
  • •guides-manager: add guide management functionality (9ae11d5)
  • •guides-manager: handle guide deletion event (e4eb7eb)
  • •guides-write-key-dialog: add guides write key dialog support for new repo (f2501ed)
  • •guides: add guide-reader-dialog component (f4f6c20)
  • •guides: add OrgGuidesPage component (fedd5fe)
  • •guides: add SDK guide routes (3faee35)
  • •issues: improve issue tokenization algorithm (37efb76)
  • •mcp-connect-card: add mcp connect card (960efd0)
  • •mcp-http-server: update `Authorization: Bearer ggw_…` key to guide access (`GUIDE_KEY_TOOLS`) (b531069)
  • •mcp-token-scope.test: update test scope for guide write tools (e72e998)
  • •meet-bot: update fetchBotSnapshot function to use correct environment variables (db0f88d)
  • •org-sidebar: add guides to organization sidebar (2b8b021)
  • •prisma: add guides write key migration (3d2a827)
  • •report-chat: sanitizeAssistFiles (3153f60)
  • •report-dialog: add onRemoveFile handler for non-image attachments (7f568e7)
  • •report-ui: add new types for assist file handling (4d88bba)
  • •report-ui: update attachment constants and handling (5419379)
  • •report: add upload of text attachments to CDNs for inline preview and full copy in repo (09110ec)
  • •sdk-token-security: clarify that guides are always published and use separate secrets (7702ff3)
  • •server: add recording processing and retry logic (a12ca2f)
  • •stop: add CORS headers to OPTIONS route (cb290d1)

v1.81.0

Features

  • •actions: enforce rate limiting for report actions (807dc31)
  • •ai-report-assist: enhance token routes and improve UI for issue attachment (ddee4d1)
  • •alert: add alert component (b796e7c)
  • •api-tokens: add support for managing allowed origins in tokens (363a65a)
  • •api: add daily rate-limit-cleanup cron job (7849a5e)
  • •browser-guard: add browser guard checks for paid routes (21cf4c0)
  • •business-autocomplete: remove unused business-details API endpoint (4a1ac1b)
  • •checkbox: add checkbox component (f793b0a)
  • •client-ip: add client IP detection and rate limiting functions (0180588)
  • •end: add rate limiting for end route (cd716dd)
  • •glitch-md: improve brief status loading (eb94011)
  • •glitchgrab-report: add support for the 'network' field in self report data (c69601c)
  • •issues: fix issue parsing in cleanIssueBody (7983e5e)
  • •mcp-token-scope: add scope repo logic to resolve MCP tokens (d5f5fc7)
  • •mcp: Add token scope enforcement for MCP tools (dad4971)
  • •meetings: add `testerId` to `MeetingCaller` (58a8af1)
  • •meetings: add canDeleteMeeting and fetchLiveBotPhases for deleting meetings (eabfe82)
  • •migration: add briefState column to AiAssistConversation table (4a98400)
  • •migration: add createdByTesterId column to Meeting table (b1b1bd4)
  • •migration: add glitchgrab_report_enabled default value to Repo table (2c502eb)
  • •migration: add signed users mode and allowed origins for tokens (701f6f3)
  • •org-overview: update org overview component to include stat cards and list panel (4e9a3c0)
  • •ping: add ping rate limit check (80cf5be)
  • •prisma: add TesterNudgeMute model (d556178)
  • •provider: add signedUserId and signature to GlitchgrabProvider (5bea178)
  • •provider: improve error handling for similar issues (3b4b3f9)
  • •qa-client: enhance view to include calls (8d0ddd0)
  • •qa-stats: add support for the QA stats API. (783c6cb)
  • •release: add rate limiting for release route (8326ee0)
  • •repo-installation: add repo GitHub access resolution logic (ed4d546)
  • •repo: add route for reporting requests (aa4e4e7)
  • •report-chat: add resolveReportCaller function (c10627d)
  • •report-network.test: add tests for resolveReporterIpFilter and shapeReportForCaller (e1bd708)
  • •report-network: add reporter network fields and resolver (a02fa5c)
  • •report: add readRequestNetwork, recordReportNetwork, and GitHub issue handling (d22622d)
  • •reporter-network-info: add IP, location, and ISP fields for every report (f4d98c1)
  • •reporter-network: add missing return type to interface field (69767ff)
  • •reporter-network: add reporter network information (532c9a7)
  • •reports: add route for reporting and analysis of reports (8d5cb64)
  • •request-network: add request-network module (3c62fa7)
  • •sdk-token.test: add SDK token expiry tests (df70801)
  • •sdk-token: add resolveSdkToken to resolve API tokens (47069cd)
  • •signed-session: add max_signature_ttl_seconds and clock_skeew_seconds (4fbe239)
  • •similar: add dynamic route for similar issues (1e3c079)
  • •src: add signature field to GlitchgrabSession type (7db4fe7)
  • •src: add types for similar issues and find similar issues functions (2022c22)
  • •stats: add route to fetch signed-in tester's verification activity (1245fc3)
  • •tester-nudge.test: add tests for `nudgeDecision` and `phoneTail` (cbb0eca)
  • •tester-shell: add calls navigation item (f9c62a5)

Bug Fixes

  • •ai-assist: add brief state display in conversation card (1c3a2cb)
  • •ai-assist: add brief-state.test.ts (4cfc1a1)
  • •api-enhance-text: add SDK bearer verification and rate limits (236f755)
  • •api-v1: add evening tester nudge route (0160e07)
  • •api: add allowTesterCookie option to resolveMeetingCaller (d8f3504)
  • •api: update allowed origins route to use repository-based access control (a2a93fd)
  • •app-input-fields: update documentation to reflect new features (0638aa8)
  • •appconfig: update exclude list for test files (119c094)
  • •assist-sheet: use a theme text for the status message (bd2c9cd)
  • •booking-auth: add tokenRejection check (e19dc6d)
  • •bot: add testerId parameter to meeting bot route (7737f82)
  • •browser-guard.test: add new test files and functions (39e9de5)
  • •browser-guard: add guard to prevent refreshing pages when session is already allowed (d722a0f)
  • •calendar: add support for external events in calendar component (1728d2f)
  • •chat: increase max output tokens from 8192 to 3072 (9165eea)
  • •claude: add API docs for AI enhancement functionality (bade163)
  • •claude: improve QA tester permissions in Calls tab (3481e60)
  • •claude: update dashboard session handling (2287b83)
  • •comments: add support for creating comments on GitHub issues (18c2d1a)
  • •context: add token expiration check in GET route (f44cbac)
  • •corrections: add rate limiting check for tokens (830d3be)
  • •dashboard-status-bar: use path prop instead of pathname (4ec9a7a)
  • •dashboard: remove unnecessary state management and improve component structure (68468cb)
  • •docs: update signed-users-dialog documentation (a088d5b)
  • •edit-profile-sheet: add phone input and save changes (e756145)
  • •extension-session: ensure we fetch repos correctly when a QA tester is logged in (aa4af4d)
  • •feedback: add feedback rate limiting for reading (d2a714e)
  • •forms: add missing phone field type (fb6add0)
  • •glitchgrab-self-report: update default value to true (f513793)
  • •glitchgrab-self-report: use the new `reportNetworkColumns` and `recordReportNetwork` functions to update the report data (b1796c2)
  • •inputaitextarea: update props for better error handling (2edeb46)
  • •inputdate: implement custom date picker with month and year selectors (ce1da57)
  • •inputeditorjs: update textarea to use Sonner toast for success and error messages (0c0626e)
  • •inputfield.types: improve autocomplete functionality (1460f0b)
  • •inputimage: handle click to trigger dialog (88089b9)
  • •inputlist: update InputList.tsx (d3f3ed0)
  • •inputmultipledates: improve date selection handling (9573dba)
  • •input: remove unused code and simplify component implementation (970c469)
  • •input: remove unused InputAddress component (8ac584e)
  • •inputservicesselection: remove dead code (51c6218)
  • •ip-network-lookup: add lookupIpNetwork and recordReportNetwork functions (e38d30c)
  • •ip-network-lookup: update ip network lookup logic to handle errors and improve performance (f3b3ffa)
  • •issue-matching.test: update test case for duplicate check (91c51d2)
  • •issue: add owner-only network info to issue (b91e76e)
  • •issues: cache issues with body excerpts (eea1a52)
  • •issues: resolve repo installation for issues.ts (1879879)
  • •knip: remove AppInputFields ignore rule (2248e91)
  • •layout: update tester shell component to include org login (7c5989d)
  • •list-panel: add link to footer (0cf93d5)
  • •mcp-http-server: update documentation for token resolution and handling (7a92bc2)
  • •mcp-token-scope.test: add tests to cover new functionality (db069ca)
  • •meeting-detail: improve navigation and issue visibility in meeting detail panel (8318a12)
  • •meeting-detail: remove delete button for dashboard users (36e7426)
  • •meetings-list: add stop and file-to-project controls for tester views (7233c40)
  • •meetings: add createdByTesterId to meetings route (0e94036)
  • •meetings: improve handling of tab/mic recordings in GET response (33cb02b)
  • •migration: add allowed domains for Navibyte's own products' SDK tokens (3713409)
  • •migration: add tester nudge mute configuration (6727c03)
  • •modernimageinput: use modern image input component in modern image input field (2161675)
  • •org-repo-list: add signed-users-dialog for org repos (efb292e)
  • •prisma: add meeting and briefState fields to AiAssistConversation model (70f1999)
  • •prisma: allow signed users mode and report origin tracking (1c45234)
  • •project: improve API token validation and rate limiting for project routes (68c29fb)
  • •qa-stats: remove unused `waiting` count from `QaBreakdownRow` (37c7041)
  • •qa-view: update qa view data to include verification timestamp (a8ffabf)
  • •quota: add missing check for brief state in markConversationGap (99ffabe)
  • •readme: update information about token protection and data collection (bdbb4d7)
  • •repo-installation.test: add tests for borrowing GitHub App installations from duplicate repo rows (e2d3ea9)
  • •repo-installation: remove unused owner and name fields from PickedAccess type (2a2fdce)
  • •report-caller: add guard and ip limit checking (767f47f)
  • •report-caller: add resolveReportCaller function (9b8c2a9)
  • •report-caller: improve rate key calculation (a8432fa)
  • •report-chat: enforce IP rate limit for AI assistant (976be63)
  • •report-chat: mark conversation brief state in background (a1c15fb)
  • •report-dialog.test: add duplicate check on Send test (02b176f)
  • •report-dialog.test: add test for picking issues from existing options (547842d)
  • •report-dialog: ensure picking of an issue is optional and that a correct message is shown (124637b)
  • •report-ip-retention: add route for daily IP retention cleanup (e51a75a)
  • •report-network: use shorter component name (3f34ef4)
  • •report: add support for tracking request network info in reports (d5b7fc6)
  • •reports-list: add reporter network details to reports list (c01f859)
  • •reports-tabs: add reporter-network block for detailed information on reports' origin (fb7e1ba)
  • •reports: add rate limiting check for GitHub API calls (1a1c9d4)
  • •repos: enable glitchgrab report and signed users mode (d03159f)
  • •repo: use `checkRateLimit` for rate limiting (5835d98)
  • •request-network.test: add test cases for request network reporter (9baf2cb)
  • •review: add `briefState` field to the review conversation object (fd3b785)
  • •routes: add support for token expiration in issues route (71f528b)
  • •sdk-token-security: clarify rate limit enforcement keys (fee2466)
  • •secret: update the signing secret for `Repo.signedUsersMode` (1e1a5d0)
  • •server: sign session for server-side AI features (9f3067b)
  • •session: add rate limiting for session login requests (6b49ef1)
  • •signed-session.test: add tests for signed session functionality (bbd98b2)
  • •signed-session: add signed session support (2327c5c)
  • •signed-users: add route for signed users mode (fd3b6ef)
  • •similar: add IP rate limiting for similar reports (e0a7e4f)
  • •src: add findSimilarIssues function for reporting similar issues (344928c)
  • •src: remove duplicate import for 'FindSimilarIssuesFn' (fab077f)
  • •stat-card: add skeleton for stat card loading state (86c51c0)
  • •stat-card: update pill tone color (7cf8563)
  • •stt: add Sarvam transcription support (f2bf76e)
  • •stubs.d.ts: remove GoogleMapsProvider and other modules from stubs.d.ts (bb295fb)
  • •sw: add switch component for UI (d20a457)
  • •tabs: add Tabs component (cc8fa51)
  • •tester-calls: add logic to fetch tester calls (94c2fb9)
  • •tester-nudge: add test to ensure the tester is notified if they are out of streak (dca981a)
  • •tester-nudge: add testing logic for the evening WhatsApp nudge (f9d26b2)
  • •tester-shell: add sidebar and bottom nav for tester dashboard (cdd70d7)
  • •today-card: add TodayCard component and initial implementation (c4e3d8f)
  • •tokens: add allowed origins dialog (4d1fb40)
  • •tokens: add allowed origins dialog support (1e6b5d9)
  • •token: update token hash retrieval (6f32d61)
  • •ui: add radio-group component (da8f7a1)
  • •update github-contributions.tsx to include Sunday first days, simplify day labels and cells, add mobile-specific styling (d0a61d1)
  • •use-extension-session: add useExtensionSession hook and openInGlitchRecord function (a44e7a6)
  • •use-qa-stats: add use-qa-stats hook to fetch QA stats (932a06a)
  • •use-tester-view: add more test cases for `useTesterView` (95ad304)
  • •use-tester-view: add useTesterCall helper (00dbabe)
  • •use-tester-view: update tester view list (3f468eb)
  • •utils: add signed identity fields to enhanceText API request (6f9be45)
  • •vercel: add cron jobs for rate-limit cleanup, IP retention report (1b84998)
  • •vercel: add cron jobs for testing (667e232)
  • •webhook: handle mute/unsuspend issue digest/nudge nudge responder (6964542)
  • •whatsapp_templates: add qa_daily_nudge template (14ad4cd)
  • •whatsapp: add daily nudge to QA testers (#368) (ea64d6c)

v1.80.0

Features

  • •ai-assist: sent to glitchgrab (a8f824a)
  • •api: add `glitchgrabReport` flag to project route (d0430dd)
  • •events: support Glitchgrab offer events (7598771)
  • •glitchgrab-report: add route to toggle glitchgrab report enabled state (478b707)
  • •prompt: clarify handling of reporting tool-specific issues (a49f35b)
  • •provider: add session key for ref tracking (5bd1c77)
  • •report-footprint: add buildFootprintSections and parseVisitedPages (3750cd0)
  • •repos: enable glitchgrab report (4d279e3)
  • •src: use GlitchgrabProblemFn and GlitchgrabProblemParams for error reporting (303a62c)

Bug Fixes

  • •about-glitchgrab.test: add tests for the `about-glitchgrab` detection test, covering its prompt and context line unlocking. (536182a)
  • •breadcrumbs.test: update previewJson and leadingText tests (71e6aae)
  • •breadcrumbs: add support for longer text in console breadcrumbs (4e0fc7a)
  • •capture.test: improve handling of multiple tab opens during capture (129d37f)
  • •capture: improve fallback and re-draw handling for glitchgrab layer and hidden tabs (18f141c)
  • •chat: update chat model behavior to handle glitches and clarify about Glitchgrab (c0de4eb)
  • •claude: add GLITCHGRAB_SELF reporting feature (4729b26)
  • •content: remove duplicate event dispatch for report overlay (6193010)
  • •glitchgrab-problem.test: add test cases for reporting problems with Glitchgrab (ed158c6)
  • •glitchgrab-problem: add glitchgrab-problem component (33455f2)
  • •glitchgrab-report: handle new self-report route (2a92919)
  • •glitchgrab-self-report.test: add self-report tests (6f72dbb)
  • •glitchgrab-self-report: add "Problem with Glitchgrab?" link in report dialog (1faa0e3)
  • •issue-section: sent it to the Glitchgrab team instead (98fdfdb)
  • •lib: improve self-report footprint logging (4eba30a)
  • •org-repo-list: add glitchgrab report toggle functionality (2f673a2)
  • •prisma: add glitchgrabReportEnabled field (764be43)
  • •prompt.test: update test to account for reporter's removal and label restarts (92514b0)
  • •prompt: clarify reporting image logic (6185f8a)
  • •report-chat: improve reporting from glitchgrab (93e6ded)
  • •report-footprint.test: add tests and improve formatting (b8f29b0)
  • •report-footprint: add support for `pageUrl` in footprint input (2708e76)
  • •report-ui: add glitchgrab offer handling and parameter types (a60de7f)
  • •report-ui: improve dialog's "Problem with Glitchgrab?" panel (#366) (88a5105)
  • •report-ui: update tests for capture-redraw test suite (552d0c1)
  • •report: add buildFootprintSections function and parseVisitedPages to route.ts (bcea3e3)
  • •report: improve glitchgrab reporting error handling and usability (26897a2)
  • •reports-tabs: add about_glitchgrab icon (26bd737)
  • •tests: improve report-dialog-open-speed.test.tsx to handle slow CPU and re-draw issues (c51851b)
  • •utils: add ability to determine if an issue is related to glitchgrab (52fafed)
  • •web: enable self-report dialog in glitchgrab (935315a)

v1.79.0

Features

  • •agent_docs: add AI-specific documentation for sharing bar issues (938206a)
  • •ai-assist: add AI assistance switch and gap status query (1afa097)
  • •glitch: fix reporting issue in Glitch.md (03986e5)
  • •org-repo-list: add brief status row for AI assist tracking (aaa79fe)
  • •prisma: add brief gap column to AiAssistConversation table (9e32308)
  • •prompt.test: add parsing and handling for gaps in notes (0b428b8)
  • •prompt: clarify when the brief and notes could not answer, in the model's few words (1877b0b)
  • •report-chat: handle conversation gap when brief asks (b27a980)

Bug Fixes

  • •capture.test: test for video never starting leads to unexpected stop of sharing (769e510)
  • •capture: add ceiling on frame timeout (37b4bc9)
  • •chat: improve gap handling (f680c43)
  • •claude: add GLITCH.md for AI on needs the file (7ef72bb)
  • •glitch-md: add check for status when using Glitch Brief Status (27ad41c)
  • •glitch-md: refactor cache handling (225ace4)
  • •prisma: improve conversation schema (f110f57)
  • •quota: record gap between brief and answer (44a6b53)
  • •review: add briefGap field to ReviewConversation and listAssistConversations (b2f1a13)

v1.78.0

Features

  • •report-chat: add issue resolution and status handling (942cf97)

Bug Fixes

  • •ai-assist: improve handling of open issues (170e0bd)
  • •assist-sheet.test: adds tests for AI assistant sheet features (3c5e4a0)
  • •issues: add logic to describe issue status (4c85821)
  • •prompt.test: add test for duplicate asked as a question (17663fd)
  • •report-ui: add duplicate status to AssistTurnResult (f8e7038)
  • •report-ui: fix render_known_issue in assist-sheet.tsx (9669085)
  • •report: update the `duplicate` field to include a status property (886130f)
  • •utils: update duplicate property status (1699f87)

v1.77.1

Bug Fixes

  • •assist-images.test: ensure assist images are limited to MAX_ASSIST_IMAGE_CHARS (4df452e)
  • •assist-sheet: improve image handling (33bdeb3)
  • •image-encode: improve image encoding quality and handle retina PNGs (1aca471)
  • •report-dialog: update screenshot encoding for images (859a91d)
  • •report-ui: add screenshot verification in assist-sheet.test.tsx (b302bb5)
  • •report-ui: refactor(image encode utilities) (da96a41)
  • •report-ui: update types for assist turn params, increase max image size (626294a)

v1.77.0

Features

  • •ai-report-assist: add support for draft removal, checkbacks, and chat updates (284fb4f)
  • •prompt.test: refactor prompt parsing for checking back before the first report (59ca2de)
  • •report-dialog: add onRemoveImage method (0291abd)

Bug Fixes

  • •ai-assist: handle image removal on page.tsx (ab6a8f0)
  • •chat.test: add checks for draft confirmation prompt (19e562a)
  • •chat: clarify instructions for user interaction in chat response (7c3bea7)
  • •events: added image removed support for assist events (5971111)
  • •issue-section.test: ask for a change to the draft (11486bc)
  • •prompt: add confirmation step before first report (73b9940)
  • •report-ui: improve assistant image handling for draft reports (e83b991)
  • •report-ui: show draft with reply box still under it (59e958f)
  • •report-ui: test remove image 2 and page capture from assist sheet (6eeda4d)
  • •src: handle image removal in report-ui (7876687)

v1.76.0

Features

  • •capture.test: add tests for capturing tab pixels from Chromium and outside it (9fe561e)
  • •capture: add browser tab screenshot capture (e80b2ac)
  • •report-ui: add screenshot functionality from real tab via `getDisplayMedia({ preferCurrentTab })` on Chromium and html2canvas-pro as fallback. (8666c71)

Bug Fixes

  • •bun.lock: update version number to 1.75.0 (21031fc)
  • •package-report-ui: update html2canvas-pro dependency to version 2.4.2 (de0590d)
  • •package: update html2canvas-pro dependency to v2.4.2 (9084ea5)
  • •readme: enhance screenshot capture in sdk-nextjs (f9e81fd)
  • •readme: improve screenshot handling (868ba9e)
  • •report-dialog-capture.test: ask for the tab inside the open event itself (9577c81)
  • •report-dialog: add capture screenshot override option (1351367)
  • •report-triage: handle missing API key in Google AI classification (d06ad89)
  • •report-triage: implement screenshot loading functionality (9525545)
  • •report-triage: update model name and budget (295ea88)

v1.75.0

Features

  • •Add AI report assistant page to admin dashboard (490dc51)
  • •ai-assist: add issue-section.ts (829dea7)
  • •ai-report-triage: add ai-report-triage.md (6b71c57)
  • •ai-triage: enable/disable AI report triage on repo by owner (341dd8d)
  • •callbacks.test: add callback signature verification test (a570044)
  • •callbacks: add callback event enqueueing and delivery (cccbac3)
  • •claude: add admin conversation list access (8d376b8)
  • •client: add TriageCorrection interface and methods (abadd75)
  • •corrections: add route to store and list corrections (b785800)
  • •github: add label functionality (68b17e1)
  • •issue-section.test.ts: add tests for rendering AI assistant conversation in GitHub issues (c58eced)
  • •issue: classify what kind of problem this report describes (84fc810)
  • •mcp: add list_assist_conversations endpoint for Glitchgrab-internal users (2dd9f9c)
  • •migration: add AI report triage and correction capabilities (aacc595)
  • •migration: add imageSources, kind, latencyMs, model, and rawReply to AiAssistMessage table (7bb5a3d)
  • •org-repo-list: add AI triage toggle button (0ef0331)
  • •prisma: enable AI report triage (2a27fa3)
  • •prompt: label images in prompt.ts (0bdddc1)
  • •report-chat: add new event-only flush handling for reporting scenario (2989f53)
  • •repos: enable AI triage for repos (01f7d4b)
  • •whatsapp-platform: add callbacks for platforms (18015b6)

Bug Fixes

  • •ai-assist: add review.ts file (bcf8919)
  • •ai-assist: remove unused comment (922d267)
  • •api:route: update route handler to include triage logic and background task (aa339b9)
  • •assist-sheet: add click logging and event handling (fcef8c7)
  • •background: move `runInBackground` to lib/background.ts (bc47cf0)
  • •bun.lock: update version for Bun dependencies (c7f1898)
  • •callbacks: add verifyCallbackSignature function to validate callback signatures (8449baa)
  • •chat.test: improve image handling and draft presentation (c039750)
  • •chat: improve image handling in chat conversation interface (cc8ee12)
  • •claude: update GitHub issues creation path and triage workflow (6086dc8)
  • •events: add assist event types and sanitize function (7cf65d7)
  • •events: remove deprecated ASSIST_EVENT_TYPES enum and replace with a more concise and accurate representation of event types. (03c9985)
  • •index: add callback verification signature (9351e99)
  • •issue-section: add event handler for issue section actions (8cf2972)
  • •mcp-http-server: add doc for `list_assist_conversations` (1e9e496)
  • •meeting: add meeting frame and issue draft tables and relationships (d5528fe)
  • •migration: add callback secret and status for wa_callback_outbox (386240a)
  • •package: bump version to 0.4.0 (83e760f)
  • •platforms-client: improve key reveal and rotate functionality (66637a3)
  • •quota: add missing conversation id in linking logic (c774f58)
  • •readme: clarify label correction mechanics (13c06e5)
  • •repo: add background triaging for high-severity reports (255d13d)
  • •report-dialog: improve screenshot handling for self-annotation (e564ee5)
  • •report-triage: add AI report triage logic (0b4959b)
  • •report-ui: update description for assistant sheet test cases (f87aa26)
  • •report: add support for loadAssistIssueSection in POST request (079eab5)
  • •report: ensure issues are classified for triaging (c76eaaf)
  • •reports-tabs: add Triage Chip component for AI response in reports tabs (d999f76)
  • •reports: classify problematic reports and send to background (48b7b6c)
  • •report: use loadAssistIssueSection in POST response (0958189)
  • •schema.prisma: add event schema for AiAssistEvent (78b66d6)
  • •send: remove redundant language check (1f3c968)
  • •send: warn tenant balance low when sending marketing message (d6af433)
  • •src: reexport AssistSheetEvent from 'src/ui' (61a50b3)
  • •src: update list_triage_correctionsInput type (ece36e9)
  • •transcript: add event sourcing for transcript conversations (08629e0)
  • •triage-chip: add functionality to handle triage chip feedback (7a92147)
  • •types: add sheet events, auto-capture image sources (c229519)
  • •vercel: add cron jobs for wa-template-sync and wa-callbacks (47a0290)
  • •wa-callbacks: add route to drain outbound callback queue (5d38ea0)
  • •webhook: add logic to notify platform of message statuses and conversations (2b0cb18)
  • •webhooks: add retry logic to webhook dispatch (a4ea2cb)
  • •whatsapp-platform: send matches on either name (6f11fcd)
  • •whatsapp-platforms: rotate callback secret (2047cee)

v1.74.0

Features

  • •digest.test: remove magic link from detail message (2ad7f92)
  • •report-chat: handle legacy single image and add screenshots support (1fc8bfd)
  • •report-ui: add image management to assist sheet (21460ea)
  • •report: add severity parsing for report routes (d52fc13)
  • •reports: add no-severity-picker on dashboard chat (aad7545)

Bug Fixes

  • •ai-assist: limit assist images (1025d12)
  • •assist-sheet.test: handle dialog severity refusal inside sheet (cd2e2c9)
  • •chat: update screen shots to comply with max limit (da56ca0)
  • •digest: refactor logic to avoid printing full dashboard URL in commit message (5a10d1d)
  • •docs: handle multi-line paragraphs in SDK README (abdea3b)
  • •github-counts.test: add mockGraphql for GitHub API requests (6d49839)
  • •github: add GitHubGraphql, getOpenIssueCounts, and getClosedIssueCountSince (7882f6b)
  • •issue: add severity field to issue creation route (cd09654)
  • •provider: add screenshots prop to GlitchgrabProvider (737447e)
  • •readme: add severity labels to report server errors (3c3141d)
  • •report-dialog.test: improve reporting dialog UI interactions (b65a38e)
  • •report-dialog: update Severity picker with refutation文案 (525e811)
  • •report-ui: add missing severity values and labels (ba71793)
  • •report-ui: add tests for assist sheet images (d874558)
  • •report: add support for parsing severity from metadata (b921921)
  • •report: store no severity for unselected reports (8c557a2)
  • •severity: add parser and docs (9e84c64)
  • •src: add critical report severity option (aba21f0)
  • •src: update index.ts (a0ae2e5)
  • •webhook: fetch repo owner + org name for WA messages (44eb954)
  • •webhook: improve WhatsApp response format (a58d244)
  • •whatsapp_templates: update issue assignment templates (a6f5484)
  • •whatsapp-settings-form: improve issue assignment body (e5e3287)
  • •whatsapp: improve issue assignment notification template (d4efefe)

v1.73.0

Features

  • •chat: improve chat assistant fallback and performance (aaefd90)

Bug Fixes

  • •ai-report-assist: add failed turn refund logic (f71eb47)
  • •quota: add releaseAssistTurn function to manage failed claims and turn counts (66f5b9d)
  • •report-chat: improve assistTurn function error handling (0fd97ba)

v1.72.0

Features

  • •graph: add editTemplate method (91efa69)
  • •whatsapp-platform: add template name mapping and tenant edits (bcfe0f9)

Bug Fixes

  • •client: add support for editing templates (79b73ef)
  • •package: bump version to 0.3.0 (e30983e)
  • •prisma: add sourceName and editedAt fields to WaTemplate (66adf55)
  • •repo: update route handling to allow template editing (42f5fec)
  • •template-vars.test: add tests to validate template wording constraints (a3fceb4)
  • •template-vars: collect variables in consistent order (8ff5a2b)
  • •template-vars: handle variable collection and signature calculation (347c4da)
  • •templates: add `sourceName` field to `WaTemplate` (590c7ed)
  • •types: add sourceName and editedAt fields to WaTemplate interface (ea89662)
  • •wa_template: add sourceName and editedAt columns to WaTemplate table (9a08edf)

v1.71.0

Features

  • •booking: add support for SMS codes in booking API (7970b81)
  • •booking: improve otp generation (32d0b8d)
  • •bulk-default-assignee: add bulk default assignee route for setting the same default assignees across many repos at once (eebbff3)
  • •default-assignee: add default assignees route (c805648)
  • •github: add support for default assignees on create issue (d14b4de)
  • •graph: improve handling of graph API errors (1b053c3)
  • •inputotp: add support for custom OTP length (c99eda8)
  • •issue: add defaultAssignees field to PATCH route (01ddd6e)
  • •member-stats: add logic for tracking outside collaborators (dc3d102)
  • •otp: implement four-digit OTP service (e4310be)
  • •prisma: add GitHub assignee list field (0186035)
  • •report: add assignee support in report route (676eeb3)
  • •seo-health: update seo health cron route (0f906e7)
  • •whatsapp-platforms: add `refresh` method to platforms client (9ad46e9)

Bug Fixes

  • •agent_docs: remove reference to `wa_otp` in `whatsapp-templates.md` (ef40ab5)
  • •api: add default assignees to create meeting issue draft route (9c84d86)
  • •bug-chat: add recovery copy for microphone access errors (8678bb3)
  • •claude: add default assignees per repo (2c769c9)
  • •claude: update SMS OTP channel to only support Msg91 with digit count from lib/otp.ts (c94ac2b)
  • •github: add getGitHubOrgOutsideCollaborators function to fetch outside collaborators (c5f6673)
  • •github: remove unused type `AssignableUser` (2f9b5bd)
  • •members: fetch GitHub org members + outside collaborators (97b6610)
  • •migration: add repo.defaultAssignee to manage GitHub assignees for Glitchgrab files (f93bbf3)
  • •migration: repo default assignees array refactor (874b6ba)
  • •org-overview: add outsideCollaborator label to pending members (f72cf29)
  • •phone-prompt-dialog: update text and length for OTP input (14c39ad)
  • •report-dialog.test: improve microphone failures handling (e0e0ba2)
  • •report-dialog: improve recovery instructions for microphone access issues (e98787a)
  • •report-ui: update report dialog component (4018b3f)
  • •report: add default assignees to report route (27bce36)
  • •reports: add support for default assignees in issue creation (fb7835e)
  • •repos: add default assignees to org repos page (e4c36a0)
  • •route: add support for default assignees (7722ef0)
  • •send: add SMS fallback and length validation (7d5677b)
  • •send: implement dynamic route handling and error handling (59a011f)
  • •sms-otp: replace one-time code generation method with `generateOtp()` (43656e3)
  • •sms: generate and use a random integer for the OTP (9ce7d54)
  • •tester-signin-form: update form to send SMS code and remove WhatsApp option (491c112)
  • •wa_templates: update WhatsApp OTP verification method (3c9a78b)
  • •whatsapp-actions: add functionality to send SMS OTP for WhatsApp alert numbers (f3f3fab)
  • •whatsapp-settings-form: update OTP verification logic (f2e8b69)
  • •whatsapp: add WhatsApp OTP verification functionality (a959301)

v1.70.0

Features

  • •org-context: compute isAdmin from session user email (8e78f88)
  • •settings: add WhatsApp platforms link to settings page (929a2a1)
  • •turbo: add admin emails, wa app id, signup config id, extended credit id, credit currency (e486416)
  • •wa-platforms-link: add new link to admin dashboard (7758b87)

Bug Fixes

  • •org-sidebar: add min-h-0 to nav to prevent content from disappearing (4d58288)
  • •platforms-client: use min-width:0 for space-y-1 and callback URL inputs (2e764ab)
  • •wa-platforms-link: add standalone route for WhatsApp platforms (2557b98)

v1.69.0

Features

  • •whatsapp-platforms: add key reveal, create form, price editor, tenant list, and top up button for WhatsApp platforms (14a4579)

Bug Fixes

  • •whatsapp-platforms: add actions.ts for managing WhatsApp platforms (8de742c)
  • •whatsapp-platforms: handle missing admin email in platform list (116edf4)

v1.68.0

Features

  • •publish-whatsapp-sdk: update npm workflow for finalizing published versions (8bf8627)
  • •server: add server-side reporting with Glitchgrab's API (e06ed6a)
  • •tsup.config: add two entries for sdk-nextjs, one for browser SDK and another for Node-only reporter (dbb4cdf)

Bug Fixes

  • •claude: update CLAUDE.md (517763a)
  • •github-actions: clear cache after release (22535aa)
  • •github: update GitHub issue detail retrieval (ba32789)
  • •mcp-http-server: update issue tools for end-to-end workflow (c90c4a4)
  • •mcp: add get_issue and comment_on_issue tools (d73eabf)
  • •package: update server types to include `./server` and `./dist/server.d.ts` (adda434)
  • •publish-sdk: improve check for existing package version on npm (787ad50)
  • •publish-whatsapp-sdk: sync before releasing (3973211)
  • •readme: add guide on how to catch errors on server (d5b68ce)
  • •readme: improve documentation on `glitchgrab/server` (a549f9c)
  • •server.test: add tests for server reporter (06669b6)

v1.67.0

Features

  • •mcp: update protocol handling to fix issues with MCP client connections (8c49da5)

v1.66.1

Bug Fixes

  • •authorize: handle approve and deny actions in OAuth authorization page (2880a24)
  • •oauth: approve/deny buttons use new action names (8b23bb1)
  • •oauth: improve error handling in authorize actions (614c0cd)

v1.66.0

Features

  • •.releaserc.json: add configuration for semantic-release (a91ac65)
  • •authorize: add authorize action (03d9692)
  • •claude: update documentation for WhatsApp platform setup (3d2d02e)
  • •conversations.test: add opt-out and start intent detection tests (0fe1d43)
  • •graph.test: add tests for auth and rate limit failures (87cc61b)
  • •knip: add support for sdk-whatsapp package (cb9b013)
  • •mcp-http-server: add detailed documentation on how to connect Claude Code with the HTTP MCP server (de98f95)
  • •mcp-oauth: add isAllowedRedirectUri function to validate redirect URIs (6011614)
  • •mcp-oauth: add OAuth 2.1 authorization server for MCP endpoint at /api/mcp (5c52e9c)
  • •mcp: add create_image_upload_url and comment_on_issue tools (5fb86ef)
  • •migration: add OAuth client and token tables (6ed8810)
  • •package: add publish config for github actions (d1c266d)
  • •prisma: add OAuth models (b56364d)
  • •publish-whatsapp-sdk: add GitHub Actions for release workflow (2cb0423)
  • •register: add dynamic client registration API (265f9cc)
  • •wa-provision-platform: add per-category pricing and seeding (d5b8329)
  • •whatsapp-abhyasika-integration: add Abhyasika integration tutorial (ea789df)

Bug Fixes

  • •authorization-server: add metadata route for authorization server metadata (b89c305)
  • •authorize: add consent screen (a684de9)
  • •claude: implement MCP server over HTTP (b28abdc)
  • •conversations: normalizeContact and detectOptOut methods now use `export` to make them public (50bc542)
  • •mcp-oauth: add validation for allowed redirect URIs (b76f78c)
  • •next.config: update rewrites and redirects (0032ae4)
  • •oauth: add error page for unauthorized access (f25a6af)
  • •package: update to use semantic release (d00b006)
  • •protected-resource: add route for RFC 9728 Protected Resource Metadata (df2a314)
  • •register: validate redirect_uri in POST request (79628d4)
  • •stream-ticket.test: add stream-ticket test suite (b37f7a1)
  • •token: add token route and middleware (1170908)

v1.65.0

Features

  • •add react support (32df1cc)
  • •agents: add support for inbox seats (c7a2dcc)
  • •api: add dynamic route and PATCH endpoint for wa conversations (405cde9)
  • •api: add wallet credit route (96bb997)
  • •autoreply: add auto-reply logic (f13ac2b)
  • •browser: add launchSignup to browser module (6afedb4)
  • •client: add client implementation for whatsapp backend. (6e5cc28)
  • •graph: add waAppId and waAppSecret methods (bcd1325)
  • •graph: initial implementation of WhatsApp graph API interaction (06122f1)
  • •graph: update WabaPhoneNumber API (6a40574)
  • •messages: add new route for message history (2ec6a23)
  • •migration: add migration to create tables and types for WhatsApp platform foundation (13bc889)
  • •migration: add WhatsApp platform phase 2: Embedded Signup onboarding, numbers, webhook dedupe (ecb7ef9)
  • •migration: add WhatsApp platform phase 4 conversation migration (daaa377)
  • •numbers: add dynamic endpoint to refresh tenant numbers (c48f5a2)
  • •package: update zod dependency to v4.4.3 (8458a56)
  • •pricing: add new pricing logic (f1f4e5f)
  • •pricing: add pricing logic (9826611)
  • •prisma: add status and quality rating enums to WaNumber model (24481b6)
  • •prisma: add WaAgent model and enums (f20ec44)
  • •prisma: add WhatsApp platforms & tenant status enums (4d6ae27)
  • •recordings: update frame key generation to use `tMs` for deterministic per-frame key (8fede56)
  • •repo: add dynamic rule creation and deletion (82db661)
  • •route: add POST /wa/inbox/ticket/route to create a new ticket (8008573)
  • •routes: add dynamic route and POST route for saving templates (3dd3dd9)
  • •rules: add GET and POST routes for rules (c94a0ea)
  • •send: narrow message and body bodies (a586707)
  • •src: add Whatsapp types (43ffed3)
  • •submit: add POST route for submitting templates (bf79924)
  • •transactions: add new route for ledger transactions (195d2d6)
  • •wa: add agent management and stream ticket support (72ce49c)
  • •wa: add app secrets to graph.ts (198c7a3)
  • •wa: add core wallet functionalities (e8cad16)
  • •wa: add GET and POST handlers for agents route (0e08c1f)
  • •wa: add WA_GRAPH_VERSION, WaGraphError, exchangeCodeForToken, debugToken, listWabaPhoneNumbers, subscribeAppToWaba, registerPhoneNumber, shareCreditLine, EMBEDDED_SIGNUP_SCOPES, buildSignupLaunch, completeSignup, getTenantToken, refreshTenantNumbers, verifyWebhookSignature, ingestWebhook, markEventProcessed (fe95c72)
  • •wallet: update wallet.ts (5acc7cf)
  • •webhook: add webhook handling and deduplication logic (b77f0df)
  • •webhook: handle messages events in a more robust way (d822ddf)
  • •whatsapp-platform: add meta setup, verified status (75cadfc)
  • •whatsapp-platform: use `META_WA_SIGNUP_CONFIG_ID` (df076c3)

Bug Fixes

  • •agent_docs: add missing inbox UI and SDK implementation (9cf29cc)
  • •agents: update agent input validation for externalId (7e7d57e)
  • •api: remove unused fetchChecksRollup function and related logic (698dd1f)
  • •auth: ensure auth token is set on user registration (7a5d2e1)
  • •autoreply: handle invalid regular expressions (209a531)
  • •balance: add wallet balance routes (548f966)
  • •conversations: add inbox list route (6f39b00)
  • •conversations: add new methods to record inbound and outbound messages (d3148bf)
  • •conversations: add service window logic (862ccbc)
  • •duplicate-issue: add attach method to duplicate issue service (ee5f073)
  • •errors: add type definitions for WhatsApp errors (d1ff871)
  • •errors: add UNAUTHORIZED error code (a44bdd2)
  • •exchange: add dynamic route for Embedded Signup (1627dd6)
  • •glitch-md: improve error handling for invalid input in glitch-md (3f525f0)
  • •graph: add meta template components and methods (624556b)
  • •handler: add inbox handler (c754611)
  • •knip: update npm scripts to include scripts for the next.js app (27460e8)
  • •launch: start embedded signup for business owner (6938d97)
  • •meeting-issues: update extract.ts to handle new frame and draft issue data models (c50dbc9)
  • •meeting-issues: update prompt constants (a864733)
  • •migration: add WhatsApp platform phase 3 template and message migration (846fe43)
  • •migration: add WhatsApp platform phase 5: inbox seats (014ebc3)
  • •onboarding: add embedded signup functionality (b5b5569)
  • •onboarding: add fallbackWabaId check (1c60d25)
  • •package: update package.json to include new dependencies and scripts (0b13b61)
  • •pricing: use custom price object for resolved pricing (0703cdc)
  • •prisma: update schema.prisma to include new enums and models (eddcf72)
  • •prompt: adjust the maximum number of open issues from 30 to 50 (13f604d)
  • •pruny.config.json: update cron jobs for meetings and issue drafts (d8736cf)
  • •pruny.config: add new endpoints for wa and cron templates sync (198fe4c)
  • •quota: remove unused `remaining` property from extraction quota object (b18e24a)
  • •rate-glitchgrab: move sidebar button to right side of REPORT_BUG in dashboard rail (887c789)
  • •readme: add new file with setup instructions (00a9b18)
  • •repo: add route to delete templates (2fdff44)
  • •repo: handle DELETE request for agent route (336ca1c)
  • •repos: remove unnecessary getOpenIssueCount function (ee3e50f)
  • •repo: update route to validate assigned agent and tenant id (6f4b318)
  • •response: remove unused import from response.ts (179177e)
  • •send: add sendTemplate and sendText methods for sending messages (56de4a5)
  • •send: use `SendTemplateInput` instead of generic type (1941ad1)
  • •src: update zod package for type upgrade (d9553c2)
  • •stream-ticket: add streaming ticket generation and verification (47c64ec)
  • •stream-ticket: update ticket claims type and description (90f1728)
  • •stream: add route for live inbox updates (6c4c707)
  • •sw: add index exports (b26dba4)
  • •sync: add route to reconcile tenant's templates against Meta on demand (d126e34)
  • •tokens: use randomUUID for token generation (dc57d57)
  • •tsup.config: add TypeScript configuration (5fc9c9a)
  • •twa: add templates.ts (468fd35)
  • •use-inbox: add live stream support for inbox (400f343)
  • •vercel: add cron jobs for extension watch and wa template sync (9d341f3)
  • •wa-provision-platform: add wa provisioning functionality (454acdc)
  • •wa-template-sync: add cron job to sync templates (ba98bba)
  • •wa-wallet-txn: add unique constraint to `refKey` (d97ab57)
  • •wa-wallet-txn: create unique index on wallet idempotency keys (6399747)
  • •wa: add isPlatformPayload function (f710e79)
  • •wa: add missing return type to webhook change entry (12b84c5)
  • •wa: add opt-out handling and improve error messages (a6604e8)
  • •wa: add template management APIs (63be7f5)
  • •wa: ensure platform app secret is configured (effc0ef)
  • •wa: improve wallet balance handling (c092819)
  • •wallet: add methods to manage wallet transactions (36d56ee)
  • •wa: remove auth and pricing modules (8c4d767)
  • •wa: update schema to include WaTemplateStatus enum (34d71d2)
  • •wa: update template draft submission logic (d087947)
  • •webhook: add route handler for WA webhook requests (8c150f2)
  • •webhook: enforce META_WA_APP_SECRET environment variable (0fa6975)
  • •webhook: handle inbound events (53a919f)
  • •webhook: handle webhook verify token fallback (65b36e6)
  • •webhook: improve payload handling in processVerifiedPayload (fb9029a)
  • •webhook: process verified WhatsApp webhook payloads (a3e5c40)
  • •webhook: update expected webhook token to be same as /api/v1/whatsapp/webhook (804f65b)
  • •webhook: update route handling template status event (5c5f86a)
  • •whatsapp-platform: add env vars phase 2 needs, update routes for phase 2, update webhooks for phase 2 (00a1906)
  • •whatsapp-platform: clarify domain allowlist per consumer (6bed3cb)
  • •whatsapp-platform: improve idempotency key handling (ac09b19)
  • •whatsapp-platform: update callback URLs for meta and product separation (269b003)
  • •whatsapp-platform: update meta app tokens (83c629a)
  • •whatsapp-platform: update SDK documentation for proxy usage (96d7a2d)
  • •whatsapp-platform: verify env pair and check for mismatch (3a3d056)

v1.64.0

Features

  • •whatsapp-platform: implement prepaid wallet functionality (a725b94)

v1.63.0

Features

  • •api: add API endpoints for meetings' still frame uploads and playback (964281d)
  • •chat: add route to update meeting issue drafts (d3876d9)
  • •create: add new route for creating issue drafts (385aa3c)
  • •frames: add frame capture functionality (a910171)
  • •issue-drafts: add route for listing issue drafts (ed29654)
  • •meeting-issues: add meeting issue generator (16a4a07)
  • •meeting-issues: add prompt tests (b681750)
  • •meeting-issues: add quota logic (3b96713)
  • •migration: add ai_assist_transcript model and tables (15d0690)
  • •provider: set reporter on report object (7e27741)
  • •quota: add support for reporting and linking conversations to reports, refactoring `claimAssistTurn` (83a9b0c)
  • •recordings: add frame-related logic and presigning for playback recordings (87f347e)
  • •report-chat: add reporter key and name fields in resolveCaller (d3bf1c9)
  • •report-ui: update dialog conversation tracking with `onConversationChange` (e20b82a)
  • •upload: improve frame upload efficiency (dcf4aa2)

Bug Fixes

  • •ai-report-assist: store transcripts in `AiAssistMessage` (9bd25ab)
  • •claude: add issues from a call button (c0683b5)
  • •claude: add platform info about WhatsApp in CLAUDE.md (838d146)
  • •extract: extract issues using gemini-2.5-pro instead of deepseek (cd03036)
  • •job: add frame capturing support in bot job (e75acfb)
  • •meeting-detail: add meeting issues component (43ef2cc)
  • •prisma: add MeetingIssueDraft model (35d8b44)
  • •prompt: add prompt functions for turning recorded client calls into draft GitHub issues (8ffe46a)
  • •repo: add /meetings/[id]/issue-drafts/[draftId] route for dynamic handling of meeting issue drafts (b5ffa4d)
  • •report-dialog.test: improve voice input and typing handling (33d048d)
  • •report-dialog: add support for voice input in report dialog (3922c60)
  • •report: join filed report back to the assistant chat that wrote it (7454f79)
  • •report: update AI-assist quota linking to conversations (76ae326)
  • •transcript: add recordTurn function for storing assistant's transcript (4ccacca)
  • •utils: add reporter field to assistTurn function (fe7fbfb)

v1.62.1

Bug Fixes

  • •repo: add .vercel to .gitignore (e28e524)

v1.62.0

Features

  • •api: add issues route (a83b2be)
  • •client: add GlitchgrabClient for communication with the Glitchgrab API (8efb100)
  • •glitch-md: add GLITCH.md parsing support (28094cf)
  • •issues: fetch and rank open issues (56f1ced)
  • •readme: add instructions for setting up the project and tools (5f1b64d)
  • •report-chat: update response handling for GLITCH.md and open issues (7cb2fd6)
  • •report-ui.test: refactor assist sheet tests (459aaf9)
  • •report: implement duplicate issue handling in SDK report route (c8ffd50)
  • •reports: add duplicate comment handling for issues (9db17db)
  • •src: add Glitchgrab MCP server (d31ea2b)
  • •tsconfig: add new config file for mcp-server (ed7a003)

Bug Fixes

  • •chat: improve deepseek model selection (c49e7bd)
  • •claude: update CLAUDE.md for new features and fixes (4941669)
  • •client: add image support to DeepSeek chat model (ff99ddc)
  • •context: add SDK context route endpoint (62418e1)
  • •duplicate-issue: add new method to attach to an existing issue (67bdc3e)
  • •glitch-md.test: handle large glossary lines in parseGlitchMd (c7d925f)
  • •GLITCH.md: add missing feature description (263d45c)
  • •issues.test: add new tests for issue ranking and resolving (7b47563)
  • •labels: add labels type function (a3eb82f)
  • •package: add build scripts (d4eddf3)
  • •prisma: update model AiAssistConversation to include outcome field (39d8d3c)
  • •quota: add markConversationOutcome function (89ef317)
  • •report-dialog: set initial state of report type and duplicate issue number (d2dcc7b)
  • •report-ui: add "Write it myself" button for chat assistant (9d9d914)
  • •report-ui: update test for handling form completion in assistant sheet (3551851)
  • •report: add options to report payload (b719c12)
  • •report: handle duplicate reporting request (62b9820)
  • •src: add support for tapable answers to assist turn results (e58f493)
  • •utils: add options and solved fields to assistTurn function (6dc95a9)

v1.61.0

Features

  • •calendar-settings: add ability to connect Google Calendar (4160978)
  • •get-dashboard-context: remove unused getDashboardContext function (784e047)
  • •org-scoped-config: add org-specific config fields (7687354)
  • •repos-list: removed unused reposListComponent.tsx and replaced with ReposList.tsx (e69881a)
  • •whatsapp-settings-form: initial implementation of WhatsApp settings form (c02801f)

Bug Fixes

  • •analytics: remove analytics page (8d5740d)
  • •billing-view: initial implementation (3dcb5c6)
  • •billing: add cancel button component (1a152ff)
  • •billing: remove unused upgrade button component (3efbc8f)
  • •billing: update billing page to render in place (726d3cf)
  • •bottom-nav: remove bottom nav component (bd0269c)
  • •calendar-settings: remove deleted file (24d126d)
  • •cancel-button: remove CancelButton component (ba6e969)
  • •chat: remove outdated chat page component (1fe5c5e)
  • •claude: update dashboard routes live under /org/ (19b8dca)
  • •components: remove plan-badge component (42b5bd4)
  • •connect-repo-dialog: remove `connect-repo-dialog.tsx` file (d229ea5)
  • •create-token-dialog: remove token dialog component (cd89f18)
  • •dashboard-analytics: remove unused dashboard-analytics component (f38dd7a)
  • •dashboard: remove unused code and improve layout (0ba3a4e)
  • •delete-token-button: remove delete token button (68c1eec)
  • •feedback: remove unnecessary file (5bc1b38)
  • •layout: remove duplicate pages and legacy paths (be5b926)
  • •layout: remove PaywallGuard from OrgLayout (0dbf2bb)
  • •loading: remove unused components (3f05973)
  • •loading: remove unused skeleton components (c6162f4)
  • •no-repos-state: remove no-repos state component (03421d1)
  • •open-issues: remove dead code (9244de6)
  • •open-pull-requests: remove unused code and improve readability (a767746)
  • •org-overview: update href for analytics link (04848a7)
  • •org-repo-list: add AI assist toggle for org repo list (2476e4d)
  • •paywall-block: update upgrade button component (8201518)
  • •proxy: remove CONFIG_PATHS escape hatch (6c54c89)
  • •repo: remove gsc-property-page.tsx (6eb21f5)
  • •reports: remove page.tsx file (932fce3)
  • •repos: enable AI assist if no enabled (ba236a8)
  • •repos: remove connect repo dialog and repos list (5cdabf5)
  • •repos: remove unused `resyncRepo` and `connectRepo` actions (a1ba233)
  • •seo: clear GSC property details if disconnected (5a43edb)
  • •seo: remove dead code (f196930)
  • •settings: add organizational and account settings dropdowns (395e14e)
  • •settings: remove dynamic export and unnecessary components (75a6340)
  • •share-link-dialog: delete share link dialog component (4758a02)
  • •tokens: remove unused token actions (db30f40)
  • •upgrade-button: update upgrade button logic (b8fa6cf)
  • •webhook-actions: remove `createWebhook` function (d170b83)
  • •webhook-form: remove unused code (ddd696f)
  • •welcome-trial-dialog: improve display of upgrade button (27e0bf3)
  • •whatsapp-actions: add WhatsApp actions and OTP functionality (6de4384)
  • •whatsapp-actions: remove deleted file (d2ccd57)
  • •whatsapp-settings-form: remove whatsapp settings form (50f6226)

v1.60.0

Features

  • •chrome-store: add revision status parsing (14d965f)

v1.59.2

Bug Fixes

  • •chrome-web-store: update endpoint traps and fix manifest structure (8cb107d)

v1.59.1

Bug Fixes

  • •release-extension: add build steps for @glitchgrab/report-ui in extension (6f422ee)

v1.59.0

Features

  • •release-extension: fix: add error message for Glitchgrab's missing release endpoint (5c64d75)

Bug Fixes

  • •chrome-store: add helper function to find highest version (d3bf44e)
  • •release-extension: update for Glitchgrab's new behavior (44fb4e6)
  • •release: update to read from Google's last known version (86d4dc1)

v1.58.0

Features

  • •readme: update how to release from CI (c3cd166)
  • •release: add route.ts to handle extension releases (c459255)

Bug Fixes

  • •chrome-store: add more checks for release outcomes (502b1aa)
  • •chrome-store: add uploadAndPublish and nextVersion functions (a9750a9)
  • •chrome-web-store: update release extension workflow (ca638f7)
  • •extension: add `.gitignore` entry for `glitchgrab-extension.zip` (09d699b)
  • •extension: add zip functionality to package command (cc440a2)
  • •zip: add script to build package and zip it (41fc108)

v1.57.0

Features

  • •chrome-store: improve id parsing and extension name fetching (c1d841c)
  • •extension-watch.test: add test for parsing Glitchgrab listing URLs (88905d4)
  • •extensions: implement fetching extension status before saving to database (4997fbb)
  • •extensions: prevent extension id typo (e2d1c03)

Bug Fixes

  • •chrome-store: add host and redirect checks (f556cca)
  • •chrome-store: repair location headers (0c24606)
  • •chrome-store: update publisher id for existing extensions (b2011ef)
  • •chrome-web-store: document removal of deprecated route from v1.1 discovery doc (64dc678)
  • •extension-watch.test: guard for signed-in users to forward requests to the server (190c388)
  • •extension-watch.test: parseItemId now works as expected (ae60a31)
  • •extension-watch: use publisherId from storeConnection (afc4a4f)
  • •extensions-list: add functionality to copy consent URL (82aa9ad)
  • •extensions-list: update error handling for missing extension details (5ec7416)
  • •extentions-list: remove redundant message about draft status (d0df356)
  • •lookup: add dynamic route to look up store listing names (2278028)
  • •lookup: add handling for public page and reason in fetchStoreListingName (31f1ca2)
  • •migration: update publisher id in store connection (53bc07d)
  • •prisma: add missing publisherId field to StoreConnection model (33c5d60)
  • •use react-hook-form's controlled components and add validation (b046c37)

v1.56.0

Features

  • •api-assist: turn the report assistant on or off (cadb059)
  • •api: add bot to calendar guest list before knocking (b688aeb)
  • •batch: implement failStaleTranscripts to mark long-dead transcription jobs FAILED (d1fd340)
  • •calendar: add bot invitation logic (26400a3)
  • •callback: add Google OAuth2 callback route (536e69a)
  • •chrome-web-store: add service account setup documentation (d821675)
  • •claude: add bot admission flow support (023c83f)
  • •connect: Add route for forcing dynamic extension access (b76899d)
  • •connections: add dynamic route and related logic (d287765)
  • •extension-watch: add route to force dynamic extension watching (3d31645)
  • •extensions-list: add extension watching UI (f05bf67)
  • •extensions: add dynamic route (fb4ba80)
  • •meet-bot: add live phase fetching and stopping methods (fcb5a6e)
  • •meet-bot: add logic to detect when Meet is in the lobby (12951e3)
  • •meetings-list: add bot stop functionality and styling (29c0616)
  • •migration: add AI-assisted report assistant support (d397d3f)
  • •migration: add Chrome Web Store release watching (d326b65)
  • •prisma: update StoreConnection migration to store Google auth info and connect extensions (7bef14c)
  • •prompt: initial implementation of prompt assistant (2105af8)
  • •quota: add cost guard for report assistant (030ef59)
  • •readme: document Glitchgrab Chrome Web Store release watching (edce0fe)
  • •report-chat: add POST /api/v1/ai/report-chat route (3f77b46)
  • •transcript-poll: add route to trigger transcript polling (eb2f4dd)
  • •turbo: add meet bot email setting (2079697)
  • •whatsapp_templates: add extension_review_status template (5029a73)

Bug Fixes

  • •agent-docs: update instructions on setting up the Chrome Web Store service account (ec32d1d)
  • •ai-assist: improve chat functionality (56c396b)
  • •ai-report-assist: add AI report assistant support (b39046d)
  • •api: add dynamic endpoint for stopping extension watching (400d3ec)
  • •audio: improve audio level sampling for Meet room detection (91e8c55)
  • •batch: add exception handling for Sarvam API errors (b69b6f8)
  • •chrome-store: add new Chrome Web Store library (17c7bdd)
  • •chrome-store: add v2 API endpoints and connect flow (da04f1a)
  • •chrome-web-store: connect to Google Cloud and add OAuth client (b56340a)
  • •CLAUDE.md: add bot stopping and manual stop button for Calls page (a7040d4)
  • •claude: add AI report assist feature (cad038c)
  • •claude: clarify auth service account scope and endpoints (2a3bb03)
  • •claude: upgrade chrome-webstore api to v3 (bd66ba7)
  • •extension-watch.test: improve notification logic (8e4f808)
  • •extension-watch: add extension watcher and notifications (fafb12c)
  • •extension-watch: use accessTokenForConnection instead of decrypt/getStoreAccessToken (5ca67ed)
  • •extension: auto-admit our bot without risking the host's call (bf728e1)
  • •extensions-list: add connect account functionality (88727fd)
  • •extensions: add dynamic property to extensions list component (729c0f3)
  • •extensions: remove credential parsing and provide an explicit connection choice (bf5be01)
  • •jobs: add 'stopRequested' field to JobRecord (aa852a5)
  • •meet-bot: add stop condition for meeting end (852ab6c)
  • •meet: add shouldStop and readPresence to meet.ts (14dbbf0)
  • •meeting-dispatch: add bot pre-invitation to event (c846d69)
  • •meetings: fetch live bot phases for meetings that are still recording (936bd08)
  • •prisma: update schema.prisma (8aed652)
  • •prisma: update store connections and oauth refresh tokens (f7e3466)
  • •prisma: update store extensions table with new fields (cb20cde)
  • •project: update project route to include AI assist flag (790cefb)
  • •prompt.test: add AI report assistant prompt tests (ce53d92)
  • •provider: update enhance button to carry context from current visit and add ai assist flag (18ae0f0)
  • •readme: add info about how to enable Chrome Web Store API (9bf8b1d)
  • •readme: update extension setup instructions (89caa38)
  • •report-dialog: improve AI assistant support (ab1989f)
  • •report-ui: add assist-sheet test for bug, refactor(assist-sheet.test.tsx) (0addde3)
  • •report: add AI report assistant support (c9c4ab7)
  • •repos-list: add AI assist switch for own repos (2359404)
  • •repos: add AI assist enabled property (bfeb31f)
  • •server: end live recording for specific meeting (75844ef)
  • •src: add assistTurnResult and assistTurnParams interfaces (d7dcbf9)
  • •stop: allow stopping bot recordings (46c158c)
  • •utils: enhanceText and assistTurn APIs (73724e5)
  • •vercel: add cron jobs for reminder and transcript poll verification (9989746)
  • •vercel: add cron jobs for transcript poll and extension watch (af0b4dc)
  • •whatsapp: send whatsapp notification for extension review status (449e7bc)

v1.55.0

Features

  • •claude: add daily digest functionality (5a7afd4)
  • •daily-digest: morning nudge with per-repo breakdown (2d42116)
  • •digest: improve repo count logic (5629396)
  • •layout: add tester shell support for QA testers (66f3a33)
  • •login: add tester-signin-form component (74faaa0)
  • •migration: add `digestMutedUntil` column to User table (d2ba428)
  • •migration: add single-use auto-login token backend for WhatsApp digest's "Open dashboard" button (35f5bf1)
  • •proxy: testers are not NextAuth users - use gg_tester cookie as proxy guard (c349365)
  • •repo: add dynamic route for tester QA links (6aa1140)
  • •repo: add MagicLinkPage component (850dee5)
  • •webhook: add digest detail handler (19ad9b1)
  • •webhook: add login test functionality to whatsapp webhook route (851ff70)
  • •whatsapp_templates: re-classify Marketing as Utility (a094211)

Bug Fixes

  • •api: implement automatic daily issue reminder workflow (c414dc9)
  • •api: use `magic-button-suffix` for weekly summary route (e2358c4)
  • •auth: add credentials provider for WhatsApp magic link (c74ca8e)
  • •auth: handle tester login and sign-in in /login page (d3e036b)
  • •claude: add auto-login and show details actions (ec3a6f2)
  • •comment: add tester-specific comments (1bce5a3)
  • •daily-reminder: remove daily reminder route (41a7491)
  • •digest.test.ts: add digest tests for repo breakdown, muteUntil, and startOfIstDay (9b03646)
  • •digest.test: improve readability and avoid repetition (d24bba4)
  • •digest: add buildDigestForPhone and formatDetailMessage (b22e9c2)
  • •evening-recap: add route for sending evening recap to whatsapp (5d848d0)
  • •github: open issue count, getIssuesClosedSince (b2adbf6)
  • •login-tabs: add login tabs for owner and tester, use `?tab=tester` for tester sign in (fe3d15e)
  • •magic-login.test: add tests for encode/decode round trip, safeTargetPath, magicButtonSuffix, and magicLinkUrl (806bc34)
  • •magic-login: add login token minting support (ea13196)
  • •prisma: add digestMutedUntil field to User model (a86c75f)
  • •prisma: add loginTokens table for auto-login tokens (9ebaaed)
  • •proxy: add WhatsApp digest auto-login and refactor token validation (d55c986)
  • •qa-login: remove `qa-login.tsx` file (a2dee82)
  • •qa: redirect from /qa to /dashboard (fee9cb7)
  • •send: improve sms fallback and clarify channel selection (1cc3036)
  • •tester-shell: add new component (78dc4ea)
  • •vercel: add cron jobs for daily-reminder, daily-digest, evening-recap and weekly-summary (b825937)
  • •webhook: handle digest mute request (8a109fb)
  • •whatsapp_templates: add daily digest templates (a32679a)
  • •whatsapp-magic-login: use WhatsApp magic login button instead of PracticeStacks button (a1839f5)
  • •whatsapp: add morning and evening digest templates (5180864)
  • •whatsapp: improve issue summary template to be flat and transactional (a9aeeb5)

v1.54.0

Features

  • •app-input-fields: add doc for InputField usage (cd5c84f)
  • •app: add page description (6005e74)
  • •auth: handle calendar auth URL redemption (babc704)
  • •background.ts: add auto-login and forgetDeadSession functions, improve prepareReport for screenshot handling. (d473c97)
  • •background: update background.ts (35abd2c)
  • •booking-settings: implement booking settings page with calendar functionality (d591e59)
  • •booking: add SMS sending logic for booking OTP (36d239b)
  • •booking: move demo to new time (ba912b4)
  • •bot: allow unfiled meetings without an assigned repo user (9fd58c1)
  • •callback: add link flow for connecting calendars (1e17dfb)
  • •content: add report overlay for bugs in any page (2d3d5eb)
  • •extension: add screenshot-2 (83bc915)
  • •meet-bot: enable HTTPS for bot connection (a277ca1)
  • •meetings: allow scoped meetings by unfiled calls (65dc07b)
  • •migration: add "rescheduleId" column to WhatsappThread model (6ba33c2)
  • •migration: add calendar invite migration (f7ebec6)
  • •package.json: add tunnel command to dev script (a262e8e)
  • •prisma: add new column for bookingId and rescheduleId in WhatsappThread (aafe841)
  • •prisma: remove not null constraint from Meeting.repoId (beecf9a)
  • •release: add version pinning for sematic-release (883f4a9)
  • •screenshot: add screenshot-1.js (2cac62e)
  • •webhook: handle booking message from whatsapp user (f0121f0)
  • •whatsapp-booking: improve handling of project's calendar connection (3c68384)

Bug Fixes

  • •apis: use shadcn inputs instead of raw shadcn components in apps/web (ff02424)
  • •api: update calendar connections in PUT request (3347e43)
  • •app: add booking CTA on landing page (e5a84c5)
  • •auth: add calendar auth write permissions (945d968)
  • •background: add storage key for real choice (e162ef1)
  • •book-demo-cta: add implementation for book-demo-cta component (dae2b0c)
  • •book-demo-cta: use useGlitchgrabSafe in BookDemoCta (892926c)
  • •booking-auth: add booking context resolution and CORS headers (83c3163)
  • •booking-auth: remove stale connection fallback (0e1261c)
  • •booking-dialog: update phone field prompt text (fe0e799)
  • •booking-reschedule: add quick-reply button support for rescheduling demos (34d8e61)
  • •booking-settings: add booking form to demo page (fcc17bf)
  • •booking: add booking library (c4b02a0)
  • •build: add report dialog support (eb48efa)
  • •calendar-connect: add calendar connect page (a8904aa)
  • •calendar-settings: update API route for calendar connections (677c4fd)
  • •calendar: improve calendar API usage and error handling (f255cb4)
  • •calendar: start OAuth dance (c313a5f)
  • •claude: add recording from dev server support (03abdbf)
  • •extension: update version to 1.1.0 (6254491)
  • •forms: add inputField and form state documentation (10ae754)
  • •invite: add POST /api/v1/calendar/invite endpoint for creating new calendar invites (83cc59d)
  • •knip: remove ngrok from ignore list (fd702e8)
  • •knip: update entry and ignore dependencies in knip.json (0c19d61)
  • •manifest: add web_accessible_resources for reporting (4bf8c69)
  • •manifest: update name to reflect feature enhancement (fb0df25)
  • •manifest: update version to 1.1.0 (6527044)
  • •meet-bot: handle null repo ID in startBotRecording (7f5771a)
  • •meet-pill: handle conflict scenario in sendBot method (7e192dd)
  • •meet-pill: handle unfiled project scenario (7f60e89)
  • •meetings-list: update repo selector with file to project button (88dc813)
  • •meetings: add booking settings page (68d055e)
  • •migration: add calendar connection to BookingPage (ec6ffad)
  • •prisma: add calendarInvites field to Repo model (804c725)
  • •prisma: add nullability to `repoId` in `Meeting` (98ce7ef)
  • •privacy: update Chrome extension privacy policy (2b805bc)
  • •project: add GET and OPTIONS methods for project identification (5584505)
  • •report-dialog: add onClose, headerSlot support (34c2ea3)
  • •report: add context block before footer (0b1967e)
  • •report: add report.html template (f0f5921)
  • •repo: update .gitignore to include chrome web store upload artifacts (1376f4b)
  • •resolve: resolve meeting record when no project yet (d336e1a)
  • •sdk: describe event rejections by type and target, not key shape (e387642)
  • •settings: update calendar settings UI (1ccf049)
  • •sms-otp: add new SMS OTP template with Glitchgrab wording (2bf3c37)
  • •sms: add implementation for sending SMS OTP (f976665)
  • •support: add support page (b70ec38)
  • •turbo: add missing environment variables for sending SMS and email (7970235)
  • •upload: ignore ngrok tunnel warning (0a7f522)
  • •webhook: handle new booking action messages (1e93616)
  • •whatsapp_templates: add WhatsApp templates (7c4a5be)
  • •whatsapp_templates: enforce four Meta form rules, learned the hard way (71e7a4a)
  • •whatsapp-templates: update whatsapp templates (5b420a8)

v1.53.0

v1.52.2

v1.52.1

v1.52.0

v1.51.0

v1.50.1

v1.50.0

v1.49.0

v1.48.0

v1.47.0

v1.46.1

v1.46.0

v1.45.0

v1.44.1

v1.44.0

v1.43.2

v1.43.1

v1.43.0

v1.42.1

Bug Fixes

  • •mobile: remove unnecessary type assertion and unused eslint-disable in _layout (d027d35)
  • •seo: suppress hydration warning on meta date in InnerPageHeader (e84ff2f)

v1.42.0

Features

  • •app/dashboard/seo: update gsc property last sync date to display in US locale (20dba73)

Bug Fixes

  • •apps/mobile/app/_layout.tsx: initial implementation of media library listener (1427577)

v1.41.0

Features

  • •app/api/v1/gsc/reindex: record reindex action in the indexing-history timeline (8520010)
  • •app/mobile: update Expo Share Intent for image sharing (a41cf8c)
  • •apps/mobile/package.json: upgrade react-native to 0.83.6 (6455036)
  • •seo: clearer sync/reindex feedback and indexing history chart (313ebc3), closes #219 #219 #218

Bug Fixes

  • •app: add share intent filter for image support (51f232a)
  • •gsc-properties: update sync and reindex mutations to use useMutation with custom options (0a815ba)
  • •mobile: update start scripts for improved local development experience (d33ee24)
  • •package.json: update dependencies to support new versions (6d019a9)
  • •package: add --clear flag to dev script for improved iOS build process (8212b12)
  • •props: add indexing history chart to SEO detail page (3b778de)
  • •props: record sync in indexing-history timeline (b9aacdf)
  • •route: add dynamic property and handling (9433a48)

v1.40.2

Bug Fixes

  • •sdk: drop opaque cross-origin errors with no error object or filename (ed88c71)

v1.40.1

v1.40.0

Features

  • •.mcp.json: add expo-mcp server configuration (1d87ab7)
  • •add metro.config.js for apps/mobile (54bbbff)
  • •Add ReportCard component in mobile app (d255b34)
  • •add useGlitchgrab hook (77922b6)
  • •api: add logout listener to handle 401 responses (7b9cb0e)
  • •api: update getBaseUrl function (9f840dd)
  • •app/_layout.tsx: add screenshot detection and bug report sheet (c71a627)
  • •app/auth/login: add logo image (bcb65a1)
  • •apps/mobile/app/(tabs)/chat.tsx: Add chat screen with report submission form (650f227)
  • •apps/mobile/scripts: remove sourceURL for bridge in AppDelegate.swift (878d9de)
  • •apps/mobile/src/contexts/AuthContext.tsx: add logout event listener (cef6164)
  • •apps/mobile/src/hooks/use-repos.ts: add useRepos hook to fetch repos (4b67947)
  • •apps/mobile/tamagui.config.ts: add Glitchgrab brand colors for Tamagui configuration (839787c)
  • •apps/mobile: add babel config for mobile apps (232adf9)
  • •apps/mobile: add module-resolver for babel configuration (8677d49)
  • •apps/mobile: add vector icons dependency (ed86ca4)
  • •apps/mobile: update dependencies (ceaec88)
  • •auth: add AuthLayout component (434fd23)
  • •auth: Implement login functionality with GitHub integration (ea23faa)
  • •colors: add new colors constants (a15d223)
  • •config: update animations type and cast for rc.7 vs rc.42 AnimationDriver types (194679f)
  • •contexts: added AuthContext for managing authentication state (d5a85b3)
  • •docs: add Glitchgrab bug capture SDK for Expo apps (b7a6a72)
  • •images: add image size constants (0045235)
  • •lib/api: add BASE_URL environment variable for API URL (159c4fc)
  • •lib/secure-store: add secure storage functionalities (ea20239)
  • •packages/sdk-expo/src: add `useGlitchgrab` hook for interacting with the glitchgrab service (ec89b3d)
  • •reports: add useReports and useReport hooks for mobile app (90b444f)
  • •sdk-expo/tsconfig.json: add default tsconfig.json (b2d0072)
  • •src/BugReportSheet.tsx: Add bug report sheet feature (17367b9)
  • •tabs: add home screen with stats and recent reports (a869bf6)
  • •tamagui: upgrade packages to rc.42 (0d3127b)
  • •types: add types for mobile apps (b51b42c)
  • •ui/LoadingSpinner: add loading spinner component (1b9eb79)
  • •ui: add EmptyState component (711f8cf)
  • •useScreenshotDetection: added dynamic screenshot detection functionality (fc21367)

Bug Fixes

  • •.gitignore: add tamagui auto-generated style cache (6bc7a42)
  • •Add context for Glitchgrab configurations and user state (5b4a295)
  • •add report detail screen (cbc53b1)
  • •api: add API endpoints for mobile device interactions (8299f1b)
  • •api: add submitReport function to sdk-expo (a097b8c)
  • •app-delegate: remove extra line in AppDelegate.swift (0a6ff21)
  • •app.json: add permissions and base_url (d25656e)
  • •app/auth/login.tsx: add logo and improve styling (b6e710f)
  • •app/auth/login.tsx: update logo icon (eff27ac)
  • •app/mobile/app: add Index component (f00d0cf)
  • •app/mobile/eslint.config.mjs: add patches, plugins and scripts directories (d818c01)
  • •app/mobile: update dependencies to use expo-router and tamagui (b2bd486)
  • •apps/mobile/app/(tabs)/repos.tsx: add new repos screen (096163a)
  • •apps/mobile/package.json: add babel-plugin-module-resolver for module resolution (05d2527)
  • •app: upgrade Tamagui version (978e3f3)
  • •auth: update login form UI (14b195c)
  • •babel: update react-native-reanimated/plugin dependency (3f36a17)
  • •bug-chat: remove unnecessary padding in top context bar (beab1e1)
  • •capture: add dynamic capture and readUriAsBase64 functions (d3faba7)
  • •chat: Add chat screen with type selector, repo selector, description input, and submit button (3a07262)
  • •components: add bug report sheet component (21e8448)
  • •config: add tamagui.config.ts for mobile branch (093671d)
  • •config: update Tamagui config to match rc.7 and ensure type safety (9d45a1c)
  • •eslint.config.mjs: refactor ESLint config to use TypeScript config and plugins (d531627)
  • •expoConstants: add `APP_ENV` and `hostUri` to ExpoConfig for API URL (44c0717)
  • •hero-terminal: implement logic to reset line count when cycle changes (886454f)
  • •index: update expo-router entry import (06611a7)
  • •initial commit of SDK-expo (c0320cd)
  • •initial implementation of GlitchgrabProvider (00e408a)
  • •knip.json: add project and ignore dependencies for mobile app (978e054)
  • •metro.config.js: patch resolveRequest to handle specs_DEPRECATED/NativePlatformConstantsIOS (e7eb262)
  • •metro.config.js: patch specs_DEPRECATED/NativePlatformConstantsIOS.js for RN 0.83 (59cfaf6)
  • •NativePlatformConstantsIOS: add lazy proxy for TurboModule (8d44f6f)
  • •package.json: update development build steps to include node script and port option (e2066b2)
  • •provider: ignore cross-origin script errors (54339ba)
  • •reports: add button to filter reports (2b24950)
  • •settings: added settings screen and components (40b3f3e)
  • •settings: update sign-out button and header (6e8ac9b)
  • •table: add missing class selector (bfe3a8a)
  • •tabs: add mobile app tabs layout (0b25ad3)
  • •tabs: update tab icons to improve visibility (51956da)
  • •tamagui: update _layout.tsx to use new Expo Router and AuthContext (f4b00d9)
  • •test: filter out 'Script error.' from error events in GlitchgrabProvider (74bd130)
  • •tsconfig: add baseUrl and paths for source files (5c9c25c)
  • •types: fix missing types for `User` and `Repo` objects (14dda40)
  • •update app.json for glitchgrab scheme (2c811da)
  • •update dev script to use localhost instead of 0.0.0.0 (a87da39)
  • •update dev script to use REACT_NATIVE_PACKAGER_HOSTNAME (e782a5c)
  • •update tsconfig.json to include App.tsx and src/api.ts and src/screens (ef3bbe1)

v1.39.1

Bug Fixes

  • •org-bottom-nav: use full-page nav in WebView to prevent removeChild crash (8800424)

v1.39.0

Features

  • •gsc: expose cached notIndexedPages in properties list (c333caf)
  • •org-overview: embed not-indexed URLs in Page Issues copy prompt (f658b29)

v1.38.0

Features

  • •org-overview: add Connect GSC button and dialog to SEO panel (5ffc08d)
  • •org-overview: add sync functionality for GSC properties with user feedback (1d57d67)
  • •org-overview: add sync progress bar visibility during syncing (778e43c)
  • •org-overview: enhance sync and reindex button functionality and visibility (1d8236a)
  • •seo: extract reusable ConnectGscDialog component (907881f)
  • •sync-progress: add sync progress bar animation and styling (ed3c690)

Bug Fixes

  • •org-overview: adjust layout of SEO panel for improved responsiveness (74f6b07)
  • •org-overview: improve SEO panel layout and sync button visibility (1f3f3d4)

v1.37.0

Features

  • •gsc-property-detail: reorganize stats section for improved layout and clarity (24d8e75)
  • •org-overview: add SEO panel with GSC properties and indexing stats (02f9b84)
  • •org-overview: enhance SEO panel with site domain extraction and health prompts (b4722c3)
  • •org-overview: implement health check for favicon and OG metadata with improved prompt handling (51fc08a)
  • •org-overview: refactor health check logic for favicon and OG metadata (4da4c79)

v1.36.0

Features

  • •org-overview: skeleton for member commits loading + +N repos hint in triage chips (bad97e7)

v1.35.0

Features

  • •member-stats: add PRs-created-today per repo to member activity (c5a7d61)
  • •org-overview: show PR count with icons in team panel member rows (1bdd8a5)

Bug Fixes

  • •ci: add legacy-peer-deps to unblock semantic-release npm version step (c63e0eb)
  • •ci: replace workspace:* with file: protocol for npm compatibility (4195dd9)

v1.34.0

Features

  • •web: add IssueRow component for improved issue display and link copying (e7fc939)
  • •web: add repo filtering to OrgIssuesTriage component (d5e1d9c)
  • •web: enhance issue fetching by linking PRs to issues (575d409)
  • •web: enhance IssueRow for improved link handling and styling (8198640)
  • •web: implement repo filter popover for issue triage (34e652f)

Bug Fixes

  • •web: extract token const to satisfy TypeScript narrowing in issues route (005ed9c)

v1.33.0

Features

  • •web: include CI check state in org PR list endpoint (3324939)
  • •web: show CI check badge on org overview PR list (317f7c8)

Bug Fixes

  • •web: allow team panel repo list to wrap instead of truncating (195fc4d)
  • •web: show all repos in org team panel instead of slicing to 3 (01bb2ef)

v1.32.0

⚠ BREAKING CHANGES

  • •SDK_AUTO responses no longer return status='PROCESSING'
  • •response no longer includes intent variants
  • •The AI pipeline no longer mutates report content.

Features

  • •add AI enhance button to dashboard chat composer (a15687a)
  • •add ai-enhance lib for polishing user-written text (2cf29ac)
  • •add POST /api/v1/ai/enhance-text endpoint (61bc7a2)
  • •dashboard report endpoint creates GitHub issues directly (080dd70)
  • •remove AI enrichment pipeline (6a6f1cf)
  • •SDK report endpoint creates GitHub issues directly (4af2a6c)
  • •sdk: add AI enhance link to report dialog description step (9e33d1a)
  • •sdk: expose enhanceText helper on useGlitchgrab (074ca87)

v1.31.0

Features

  • •enhance commit counting by utilizing GitHub search API for deduplication (f69ec0d)
  • •optimize commit counting by using GitHub search API for deduplication (275f707)
  • •orgs: count commits across all branches in member-stats (35559ed)
  • •orgs: count today-activity commits across all branches (34b43a9)
  • •org: show contributing branches in repo tooltip (e643345)

v1.30.0

Features

  • •seo: add favicon proxy route with apex/www fallback (f6270cf)
  • •seo: consolidate favicon and Open Graph issue handling into a unified health prompt (8f66704)
  • •ui: add button for previewing Open Graph image in GscPropertyDetail (a96d5bc)
  • •ui: add favicon preview functionality with dialog display (84177bb)

Bug Fixes

  • •ensure ogImage is correctly typed as string in GscPropertyDetail (27c1d7b)
  • •seo: use favicon proxy so 404 fallback to Globe works (52ba745)
  • •web: add 32x32 size to favicon.ico (a0edb1f)
  • •web: declare 32x32 size on favicon.ico link tag (c0916ad)

Performance Improvements

  • •web: compress og-image.png below 300KB for WhatsApp previews (af7cf4f)

v1.29.1

Bug Fixes

  • •seo: switch favicon API to gstatic faviconV2 for reliable display (4b4efaa)

v1.29.0

Features

  • •api/orgs: add GET /orgs/[slug]/pull-requests endpoint (205df7a)
  • •org-overview: add open PRs tab with workflows fallback and skeleton loading (7daaeec)
  • •org: add member-stats API — today commits per GitHub org member including pending (5a0e548)
  • •seo: add skeleton loading for GSC properties list page (ca55d37)
  • •seo: add skeleton loading for org SEO properties list page (69b7f8f)
  • •seo: add two-column skeleton loading for GSC property detail page (075d76d)
  • •seo: add two-column skeleton loading for org GSC property detail page (8b070bc)

Bug Fixes

  • •active-workflows: replace spinner with skeleton rows on loading (b9db3d2)
  • •github-contributions: replace spinner with full 52×7 skeleton heatmap grid on loading (53115f5)
  • •github-contributions: update skeleton component styling for consistency (53798c5)
  • •member-stats: remove export from internal-only interfaces to satisfy pruny (3902789)
  • •org-overview: shrink PR panel skeleton to prevent layout shift (3792416)
  • •overview: replace Math.random in render with static height array for skeleton bars (99841db)
  • •seo: pass detailHrefPrefix prop to avoid hardcoded /dashboard/seo link in org context (a4ed37c)
  • •seo: replace circular spinner with skeleton in dashboard loading fallback (10a60b6)
  • •seo: supply detailHrefPrefix to GscPropertiesClient in dashboard (462d380)
  • •seo: supply org-scoped detailHrefPrefix so property links stay within org routing (bcfd93c)

v1.28.0

Features

  • •ai: add sessionInfo field to AiInput for reporter context (43a54b9)
  • •analytics: add analytics and SEO sections with visual insights and management features (29aa353)
  • •analytics: compact 2x2 stat grid + chart side-by-side, fix tooltip headroom and x-axis labels (75b1794)
  • •analytics: enhance hover overlay for closed issues with detailed repo counts and improve layout spacing (dbac746)
  • •api/orgs/members: POST invite sends email to pending member with GitHub sign-in link (d4e28d9)
  • •api/orgs: add GET my-github-orgs endpoint to fetch user GitHub org memberships (bb096b4)
  • •api/orgs: GET and PATCH member repo assignments, OWNER-only write access (52bc798)
  • •api/orgs: GET members merges GitHub org members with DB state, shows pending for non-signed-in users (f29f6b8)
  • •api/orgs: GET org by slug with members and repos, verify requester is a member (1c90d86)
  • •api/orgs: GET own org membership, POST create org with GitHub org login and auto-sync repos (1caccbc)
  • •api/orgs: POST sync-repos pulls all GitHub org repos and upserts them into DB (7d7b556)
  • •api: remove collaborator accept endpoint (a08b5d4)
  • •api: remove collaborator invite endpoint (ccf7568)
  • •api: remove collaborator repo access endpoint (980c480)
  • •api: remove collaborator revoke endpoint (e6a6ca5)
  • •api: remove collaborators list endpoint (cd172b7)
  • •assets: add bug-report.webp — converted from PNG (312K → 49K) (72b068c)
  • •assets: add chat.webp — converted from PNG (97K → 28K) (723cb1b)
  • •assets: add dashboard.webp — converted from PNG (171K → 54K) (07bfa2f)
  • •assets: add repos.webp — converted from PNG (153K → 47K) (0b7a4a3)
  • •auth: auto-assign org repos to MEMBER on login using their GitHub token — no manual assignment needed (ef72a5d)
  • •auth: auto-detect GitHub org membership on login and upsert OrgMember with correct role (65f0800)
  • •auth: use GitHub org membership role (admin→OWNER) instead of ownerId comparison (e244d3e)
  • •collaborate: remove collaborator accept page (be66296)
  • •collaborators: remove collaborators dashboard page (aa17abd)
  • •collaborators: remove edit repos dialog UI (9c2b610)
  • •collaborators: remove invite dialog UI (f8aa6fa)
  • •collaborators: remove revoke access button UI (9130134)
  • •compare: add Glitchgrab vs Linear comparison page with table, breadcrumb schema, and canonical (6e6846f)
  • •compare: add Glitchgrab vs Sentry comparison page with table, breadcrumb schema, and canonical (38b3996)
  • •dashboard: redirect org members away from /dashboard to their org path (d54a8db)
  • •dashboard: redirect org members to their org on landing instead of personal dashboard (e3d42d3)
  • •enricher: include all context in GitHub issue body — full error, stack, breadcrumbs, reporter, environment (213ad96)
  • •footer: add About link to Resources column (eac7f8b)
  • •footer: add vs Sentry and vs Linear comparison page links under Resources (8767b7f)
  • •github: add getGitHubOrgMembers helper to fetch all GitHub org members (ec6a660)
  • •github: add getUserOrgRoles to fetch real org membership roles from GitHub API (814750f)
  • •github: add getUserOrgs, getOrgRepos, getGitHubOrgInfo, getGitHubUserLogin helpers for org integration (5f08405)
  • •gsc-property-detail: integrate Skeleton component for loading states in indexing and favicon sections (d639441)
  • •gsc-property-detail: refactor UI with icon buttons, tooltips, skeletons, sync/reindex in card header, and repo picker in page header (c4de9ab)
  • •gsc: add Google Search Console section with indexing health report (0fef507)
  • •homepage: replace tagline H1 with keyword-rich text and add trust bar between hero and features (6ff342b)
  • •landing: add version badge in nav, dashboard/chat/bug-report/repos product screenshot sections (49b6767)
  • •landing: replace pipeline boxes with 3-card vacation dev story workflow (7ac29dc)
  • •layout: wrap app in TooltipProvider for shadcn tooltip support (5bf8dfd)
  • •legal: replace simple header with shared PublicNav for consistent navigation (23a7509)
  • •lib: remove collab-auth cookie session module (972a6ac)
  • •login: redirect org members to /org/[slug] or /org/[slug]/chat based on role after login (a4ae3a8)
  • •mail: add sendOrgMemberInvite email to invite pending GitHub org members to sign in (db9d006)
  • •meta: add analytics screenshot WebP for landing page (bb461c5)
  • •meta: add issue reports image for enhanced visual representation (a078999)
  • •meta: add SEO screenshot WebP for landing page (00ad58f)
  • •migration: drop OrgMemberRepo table (2778854)
  • •nav: add PublicNav shared component for consistent header across all public pages (c3ce405)
  • •org/analytics: guard MEMBER access, redirect OWNER to /dashboard/analytics (1eba167)
  • •org/billing: guard MEMBER access, redirect OWNER to /dashboard/billing (21caf62)
  • •org/bottom-nav: add SEO to mobile nav (6c58139)
  • •org/chat: chat page reuses BugChat with role-scoped repos — OWNER all, MEMBER assigned only (664df62)
  • •org/collaborators: guard MEMBER access, redirect OWNER to /dashboard/collaborators (e59d0e5)
  • •org/context: replace assigned-repo DB lookup with live GitHub API fetch for member repos (b4ffadd)
  • •org/contributions: add org-wide combined commit heatmap endpoint using REST commits API (711e004)
  • •org/issues-closed: add org-scoped closed issues bar chart endpoint (a693164)
  • •org/issues: add org-scoped open GitHub issues endpoint (ac7f33a)
  • •org/members: members page loads all org members with assigned repos for OWNER management (4fa85fb)
  • •org/members: remove per-member repo assignment endpoint — repos now sourced from GitHub directly (43fcbdd)
  • •org/members: repo assignment UI — OWNER toggles repos per member and saves via PATCH (464b188)
  • •org/nav: add Repos link to member bottom nav (1bb1a4a)
  • •org/overview: add inline invite button on pending members — OWNER enters email, sends invite (0251045)
  • •org/overview: full dashboard-style redesign with stats, issues triage, workflows, contributions heatmap (bbaa9ff)
  • •org/reports: guard MEMBER access, redirect OWNER to /dashboard/reports (00610a0)
  • •org/repos: fetch all GitHub repos and merge with org DB repos for full visibility (97c4185)
  • •org/repos: repo list with sync-from-GitHub button that re-imports org repos (dd4b22d)
  • •org/repos: repos page lists all org repos with token and report counts, OWNER only (7d59a5d)
  • •org/repos: show tracked/untracked repo split, merge GitHub repos with DB state (ef46917)
  • •org/seo: add SEO page that redirects OWNER to dashboard/seo, blocks MEMBER (c0cb022)
  • •org/seo: render GSC properties inline instead of redirecting to /dashboard/seo (83a37ef)
  • •org/settings: guard MEMBER access, redirect OWNER to /dashboard/settings (c3f98ff)
  • •org/setup: auto-load and display user GitHub orgs as clickable cards instead of manual text input (c441145)
  • •org/setup: connect GitHub org form with auto-repo sync and post-create redirect (8bce20f)
  • •org/setup: redirect already-org users to their org, render setup client otherwise (bcbd84f)
  • •org/sidebar: add Repos link to member sidebar nav (88d4d89)
  • •org/sidebar: add SEO to OWNER workspace nav (5b43bfc)
  • •org/sidebar: show GitHub org avatar instead of Glitchgrab logo in brand header (b39c3e0)
  • •org/stats: add org-scoped report analytics endpoint (dc08614)
  • •org/today-activity: count per-member commits today via repo commits API to include private repos (d8179ff)
  • •org/tokens: guard MEMBER access, redirect OWNER to /dashboard/tokens (0ac9676)
  • •org/workflow-runs: add org-scoped GitHub Actions workflow runs endpoint (95b89c4)
  • •org: getOrgContext helper returns org membership, role, and scoped repos per role (8bf7b65)
  • •org: mobile bottom nav scoped to role — OWNER gets 5 items, MEMBER gets chat only (ab6fcbe)
  • •org: org layout with role-aware sidebar and bottom nav (ad1d13d)
  • •org: org overview shows repo/member counts, team list with roles, and quick nav links (81b2d3e)
  • •org: org root page — MEMBER bounced to chat, OWNER sees overview (64ed193)
  • •org: org sidebar shows full nav for OWNER, chat-only for MEMBER (888d9cf)
  • •org: remove org collaborators page (752b7a5)
  • •page: add OrgGscPropertyPage component for Google Search Console integration (919de20)
  • •pipeline: pass reporter session info to AI enricher (c4f85a2)
  • •reports: restructure filter bar to single row with labeled groups, switch list to grid cards (0259165)
  • •repos: add search input and grid card layout (dbc8d4d)
  • •repos: add search input and grid card layout for org repos page (c9426ae)
  • •schema: add Organization, OrgMember, OrgMemberRepo models and orgId on Repo for team support (93038ce)
  • •schema: drop OrgMemberRepo model — member repo access now via GitHub API (88f15a2)
  • •seo: add /about page with founder bio, company background, and E-E-A-T signals (6b402f0)
  • •seo: add /about to sitemap with priority 0.8 (b4ce995)
  • •seo: add collapsible FAQ section with FAQPage JSON-LD schema to homepage (d4230e3)
  • •seo: add complete favicon links, web manifest, and switch to compressed og-image.jpg (af00b16)
  • •seo: add google-seo.webp for improved SEO visuals (aa90cce)
  • •seo: add llms-full.txt with full page-by-page content for AI engine indexing (6bf59b8)
  • •seo: enrich SoftwareApplication schema with featureList, softwareVersion, dual offers, MIT license, sameAs (da49743)
  • •seo: fix duplicate title tag; add HowToJsonLd for 5-step SDK install walkthrough (b017fe8)
  • •seo: inject WebSiteJsonLd with SearchAction in root layout (cfb0b7d)
  • •seo: replace Script with script tag for synchronous rendering; add WebSiteJsonLd, FAQJsonLd, HowToJsonLd; improve OrganizationJsonLd with logo object, npm sameAs, contact email (b6b5ea0)
  • •sidebar: add Create Org link in Config section for users without an org (aca164a)
  • •skeleton: add Skeleton component for loading placeholders (cddf8c2)
  • •tooltip: implement TooltipProvider, Tooltip, TooltipTrigger, and TooltipContent components (0faf2e7)

Bug Fixes

  • •analytics: adjust height of X-axis labels and background size for better layout (0e3f778)
  • •analytics: adjust margin for tooltip space and update grid height for better layout (6971cab)
  • •analytics: render IssuesClosedAnalytics directly to fix redirect loop (deac534)
  • •api/orgs/members: backfill githubLogin from GitHub API for users who logged in before it was stored, preventing duplicate entries in team list (89ee7cd)
  • •api: remove collab session from issues-closed analytics auth (2c429fe)
  • •api: remove collab session from reports analytics auth (55128ae)
  • •api: remove collab session from reports list and create (cc6225d)
  • •api: remove collab session from single report auth (1aa2e18)
  • •api: remove collab shared-repos from repos list (589423e)
  • •bottom-nav: remove Collaborators from sheet nav and userType prop (675f34b)
  • •chat: remove collaboratorOnly prop from no-repos state (b0e66b2)
  • •dashboard: increase issues-closed bar chart height from h-14 to h-24 (b78484b)
  • •dashboard: prevent redirect for specific config paths in DashboardLayout (a0d039d)
  • •dashboard: remove collab session and simplify to owner-only auth (3c2f761)
  • •dashboard: remove collaboratorOnly prop and message (e560adb)
  • •dashboard: remove collaboratorOnly prop from no-repos state (1133dc9)
  • •dashboard: remove shared-repo collab logic from context (b714d11)
  • •glitchgrab-vs-linear: escape unescaped quote entities for ESLint compliance (7a729d2)
  • •glitchgrab-vs-sentry: escape unescaped apostrophe entities for ESLint compliance (810c823)
  • •gsc-property-detail: add tooltips for copy prompt and GitHub issue actions (ef0e48a)
  • •gsc-property-detail: enhance layout responsiveness and adjust flex properties (c0c13b0)
  • •gsc-property-detail: improve favicon and OG tag issue handling with copy prompt functionality (82f0b56)
  • •inner-page-header: add truncate class to title for better text handling (04a92f1)
  • •landing: add GitFork to lucide import to fix runtime error (4d20c3b)
  • •landing: escape apostrophes and comment slashes as JSX entities for ESLint (8800da2)
  • •layout: add TooltipProvider for enhanced user interaction (3497933)
  • •llms: remove COLLABORATOR from report sources documentation (7890eba)
  • •mail: remove sendCollaboratorInvite email function (9694709)
  • •migration: drop collaborator tables and remove COLLABORATOR from ReportSource enum (1b9935e)
  • •org/overview: use merged members endpoint so all GitHub org members show, pending badge for non-joined (38f3aba)
  • •org: remove Collaborators from org sidebar config nav (cf1fc9c)
  • •org: remove collaborators mention from reports subtitle (a6514ec)
  • •orgs: remove redundant non-null assertion on session.user.id already guarded above (bf913e8)
  • •page: update navigation link and modify content in LandingPage component (9eeacf0)
  • •page: update pipeline steps and modify content for clarity (b68eda1)
  • •pipeline: remove collaborator email attribution branch from issue body (997f9d6)
  • •pipeline: update pipeline steps for clarity and consistency (f6f3242)
  • •proxy: exclude config paths from org redirect to prevent loops (b192d6c)
  • •proxy: remove /collaborators from CONFIG_PATHS exclusion list (6235712)
  • •reports: remove COLLABORATOR from source labels map (c44e9f1)
  • •reports: remove collaborator-view subtitle branch (e012640)
  • •reports: render ReportsList directly on org reports page to fix redirect loop (39d0785)
  • •report: two-tier duplicate check — 24h window + 7-day open-issue suppression to stop recurring issue spam (e483b1a)
  • •repos: remove collaborator-view conditional header text (dbfb2d2)
  • •schema: remove Collaborator/CollaboratorRepo models and COLLABORATOR enum value (bddcb94)
  • •seo: remove brand from title to prevent template duplication (1009494)
  • •seo: remove brand from title to prevent template duplication (26835a1)
  • •seo: remove brand from title to prevent template duplication (0ae81d1)
  • •seo: remove brand from title to prevent template duplication (74dcedc)
  • •seo: remove brand from title; add missing canonical URL (f93c40b)
  • •sidebar: remove Collaborators nav item and userType prop (0b12838)
  • •signature: extend dedup window 1h → 24h, add 7-day open-issue suppression constant (3a4cbd0)
  • •sitemap: remove /collaborate from private paths and exclude list (33dedf9)
  • •workflow-runs: extract access_token to const so TS narrows string type without non-null assertion (a28b1a8)

Performance Improvements

  • •seo: add JPEG og-image compressed to 85KB from 778KB PNG (6a9307b)

v1.27.0

Features

  • •cron: add nightly-sync cron to update indexing cache for all GSC properties (0f22207)
  • •cron: add seo-health cron to create GitHub issues for favicon, OG, and indexing problems (86c3aab)
  • •cron: skip seo-health issue creation when property is snoozed after reindex (4b7359a)
  • •db: add cachedNotIndexedPages and seoHealthIssueUrl to GscProperty (ff09005)
  • •db: add GscConnectSession model for temporary OAuth token storage during property selection (fa248b8)
  • •db: add seoHealthSnoozedUntil to GscProperty for reindex snooze window (49f30cc)
  • •gsc: add /connect/gsc wizard page — no auth required, session-authenticated via GscConnectSession (6c9cac5)
  • •gsc: add auth/link endpoint returning signed URL as JSON to avoid hydration mismatch (9a6b47d)
  • •gsc: add connect endpoint to save selected GSC properties with required repo links (f5108f8)
  • •gsc: add favicon-check endpoint for per-property favicon validation (5f29236)
  • •gsc: add OAuth callback to verify state, exchange code, upsert GscProperty records (e80beb1)
  • •gsc: add OAuth URL builder with HMAC-signed state for cross-browser auth (e6f8484)
  • •gsc: add og-check endpoint to validate OG/Twitter meta tags from site HTML (49d2ce4)
  • •gsc: add properties list/patch endpoint for repo linking (c1bceed)
  • •gsc: add property DELETE endpoint for disconnecting a GSC site (38cfe0a)
  • •gsc: add property sync endpoint to live-check indexing status via GSC API (ca66332)
  • •gsc: add reindex endpoint to submit not-indexed pages to Google Indexing API (d263180)
  • •gsc: add search functionality to filter properties by domain or repo (2fa6bf7)
  • •gsc: enhance GSC inspection and sitemap parsing with additional fields and improved URL fetching logic (c6e2950)
  • •gsc: persist not-indexed pages to DB on sync for instant cache (4688a8f)
  • •gsc: redirect to property selection wizard after OAuth instead of auto-adding all properties (6476135)
  • •gsc: return noSitemap flag when no sitemaps registered in GSC (a0196ab)
  • •gsc: set 7-day SEO health snooze on reindex to give Google time to re-crawl (a1f9c52)
  • •lib: add AES-256-GCM encrypt/decrypt utility for token storage (85c5231)
  • •lib: add checkIssueIsOpen helper to detect open GitHub issues by URL (f0cc417)
  • •lib: add getValidAccessToken helper with auto-refresh for GSC properties (4b48b77)
  • •lib: add Google Search Console API client (token exchange, sites, inspect, indexing) (42ca42f)
  • •login: read callbackUrl from search params so post-OAuth redirect lands on correct page (1ad2961)
  • •mcp: add HTTP MCP endpoint with session auth and GSC/repo tools (b27a5d5)
  • •nav: add SEO route to dashboard sidebar (0f0a394)
  • •nav: add SEO route to mobile bottom nav (b7a9617)
  • •schema: add GscProperty model, datasource directUrl, remove McpToken (8c45ea5)
  • •seo: add Check Fix button to re-inspect not-indexed pages without opening GSC (b7cbc14)
  • •seo: add check-fix endpoint to re-inspect not-indexed URLs via GSC inspection API (43a91ae)
  • •seo: add copy prompt and create GitHub issue buttons to not-indexed pages section (a5796e0)
  • •seo: add create GitHub issue button to favicon health section (bd035f8)
  • •seo: add create issue button to OG section and remove Fix with RFG from favicon health (d4c397b)
  • •seo: add GSC connect page to load session and repos for property selection (4b06c43)
  • •seo: add GscPropertiesClient with sync, reindex, repo linking, bulk disconnect, favicon check (1d7e221)
  • •seo: add multi-select bulk disconnect, searchable repo combobox, favicon per property, fix AlertDialog p-nesting hydration errors (d874270)
  • •seo: add per-property detail page with back navigation (4830632)
  • •seo: add property detail client with auto-sync, not-indexed list, favicon health, OG tag check (15b4458)
  • •seo: add property selection wizard with per-property required repo picker (8221b56)
  • •seo: add reason-based tab filtering to not-indexed pages list (6524cd0)
  • •seo: add SEO dashboard page with GSC properties and MCP section (201a9df)
  • •seo: make property site URL a link to detail page (f4b774f)
  • •seo: pass cachedNotIndexedPages from DB to property detail component (4c29456)
  • •seo: read error/connected query params and pass human-readable flash messages to client (a02aa4d)
  • •seo: show cached indexing data on load, auto-sync only on first visit, add stale timestamp (5b69297)
  • •seo: show OAuth error/success toasts via flashMessage prop on SEO page load (adc7794)
  • •seo: show register sitemap prompt with GSC link when no sitemap found (f61fd4c)
  • •ui: add shadcn Command component for searchable combobox (461ae45)
  • •ui: add shadcn InputGroup component (command dep) (63a2c1a)
  • •ui: add shadcn Textarea component (command dep) (3eee74b)
  • •ui: add shared Footer component for all public pages (7f419d5)

Bug Fixes

  • •auth: include callbackUrl when proxy redirects unauthenticated dashboard requests to login (8bc2a89)
  • •cron: use per-tag attribute parsing in getMeta to avoid non-literal RegExp lint error (078ac24)
  • •footer: use Link instead of a for internal hash navigation (f8445a7)
  • •gsc: cast GscSite[] to any for Prisma Json field assignment (81f8432)
  • •gsc: correct WhatsApp og:image check — warning not error, community-observed 300KB threshold, add dimension check (00d4ac8)
  • •gsc: extend connect session expiry to 30 min for login redirect flow (318cea3)
  • •gsc: redirect to /connect/gsc after OAuth to skip dashboard auth, add granular error codes (9edb282)
  • •gsc: remove auth() requirement from connect endpoint, use session userId directly (8ae3704)
  • •gsc: use per-tag attribute parsing in getMeta to avoid non-literal RegExp lint error (24a5d35)
  • •lib: remove export from internal-only GSC interfaces (9f1a700)
  • •login: wrap GitHubSignInButton in Suspense to satisfy useSearchParams requirement (73c3eac)
  • •sdk: set inert on host radix dialogs to prevent focusscope stealing focus (1f60c97)
  • •sdk: stop focus propagation to fix textarea clickability with radix focusscope (7d1dfb9)
  • •sdk: stop pointerdown propagation to fix dialog clickability with shadcn (e41deb4)
  • •seo: capture first indexing API error and expose failed count in response (f77e0f8)
  • •seo: fix useEffect dep, ternary-as-statement, and Tailwind canonical classes (41ca92b)
  • •seo: preserve session id in callbackUrl when redirecting unauthenticated users to login (4f00d3d)
  • •seo: replace max-h-[420px] with canonical max-h-105 (ece6a6d)

Performance Improvements

  • •gsc: parallelize URL inspection with 10 concurrent requests to fix sync timeout (daa69fe)

v1.26.1

Bug Fixes

  • •dashboard: show tooltips on upper contribution graph cells (576022e)

v1.26.0

Features

  • •analytics: add Analytics nav item to sidebar (78edba8)
  • •analytics: add day-wise issues-closed API endpoint (e96c694)
  • •analytics: add issues closed dashboard page with bar chart (aa0c656)
  • •dashboard: add DashboardStatusBar component with dynamic path from usePathname (f5f9939)
  • •dashboard: add issues-closed sneak peek mini chart to dashboard (67ca6cb)
  • •dashboard: expand stat grid to 3x2 with issues-closed metrics (a81fce3)
  • •dependencies: add motion library version 12.38.0 to package.json and bun.lock (11c5ae7)
  • •layout: mount DashboardStatusBar above main for full-width border (1a0a36e)
  • •sidebar: replace static Lucide icons with animated lucide-animated icons (4abf196)
  • •sidebar: wire Cmd+G shortcut and animate Bug icon on report button (38bcf69)
  • •ui: add animated BugIcon with shake wiggle using motion/react (12a54dd)

Bug Fixes

  • •analytics: eliminate tooltip flicker using CSS group-hover instead of React state (5260282)
  • •analytics: memo BarList to prevent re-render disrupting CSS hover state (5c2af19)
  • •analytics: remove hover from breakdown table rows to prevent layout shift flicker (75d0bc6)
  • •analytics: use absolute positioned x-axis labels to prevent rotation clipping (c40905c)
  • •dashboard: cap priority issues triage height to prevent layout imbalance (e555da5)
  • •dashboard: compact stat cards - reduce padding and font sizes (9757877)
  • •dashboard: drop unused userName from DashboardAnalytics call (1b9f9c8)
  • •dashboard: reduce stat card width by shrinking grid column span (c46507d)
  • •dashboard: remove greeting header and userName prop (c82330e)
  • •pipeline: append reporter session info to SDK_AUTO GitHub issues (92b06f1)
  • •sdk: include phone in auto-capture payloads and add session to effect deps (6a0f8de)
  • •sdk: include session data in error boundary auto-reports (b93fd62)
  • •sidebar: guard startAnimation call for non-animated Lucide icons (302abd8)
  • •sidebar: replace static Bug with animated BugIcon and fix CMD G shortcut display (c8ca2e4)
  • •sidebar: trigger icon animation from full nav item hover via imperative ref (3d58482)
  • •ui: add global dark themed scrollbar styles (f64667d)

v1.25.0

Features

  • •dashboard: group open issues by repo with per-project count badges (af5e0ae)

v1.24.0

Features

  • •add dotenv support for environment variable management (627eec2)

Bug Fixes

  • •sdk: use waitUntil to keep pipeline alive after response on Vercel (bd06245)

v1.23.2

Bug Fixes

  • •sdk: detect host theme from html element when body bg is transparent (dc848c3)

v1.23.1

v1.23.0

Features

  • •sdk: add Cmd+Shift+G global keyboard shortcut to open report dialog (23cfae1)
  • •sdk: add deduplication check before dispatching report in error boundary (340487b)
  • •sdk: add in-memory error signature dedup with 5min window (517b622)
  • •sdk: export deduplication utilities (c65ad1c)
  • •sdk: implement deduplication check for global error and unhandled rejection listeners (4f6d865)
  • •sdk: support Cmd+V clipboard paste and update upload hint text in report dialog (e33924b)
  • •seo: add dynamic llms-full.txt route with SDK quickstart and API reference (f5067c7)
  • •seo: add keywords, authors, robots meta and title template to root layout (ec8c8d7)
  • •seo: add llms.txt for AI crawler indexing and citation (f8c6b34)
  • •seo: add Script-based JSON-LD components for Organization, FAQ, Breadcrumb, HowTo (fe1830b)
  • •web: add utility to compute error signatures for issue deduplication (7df700a)
  • •web: implement server-side verification to detect and skip duplicate error reports (2473c26)
  • •web: update schema with report signature field and index for deduplication (561f2ab)

v1.22.2

Bug Fixes

  • •bug-chat: show full repo names in dropdown without truncation (ce79687)

v1.22.1

Bug Fixes

  • •collaborators: show action buttons on mobile without hover (4ff6a1c)
  • •dashboard: wrap GitHub contributions heatmap in horizontal scroll container (2245fc8)
  • •repos: stack sync + status badge vertically on mobile (731ea34)
  • •responsive: use canonical min-w-130 instead of min-w-[520px] (03c22d0)

v1.22.0

Features

  • •add CreateTokenDialog component for repository-scoped API token generation (0e15b8a)
  • •add db:deploy script to run prisma migrate deploy (4889f93)

v1.21.0

Features

  • •repos: expose owner avatar_url in GitHub repo listing (3267d1a)
  • •repos: render GitHub owner avatars in connect dialog (22f3abf)

Bug Fixes

  • •db: migration for per-user Repo.githubId uniqueness (212f628)
  • •repos: return result from connectRepo instead of throwing (16d5211)
  • •schema: scope Repo.githubId uniqueness per user (8680193)

v1.20.6

Bug Fixes

  • •reports: remove internal status filter, keep GitHub open/closed only (43de5f5)

v1.20.5

Bug Fixes

  • •reports: add open/closed issue state filter to reports list (0af44ee)

v1.20.4

Bug Fixes

  • •chat: increase repo name max-width to prevent premature truncation (f79aefd)
  • •select: allow popup to grow wider than trigger for long repo names (ebde8e6)
  • •tokens: make repo select trigger full-width to show complete names (282e7a3)
  • •tokens: remove max-w-40 cap on repo column to show full repo names (6265933)

v1.20.3

Bug Fixes

  • •claude: simplify enricher to single-turn API call (3500632)
  • •claude: trim enricher context to prevent turn exhaustion on large issue lists (9f51536), closes #142
  • •claude: use instanceof directly in ternary to fix TS2749 type error (205b952)

v1.20.2

Bug Fixes

  • •chat: add lightbox for staged screenshot preview (6561880)

v1.20.1

Bug Fixes

  • •repos: surface specific GitHub status codes in resyncRepo error messages (390daf6)

v1.20.0

Features

  • •repos: add org filter chips, reconnect github, and grant-access CTA (6b6f70b)
  • •repos: add resyncRepo server action for detecting transfers and renames (2dafd0a)
  • •repos: add sync button on repo rows to resync transferred or renamed repos (4812162)
  • •repos: paginate GitHub repos and expose accounts + reconnect url (a810367)

Bug Fixes

  • •auth: refresh stored GitHub access_token on every sign-in (be027e6)

v1.19.3

Bug Fixes

  • •ci: fail deploy-web step when Vercel hook returns error (db1706d)

v1.19.2

v1.19.1

Bug Fixes

  • •chat: stack REPL prefix above content on mobile and prevent issue card button wrap (b8e5215)

v1.19.0

Features

  • •dashboard: add elapsed time and progress bar to active workflow rows (16fa7ce)
  • •dashboard: show check status pill on awaiting-review PR list (c1f9273)
  • •enricher: add structured emit tools for reliable action termination (df60244)
  • •pulls: fetch and roll up check-run status per PR (9a622f5)

Bug Fixes

  • •enricher: detect emit-tool calls to eliminate JSON parse failures (a291126)
  • •reports: link rows directly to GitHub issue instead of in-app page (b45f6b3)

v1.18.1

Bug Fixes

  • •dashboard: show toast error when pasting image without repo selected (8163718)

v1.18.0

Features

  • •reports: add date-wise filter pills (TODAY, LAST_7_DAYS, LAST_30_DAYS) (d73e9f4)

Bug Fixes

  • •reports: move Date.now() out of component to fix react-hooks/purity lint error (f602030)
  • •reports: move Date.now() out of useMemo into event handler (484f393)

v1.17.3

Bug Fixes

  • •chat: disable input and upload until a repo is selected (a6c88ba)

v1.17.2

Bug Fixes

  • •chat: include issue number in chat history sent to AI (c41b023)
  • •prompt: escape backticks in template literal to fix parse error (ac2e9df)
  • •prompt: teach AI to recognise attach-to-last-issue requests (68b68ac)

v1.17.1

Bug Fixes

  • •reports: exclude dismissed reports from sidebar failed count (13c2a8e)

v1.17.0

Features

  • •reports: add dismiss action for failed reports (108a683)
  • •reports: include dismissed field in reports GET response (bee9214)

Bug Fixes

  • •reports: add dismissed field to ReportItem, remove isOwner from ReportsTabs (5a38431)
  • •reports: add repo filter, remove approve/reject, clarify failed status (7fe2ead)
  • •reports: remove unused isOwner prop from ReportsList (ef3579f)

v1.16.0

Features

  • •seo: add canonical URLs to docs, legal, and contact pages (c0720f3)
  • •seo: add explicit Next.js sitemap route covering all public pages (c10ef0c)
  • •seo: add JSON-LD schema utility for Organization, SoftwareApplication, and BreadcrumbList (743d8f5)
  • •seo: add SoftwareApplication and BreadcrumbList JSON-LD to homepage (d3b0cb5)
  • •seo: inject Organization JSON-LD and add canonical URL to root layout (d6954ec)

Bug Fixes

  • •enricher: force JSON output on last turn to prevent exhausted-turns fallback (e316aa8)
  • •seo: add explicit sitemap.xml reference to robots.txt via next-sitemap config (4ad7683)

v1.15.1

Bug Fixes

  • •dashboard: add refetchOnWindowFocus and refetchInterval to analytics queries (a34894e)

v1.15.0

Features

  • •dashboard: add compact active workflows widget (2a7a538)

v1.14.0

Features

  • •api: add workflow-runs endpoint listing GitHub Actions per repo (8f8b010)
  • •billing: bypass Razorpay in dev and return PRO_PLATFORM active (8168e8b)
  • •dashboard: add workflow runs section with smart polling and manual refresh (d6cb835)
  • •dashboard: wire workflow runs section into analytics view (652b4ef)
  • •github: add listWorkflowRuns API client for GitHub Actions (7a1e6fc)
  • •scripts: load env vars from workspace .env in db-sync script (83cf32c)

Bug Fixes

  • •api: replace non-null assertion with local variable in workflow-runs (f54e75e)
  • •scripts: point dotenvx at root .env and correct db:sync script path (e2a4388)
  • •turbo: add env allowlist to dev task so secrets reach next dev (9756250)

v1.13.0

Features

  • •reports: add GET /api/v1/reports/[id] with session auth (ead5e56)
  • •reports: add POST /api/v1/reports/[id]/comments with session auth (aff3fb8)

Bug Fixes

  • •web: use session-auth endpoints in report detail page (5547fbe)

v1.12.0

Features

  • •chat: add screenshot lightbox modal on thumbnail click (08052ca)

v1.11.1

Bug Fixes

  • •dashboard: default to no repo selected and clear chat on repo change (3bbcb5d)

v1.11.0

Features

  • •claude: add agentic enricher loop with 6-turn cap, 15s timeout, and fallback (21945d9)
  • •claude: add Anthropic SDK client factory (670a9cc)
  • •claude: add in-memory TTL cache for tree/file/search lookups (ec806fa)
  • •claude: add list_repo_tree/read_file/search_code tools scoped to one repo (82b3893)
  • •claude: add system prompt encoding the 6-action decision (0656067)
  • •claude: add ToolContext and EnrichmentMetrics types (0818bb7)
  • •web: thread repo context into classifyAndGenerate so claude can read it (de871d4)

v1.10.0

Features

  • •analytics: add reports analytics endpoint for dashboard stats (50c8134)
  • •bottom-nav: replace Repos with Chat tab and add Chat to menu sheet (41a969f)
  • •chat: add dedicated chat route separated from main dashboard (a383fa5)
  • •dashboard: add analytics view with action cards, PR/issue lists, and heatmap (8c44ef8)
  • •dashboard: add GitHub contributions heatmap with tooltip on hover (5b2191d)
  • •dashboard: add GitHub-style yearly reports contribution heatmap (bafdb24)
  • •dashboard: add open GitHub issues card with labels and direct links (05c9700)
  • •dashboard: add open pull-requests card with direct GitHub links (b80319b)
  • •dashboard: add shared InnerPageHeader primitive for terminal-dev inner pages (eee136e)
  • •dashboard: extract reusable no-repos empty state (33a84bb)
  • •dashboard: extract shared repo-context loader for reuse across pages (5b14538)
  • •github: add GitHub contributions GraphQL endpoint (e34212d)
  • •landing: terminal-dev redesign — hero with live terminal, log-entry feature cards, CLI install transcript + demo video split, pipeline with icons, subscribe.sh waitlist, mono footer (c8903cf)
  • •repos: add open issues endpoint for dev triage (1e7cde3)
  • •repos: add open pull-requests endpoint via GitHub API (93892cd)
  • •sidebar: add Chat nav entry for dedicated chat route (7e733dd)
  • •sidebar: redesign with nav groups, kbd hints, status dot, live count badges, keyboard-styled report button (d388a57)

Bug Fixes

  • •chat: replace non-null assertion and '!=' with strict equality and guard check (8f63ae0)
  • •landing: use real logo image in footer brand instead of generic terminal icon (8a6117b)
  • •reports: inline source-icon rendering to satisfy react-hooks/static-components rule (32b626c)
  • •web: add data-scroll-behavior=smooth to html for proper nextjs route transitions (d3d6fd0)

v1.9.1

Bug Fixes

  • •dashboard: remove toast notifications on screenshot upload (5e67523)

v1.9.0

Features

  • •sdk: auto-detect host app theme color for report dialog (28ac18c)

Bug Fixes

  • •sdk: ensure client-side text quality validation is included in build (b9a6836)
  • •sdk: improve gibberish detection with consonant-cluster and char-reuse checks (2cd7db1)
  • •sdk: preserve envelope success flag in sendReport result (0c3cded)

v1.8.3

Bug Fixes

  • •dashboard: validate report text quality before submitting to AI pipeline (c638011)
  • •sdk: add client-side validation to reject gibberish and throwaway text in report dialog (177bcb5)
  • •sdk: skip keepalive for large payloads to avoid 64KB browser limit (00f53cb)

v1.8.2

Bug Fixes

  • •api: detect localhost via body pageUrl instead of unreliable Origin/Referer headers (95a7cba)

v1.8.1

Bug Fixes

  • •api: add CORS headers and localhost dev-mode response to SDK report endpoint (bec7f0f)
  • •sdk: replace useSyncExternalStore with useState+useEffect to prevent hydration mismatch (fe8ec33)

v1.8.0

Features

  • •sdk: extract report dialog into standalone component rendered by provider (49edec6)
  • •sdk: render ReportDialog inside GlitchgrabProvider so dialog is always available (5e92acc)

Bug Fixes

  • •sdk: prevent hydration mismatch with useSyncExternalStore mounted guard (f09d5a1)

v1.7.0

Features

  • •api: map report type and severity to dynamic GitHub labels and title prefixes (1b286d2)
  • •sdk: accept type option in openReportDialog for pre-selecting category (077901c)
  • •sdk: add multi-step stepper variant for report dialog with category, details, and review steps (b6d2af0)
  • •sdk: add ReportSeverity type, variant and showSeverity props to ReportButtonProps (2e2c31e)
  • •sdk: export ReportSeverity type from barrel (3769c8d)

v1.6.0

Features

  • •api: add commentCount to reports list endpoint (f8a78b1)
  • •sdk: add commentCount field to GlitchgrabReport type (459b6db)
  • •sdk: export GlitchgrabReport type from barrel (0446f19)

v1.5.1

Bug Fixes

  • •billing: revalidate dashboard layout after payment verification (ed62da2)
  • •billing: revalidate dashboard layout after subscription cancellation (5b36d54)

v1.5.0

Features

  • •billing: show cancelled status message from live Razorpay state (6d7eee0)
  • •docs: implement Markdown to JSX renderer for documentation page (c4ba583)
  • •landing: add docs link to navbar/footer and remove pricing section (4e2bf93)
  • •sdk: add documentation links to the landing page (ca96328)
  • •sdk: add openReportDialog() to programmatically trigger ReportButton modal (280658d)
  • •sdk: pass description in openReportDialog custom event detail (1dbabe0)
  • •sdk: pre-fill description textarea from openReportDialog event detail (c9a047d)
  • •sdk: update openReportDialog type to accept optional description (826920c)

Bug Fixes

  • •billing: check live Razorpay status before creating new subscription (4ee70ad)
  • •billing: fetch subscription status live from Razorpay API instead of stale DB (3b6a495)
  • •billing: only store razorpay subscription ID on verify, no status (bd64bf7)

Performance Improvements

  • •billing: pass pre-fetched plan to getTrialStatus to avoid redundant API call (2b2cc09)

v1.4.1

Bug Fixes

  • •sdk-api: remove status, rawInput, source, pageUrl from SDK reports response (951095a)

v1.4.0

Features

  • •sdk: add useGlitchgrabActions hook with isPending, error, onSuccess, onError callbacks (b6c700c)

Bug Fixes

  • •proxy: add CORS for /api/v1/reports routes used by SDK actions (2e2ee15)
  • •sdk: add session to report callback deps so session data is included in reports (f244e81)

v1.3.0

Features

  • •sdk: add limit option to useGlitchgrabReports and update README with hook + TanStack Query examples (cad4ebf)
  • •sdk: add useGlitchgrabReports hook and fetchGlitchgrabReports fetcher (d43822e)

Bug Fixes

  • •sdk-report: remove debug console.log statements (3f0bf8e)

v1.2.3

Bug Fixes

  • •s3: hardcode cdn.glitchgrab.dev for screenshot URLs (7d4db8e)

v1.2.2

Bug Fixes

  • •sdk-report: add S3 upload debug logging to diagnose screenshot failures (46fdc1b)
  • •sdk: await reportBug response before showing success message (d9c01b3)
  • •sdk: use www.glitchgrab.dev to avoid naked domain redirect breaking CORS preflight (bccbbd4)

v1.2.1

Bug Fixes

  • •proxy: add CORS for SDK API routes in proxy.ts, remove incorrect middleware.ts (b872920)

Reverts

  • •Revert "chore: remove dead proxy.ts replaced by middleware.ts" (7187bbe)

v1.2.0

Features

  • •middleware: add CORS for SDK API routes and merge with dashboard auth guard (ef00849)
  • •sdk: auto-detect light/dark theme and adapt modal colors (16227a5)

Bug Fixes

  • •sdk: default baseUrl to glitchgrab.dev instead of window.location.origin (976ab41)
  • •sdk: max z-index to cover all host elements, fix button colors for light theme (2c0765c)
  • •sdk: render modal in portal to escape host stacking contexts (eeb58cd)
  • •sdk: replace × characters with SVG icons and add isolation to prevent host CSS bleed (220447d)

v1.1.1

Bug Fixes

  • •ci: enable GitHub Release creation in SDK publish workflow (7ec3b04)

v1.1.0

Features

  • •sdk: add changelog generation to SDK release workflow (9e5650b)

v1.0.0

Features

  • •ai: add chat history context (last 5 msgs), proactive merge, and better prompting (0ed7a58)
  • •ai: add clarify intent and repo-aware context for smart questioning (a5ad63e)
  • •ai: add intent detection — create, update, close, or chat based on user input and open issues (ecc6ba3)
  • •ai: add merge action to combine related issues into one (01d0076)
  • •ai: add OpenAI GPT-4o service to generate structured GitHub issues from bug descriptions (ea84e2f)
  • •ai: improve dedup with recent issues context, ask for clarification, use gpt-4o for screenshots (846d307)
  • •ai: return structured options with clarify questions for interactive UI (1c3025d)
  • •api: accept breadcrumbs, device info, and report type from SDK (b9dd3c7)
  • •api: accept collab session and verify shared repo access in reports (940a215)
  • •api: accept suggestion field in waitlist survey (0677772)
  • •api: accept survey responses and update waitlist entry (d1fc3db)
  • •api: add GET /collaborators endpoint to list invited collaborators (2682848)
  • •api: add GET /collaborators/accept for magic link verification (f988052)
  • •api: add GitHub repos endpoint to fetch user repos via OAuth token (67349d6)
  • •api: add GitHub webhook listener to forward issue events to client webhooks (fc86379)
  • •api: add mobile auth endpoint — exchanges GitHub token for NextAuth JWT session (82b7da1)
  • •api: add PATCH /collaborators/:id/repos to update repo access (6cb6d78)
  • •api: add PATCH /collaborators/:id/revoke to revoke access (6bba8f1)
  • •api: add POST /api/v1/reports endpoint for dashboard bug submissions (e671f53)
  • •api: add POST /api/waitlist endpoint with email validation and dedup (5de4fca)
  • •api: add POST /collaborators/invite to send magic link invitations (0a96db0)
  • •api: add POST /collaborators/report for collaborator bug submissions (eae3a8f)
  • •api: add rate limiting to SDK report endpoint with 429 response (c343bbf)
  • •api: add Razorpay billing endpoints — subscribe, verify, and webhook (b4a114a)
  • •api: add SDK report endpoint with token auth, auto-capture, and user report support (b5f9e81)
  • •api: integrate AI pipeline into reports endpoint for real issue creation (6565145)
  • •api: return intent type in report response for multi-action chat (4eae2a7)
  • •api: send welcome email to user and notification to admin on waitlist signup (09f2f37)
  • •api: update billing APIs to support BYOK and Platform plan selection (f4dd9cd)
  • •auth: add AuthSessionProvider wrapper for client-side session access (c2dc17c)
  • •auth: add JWT-based middleware to protect /dashboard routes (08992e9)
  • •auth: add lightweight collaborator session with HMAC-signed tokens (c66773c)
  • •auth: add NextAuth route handler for /api/auth/* (3dedca1)
  • •auth: add NextAuth v5 config with GitHub OAuth, JWT sessions, and Prisma adapter (e98cdc0)
  • •billing: add billing dashboard page with plan info and Razorpay upgrade flow (28026e5)
  • •billing: add cancel button to active subscription card (1b7b72a)
  • •billing: add cancel subscription API route with end-of-period cancellation (e675683)
  • •billing: add cancel subscription button with confirmation dialog (de41b26)
  • •billing: add full-screen PaywallBlock with Razorpay plan cards (8421371)
  • •billing: add getTrialStatus helper for 2-day free trial calculation (c7f7f0c)
  • •billing: add Glitchgrab logo and dark backdrop to Razorpay checkout (103e7d7)
  • •billing: add non-dismissable welcome trial dialog for new users (e44542d)
  • •billing: add PaywallGuard server component to gate dashboard access (2ec30ca)
  • •billing: add plan checking with repo and issue limits for free vs pro (c11b963)
  • •billing: add PlanBadge component with premium, trial, and byok variants (854fd68)
  • •billing: add Razorpay client initialization and plan constants (a527a9e)
  • •billing: add razorpay:create-plans script using dotenvx (041045c)
  • •billing: add razorpayPlanId to PLANS config for subscription-based billing (b74b4e7)
  • •billing: add script to create Razorpay subscription plans for dev and prod (d0b7cae)
  • •billing: add TrialBanner countdown component for trial period (fa5eabc)
  • •billing: delay first Razorpay charge until trial ends (81ac2b0)
  • •billing: extend trial period from 2 to 7 days (5d11b37)
  • •billing: fetch plan status and pass badge type to sidebar and bottom nav (d68d113)
  • •billing: handle subscription lifecycle webhooks for recurring billing (6e90c75)
  • •billing: re-enable PaywallGuard to enforce subscription (32918cb)
  • •billing: rebuild billing page with 2-tier plan cards and Razorpay checkout (0c9e39f)
  • •billing: show welcome dialog for all trial users without subscription (fae8a38)
  • •billing: switch pricing to INR — ₹99 BYOK, ₹199 Platform AI (e3ddb06)
  • •billing: switch subscribe route from one-time orders to recurring subscriptions (22f1b96)
  • •billing: update pricing UI to ₹99 and ₹199 INR (59f37a4)
  • •billing: use Razorpay subscription checkout instead of one-time order (62aa996)
  • •billing: verify subscription payments using subscription_id instead of order_id (f220b58)
  • •billing: wrap dashboard layout with PaywallGuard to block expired trials (e280c92)
  • •bottom-nav: add Report Bug tab and sidebar link in mobile menu sheet (2d02026)
  • •bottom-nav: add Reports nav item to mobile menu (0f3ca23)
  • •bottom-nav: show plan badge next to username in mobile menu (cc0aa36)
  • •bottom-nav: show user avatar with plan badge dot instead of generic profile icon (38dd9f4)
  • •changelog: add changelog link to landing page footer (9277ee2)
  • •changelog: add public changelog page that renders CHANGELOG.md at build time (23f8921)
  • •chat: add multi-select images, new chat button, and transparent screenshot background (c2d9d16)
  • •chat: handle clarify intent in bug chat UI (2a8ab2c)
  • •ci: add CI workflow for PR validation — lint, typecheck, knip, pruny, build (43d7855)
  • •ci: add GitHub Release with APK download on app-v tags (90fb9df)
  • •ci: add GitHub workflow to build Android APK via EAS (f6009f6)
  • •ci: add GitHub workflow to publish SDK to npm on tag (4de5cea)
  • •ci: add release workflow for auto-generating changelog on push to main (c8ff0b9)
  • •ci: add Vercel deploy hook workflow for main branch deploys (c4363f4)
  • •ci: replace manual SDK publish with semantic-release workflow (3641abb)
  • •collaborate: add bug report form with repo selector and screenshot upload (01af895)
  • •collaborate: add magic link accept page with token verification (fa29d2e)
  • •collaborate: add minimal layout for collaborator pages (aa52b8b)
  • •collaborate: add restricted report page for collaborators (076260c)
  • •collaborators: add Edit repos button for accepted collaborators (664f9d9)
  • •collaborators: add edit repos dialog to update collaborator repo access (3001504)
  • •collaborators: replace confirm() with AlertDialog for remove action (5ccdd17)
  • •contact: add API route to send contact form emails (84076b5)
  • •contact: add contact form component with useMutation (3c8b3d3)
  • •dashboard: add API tokens page with token list (e782f54)
  • •dashboard: add Billing link to sidebar and mobile nav (04900a5)
  • •dashboard: add chat-based bug reporter with repo selector and screenshot attach (b6c939c)
  • •dashboard: add clipboard paste support for screenshots in chat input (1336a1f)
  • •dashboard: add collaborators page with invite list and status badges (030f20d)
  • •dashboard: add dashboard layout with sidebar and mobile nav (cb0167d)
  • •dashboard: add desktop sidebar with nav, user info, and sign-out (f5720f5)
  • •dashboard: add dual auth support for owner and collaborator sessions (684f08e)
  • •dashboard: add error boundary page with retry button (4f114fe)
  • •dashboard: add InteractiveQuestions card with option buttons, custom input, and skip (c87b3f5)
  • •dashboard: add invite collaborator dialog with email and repo multi-select (24cb720)
  • •dashboard: add loading spinner for page transitions (50baddd)
  • •dashboard: add mobile navigation with sheet drawer (d5da817)
  • •dashboard: add overview page with stats cards and empty state (66843a0)
  • •dashboard: add ReportBugButton with capture-first-then-modal UX (842cf80)
  • •dashboard: add repos page with connected repos list (2f510b5)
  • •dashboard: add retry button on failed messages with original screenshot preserved (b861be9)
  • •dashboard: add revoke access button for collaborators (07e1083)
  • •dashboard: add settings page with account info and AI config placeholder (a454a5b)
  • •dashboard: handle 'ask me questions' locally with test questions for reliable testing (0f91048)
  • •dashboard: handle create, update, close, and chat responses in bug chat (10911c0)
  • •dashboard: integrate interactive questions into bug chat with dismiss and submit (b0160a5)
  • •dashboard: show shared repos in BugChat for collaborators (4d9fc34)
  • •db: add full schema with User, Repo, ApiToken, Report, Issue, AiConfig models (8797a02)
  • •db: add init migration with all tables, enums, and foreign keys (11f73ea)
  • •db: add migration for subscription billing tables (8b5e96c)
  • •db: add migration for waitlist suggestion field (a992fc7)
  • •db: add migration for waitlist survey fields (4885c1d)
  • •db: add migration for webhook table (174a15e)
  • •db: add Prisma schema with Waitlist model for email capture (38668ee)
  • •db: add Subscription model with plan, status, and Razorpay fields (8fc3aed)
  • •db: add suggestion field to Waitlist model (bd66d37)
  • •db: add survey fields to Waitlist model for pricing and feature validation (a337d9b)
  • •db: add Webhook model for GitHub event forwarding to client apps (a03fd05)
  • •github: add comment, close, and fetch open issues API functions (915d9a0)
  • •github: add fetchIssueBody to retrieve full issue content for merges (7e1663a)
  • •github: add fetchRepoReadme and fetchRepoDescription helpers (b5c3fff)
  • •github: add GitHub API service for creating issues and fetching labels (3c0d431)
  • •github: add screenshot upload to repo via Contents API (ab0a466)
  • •github: add updateIssueBody to append content directly to issue body (154bafd)
  • •landing: add auth-aware nav with Sign In and Dashboard links (e0f6c49)
  • •landing: add Bebas Neue font to Google Fonts import (d9af2a8)
  • •landing: add flow animations component for landing page (806e6c4)
  • •landing: add free-text suggestion box to post-signup survey (aec7377)
  • •landing: add full landing page with hero, features, comparison, pricing sections (a57dcc0)
  • •landing: add hero terminal component with animated capture flow (498e29a)
  • •landing: add hero video component for landing page (c1819c3)
  • •landing: add hero waitlist component with email input, validation, and avatar stack (c02feba)
  • •landing: add iPhone-style status bar, home indicator, and dynamic island to hero video (e224c31)
  • •landing: add Navibyte logo and link to footer, update feature cards and dedup copy (e621dc8)
  • •landing: add post-signup survey for pricing, feature priority, and current tool (9f3899b)
  • •landing: add privacy, terms, refunds, and contact links to footer (595e5ef)
  • •landing: add waitlist email form with loading and success states (51d79e6)
  • •landing: redesign features section with stacked cards, numbered steps, and sticky video (205427e)
  • •landing: redesign footer with 4-column grid, add Navibyte attribution and more links (5267929)
  • •landing: replace code preview with vertical demo video in phone frame on hero section (9e949a6)
  • •landing: replace CTA buttons with inline waitlist form, add Bebas Neue font to heading (7a1298b)
  • •landing: replace text logo with glitched G icon in nav and footer (983bcc6)
  • •landing: update pricing section to Pro BYOK $5/mo and Pro Platform $10/mo (5c22e8c)
  • •layout: wrap app with QueryProvider (4e4515d)
  • •legal: add contact page with email and GitHub links (268f2f3)
  • •legal: add privacy policy page (24e8cc7)
  • •legal: add refund policy page with 7-day guarantee (89cecde)
  • •legal: add shared layout for legal pages with logo and back link (587b9a6)
  • •legal: add terms of service page (bcd3bc1)
  • •lib: add AES-256-GCM encryption for user API keys (6545729)
  • •lib: add in-memory rate limiter with 60 req/hr per token (091107b)
  • •lib: add token generation (gg_ prefix) and SHA-256 hashing utilities (db1d0a9)
  • •lib: add webhook dispatcher with HMAC-SHA256 signature and retry (ef9322a)
  • •login: add code rain, mini terminal, glitch text, and HUD ring animations (6ecb4b7)
  • •login: add GitHub sign-in button with loading state (1143be6)
  • •login: add login page with GitHub sign-in button (0a7e54c)
  • •login: redesign login page with animated terminal, code rain bg, and early access warning (a7613d3)
  • •mail: add sendCollaboratorInvite email with branded template (ec52798)
  • •mobile: add android build and install scripts for prod and dev (07812bd)
  • •mobile: add Android share intent to receive screenshots and create issues (c89c3f3)
  • •mobile: add API helpers for GitHub OAuth code exchange and session creation (f0edb0c)
  • •mobile: add APP_ENV extra config for build-time environment control (d5b4c7d)
  • •mobile: add associated domains and collaborate intent filter for deep linking (5a07584)
  • •mobile: add collaborator deep link handling and collaborator app state (d1c22b3)
  • •mobile: add ESLint config with React Native and a11y plugins (3d30068)
  • •mobile: add Expo wrapper with WebView, dark theme, GitHub OAuth bridge, and offline error screen (d5a4f44)
  • •mobile: add expo-clipboard for native clipboard bridge (f3c3d0a)
  • •mobile: add expo-share-intent plugin for image sharing (f3c00a0)
  • •mobile: add lint/validate scripts and ESLint dev dependencies (b04d1a2)
  • •mobile: add loading overlay for shared screenshots and enable pull-to-refresh (22160dd)
  • •mobile: add native login screen with GitHub OAuth via expo-auth-session (a6827d2)
  • •mobile: add pull-to-refresh for Android using ScrollView RefreshControl (a65d7f6)
  • •mobile: add set-env script to swap APP_ENV before builds (ec163fc)
  • •mobile: add WebView debug logs for navigation, errors, and render process (b83e36a)
  • •mobile: bridge GitHub OAuth via system browser with openAuthSessionAsync callback (42f6234)
  • •mobile: extract WebView into screen with session cookie injection and logout detection (23e6e98)
  • •mobile: support overrideUrl prop for collaborator WebView mode (037d53a)
  • •mobile: use APP_ENV config for base URL instead of __DEV__ flag (5aeb200)
  • •mobile: use expo-share-intent to handle shared screenshots (9a7d6da)
  • •nav: add bottom navigation bar with menu sheet for mobile (1a820af)
  • •nav: add Collaborators link to desktop sidebar (128ff59)
  • •nav: add Collaborators link to mobile bottom nav sheet (439bcce)
  • •nav: hide owner-only items in mobile nav for collaborators (e9eae5b)
  • •nav: hide owner-only nav items for collaborators (84e9151)
  • •pipeline: add collaborator email attribution to GitHub issues (c6c8252)
  • •pipeline: add report processing orchestrator — AI generate → GitHub push → DB save (f0f716d)
  • •pipeline: add screenshot analysis note and Glitchgrab attribution to GitHub issues (8bd161c)
  • •pipeline: dispatch webhooks after issue create, update, and close (388a4d0)
  • •pipeline: fetch repo README/description and handle clarify intent (74bcc45)
  • •pipeline: handle create, update, close, and chat intents with dedup support (d25d3bb)
  • •pipeline: pass clarifyQuestions through pipeline result to API (1018072)
  • •pipeline: upload screenshot to GitHub repo and embed in issue body (cf31749)
  • •providers: add TanStack Query provider (0148e08)
  • •providers: pass auth session to GlitchgrabProvider (72a0d65)
  • •reports: add API endpoint to close, reopen, and label GitHub issues (fc3b4e0)
  • •reports: add approve, reject, and close buttons on report cards (06bea2c)
  • •reports: add GET handler for fetching reports with filters (cd7c151)
  • •reports: add report detail page with conversation thread and reply input (82678a9)
  • •reports: add reports page showing all bug reports and created issues (6419495)
  • •reports: add ReportsTabs client component with OPEN/CLOSED/DELETED/NO ISSUE badges (0f693b4)
  • •reports: add tabs for Product Issues vs My Reports with GitHub state sync (4cddfd4)
  • •reports: display reporter name and primary key on report cards (aefad8e)
  • •reports: extract reports list into client component (6675395)
  • •reports: include clarifyQuestions in API response for interactive flow (ecbf3fc)
  • •reports: make report titles clickable to open conversation thread (aed4e38)
  • •reports: pass isOwner prop to enable action buttons (3c7de2c)
  • •reports: pass reporter info to reports tabs component (07ed90d)
  • •reports: support Bearer token auth for issue actions API (2a36693)
  • •repos: add connect repo dialog with searchable GitHub repo list (9c8e261)
  • •repos: add GET API route for client-side repo fetching (d884682)
  • •repos: add ReposList client component with useQuery and axios (08ce1bc)
  • •repos: add server actions for connecting and disconnecting repos (4213944)
  • •repos: auto-setup GitHub webhook on repo when connecting (4eea523)
  • •repos: integrate connect repo dialog into repos page (12d1a7c)
  • •repos: show shared repos with badge for collaborators (284a322)
  • •s3: add S3 screenshot upload replacing GitHub repo commits (a22f22c)
  • •schema: add Collaborator and CollaboratorRepo models with status enum (69c65bf)
  • •schema: add reporter fields (primaryKey, name, email, phone) to Report model (6f8612b)
  • •scripts: add db-sync script to pull production database to local (6596af5)
  • •sdk-api: add comment endpoint to post replies on GitHub issues with reporter attribution (a964cbc)
  • •sdk-api: add GET endpoint to fetch reports by reporter primary key (b3bd0d0)
  • •sdk-api: add GitHub issue state, labels, and severity to reports response (29beaf4)
  • •sdk-api: add single report detail endpoint with GitHub issue body and comments (793684b)
  • •sdk-report: create GitHub issues directly without AI for user reports (1cfbc02)
  • •sdk-report: include environment, page history, and activity log in GitHub issues (be4f7eb)
  • •sdk-report: save reporter session fields and include in GitHub issue body (6ea72c9)
  • •sdk: add barrel exports for all SDK components and utilities (b119dab)
  • •sdk: add breadcrumb tracker — console, fetch, navigation, and click interception (25a0537)
  • •sdk: add device info capture and return report result from sendReport (29e7155)
  • •sdk: add floating ReportButton with inline modal for user bug reports (c280117)
  • •sdk: add GlitchgrabProvider with error capture, page tracking, and useGlitchgrab hook (8abdc43)
  • •sdk: add GlitchgrabSession type with required userId, name and optional email, phone (19e8953)
  • •sdk: add React ErrorBoundary with auto-report and custom fallback (ac128d6)
  • •sdk: add README, fix types, update exports for headless-first API (6571ac4)
  • •sdk: add report types, breadcrumbs, addBreadcrumb hook, and onReportSent callback (6f343b9)
  • •sdk: add semantic-release config for automated versioning (9d2445d)
  • •sdk: add top-right and top-left position options for ReportButton (d8ccc03)
  • •sdk: add types for breadcrumbs, device info, report types, and onReportSent callback (f209046)
  • •sdk: add TypeScript types for config, payload, and components (448034c)
  • •sdk: add URL sanitization, context capture, and silent report sending (5be780a)
  • •sdk: auto-capture page screenshot when ReportButton opens (a3e6c48)
  • •sdk: auto-detect baseUrl and skip initialization when token is empty (7b23e01)
  • •sdk: export GlitchgrabSession type (41a1c5d)
  • •sdk: include breadcrumbs and device info in error boundary reports (6445077)
  • •sdk: initialize @glitchgrab/nextjs package with tsup build config (dc4eb41)
  • •sdk: refactor ReportButton as headless wrapper with screenshot preview, upload, and retake (f301a53)
  • •sdk: send session data (userId, name, email, phone) in report metadata (69eb8dd)
  • •seo: add next-sitemap for automatic sitemap and robots.txt generation (182177a)
  • •settings: add AI config and webhook management sections (1227283)
  • •settings: add AI provider selection form with encrypted BYOK key input (6f1bf00)
  • •settings: add issue.commented event for developer comments from GitHub (6dba35b)
  • •settings: add server actions for AI config (get, update, delete) (ff46790)
  • •settings: add server actions for webhook CRUD (09ea856)
  • •settings: add webhook management form with secret display and event selection (abbe2f3)
  • •sidebar: add Report Bug button above user section (549ac1a)
  • •sidebar: add Reports nav item (8af108e)
  • •sidebar: show plan badge next to username (d854471)
  • •tokens: add create token dialog with one-time display and copy (6111956)
  • •tokens: add delete token button with loading state (f393438)
  • •tokens: add server actions for creating and revoking API tokens (480a98b)
  • •tokens: rebuild tokens page with create dialog, token list, and delete (29dfd5a)
  • •ui: add alert-dialog component (de450dd)
  • •ui: add shadcn avatar component (1768b18)
  • •ui: add shadcn badge component (d935273)
  • •ui: add shadcn button component (17c1f56)
  • •ui: add shadcn card component (af30b5a)
  • •ui: add shadcn dialog component (315a9d0)
  • •ui: add shadcn dropdown-menu component (3430622)
  • •ui: add shadcn input component (82ef90d)
  • •ui: add shadcn label component (8d460cb)
  • •ui: add shadcn popover component (33c2307)
  • •ui: add shadcn select component (71e0bb8)
  • •ui: add shadcn separator component (60c13ff)
  • •ui: add shadcn sheet component (2d1d000)
  • •ui: add shadcn sonner component (a300ef4)
  • •ui: add shadcn table component (456ffea)
  • •waitlist: add stats API endpoint for count and recent initials (b58953e)
  • •web: add 180x180 rounded apple-touch-icon (e38a2fc)
  • •web: add 192x192 rounded app icon (839d498)
  • •web: add clipboard utility with WebView native bridge fallback (a87cd99)
  • •web: add cn utility for class merging (1876cbc)
  • •web: add dark theme with cyan accent, custom animations, and design tokens (a6251e0)
  • •web: add email utility with welcome, signup notification, and survey response emails (4f4bac5)
  • •web: add ESLint v9 flat config with strict TS, unused imports, and tailwind canonical rules (33a2d7d)
  • •web: add favicon and touch icons to public directory (4568957)
  • •web: add glitchgrab workspace dependency (2424acb)
  • •web: add GlitchgrabSDKProvider for self-hosted SDK integration (1b70010)
  • •web: add OG image and twitter card image to metadata (eed8412)
  • •web: add OG social share image with glitched G logo (2383f3d)
  • •web: add Prisma client singleton for database access (55c1b08)
  • •web: add root layout with SEO metadata, OG tags, and font preloads (973ac7a)
  • •web: add rounded glitched G favicon (ff48df3)
  • •web: add security, react-hooks, and stricter ESLint rules (7605a00)
  • •web: add SessionProvider, Toaster, favicon links, and metadataBase to layout (2f80cca)
  • •web: add validate script with eslint and tsc (4054838)
  • •web: replace OG image with landscape logo + tagline version (fa076d4)
  • •web: set up dark-first Glitchgrab theme with cyan primary for shadcn (e68f3fd)
  • •web: wrap root layout with GlitchgrabSDKProvider (474dc48)

Bug Fixes

  • •ai: enforce action-bias in system prompt and include issue bodies for accurate merges (42e0afc)
  • •ai: enforce one-report-one-issue rule to prevent duplicate issue creation (3277798)
  • •ai: enforce structured options format in clarify rules (4037743)
  • •ai: fallback to direct issue creation when AI returns empty response (e12ff6b)
  • •ai: force JSON mode, handle non-JSON responses, and accept any screenshot content (44634df)
  • •ai: move 'ask me questions' clarify rule before CHAT section to prevent override (163c822)
  • •ai: prevent destructive actions on informational queries like 'how many bugs' (0ba520c)
  • •ai: treat 'ask me questions' as clarify trigger for testing interactive UI (1aad027)
  • •api: add salt parameter for NextAuth v5 JWT encode (b2decca)
  • •api: check both own and shared repo access when submitting reports (19d0a7d)
  • •api: convert uploaded screenshot to base64 data URL for AI vision processing (55db16d)
  • •api: delete collaborator on revoke instead of marking as REVOKED (4b62dc4)
  • •api: exchange OAuth code server-side with mobile client secret for secure token flow (34596cf)
  • •api: forward code_verifier to GitHub for PKCE token exchange (d041e04)
  • •api: redirect collaborator accept to /dashboard and remove REVOKED check (0029d05)
  • •api: replace non-null assertion in billing verify (f6e94fe)
  • •api: replace non-null assertions with nullish coalescing (c8c8978)
  • •api: resize screenshots to 1024px before AI processing to prevent token overflow (42e75a3)
  • •auth: add 1.5s delay before redirect to let WebView persist cookie (3a253a7)
  • •auth: add production logging to mobile session endpoint (a3224dc)
  • •auth: disable secure cookie prefix so Android WebView can persist session cookies (24387e6)
  • •auth: enable Secure flag on mobile session cookie (bab813e)
  • •auth: explicitly set secret from env for NextAuth v5 compatibility (26c3c22)
  • •auth: override session cookie name without __Secure- prefix while keeping Secure flag (17ccaf4)
  • •auth: redirect to /login on sign out in bottom nav (a7afd25)
  • •auth: redirect to /login on sign out in mobile nav (0ed8c5b)
  • •auth: redirect to /login on sign out so mobile WebView detects logout (3c7774f)
  • •auth: return HTML instead of 307 redirect to fix WebView cookie persistence (2b7c203)
  • •auth: set explicit cookie domain .glitchgrab.dev for cross-subdomain access (9e58e5b)
  • •auth: set secure cookie flag based on protocol so dev mode works over HTTP (2560ab1)
  • •auth: use non-prefixed cookie name for mobile — Android WebView rejects __Secure- cookies (8d2d5ee)
  • •billing: add null check for userId instead of non-null assertion (baae63d)
  • •billing: add responsive padding and text sizing for mobile (7643929)
  • •billing: add responsive padding and text sizing for mobile (1302d4a)
  • •billing: auto-detect test mode and use INR currency for Razorpay test keys (110be59)
  • •billing: check user exists before creating subscription to prevent FK error (f0d9506)
  • •billing: handle missing user in getTrialStatus instead of throwing (0db43d4)
  • •billing: remove unsupported dismissible prop from welcome dialog (d98402c)
  • •billing: remove unused Cpu import from paywall block (b1411b6)
  • •billing: replace console.log with console.info in plan creation script (8954035)
  • •billing: show single ₹199/mo plan instead of two USD plans on paywall (8a044d6)
  • •billing: use boolean param for Razorpay cancel to fix TS error (c1c1faa)
  • •billing: use brighter badge colors for dark theme visibility (dbc49ea)
  • •billing: use INR for test mode and improve error logging in plan creation script (9aed22e)
  • •bottom-nav: bigger avatar, brighter badge dot at top-right (c415365)
  • •bottom-nav: close sheet before navigating to prevent Android WebView freeze (953d112)
  • •bottom-nav: increase nav delay to 500ms to prevent GPU crash on sheet close (8054ae0)
  • •bottom-nav: show loading overlay during WebView full-page navigation (d996167)
  • •bottom-nav: use canonical Tailwind z-index class (2885046)
  • •bottom-nav: use full page navigation in WebView to prevent Sheet freeze (6a4061f)
  • •bug-chat: compress images at attach time with standard canvas for WebView compat (3643d44)
  • •bug-chat: compress images client-side to avoid Vercel 4.5MB payload limit (ff16386)
  • •bug-chat: use standard canvas for WebView compat and show file size on preview (57920fb)
  • •chat: remove non-null assertions for lint compliance (5191667)
  • •ci: add build dependency to validate task so SDK types exist (924d9e8)
  • •ci: add npm install for semantic-release compatibility with bun layout (1631734)
  • •ci: build SDK before typecheck so glitchgrab types are available (b085324)
  • •ci: fix npm install in SDK release workflow for bun workspace compatibility (7c955ba)
  • •ci: generate Prisma client before typecheck to resolve type inference (7e00922)
  • •ci: ignore mobile app in pruny check (14ed2cf)
  • •ci: remove root bun.lock before semantic-release to fix workspace protocol error (be61547)
  • •ci: use bun for SDK install to fix workspace protocol error (bf90827)
  • •ci: use GH_TOKEN for semantic-release push and add [skip ci] to prevent loop (de017e3)
  • •ci: use GH_TOKEN in release workflow and add [skip ci] guard (c714570)
  • •ci: use npm-only workflow to avoid bun/npm layout conflict in semantic-release (9db8124)
  • •collaborate: redirect to API route to set cookie instead of page component (b500738)
  • •collaborate: use canonical Tailwind class max-w-35 (513c0bc)
  • •collaborators: remove REVOKED status guard since revoke now deletes (fff8e11)
  • •dashboard: always show popover with search, use text-base to prevent iOS zoom (8503fbc)
  • •dashboard: auto-submit on last skip and prevent question text truncation (2138105)
  • •dashboard: carry forward screenshots during clarification and clear after issue creation (aaf3a94)
  • •dashboard: hide text bubble when interactive questions card is shown (78d6580)
  • •dashboard: merge own repos and shared repos so users with both sessions see all (b9dfae1)
  • •dashboard: parse fallback questions from text and make dismiss non-destructive (bc781bd)
  • •dashboard: remove unsupported onOpenAutoFocus prop from base-ui Popover (32f52cd)
  • •dashboard: shorten input placeholder text (722822f)
  • •dashboard: show repo name in selector and fix input bar padding (a45a55d)
  • •dashboard: skip popover for single repo, only show search for 5+ repos, prevent auto-focus (aa3f325)
  • •dashboard: use --app-height CSS variable so layout respects keyboard viewport (b46117b)
  • •dashboard: use --app-height in bug-chat max-height to prevent keyboard gap (733de95)
  • •dashboard: use canonical Tailwind class for app-height variable (5bad5ed)
  • •dashboard: use text-base (16px) on textarea to prevent iOS WebView zoom on focus (1d565b4)
  • •github: include issue body in fetchRecentIssues for merge context (006b3d7)
  • •github: use permanent blob URL for screenshots instead of expiring download_url (c081c23)
  • •landing: add login button to nav, fix pricing to single ₹199 plan, use Button components in footer (efbda48)
  • •landing: compact feature cards into 2x2 grid with smaller padding and text (897c492)
  • •landing: make fully responsive with shadcn components and mobile-first design (0bfee97)
  • •landing: remove login button from nav, keep only Join Waitlist (4dadc54)
  • •landing: replace arbitrary tailwind classes with canonical equivalents (073d5bb)
  • •landing: update dedup card to highlight open-source and developer-first approach (c66001f)
  • •landing: use square icon instead of OG image for nav and footer logo (e8d6fdc)
  • •legal: update footer copyright to Navibyte Innovation Pvt. Ltd. (5e2bd38)
  • •login: center original.png logo above system access badge on left panel (20b3b2c)
  • •meta: remove handwritten notes from SEO descriptions since feature is not built yet (6d2da29)
  • •mobile: add Android internet permission and cleartext traffic for dev (60b3d53)
  • •mobile: add Android status bar padding to prevent content overlap (1866b17)
  • •mobile: add debug logging to OAuth login flow for troubleshooting (3cf30af)
  • •mobile: add KeyboardAvoidingView with zero offset for proper keyboard handling (ae2c89f)
  • •mobile: add redirect loop protection and logging to WebView, remove broken JS cookie injection (a1a5823)
  • •mobile: add safe-area-context dep and reset APP_ENV after prod build (69405d6)
  • •mobile: add touch-action:manipulation and remove hardware layer to fix Android tap delay (523dc2e)
  • •mobile: add webview class to html for GPU-safe CSS detection (4e9ec63)
  • •mobile: allow HTTP local networking in iOS for dev mode (39f2659)
  • •mobile: allow Razorpay URLs in WebView so checkout modal works inline (7f9f131)
  • •mobile: allow www.glitchgrab.dev URLs in WebView instead of opening externally (bdf1158)
  • •mobile: auto-create local.properties after prebuild for Android SDK path (6361594)
  • •mobile: auto-detect dev server IP from Expo constants instead of hardcoding (78634e1)
  • •mobile: debounce layout recalc, dedup nav callbacks, fix scroll jank (0e45fd0)
  • •mobile: enable bounces on iOS WebView so pull-to-refresh works (40ac67d)
  • •mobile: enable pull-to-refresh on both iOS and Android by removing overflow:hidden (bd4004a)
  • •mobile: fix pull-to-refresh by removing overflow:hidden from updateAppHeight and enabling body scroll (25bf6c6)
  • •mobile: force overflow visible on all layout containers in WebView for pull-to-refresh (2b6ec9c)
  • •mobile: handle iOS keyboard by using visualViewport resize and preventing scroll offset (8110e44)
  • •mobile: hide native keyboard accessory bar so web input stays visible (269b51c)
  • •mobile: inject CSS to force 16px inputs and block pinch-zoom in WebView (a614914)
  • •mobile: inject GPU-disabling CSS directly from WebView for reliability (c40c9f0)
  • •mobile: inject viewport meta before content loads to prevent initial zoom (94cd8ee)
  • •mobile: keep loading overlay until dashboard loads, not the session redirect page (6d13b59)
  • •mobile: navigate to dashboard and wait for load before injecting shared image (e5acc22)
  • •mobile: prevent duplicate screenshot injection on share (82a2326)
  • •mobile: prevent WebView zoom with viewport meta, input font-size, and scalesPageToFit (e2c49b9)
  • •mobile: remove associatedDomains to fix signing on Personal Team (12e1dba)
  • •mobile: remove forced input font-size, viewport meta already prevents zoom (04beec7)
  • •mobile: remove KeyboardAvoidingView, use visualViewport resize for keyboard handling (c5df6d7)
  • •mobile: remove overscroll-behavior and touch-action that block pull-to-refresh (930f274)
  • •mobile: remove ScrollView wrapper around WebView to fix Android UI freeze (e6d6e5a)
  • •mobile: remove webview class from injectedBeforeLoad to prevent hydration mismatch (ba6a52e)
  • •mobile: replace circular icon with square version to remove white border on iOS (a55eaeb)
  • •mobile: replace deprecated SafeAreaView in login screen (b5d436b)
  • •mobile: replace deprecated SafeAreaView with react-native-safe-area-context (11a5834)
  • •mobile: revert dev script to iOS for simulator testing (5da1dba)
  • •mobile: send OAuth code to backend instead of exchanging client-side, update to mobile client ID (83ed174)
  • •mobile: send PKCE code_verifier with OAuth code exchange (b2c78b8)
  • •mobile: set --app-height on body instead of html to prevent hydration mismatch (604af36)
  • •mobile: simulate paste event for shared images instead of auto-submitting (3fef95d)
  • •mobile: use __Secure- cookie prefix for production and set domain for glitchgrab.dev (39627e5)
  • •mobile: use correct Glitchgrab G logo for all app icons (b9578d4)
  • •mobile: use data-webview attribute instead of className to avoid hydration mismatch (6595c15)
  • •mobile: use GitHub PNG icon on login button and log redirect URI for OAuth setup (a081916)
  • •mobile: use glitchgrab.dev without www prefix for production base URL (748c3b9)
  • •mobile: use injected style tag instead of data-webview attribute to avoid hydration mismatch (d321df0)
  • •mobile: use legacy file-system import and enable pull-to-refresh (b0d18e7)
  • •mobile: use local dev server URL in development, production URL in release (73fbdf0)
  • •mobile: use numeric decelerationRate to fix Fabric crash in release builds (b80ec72)
  • •mobile: use server-side cookie setter endpoint instead of client-side injection (eaa1f28)
  • •mobile: use string encoding instead of enum for FileSystem base64 read (aa48241)
  • •mobile: use style tag instead of inline styles to prevent hydration mismatch (c041573)
  • •mobile: use visualViewport to dynamically resize layout when Android keyboard opens (5fce237)
  • •mobile: whitelist Razorpay payment partner domains in WebView (2deb1e8)
  • •mobile: wrap WebView in KeyboardAvoidingView to handle iOS keyboard properly (00210f2)
  • •paywall: remove unused TrialBanner import (b0dd6ba)
  • •pipeline: attach screenshots to merged and closed issues (89e5412)
  • •pipeline: collect screenshots from all issues during merge and update DB records (6f3cfcc)
  • •pipeline: update issue body instead of commenting for dedup updates (2f014a9)
  • •pipeline: upload all screenshots from report including extras in metadata (fe3336e)
  • •providers: handle nullable name in session prop (589dd28)
  • •proxy: use AUTH_SECRET with NEXTAUTH_SECRET fallback for JWT verification (acce199)
  • •reports: accept multiple screenshots via formData.getAll and store extras in metadata (dd54ea6)
  • •reports: add required reporter fields to dashboard report creation (68b8c62)
  • •reports: remove forbidden non-null assertion (c106f2e)
  • •reports: use report.repo.userId instead of non-null assertion for eslint (16dbde8)
  • •repos: add explicit type for repo parameter in map (a11f075)
  • •repos: align Connect Repo button to right and reduce section spacing (fc75ba6)
  • •repos: allow long repository names to wrap instead of truncating (7fb4ef7)
  • •repos: force router refresh after connecting repo to update UI immediately (451e926)
  • •repos: make connect repo dialog fit mobile viewport (4f5291f)
  • •repos: make connect repo dialog fit mobile viewport (5858b5b)
  • •repos: make page header and repo cards responsive on mobile (fdbff06)
  • •repos: make page header and repo cards responsive on mobile (af72018)
  • •repos: prevent badge text clipping and improve responsive layout (cc790a2)
  • •repos: replace Connect Repo text button with icon-only plus button (fb7fac9)
  • •root: clean up knip config for shadcn deps and entry points (ec0bf4e)
  • •root: clean up knip config hints and remove stale ignores (8bb63ab)
  • •root: ignore scaffolding files in pruny to pass validation (c432a52)
  • •root: ignore shadcn UI components and proxy.ts in pruny (c8d1f6a)
  • •root: make bun dev run both web and mobile, add dev:web for web-only (120da2a)
  • •root: pass env vars through turbo to fix Vercel build (802f595)
  • •root: remove stale .glitchgrab ignore from knip (9e7cd07)
  • •root: update knip and pruny configs to pass validation cleanly (1391006)
  • •root: use local prisma binary path in db scripts to avoid global v7 conflict (91bf682)
  • •root: use local prisma v6 binary for db scripts to avoid prisma 7 conflict (17cc03e)
  • •sdk: disable GitHub Release creation for SDK, keep npm publish only (a5b8208)
  • •sdk: handle ReportButton rendered outside GlitchgrabProvider gracefully (e2e3c46)
  • •sdk: lazy-import SDK in useEffect to prevent Next.js prerender crash (3a547ec)
  • •sdk: lazy-load SDK in useEffect to prevent prerender crash with NEXT_PUBLIC token (3ca212a)
  • •sdk: skip auto-error capture in development mode (bcfe9be)
  • •sdk: update reports response to include issue state and labels (a7535fa)
  • •settings: make account card avatar and text responsive (452dcad)
  • •settings: make account card avatar and text responsive (8976f66)
  • •settings: remove AI config section from settings page (78332c2)
  • •settings: remove AI provider selection form component (80ec78c)
  • •settings: remove unused AI config server actions (5a65bc7)
  • •tokens: stack header and token cards vertically on mobile (ae24dac)
  • •tokens: stack header and token cards vertically on mobile (f65b80f)
  • •ui: disable backdrop-blur and animations globally in Android WebView (1448dfb)
  • •ui: fix Recommended badge overflow on mobile by repositioning and adding padding (ab265a2)
  • •ui: remove backdrop-blur from sheet overlay to prevent Android WebView GPU freeze (bffc72d)
  • •ui: restore sheet overlay backdrop-blur now handled by global webview CSS (599f7d4)
  • •web: add tsconfig path alias for glitchgrab SDK types (6ec04d6)
  • •web: add turbopack resolveAlias so SDK uses pre-built dist instead of source (b4fce12)
  • •web: auto-fix tailwind canonical class names (5364f90)
  • •web: correct OG image dimensions to 1200x630 (b49d053)
  • •web: fix TypeScript cast in clipboard utility (9842871)
  • •webhooks: add explicit type for webhook parameter in map (1b40346)
  • •web: memoize messages, use native img for base64, batch state updates (df1704b)
  • •web: remove shadcn Geist font override, keep Inter + JetBrains Mono (ff4b0b0)
  • •web: resolve icon.png conflict, rename to logo.png and add metadataBase (f57a4ce)
  • •web: run prisma generate before next build for Vercel deployment (1e41a99)
  • •web: use clipboard utility with WebView fallback for token copy (7719c29)
  • •web: use clipboard utility with WebView fallback for webhook secret copy (4bd0764)

Performance Improvements

  • •ai: switch from gpt-4o to gpt-4o-mini for faster and cheaper responses (a15afa7)
  • •ai: switch to gpt-4o-mini and add logging (a8bba50)
  • •nav: add prefetch to all navigation links for faster page transitions (1864946)