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
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
Jorge Manrubia
6cfc0978a4
Columns touch the cards when the name/color changes
2025-10-31 10:40:45 +01:00
Jorge Manrubia
2a79cb413e
Remove cacheable concern, inline cache helper
2025-10-31 10:38:52 +01:00
Jorge Manrubia
9d548e77ef
Merge pull request #1418 from basecamp/sort-columns
...
Sort columns
2025-10-30 08:39:53 +01:00
Jorge Manrubia
51f07b286f
Merge pull request #1416 from basecamp/move-events
...
Add events for moving cards between columns
2025-10-30 08:38:51 +01:00
Jason Zimdars
8618d277c3
Typo
2025-10-29 16:31:48 -05:00
Jason Zimdars
a8fc78fa90
Update tests
2025-10-29 11:23:13 -05:00
Jorge Manrubia
3ada6f271a
Models for column positioning
2025-10-29 15:41:17 +01:00
Jorge Manrubia
85bee1af9b
Add events for moving between columns
2025-10-29 14:49:02 +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
cc84904d20
Fix time-dependent test
2025-10-28 16:26:03 +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
Stanko K.R.
a67fd7b082
Add missing quotation mark
2025-10-23 12:50:41 +02:00
Stanko K.R.
2ac2d4e0da
Add postpone and auto-postpone as Webhook triggers
2025-10-23 12:31:22 +02:00
Jason Zimdars
8ca9e80c6c
Settle on "Moved to Done"
2025-10-17 16:56:26 -05:00
Stanko Krtalić
6efeb03252
Create system user with account ( #1345 )
...
* Create system user with account
* Update tests
2025-10-17 20:23:34 +02:00
Jason Zimdars
8b4d706dd9
Merge pull request #1323 from basecamp/remove-closure-reasons
...
Remove closure reasons
2025-10-16 14:24:28 -05:00
Jason Zimdars
fe774efa6a
Merge pull request #1324 from basecamp/make-drafts-visible-again
...
Make drafts visible again
2025-10-16 14:15:52 -05:00
Jason Zimdars
c3a3f157a2
Merge branch 'main' into remove-closure-reasons
2025-10-16 13:55:13 -05:00
Jorge Manrubia
7f918ca73f
Fix: use user timezone when delivering notification emails
2025-10-16 06:35:27 +02:00
Jason Zimdars
6460c40f29
Update test
2025-10-15 20:41:09 -05:00
Jason Zimdars
da413e7540
Remove closure reasons
2025-10-15 16:15:56 -05:00
Jorge Manrubia
0666e504d6
Assign postpone_by to system when auto-cleaning
2025-10-15 15:08:41 +02:00
Jorge Manrubia
634270a1e8
Merge main into now-now-stamp and resolve schema conflicts
2025-10-15 14:05:27 +02:00
Jorge Manrubia
acdc7706ce
Add not now and closed as status filters
...
https://fizzy.37signals.com/5986089/cards/2342
2025-10-15 13:59:50 +02:00
Jorge Manrubia
9263cff3d5
Store and show the user that postpones cards
2025-10-15 13:44:49 +02:00
Mike Dalessio
71103400d6
Make sure the schema and schema cache are consistent with reality
...
There has been a bit of drift between actual schemas in production and
what's implied by the migrations.
And fixed some tests that were relying on everyone always watching.
ref: https://fizzy.37signals.com/5986089/cards/2322
2025-10-14 17:38:08 -04:00
Mike Dalessio
3399e45130
Introduce an "Identity" model to ease login
...
- New untenanted Identity and Membership models
- New `identity_token` cookie with path "/" holds state across tenants
We're not sure whether the untenanted database will be sqlite or
MySQL, and so I've been careful to minimize
- database reads, placing them behind etags and caching
- database writes, only writing when a new Session is created (login)
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.
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.
- the untenanted "login_help" page shows all linked memberships
- the jump menu shows all linked memberships (except the current)
Also introduced a utility script to populate existing employee
Identities, grouping accounts by email address.
2025-10-10 10:12:25 -04:00
Jorge Manrubia
7cb575b329
Exclude drafts from filtered cards
2025-10-07 10:32:10 +02:00
Jorge Manrubia
69be750eb9
Remove vcr record
2025-10-06 15:20:46 +02:00
Jorge Manrubia
969d971616
Use a more consistent approach to highligts dates
2025-10-06 15:17:28 +02:00
Mike Dalessio
c1a66e5ecb
test: Make sure tests pass on the weekend
2025-10-04 14:37:06 -04:00
Mike Dalessio
f26b0b7256
Rename accounts.tenant_id to external_account_id
...
and simplify the params to Account.create_with_admin_user
2025-10-03 17:21:01 -04:00
Mike Dalessio
8e0cb930af
Delete SignalId concerns from the codebase
...
including Signup for now, will rebuild it with just QB
2025-10-03 14:06:51 -04:00
Jorge Manrubia
6a0423bed3
Rename test
2025-10-03 19:06:45 +02:00
Jorge Manrubia
5e09944606
Separate card and collection watchers
...
https://fizzy.37signals.com/5986089/cards/375
2025-10-03 19:04:01 +02:00
Jorge Manrubia
4daeb2a33b
Make sure we clear the column when moving cards to another collection
...
Or it will be become not accessible
2025-10-03 16:19:42 +02:00
Mike Dalessio
fcd3c178ce
Account#slug uses the virtual "tenant" attribute
2025-10-02 16:44:24 -04:00
Mike Dalessio
320558919c
Rename LOCAL_AUTHENTICATION to OSS_CONFIG
2025-10-02 16:44:24 -04:00
Stanko K.R.
9ddfe4d803
Fix production Basecamp webhook format
2025-10-01 14:44:36 +02:00
Jorge Manrubia
1bb8de8564
Fix tests
2025-09-29 13:13:40 +02:00
Jorge Manrubia
402fe6ca39
No default columns for new collections
...
https://3.basecamp.com/2914079/buckets/37331921/todos/9104429380#__recording_9118363137
2025-09-28 22:04:06 +02:00