Commit Graph
521 Commits
Author SHA1 Message Date
Francis Cao b7084bb90a Merge branch 'dev' into fix/delete-cascade 2026-05-07 13:58:29 -07:00
Francis Cao 5ccfb6d0a5 implement datatable sorting on non-analytics tables. (website/board/link/pixel/team/admin) 2026-05-07 10:46:03 -07:00
Stanislaw 71ee000f21 fix: avoid restamping deletedAt + skip Redis DEL for already-soft-deleted slugs
Address Greptile review feedback on #4243.

- Cloud-mode link.updateMany / pixel.updateMany now filter where: { ..., deletedAt: null } so a previously soft-deleted row keeps its original deletion timestamp instead of being restamped with the current time.
- Pre-transaction findMany now selects deletedAt; the Redis invalidation list filters to only live slugs, avoiding harmless but wasted DEL calls for already-soft-deleted entries.

Note: the share.deleteMany cleanup still uses the broad entityId list (not filtered by deletedAt) so that orphan share rows of already-soft-deleted links/pixels are still cleaned up. Filtering the prefetch itself, as Greptile's exact suggestion proposed, would skip those shares while link.deleteMany still hard-deletes the rows, leaving orphan share rows behind. Verified empirically with a 3-scenario reproduction.
2026-05-07 04:14:38 +02:00
Stanislaw a57abbe039 fix: clean up link, pixel, board rows on user/team deletion
deleteUser and deleteTeam left link/pixel/board rows (and their share rows)
in the database after the owner was removed. /q/<slug> and /p/<slug>
also kept serving deleted entries because the routes did not filter
deletedAt and Redis cached lookups for 24h.

- deleteUser: clean up link/pixel/board + shares for the deleted user.
  Cloud mode: soft-delete link/pixel, hard-delete board, only userId-owned.
  Non-cloud: hard-delete everything matching userId or owned teamIds.
- deleteTeam: same cleanup, scoped to teamId.
- /q and /p route handlers: filter deletedAt: null at the call sites
  (not in findLink/findPixel helpers, which would null-deref the
  permission checks at src/permissions/link.ts and pixel.ts).
