Commit Graph

691 Commits

Author SHA1 Message Date
Jason Zimdars a6e9e51071 Merge branch 'main' into web-push
* main: (28 commits)
  Clean up the /scripts directory
  Prevent recursion when invoking AI
  Bump sqlite3 from 2.7.2 to 2.7.3
  Port over Jeremy's fix for slow uploads
  .gitignore log files and portfolio's local storage
  Drop Current.account and just use Account.sole
  Use the utf8-patched mysql driver
  Call blob.preview for previewable attachments
  Make sure the image variants we use are preprocessed
  Add /user command
  Make sure it doesn't infer custom abbreviations when matching user names
  Script to load prod db in development
  Update Signup to use the queenbee_id for the tenant name
  Bump cache version
  Make sure it uses latest bundler to prevent error due to mismatch
  Invalidate cache
  Update ruby
  Update bundler to prevent error on lower version
  Update bundler to prevent error on lower version
  Resolve stages
  ...
2025-07-21 11:03:56 -05:00
Mike Dalessio 8e13ce5b78 Drop Current.account and just use Account.sole
I had reintroduced this in dacb53b8 after David removed it in
6bbf68a4, but now I agree we don't need it.

Also, fix a CORS error when trying to redirect a user to an untenanted
path after login (see
https://fizzy.37signals.com/5986089/collections/2/cards/1032).
2025-07-20 13:00:09 -04:00
Jorge Manrubia 39c7a54ad6 Add /user command
The LLM was relying on it. Having it missing resulted in a stack overflow error!

https://fizzy.37signals.com/5986089/collections/7/cards/1135
2025-07-18 17:59:02 +02:00
Jason Zimdars 6524363aec Merge branch 'main' into web-push
* main:
  Update dependencies
  dep: bump to ruby 3.4.5
  Switch to docker-dev
  Cache needs to include publication key
  First iteration on adding new users, from the console.
  Fix clear button position in Safari
  Give them screen reader labels
  Not needed
  Add missing `lang` attribute
  Restore missing aspect ratio on the perma
  Give the field more space when typing on mobile
  We're only concerned with truncating the placeholder, scope to that
  Make sure users can't login from launchpad if they're deactivated
  Destroy the SignalId::User when a user is deactivated
2025-07-17 14:31:05 -05:00
Mike Dalessio e69023993c Make sure users can't login from launchpad if they're deactivated
Just in case the SignalId::User deletion failed.
2025-07-15 18:47:38 -04:00
Jason Zimdars 47324eb45a Fix routes to manifest and service-worker, rename controller 2025-07-15 16:42:47 -05:00
Jason Zimdars 8f47db3ced Add service worker and subscriptions controllers 2025-07-15 15:22:32 -05:00
Jason Zimdars e77710c6b6 Cards inherit their collection's publication status 2025-07-09 10:08:47 -05:00
Jorge Manrubia 919211244b Review the code to move cards
- Scope accessed records
- Keep consistency by moving events too
2025-07-04 19:56:48 +02:00
Jorge Manrubia fef9e74503 Avoid duplicated queries and, instead, bump the last ones 2025-07-03 21:52:58 +02:00
Jason Zimdars 2f566bcaa2 Merge branch 'main' into jz-7-3-25
* main:
  Update lexical to fix problem with multi file uploads
  Update to include fix for Safari
  Broadcast when all notifications are cleared
2025-07-03 11:48:25 -05:00
Mike Dalessio 53ebb509d8 Broadcast when all notifications are cleared
Then make the turbo response to clearing all notifications a no-op.

This has the bonus side effect of properly clearing the notifications
try on all open pages.

ref: https://fizzy.37signals.com/5986089/collections/2/cards/796
2025-07-03 12:05:41 -04:00
Jason Zimdars 24fa687b2d Merge branch 'main' into jz-7-3-25
* main: (57 commits)
  Rename /add_card => /add
  Cards' "stalled" metric is reset when reconsidered
  Use composite commands even for single commands since they can carry custom titles, which is what we want with AI
  Fix merge issues
  More prompt tweaks
  Support completed by via natural language
  Add filter pill for completed by
  Add "close by" filter
  Add /reopen command
  Improved support to act on cards via ID
  Refine prompt
  Add more tests and fix failing ones
  Add clarifying comment
  Return standalone command when only one command
  Extract attachable concerns
  Format
  Update lexical
  Use your user gid to resolve yourself, so that this is not ambiguous
  Support trailing spaces in inserted commands
  Disable attachments in the terminal
  ...
2025-07-03 11:04:15 -05:00
Jorge Manrubia f18b79d464 Rename /add_card => /add 2025-07-03 17:23:56 +02:00
Jason Zimdars 1dfe541bd4 Allow deselecting a Workflow 2025-07-03 10:11:36 -05:00
Jason Zimdars 277965e8dc Don't show duplicate searches 2025-07-03 09:51:44 -05:00
Jorge Manrubia 702169384c Use composite commands even for single commands since they can carry custom titles, which is what we want with AI 2025-07-03 16:26:52 +02:00
Jorge Manrubia bd7b9a442e Merge branch 'main' into fizzy-do-prompts
* main: (57 commits)
  Untenanted access in authenticated controllers should request auth
  dep: bundle update
  dep: update Rails
  dep: bump AR::Tenanted
  Clean up the cable meta tag
  Fix activity feed pagination to fetch on demand
  Create a "published" event if a card is created published
  Scatter Honcho seeds over a 30 day period
  Fix the PWA manifest to use slugged URLs
  Collection publication edits render a turbo frame
  Collection workflow edits render a turbo frame
  Collection entropy config edits render a turbo frame
  Use automatic sizing where supported
  Introduce a separate controller for collection entropy config
  Add `card_id` to index
  Move to scope and inline method
  Prefer modern syntax
  Fix that stage should be visible above card background
  Indicate opens menu
  Hide dialog targets from screen readers when closed
  ...

# Conflicts:
#	db/schema.rb
#	db/schema_cache.yml
2025-07-03 16:11:00 +02:00
Mike Dalessio 0c341d14e1 Untenanted access in authenticated controllers should request auth 2025-07-03 10:05:55 -04:00
Jorge Manrubia ac2400a657 Add /reopen command 2025-07-03 13:52:12 +02:00
Mike Dalessio ccf961dad2 Merge pull request #696 from basecamp/flavorjones/collection-workflow-save
Collection edit page uses turbo frames to avoid resetting the user access form
2025-07-02 22:28:51 -04:00
Mike Dalessio 4589360dd1 Collection publication edits render a turbo frame
so we don't disturb the rest of the edit page.
2025-07-02 22:25:09 -04:00
Mike Dalessio 0799ad050b Collection workflow edits render a turbo frame
so we don't disturb the rest of the edit page.
2025-07-02 22:24:49 -04:00
Mike Dalessio 263bc486ed Collection entropy config edits render a turbo frame
so we don't disturb the rest of the edit page.
2025-07-02 22:24:41 -04:00
Mike Dalessio 36727ba5ea Introduce a separate controller for collection entropy config
which opens the door to rendering turbo frames in the responses to
collection edits.
2025-07-02 17:41:29 -04:00
Jason Zimdars 27aaa815c7 Prefer modern syntax 2025-07-02 16:12:37 -05:00
Jason Zimdars 25a33fb9c8 Merge branch 'main' into card-steps
* main: (22 commits)
  Fix that stage should be visible above card background
  Indicate opens menu
  Hide dialog targets from screen readers when closed
  Mark up as heading for screen reader navigation
  Copy for screen readers
  Don't hide the input so it's accessible to screen readers
  Point skip links to correct anchor, don't navigate with turbo
  There aren't any `li` children so just use `div`
  Use headings for screen reader navigation
  Use `h3` for individual cards in collection view
  Make collection title `h1` for screen reader navigation
  Esc should not propagate when closing dialogs
  squash! Remove session controller actions other than delete
  Screen reader: Use heading for comments navigation
  Remove the invitation codes for now
  Remove session controller actions other than delete
  Correct label for field
  Style
  Screen reader: De-duplicate links for each person in account settings
  Account.signal_account is no longer optional
  ...
2025-07-02 16:09:49 -05:00
Jorge Manrubia 15eb09a1fe Close should show up before than clear for "cl" 2025-07-02 23:08:52 +02:00
Mike Dalessio 2377770ef6 Stay on the collection edit page after changing workflow
ref: https://fizzy.37signals.com/5986089/collections/2/cards/852
2025-07-02 16:53:53 -04:00
Jorge Manrubia b469caca33 Add command to show help menu
cc @jzimdars
2025-07-02 22:25:57 +02:00
Jason Zimdars ca70d47576 Copy edits 2025-07-02 15:08:58 -05:00
Jorge Manrubia ddb0470480 Format 2025-07-02 21:26:24 +02:00
Jorge Manrubia cee3925057 Add all commands 2025-07-02 21:26:10 +02:00
Mike Dalessio fa1c5f7279 Remove session controller actions other than delete
and do some general cleanup around sessions controllers and the
sign_in_as test helper
2025-07-02 15:03:28 -04:00
Jason Zimdars f4218d9403 Merge branch 'main' into card-steps
* main:
  Script to create Users for existing 37id accounts
  Configure Mission Control to skip tenanted authentication
  Script to update URLs and attachments in cards and comments
  Make sure seeds are creating sluggable tenants
  Script to rename tenants after the QB account id
  Update the signups tests to work with untenanted paths
  Update the Command classes to handle paths with account slugs
  Update bin/dev to point at the new tenant URLs
  Patch Active Storage controllers to generate slugged URLs
  Point Action Cable at the slugged cable endpoint
  Extract pieces from the tenanting initializer
  Patch Turbo to use the request script name
  Use the new AR::Tenanted convention for action cable connections
  Use a tenant resolver that recognizes the account slug
  dep: Use the patched AR::Tenanted branch
2025-07-02 11:59:40 -05:00
Mike Dalessio da69bd1689 Remove local authentication code 2025-07-02 11:59:21 -04:00
Jason Zimdars f02215c5b7 Add steps to cards 2025-07-01 20:05:20 -05:00
Mike Dalessio b8368de002 Update the Command classes to handle paths with account slugs 2025-07-01 15:56:14 -04:00
Jorge Manrubia 9e45cf625d Remove caching so that it doesn't interfere when working on design 2025-07-01 18:31:51 +02:00
Jorge Manrubia 6440e22030 To be used 2025-07-01 18:31:26 +02:00
Jorge Manrubia b2f9bf1f2e Stub for command prompts 2025-07-01 18:27:38 +02:00
Jorge Manrubia cae01b777e Add prompt for tags too 2025-07-01 14:58:24 +02:00
Jorge Manrubia 93be9e945f Support user prompts in Fizzy do, move parsing logic to context 2025-07-01 14:06:39 +02:00
Jorge Manrubia 179ae45bf3 Show command errors
I went with placing htis logic at the command level since it plays well with the composite structure, where you don't know whether you are handling one command or many commands, and you want to aggregate all the errors. I didn't leverage the existing support with rails' model errors because that customizing those message is cumbersome (either i18n or using custom validation logic for everything).
2025-06-30 23:10:39 +02:00
Jason Zimdars 1cb9ccdf15 Comparing params is fragile, use id for saved filters 2025-06-26 17:57:30 -05:00
Jason Zimdars b862d5909a Keep the current filter params after deleting a saved filter so you can change your mind 2025-06-26 10:19:24 -05:00
Jason Zimdars ae12a7294c New UI for exposing filter options and saving/deleting them 2025-06-25 19:00:47 -05:00
Jason Zimdars 03dd82bcfc Merge branch 'main' into track-collection-access
* main: (45 commits)
  Make sure QB subscriptions reload properly in dev
  Refine prompt to avoid invalid JSON
  Format
  Format
  Add stemming to search tables
  Refine prompt to avoid invalid JSON
  Make sure it generates valid JSON
  Execute raw SQL to see if this is making production crash
  Just use drop table
  schema update
  Remove VCR record
  Fix tests
  recreate vcr fixtures
  Fix schema, it was missing a FK
  Favor search over terms
  Remove insights, default to keyword search
  Remove semantic searches
  Add search command
  Use clip instead of hidden for body overflow
  Polish up the search results page
  ...
2025-06-25 09:54:58 -05:00
Jorge Manrubia 1ce8d8bff0 Merge pull request #630 from basecamp/search-page-markup
Standalone search screen
2025-06-25 07:02:06 +02:00
Kevin McConnell 5a9f9692f2 Track collection access when viewing cards 2025-06-24 15:48:05 -05:00