Donal McBreen
fc56ad9d7c
Combine uuid-old and uuid branch changes
...
- Switch to binary 16 for UUID keys
- Remove AccountScopedRecord base class, all model use binary uuids now
- Fix the search sql to serialize uuids properly
- Patch the MySQL schema dumper to output binary lengths
2025-11-17 09:12:34 -05:00
Donal McBreen
05a7ec84e2
Make search tables work with UUID references
2025-11-17 09:12:31 -05:00
Kevin McConnell
63f8a9af78
Deterministic fixture UUIDs
2025-11-17 09:12:31 -05:00
Kevin McConnell
1959e15f7e
Fix more tests
...
These are mainly because the fixture's UUIDs are deterministic rather
than time-sortable, and more places where we need to correct the fixture
IDs as well.
2025-11-17 09:12:31 -05:00
Kevin McConnell
c97ea9131f
Fix some failing Tests
...
- Add explicit IDs to fixtures to avoid getting ints
- Remove ordering dependencies in assertions
2025-11-17 09:12:31 -05:00
Stanko K.R.
6858b96619
Simplify join codes
2025-11-17 09:12:17 -05:00
Stanko K.R.
2f62d91bc3
Remove all special charaters when stemming
2025-11-17 09:12:17 -05:00
Stanko K.R.
1b8828da1d
Add tests for the highlighter and stemmer
2025-11-17 09:12:17 -05:00
Donal McBreen
3aa4a1a562
Shard the search index into 16 tables
...
Create search_index_0 to search_index_15 tables and shard each index by
account id. MySQL has no ability to pre-filter fulltext indexes by
another field so this is the best bet for improving performance.
Each fulltest index internally creates 11 sub tables (see
https://dev.mysql.com/doc/refman/8.4/en/innodb-fulltext-index.html ) so
actually we have 192 tables in total here.
The search_index table name is generated dynamically based on the
account_id.
2025-11-17 09:12:17 -05:00
Donal McBreen
996140e053
Add non transactional search tests
...
MySQL fulltext indexes are only updated on commit. Use a single test in
each file to avoid repeated setup.
2025-11-17 09:12:17 -05:00
Stanko K.R.
32d96db7d9
Replace card id with card number
2025-11-17 09:12:15 -05:00
Mike Dalessio
fa964240e9
Get account test passing
2025-11-17 09:11:57 -05:00
Mike Dalessio
ff8d786144
Filter boards by account
2025-11-17 09:11:57 -05:00
Mike Dalessio
dbf66f9a50
Constrain user queries to the current or relevant account
2025-11-17 09:11:57 -05:00
Mike Dalessio
895f5514b5
rubocop fixes
2025-11-17 09:11:52 -05:00
Stanko K.R.
8b1ca5e7fb
Remove unused account associations
2025-11-17 09:11:42 -05:00
Mike Dalessio
7bd697f75e
test: Skip search tests, fix others, and skip a few hard ones
2025-11-17 09:11:42 -05:00
Mike Dalessio
362427b383
More changes to get setup and tests to run
2025-11-17 09:11:42 -05:00
Mike Dalessio
d41d50d52b
Account.sole → Current.account
...
and some other de-tenant changes, including removing the controller
tenanting concerns
2025-11-17 09:11:40 -05:00
Jorge Manrubia
eea9afb639
Fix: dismiss grouped notifications by card from the notifications tray
...
This also splits the templates into two: index and tray, since the URL now changes.
2025-11-14 12:58:24 +01:00
Jorge Manrubia
0d55c966b3
Fix: setting board entropy was changing the account entropy when not present
2025-11-14 12:10:54 +01:00
Jorge Manrubia
80d309cd22
Keep current logical names for colors
...
So that the db values are not tied to the specific CSS
2025-11-14 11:44:04 +01:00
Jorge Manrubia
956a7aafad
Revert "Revert "Color a11y""
2025-11-14 11:24:55 +01:00
Jorge Manrubia
6413570985
Revert "Color a11y"
2025-11-14 11:21:52 +01:00
Jorge Manrubia
06b762c0a8
Move default color to the column
2025-11-14 11:15:09 +01:00
Jorge Manrubia
b1e087e7c9
Introduce a proper color poro to represent colors
...
Instead of managing a hash throgh the app
2025-11-14 11:09:39 +01:00
Andy Smith
2b0fd0909d
Fix test
2025-11-13 17:32:36 -06:00
Andy Smith
8ad0d05750
Add column color names
2025-11-13 17:30:01 -06:00
Jorge Manrubia
56a85c261b
Remove plain text mentions
...
They can cause duplicates
https://app.fizzy.do/5986089/cards/2874
Closes #https://github.com/basecamp/fizzy/pull/1549
2025-11-11 10:01:59 +01:00
Jorge Manrubia
b13823305b
Always include assignees when notifying of published cards
2025-11-10 13:08:51 +01:00
Jorge Manrubia
b686936230
Fix: extract mentions when publishing cards
...
This wasn't working when creation and publishing happened on separated instances
of the same record, which is what happens when you edit a draft and then you
publish it
https://app.fizzy.do/5986089/cards/2835/edit
2025-11-10 13:08:29 +01:00
Jorge Manrubia
3a831e390f
Clean watchers when losing access to board
...
https://app.fizzy.do/5986089/cards/2814
2025-11-06 22:02:12 +01:00
Jorge Manrubia
676c2a42fe
Always use the creator name for the plain text form
...
You does not make sense for webhooks
2025-11-06 14:16:01 +01:00
Jorge Manrubia
9291e64deb
Add test for weebhook delivery test
2025-11-06 11:21:22 +01:00
Jorge Manrubia
82adcecfb1
Add some sanity tests for event descriptions
2025-11-06 11:05:42 +01:00
Jorge Manrubia
2af7a9f402
Merge pull request #1498 from basecamp/rename-boards
...
Rename collections => boards
2025-11-05 18:50:49 +01:00
Jorge Manrubia
3b34703db3
Make sure that only admins or card creators can delete cards
2025-11-05 16:37:43 +01:00
Jorge Manrubia
193cc26a98
Make sure only admins or collection creators can toggle the all access setting
2025-11-05 15:51:19 +01:00
Jorge Manrubia
39ec6cf062
Replace collection with board in the code, tests green
2025-11-05 13:41:12 +01:00
Jorge Manrubia
03a345609e
Baseline replacing collection with board across code
2025-11-05 13:31:54 +01:00
Stanko K.R.
cfdd7ab1cb
Prohibit duplicate memberships
2025-11-05 11:57:40 +01:00
Jason Zimdars
1f1303b7a6
Don't test for the draft status filter, it's gone
2025-11-04 21:59:55 -06:00
Mike Dalessio
739d77e0c6
Only include active users in Lexxy prompts
...
Specifically, exclude users that are inactive or with role "system".
ref: https://app.fizzy.do/5986089/cards/2760
ref: https://app.fizzy.do/5986089/cards/2789
2025-11-04 18:48:59 -05:00
Stanko K.R.
fd7a9330e8
Remove email_address & password_digest from User
2025-11-04 07:20:16 +01:00
Jason Zimdars
e1159a06aa
Merge branch 'main' into seed-new-accounts
2025-11-03 17:10:09 -06:00
Jason Zimdars
fbf7b6cda7
No need to create a default collection
...
The playground is enough
2025-11-03 14:27:20 -06: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
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
733bb4e6d7
Rename tests
2025-11-03 07:25:48 +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