Commit Graph

754 Commits

Author SHA1 Message Date
Stanko K.R. 085c7fee2e Fix Rubocop offenses 2025-10-31 16:35:44 +01:00
Stanko K.R. ece9008459 Remove dead code 2025-10-31 16:28:08 +01:00
Stanko K.R. dd583206ee Allow changes to the Account name 2025-10-31 16:26:08 +01:00
Stanko K.R. 452c6a8373 Rework the email change flow to tie to memberships 2025-10-31 16:26:08 +01:00
Stanko Krtalić 98755844a1 Remove the internal API
* Bind sessions to identities
* Remove references to the identity token
* Move email changes to identity
* Move account menu into a turbo-frame
* Create tenants from a tenanted route
2025-10-31 16:26:08 +01:00
Jason Zimdars 5652e5699f Update design, logo, and copy 2025-10-31 16:26:08 +01:00
Stanko K.R. 201c3e27d3 Update tests for the Internal API 2025-10-31 16:26:08 +01:00
Stanko K.R. 79b012f319 Add Join Codes 2025-10-31 16:24:30 +01:00
Stanko K.R. c8843360fe Clean up and simplify magic links 2025-10-31 16:23:38 +01:00
Stanko K.R. 5cef4ffeb0 Add sign in flow using magic links 2025-10-31 16:22:12 +01:00
Mike Dalessio 1277cc065b Introduce untenanted Identity and Membership models
The new integration test shows the desired user-facing behavior, which
is to make it easy to login without a tenanted URL and to jump between
tenants.

Note that we track two things in the identity_token cookie: a signed
id, and the updated_at for the underlying Identity object. This allows
us to effectively cache on the Identity without having to hit the
database, by using an Identity::Mock object that is compatible with
etag and cache methods.
2025-10-31 16:22:12 +01:00
Jorge Manrubia 1a78de6f71 Fixes for refresh stream subscriptions
This will make the system listen for changes via the filtered
collections, when any, or via all the collections otherwise.
2025-10-31 12:25:05 +01:00
Jorge Manrubia 958deab2c7 Fix: problem with notifications not dismissing due to HTTP caching
The problem was related to tying the invalidation to the association of unread notifications. Its
cache key can remain constant as you read old notifications.

https://app.box-car.com/5986089/cards/2620/edit
2025-10-31 11:34:42 +01:00
Jorge Manrubia 12d461f8d1 Use last_active_at column for sorting since we are now touching updated_at for invalidating 2025-10-31 10:41:20 +01:00
Jorge Manrubia 3a9af623ef Leave etag as it was 2025-10-31 10:40:45 +01:00
Jorge Manrubia 6cfc0978a4 Columns touch the cards when the name/color changes 2025-10-31 10:40:45 +01:00
Jorge Manrubia ae4a07f843 Collections touch the cards when the name changes 2025-10-31 10:40:45 +01:00
Jorge Manrubia d0c33b8550 Add http caching for the new columns/edit card resource 2025-10-31 10:40:45 +01:00
Jorge Manrubia be6708065e No need to invalidate cache on columns since we load those with turbo frame now 2025-10-31 10:40:44 +01:00
Jorge Manrubia f0c5285fb0 Move column editing to stream so that we can remove the invalidation concern 2025-10-31 10:40:28 +01:00
Jorge Manrubia 1d12ecc65b Scope collections to column 2025-10-31 10:40:28 +01:00
Jorge Manrubia b0e5a5ccb5 Some fixes for HTTP caching not being invalidated properly 2025-10-31 10:40:26 +01:00
Jorge Manrubia 2a79cb413e Remove cacheable concern, inline cache helper 2025-10-31 10:38:52 +01:00
Jorge Manrubia c1936abed9 Reuse concern 2025-10-31 10:37:36 +01:00
Jorge Manrubia bcac3fad10 Move perma collection picker to turbo frame 2025-10-31 10:37:36 +01:00
David Heinemeier Hansson 5b70320a6b We don't need to be fancy here
Redirect should be fine
2025-10-30 14:42:48 +01:00
David Heinemeier Hansson 217b860bb8 Style 2025-10-30 14:41:07 +01:00
David Heinemeier Hansson 8b508fadea Do a proper redirect to dismiss the lightbox on deletion 2025-10-30 14:36:38 +01:00
Jorge Manrubia 9d548e77ef Merge pull request #1418 from basecamp/sort-columns
Sort columns
2025-10-30 08:39:53 +01:00
David Heinemeier Hansson 7bebea07b4 Simplify the error handling
Just use normal HTML + static CSS
2025-10-29 17:39:57 +01:00
Jorge Manrubia 68ef01114c Not needed anymore since we moved the streams to the templates 2025-10-29 16:43:39 +01:00
Jorge Manrubia 5eb5e4b007 Add buttons to move columns left and right 2025-10-29 16:15:25 +01:00
David Heinemeier Hansson a0c6b8394a Split by layering 2025-10-29 13:51:41 +01:00
David Heinemeier Hansson b8a0660d7c Fix indention 2025-10-29 13:50:19 +01:00
David Heinemeier Hansson d9ebc8ace0 We need to upstream this fix to turbo-rails
If page refreshes and view transitions clash for us, they'll clash for
all.

cc: @jorgemanrubia
2025-10-29 13:47:51 +01:00
David Heinemeier Hansson 716e5ee506 Mark for upstreaming 2025-10-29 13:41:11 +01:00
David Heinemeier Hansson 2ed10b23c4 Aesthetics 2025-10-29 13:37:14 +01:00
David Heinemeier Hansson 60a429e463 Use more naturally-sounding ensures
These match Basecamp and the existing predicate methods
2025-10-29 13:33:34 +01:00
Jorge Manrubia aa1ffb3357 Remove AI summaries and semantic searches
We were not using either. We can restore if we revisit.
2025-10-29 11:55:32 +01:00
Jorge Manrubia 9317a82570 Remove Fizzy Ask
Since we are not going to ship it
2025-10-27 14:45:30 +01:00
Jorge Manrubia 392bdae316 Rename highlights -> summary 2025-10-25 20:06:57 +02:00
Jorge Manrubia d6c7fb2084 Remove unused constants / controller
This came from the previous 3-column times
2025-10-25 18:50:37 +02:00
David Heinemeier Hansson eebda8bfd2 No longer used 2025-10-24 12:58:34 -07:00
Jason Zimdars f5384baf63 Boxcar -> BOXCAR 2025-10-23 15:05:36 -07:00
Kevin McConnell decd01c8d0 Extend public caching to 30 seconds
Up from the previous 5 seconds. It's still short enough that the pages
shouldn't feel stale, but it further reduces the number of requests that
will reach the app.

Also moved this into a shared concern so we can adjust the caching rule
in one place.
2025-10-23 11:48:12 -07:00
Jason Zimdars ed9cede24b These use the old collection link format 2025-10-22 17:12:43 -07:00
Jason Zimdars d3a20060e2 Redirect to collection after publishing a card 2025-10-22 17:07:24 -07:00
Jason Zimdars 81618d758e Avoid capitalizing "board" 2025-10-22 13:49:23 -07:00
Jason Zimdars c3a3f157a2 Merge branch 'main' into remove-closure-reasons 2025-10-16 13:55:13 -05:00
Jorge Manrubia f4bd7d7a00 Remove unnecessary assignment 2025-10-16 16:05:01 +02:00