Commit Graph

52 Commits

Author SHA1 Message Date
Jason Zimdars d46761d89c Set entropy to 1 year so cards don't close before they can play 2025-11-26 16:03:02 -06:00
Mike Dalessio fe6df7085f Finish the rollout of account_id to all core data models
Schema:
- add account_id to tables it was missing from
- make account_id a required column everywhere
- add [account_id] indexes, or add `account_id` to existing indices

Models:
- add `belongs_to :account` to all models (default to using a domain
  model's account whenever possible)
- add account_id in all the necessary fixtures
- add account_id to insert_all hashes
- pass account_id to a few initialize calls

Miscellaneous:
- update the import script to set account_id

Note that I'm not adding account_id to the join tables primarily
because I couldn't think of an easy way to populate it without making
it a full Join model, and that was more work than I have time to take
on right now.
2025-11-17 09:12:40 -05:00
Stanko K.R. 8fa9566c07 Update sign up 2025-11-17 09:12:40 -05:00
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
Kevin McConnell e9e68646e3 Fix this test without changing app code 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
Mike Dalessio e4011ef211 Update primary keys on customer data to UUIDs
- schema changes to primary and foreign keys
- fixture changes
- customer data models subclass AccountScopedRecord
- import script updated
2025-11-17 09:12:30 -05:00
Stanko K.R. 6858b96619 Simplify join codes 2025-11-17 09:12:17 -05:00
Stanko K.R. ba3f6b188e Add account_id to everything 2025-11-17 09:11:42 -05:00
Jason Zimdars 657905ff6c Update to match navigation changes 2025-11-10 13:44:42 -06:00
Jason Zimdars 52bf429772 Add some ordering words to help the flow 2025-11-05 16:38:04 -06:00
Jorge Manrubia 03a345609e Baseline replacing collection with board across code 2025-11-05 13:31:54 +01:00
Jason Zimdars 8c5006152c Add the rest 2025-11-04 12:51:38 -06:00
Jason Zimdars b554d8ce5a Add renaming gif 2025-11-04 11:35:46 -06:00
Fernando Álvarez 514c0f45a2 Migrate to fizzy.do 2025-11-04 13:17:10 +01:00
Jorge Manrubia ed518bac71 Remove unused var 2025-11-04 05:09:48 +01:00
Jorge Manrubia f104e31f3f Remove unused method 2025-11-04 05:06:18 +01:00
Jason Zimdars 2d197601b7 Add JF's fizzy orientation video 2025-11-03 17:47:30 -06:00
Jason Zimdars e1159a06aa Merge branch 'main' into seed-new-accounts 2025-11-03 17:10:09 -06:00
Jason Zimdars 370137919b Copy edits 2025-11-03 16:16:50 -06:00
Jason Zimdars fbf7b6cda7 No need to create a default collection
The playground is enough
2025-11-03 14:27:20 -06:00
Jason Zimdars 2df8e159ae Typo 2025-11-03 14:18:24 -06:00
Jason Zimdars 75e27c3e24 First pass a seeds based on JF's playground project
Videos TBD
2025-11-03 14:18:12 -06: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 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 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
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. c8843360fe Clean up and simplify magic links 2025-10-31 16:23:38 +01:00
Jorge Manrubia 2f6a639682 Prepare entropy code for the new auto postpone approach 2025-09-24 16:22:42 +02:00
Mike Dalessio e7dcefb25b Extract SignalUser and SignalAccount, and QB routes 2025-09-13 16:03:02 -04:00
Mike Dalessio 8f39c015ea Tests now pass with local authentication
This is the first step of a multi-step SaaS engine extraction.

Looking ahead to an open source release, we need to make sure that
local authentication is treated as an "official" option, and not just
a hack I added for Kevin to do load testing outside our DC. So this PR
gets to green, and adds a CI step in "local authentication" mode.

This all probably feels a little hacky to you, Reader, but the goal of
this change is to ease the next step, which will be extracting the
37id and Queenbee integrations into a proprietary "SaaS mode" engine.

In service of that goal, this commit simply wraps all of the dependent
code and tests with a conditional check on
`config.x.local_authentication`.
2025-09-13 15:21:00 -04:00
Mike Dalessio 9db98366c3 Set up a "cleanslate" seed that has no cards and no collections
and only a single user, david@37signals.com

ref: https://fizzy.37signals.com/5986089/collections/7/cards/1318
2025-08-06 17:35:55 -04:00
Mike Dalessio 57269b1b9c Allow local authentication with LOCAL_AUTHENTICATION=1
You can touch `tmp/local-auth.txt` to persist this setting.
2025-08-06 17:05:35 -04:00
Mike Dalessio 0b938a8375 Account.signal_account is optional again
Also delete the no-op user password migration that I accidentally
committed last month.
2025-08-06 14:04:42 -04:00
Mike Dalessio c8be7418c1 Account.signal_account is no longer optional 2025-07-02 12:04:26 -04:00
Mike Dalessio da69bd1689 Remove local authentication code 2025-07-02 11:59:21 -04:00
Mike Dalessio 141554c21c Make sure the beta env keeps local authentication (for now)
and more importantly, don't try to connect to the 37id database, which
will hang.

And finally, set the connect_timeout to something small so if we do
try to make a connection, it will fail quickly instead of hanging for
the default 120 seconds.
2025-06-20 16:17:02 -04:00
Mike Dalessio 73ba0c074f Introduce a Signup model and integrate with QB/37id
- Creates a Queenbee::Account
- SignalId peer classes work properly
- Set up a basic template for the account (closure reasons, workflow, collection)
- Load signal_id fixtures during `bin/setup --reset`
- Update signal_id to pull in the Fizzy product
2025-06-20 15:16:57 -04:00
Mike Dalessio 192c6036bc Account belongs to Signal::Account 2025-06-20 15:16:56 -04:00
Jorge Manrubia db86d17880 Refactor to introduce an entropy model
Instead of keeping two tracks of similar logic (auto-reconsider / auto-close).
2025-06-04 14:40:02 +02:00
Jorge Manrubia 91787a3523 Revamp entropy configuraiton
- Move both settings to its dedicated model entropy configuration
- A collection can have an entropy configuration, or will default to the account if not
2025-06-04 10:41:08 +02:00
David Heinemeier Hansson 6bbf68a4f9 The tenanted db is the account scope 2025-04-12 20:06:34 +02:00
Jorge Manrubia 723e6d94f5 Rename bubbles => cards 2025-04-09 14:50:58 +02:00
Jorge Manrubia de8a1120eb Move constant to new concern to group labels together 2025-04-04 12:24:11 +02:00