Commit Graph

463 Commits

Author SHA1 Message Date
Kevin McConnell 63ddb23585 Opt out of writer affinity on readings controller 2025-06-16 15:05:47 +01:00
Jorge Manrubia d9323fa3e7 Add flash notice when adding another card 2025-06-13 11:02:40 +02:00
Jorge Manrubia 303a3faea1 Merge pull request #607 from basecamp/drag-and-drop-cards
Drag and drop cards to move between doing/considering
2025-06-13 10:04:59 +02:00
Jorge Manrubia 7a4e59391b Add test 2025-06-13 09:55:37 +02:00
Jorge Manrubia 1175bf5dce Merge pull request #608 from basecamp/create-and-add-another
Add multiple cards quickly
2025-06-13 08:58:35 +02:00
Jorge Manrubia 31c851aa5b Use the same controller for publishing cards and for publishing and adding another 2025-06-13 08:55:30 +02:00
Mike Dalessio 5430355da6 Avoid losing access to a Collection when updating entropy
ref: https://37s.fizzy.37signals.com/collections/2/cards/820
2025-06-12 13:43:13 -04:00
Jason Zimdars 75d9ce0b82 Add multiple cards quickly 2025-06-12 11:59:09 -05:00
Jorge Manrubia 0cb3648785 Extract concern with common column-related code 2025-06-12 12:48:10 +02:00
Jorge Manrubia a979daddf3 Reuse filter scope 2025-06-12 12:39:33 +02:00
Jorge Manrubia 97fecc2bbe Extract method 2025-06-12 12:10:17 +02:00
Jorge Manrubia a5de3cf64b Replace with morph 2025-06-12 12:06:00 +02:00
Jorge Manrubia f58aaadba5 Drag and drop cards to move between doing/considering 2025-06-12 11:57:53 +02:00
Jorge Manrubia 1ab3877f65 Enable caching at intermediate proxies during traffic spikes
Implement suggestion by Kevin here https://github.com/basecamp/fizzy/pull/596#discussion_r2137474704
2025-06-10 21:52:33 +02:00
Jorge Manrubia 80c4e6fd92 Format 2025-06-10 11:19:13 +02:00
Jorge Manrubia a916fe4470 Add tests 2025-06-10 11:18:33 +02:00
Jorge Manrubia 5e3b5b6d7c Make avatars public so that they work in public collections 2025-06-09 15:03:21 +02:00
Jorge Manrubia 7013b7f378 Pagination working for public collections 2025-06-09 14:36:53 +02:00
Jorge Manrubia 87bbb79851 Make cards work without filters since those require an authenticated creator
I still need to make pagination work
2025-06-09 13:37:49 +02:00
Jorge Manrubia d349a4ee5f Filter by collection 2025-06-09 13:13:18 +02:00
Jorge Manrubia 28d1f104fd Basic rendering for public collections 2025-06-09 13:09:32 +02:00
Jorge Manrubia 486bc4a610 Basic UI to toggle collection publication status 2025-06-09 12:58:58 +02:00
Jason Zimdars bd5d17ff26 Clear indexed_by, too 2025-06-05 16:56:26 -05:00
Jorge Manrubia 7c657a2bd9 Support stalled filtering 2025-06-05 12:07:55 +02:00
Jorge Manrubia c52e49ef91 Merge branch 'main' into stalled-cards
* main: (33 commits)
  Rename helpers since they are not related to collections only anymore
  Simplify
  Reorder method
  Update brakeman
  Fix tests after removing the index action
  Format
  Extract partials
  Format
  Tidy up code
  We're not using this right now
  Wire up knob UI design
  Contain images
  Extract the header so we can explain in context
  Display users and invite on `account/settings`
  Link to workflows
  Link to account settings
  Update to use two-column layout, add title and nav
  Add comment
  Properly parameterize the field name
  Remove leftover console.log
  ...
2025-06-05 10:09:12 +02:00
Jorge Manrubia 540254def4 Fix tests after removing the index action
The show action makes more sense in the controller. Also, the filter
scoped was failing due to Rails raising on missing actions (because we
have deleted the index action). Inlining the concern fixes it and clarifies
where this action is implemented.
2025-06-05 09:12:07 +02:00
Jason Zimdars 6eece93f10 Merge branch 'knobs' into entropy-settings-ui
* knobs:
  Add comment
  Properly parameterize the field name
  Remove leftover console.log
  Correct the reserved area math
  Better a11y
  Connect the range slider
  Basic radio input working
  Expose button so you can delete drafts
  Save button should match card color
  `x` interferes with string entry, try `SHIFT+ENTER` to toggle checkboxes
  Remove unnecessary param and update condition
