David Heinemeier Hansson
1d00a53400
Provide etag for pins too
2025-11-03 16:53:49 +01:00
David Heinemeier Hansson
418548b9ba
More efficient query for watched_by? and use etag for the status
2025-11-03 16:51:21 +01:00
David Heinemeier Hansson
995dcfe8e6
Simplify setup and pull query-prevention into model
2025-11-03 15:00:15 +01:00
Jorge Manrubia
42a8b52fa1
Don´t show draft banner if the card is not filled
2025-11-03 14:47:29 +01:00
Jorge Manrubia
2d1619fd34
Merge pull request #1455 from basecamp/fix-broadcasts
...
Don't broadcast card changes when touching activity spikes
2025-11-03 14:36:36 +01:00
Jorge Manrubia
c007176ed0
Don't broadcast card changes when touching activity spikes
...
We do this from jobs, so there is no request id to discard the page refresh in the client. We
don't want page refreshes in these cases, as those are normally handled via the change that
originated this detection, in any case.
2025-11-03 14:35:06 +01:00
David Heinemeier Hansson
992b149395
No longer used
2025-11-03 14:29:01 +01:00
Jorge Manrubia
37ce2c98d1
Refresh the cards perma dynamically with page refreshes
2025-11-03 13:04:21 +01:00
Jorge Manrubia
5f7feed6c4
Refresh activity-related bits in the card perma dynamically:
...
- Remove entropy bubble
- Refresh the auto close notice https://app.box-car.com/5986089/cards/2683
2025-11-03 12:48:57 +01:00
Jorge Manrubia
1d6cc37bb4
Add missing blank content validation
2025-11-03 10:57:35 +01:00
Jorge Manrubia
9d4dd3b00e
Remove "save as draft"
...
Removes the creating status completely as well as the abandoned cards system. It will
always resume drafts if they exist, for a given collection and user.
https://app.box-car.com/5986089/cards/2489
2025-11-03 09:32:29 +01:00
Jorge Manrubia
825184ab1b
Memoize since these are invoked several times
2025-11-03 07:30:23 +01:00
David Heinemeier Hansson
c834cce504
Simplify join code creation and validation and test controller
...
cc @monorkin
2025-11-02 15:58:33 +01:00
David Heinemeier Hansson
f09183bc9a
Don't want to balloon txn, but also don't want to end up with a state with broken data
2025-11-02 15:46:05 +01:00
David Heinemeier Hansson
2c9845eb62
No need to hide that the top-level entropy is tied to the Account
2025-11-02 15:24:55 +01:00
David Heinemeier Hansson
a1543f2660
Inline anemic helper method with no additional explaining purpose
2025-11-02 14:20:07 +01:00
David Heinemeier Hansson
d6c88736bd
No need for validation when we have rely on update!/create! on db constraints
2025-11-02 14:19:26 +01:00
David Heinemeier Hansson
966aa51a37
Get rid of unnecessary touch jobs
...
touch_all on 10K cards took 6ms in testing
2025-11-02 14:15:53 +01:00
David Heinemeier Hansson
105585c26c
Merge pull request #1451 from basecamp/entropies
...
Entropy::Configuration -> Entropy
2025-11-02 13:59:43 +01:00
David Heinemeier Hansson
2c4159d11a
Style
2025-11-02 13:29:07 +01:00
David Heinemeier Hansson
fb395c8b07
Keep all entropy definitions together in the concern
2025-11-02 13:17:55 +01:00
David Heinemeier Hansson
b3474ec97d
Rename Entropy::Configuration to just Entropy
2025-11-02 13:11:41 +01:00
Jorge Manrubia
4e2f56f4c0
Extract concern, add tests
2025-11-02 09:44:50 +01:00
Jorge Manrubia
2ec5d37947
Add support for remote videos too
2025-11-02 09:38:48 +01:00
Jorge Manrubia
ac507aa754
Add support for remote images in the seeding system
2025-11-02 09:24:38 +01:00
Jorge Manrubia
e726335833
WIP for seeding accounts
2025-11-02 00:05:38 +01:00
Jason Zimdars
ccbc7cd416
Need a special human name for this one, move to a method
2025-10-31 16:41:50 -05:00
Mike Dalessio
18f70c3312
Do not bundle notifications for inactive users
...
https://app.box-car.com/5986089/cards/2671
2025-10-31 14:51:09 -04:00
Stanko Krtalić
ff5ca7d9b8
Merge pull request #1436 from basecamp/fix-cookie-clash-with-old-path-scoped-session-token
...
Delete scoped session tokens when encountered
2025-10-31 19:14:03 +01:00
Stanko K.R.
49d865ffd1
Delete scoped session tokens when encountered
2025-10-31 19:00:37 +01:00
Jason Zimdars
c7b520180c
Fussy capitalization for shared text
2025-10-31 11:18:25 -05: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.
2be8f1bbb2
Replace context with simple join_code
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
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
d0215e9fd2
Introduce untenanted Identity and Membership models
...
and a script to populate these tables for existing 37id users
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
2a083bd82f
Fix typo
2025-10-31 11:09:41 +01:00
Jorge Manrubia
3ee4eb731a
Comment
2025-10-31 11:00:19 +01:00
Jorge Manrubia
19b286180f
Rename method
2025-10-31 10:41:22 +01:00
Jorge Manrubia
f437159da0
Reorder
2025-10-31 10:41:22 +01:00
Jorge Manrubia
214b465da1
This method should be private
2025-10-31 10:41:22 +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
3c8c4abc17
Invalidate cards when entropy configuration changes
2025-10-31 10:40:45 +01:00
Jorge Manrubia
75b18d8b3b
Touch cards when column is destroyed too
2025-10-31 10:40:45 +01:00