- Post-transaction Redis invalidation mirrors deleteWebsite.
2026-05-07 03:37:22 +02:00
Francis Cao f463a4ce3f rename propertyName parameter 2026-05-05 10:48:56 -07:00
Mike Cao 0e586dc2f9 Merge pull request #4223 from JLUpengjiaji/V1.0
Remove redundant search logic
2026-05-04 19:37:17 -04:00
Francis Cao fbac7518fc Add MAX_PAGING_RESULTS on hooks for performance improvements. 2026-05-04 15:43:05 -07:00
Francis Cao a8c1f26775 remove duration from session property stats 2026-05-04 14:26:27 -07:00
Francis Cao 946a969df6 fix syntax error 2026-05-01 13:25:54 -07:00
Francis CaoandCopilot 00c0273500 fix clickhouse filtering on event_name
Co-authored-by: Copilot <copilot@github.com>
2026-05-01 13:16:30 -07:00
Francis Cao d5c48ee75f clean-up session property string charts and insights. 2026-05-01 12:09:22 -07:00
Francis Cao 1f2bd7cad9 fix property filter css. format date columns in pivot table 2026-05-01 10:00:30 -07:00
Francis Cao 680a1ca1a2 refactor Property components to be resused for both session/event data. Implement session-data screens + filtering. Remove all event-data specific compoenents/queries 2026-04-29 13:11:03 -07:00
JLUpengjiaji 17a00f62a4 fix: 移除重复的搜索条件检查并修复搜索查询逻辑 2026-04-29 14:57:24 +08:00
Francis Cao 9da332c489 Add Property filters for booleans, dates, arrays 2026-04-27 13:31:47 -07:00
Francis Cao afa878cd3a include team-manager in includeTeams option 2026-04-27 11:02:00 -07:00
Francis Cao 5a1ef5e674 add event-data support and charts for arrays, booleans, dates 2026-04-24 15:04:59 -07:00
Francis Cao 77dda7268e add event-data property filtering 2026-04-24 11:39:40 -07:00
Francis Cao be6154cb68 Event data properties refactor and design 2026-04-23 11:15:59 -07:00
Francis Cao 7d7dd336f9 fix funnel alias issues. Closes #4144 2026-04-20 12:58:17 -07:00
Francis Cao e58131cb72 fix ambiguous query errors. Closes #4176 2026-04-20 11:31:04 -07:00
Francis Cao 8d1a62fb7b getValues performance fix for relational 2026-04-17 11:24:57 -07:00
Francis Cao 04eb4b675e 3.1 relational bug fixes 2026-04-15 10:31:21 -07:00
Francis Cao 54d3c43300 Revert "Merge pull request #4048 from AlejandroGispert/fix/3981-login-email-case"
This reverts commit b6341596bf, reversing
changes made to 07356323c1.
2026-04-07 11:26:58 -07:00
Mike Cao b6341596bf Merge pull request #4048 from AlejandroGispert/fix/3981-login-email-case
fix: make signin email case-insensitive
2026-04-01 23:25:56 -04:00
Francis Cao 09e5196ea3 Goal/Funnel mobile friendly changes. Polish event-data filters UI/UX 2026-03-28 10:28:59 -07:00
Mike Cao fb785180d5 Merge branch 'dev' into feat-funnel-per-step-filters 2026-03-25 13:40:12 -07:00
Francis Cao 54dbfe1ca9 Support wildcard for goals report Closes #4086 2026-03-25 09:19:08 -07:00
Mike Cao a3f4750eae Send session replay data to Kafka when available instead of direct ClickHouse insert 2026-03-23 17:27:11 -07:00
Francis Cao aea373ca56 fix EventDataValues query 2026-03-23 16:22:06 -07:00
Francis Cao cd2b303e89 use team redis keys to resolve team gated features 2026-03-21 11:21:07 -07:00
Rudy B. a5f4210d84 fix(funnels): align FunnelResult export with actual returned shape 2026-03-16 22:11:34 +01:00
Rudy B. 96ae1de7fd feat(funnels): add per-step event property filters to schema and SQL queries 2026-03-16 21:51:15 +01:00
Francis Cao b34f8fa1dc improve revenue session query performance 2026-03-13 15:10:01 -07:00
Francis Cao d2d14f6de0 choose correct Metricsbar based on component type, fix metric types list based on component type, fix chart previews reanimating. fix hostname broken query on channel query 2026-03-12 16:18:52 -07:00
Francis Cao a58dadb428 remove old goals schema 2026-03-12 09:31:15 -07:00
Francis Cao 7c300fe3f8 fix performance metrics relational query 2026-03-11 16:31:32 -07:00
Francis Cao 843f104c15 update event-data to paged query 2026-03-11 10:36:50 -07:00
Francis Cao a28ea79228 saved session replays updates and polish 2026-03-09 15:00:36 -07:00
Francis Cao 1bffb3cbf3 saved session replay implementation checkpoint 2026-03-09 13:51:08 -07:00
Francis Cao 81fd8e63a1 Merge branch 'analytics' of https://github.com/umami-software/umami into dev 2026-03-09 11:27:35 -07:00
Francis Cao b9ccc5f53d alias event_name to resolve funnel bug 2026-03-09 11:21:49 -07:00
Mike Cao 25e60758b5 Exclude dashboards from boards list 2026-03-06 23:54:47 -08:00
Francis Cao acfd4462e3 Improvements to revenue screen 2026-03-06 09:58:43 -08:00
Francis Cao 1730d495e5 fix performance reset bug 2026-03-05 10:23:00 -08:00
Francis Cao f6a6d2cc31 performance updates checkpoint 2026-03-05 10:12:30 -08:00
Francis Cao 0e1d6cef6b refactor session replays to be per visit. sessions persist too long resulting in low-quality recordings 2026-03-03 22:59:25 -08:00
Francis Cao b2d45613b5 move stitching calculation to server side 2026-03-03 16:28:09 -08:00
Francis Cao 4ecef2e290 add better metrics to revenue page AOV/ARPU 2026-03-03 16:00:39 -08:00
Francis Cao 5e68661c5d session replay updates. add clickhouse implementation, filters, tables 2026-03-03 12:47:27 -08:00