2025-06-04 20:34:04 -05:00
Jason Zimdars 638bc16b4b Display users and invite on account/settings 2025-06-04 15:16:24 -05:00
Jorge Manrubia 84fdeb4a5e Track events when reopening cards 2025-06-04 17:18:01 +02:00
Jorge Manrubia dd78ec2db2 Shortcut to grab the default entropy configuration 2025-06-04 12:56:11 +02:00
Jorge Manrubia 3c61fc3cdf Add screen to edit account settings to tweak default entropy configuration 2025-06-04 11:25:10 +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
Jason Zimdars b942794d15 Remove unnecessary param and update condition
This should have been removed in #581 when this was moved to a separate controller
2025-06-03 16:18:51 -05:00
Jason Zimdars ff403021cc Wire-up keyboard navigation
- Introduces a distinct controller and individual forms for each option so they behave like other pop-ups
- Adds `filter` and `navigable-list` behaviors
2025-06-03 11:05:39 -05:00
Jason Zimdars 902a99ca56 Merge branch 'main' into change-collection
* main: (25 commits)
  Add controller to retarget links
  Use more complete regexp
  dep: bundle update
  refactor: Extract a Card::Entropy concern
  Autolink emails and URLs at rendering time
  Remove the "mirror" storage service
  Update production storage to write to the Pure blob store
  Clean up the purestorage config, and add explanatory comments.
  Drop the action_text_markdowns table
  Mount mission control under `/admin/jobs`
  dep: add mission_control-jobs
  Flip the storage mirror to write to Pure as the primary
  Production mirrors Active Storage to `:purestorage`
  Make sure Sentry is configured for the beta env.
  Update lexical
  update lexical
  update lexical
  Create a distinct "beta" environment
  Revert "Patch for cards missing description"
  Add a kamal "ssh" alias
  ...
2025-06-02 09:34:01 -05:00
Mike Dalessio 704e215eca Production mirrors Active Storage to :purestorage
Also include a script to copy existing blobs to Pure.

Local is still the primary.

Beta will keep using local disk service for Active Storage because I
think there are constraints on source IPs for the Pure cluster.
2025-05-31 14:37:35 -04:00
Jason Zimdars c4ca5d34e4 Allow cards to be moved to another collection 2025-05-29 21:41:29 -05:00
Jason Zimdars d17134cb5c Detect platform and label the correct hotkey shortcut
Yes, Platform Agent is overkill for just this but there isn't a one-size JS solution for updating both input placeholders and other HTML text and we're likely to need it later for other things like displaying platform-specific PWA prompts.
2025-05-27 12:14:24 -05:00
Jason Zimdars 6ec0618211 Accidental 2025-05-22 16:21:04 -05:00
Jason Zimdars 7ee65608c9 Show user's activity right on their profile screen 2025-05-22 16:18:28 -05:00
Jorge Manrubia 09f5efc100 Reflect new commands in the history 2025-05-16 13:29:18 +02:00
Jorge Manrubia d49f503af8 Don't redirect if not needed 2025-05-16 13:29:18 +02:00
Jorge Manrubia 2510c1e0ac Major rework of the command/ai abstractions
- Big simplification of the overall workflow.
- Composite commands store their commands properly, these are undoable now.
- Child commands are excluded from history
2025-05-16 13:29:18 +02:00
Jorge Manrubia 0ff984dddd Handle errors in composite commands 2025-05-16 13:29:18 +02:00
Jorge Manrubia f2c80726a3 Handle redirecting in commands that require no confirmation 2025-05-16 13:29:18 +02:00
Jorge Manrubia 9b8ebf09ef Showing insights with a better foundation 2025-05-16 13:29:18 +02:00
Jorge Manrubia cd53ef59eb Better foundation for chat responses 2025-05-16 13:29:18 +02:00
Jorge Manrubia 413dfce5aa PoC running commands 2025-05-16 13:29:18 +02:00
Jorge Manrubia b7ee0b284d Chat responses 2025-05-16 13:29:18 +02:00
Jason Zimdars 0a500612da Just set the clear filter so restore_collections_filter_from_cookie can do the right thing 2025-05-13 08:24:48 -05:00