Commit Graph

3772 Commits

Author SHA1 Message Date
Stanko Krtalić 9b55ff241c Merge pull request #1124 from basecamp/fix-missing-default-value-for-delinquency-tracker
Fix crash due to missing default value
2025-09-17 11:53:41 +02:00
Stanko K.R. 661471e9e8 Fix crash due to missing default value 2025-09-17 11:47:46 +02:00
Jason Zimdars ae07de1ba1 Sort alphabetically 2025-09-16 14:29:02 -05:00
Jason Zimdars 4b64b17e38 Now that we have space on the left, move it there 2025-09-16 14:16:31 -05:00
Jason Zimdars b5d880c063 Merge pull request #1101 from basecamp/involvement-defaults
Involvement defaults
2025-09-16 14:16:24 -05:00
Jason Zimdars 1258b0e6e0 Merge pull request #1111 from basecamp/on-deck-entropic
Cards in On Deck adopt the same entropy behavior as ones in Doing
2025-09-16 14:15:47 -05:00
Stanko K.R. 34222b9717 Add missing actions 2025-09-16 20:23:50 +02:00
Stanko K.R. b49e8d2d34 Remove URL field from edit form 2025-09-16 20:18:35 +02:00
Jason Zimdars 2e9273c6ab Improve active state 2025-09-16 20:08:06 +02:00
Jason Zimdars 784d6cf690 Don't need to navigate this list
I doubt most collections will ever have more than a handul
2025-09-16 20:08:06 +02:00
Jason Zimdars daee271940 Style show view 2025-09-16 20:08:06 +02:00
Jason Zimdars a5b4c88d27 Style web hooks forms and list WIP 2025-09-16 20:08:06 +02:00
Stanko K.R. ce1d6469e7 Rename methods for clarity 2025-09-16 20:08:06 +02:00
Stanko K.R. 63e64a060d Use HTML5 validation for the URL 2025-09-16 20:08:06 +02:00
Stanko K.R. 5b3089e11e Change the icon if there are webhooks on a collection 2025-09-16 20:08:06 +02:00
Stanko K.R. dd3063b01d Simplify delinquency tracking 2025-09-16 20:08:03 +02:00
Stanko K.R. 02a421675f Scope Webhooks to Collections 2025-09-16 20:07:25 +02:00
Stanko K.R. 25b2daad93 Limit access to webhooks to admins 2025-09-16 20:04:20 +02:00
Stanko K.R. 1d192c9d42 Ignore low-volume webhooks for delinquency checks 2025-09-16 20:04:20 +02:00
Stanko K.R. fee25a49ea Periodically cleanup deliveries 2025-09-16 20:04:20 +02:00
Stanko K.R. 9d77b17b8c Remove encryption 2025-09-16 20:04:20 +02:00
Stanko K.R. d7db973397 Use the same timestamp from the body in the header
Else replay attack prevention doesn't work
2025-09-16 20:04:20 +02:00
Stanko K.R. df87ee8b35 Rename private IP ranges to disallowed IP ranges 2025-09-16 20:04:20 +02:00
Stanko K.R. b8317ce88d Fix indentation 2025-09-16 20:04:20 +02:00
Stanko K.R. 5e4d15d802 Remove concurrency limit
It won't be useful in practice for now, and we can always put it back in if the need arises
2025-09-16 20:04:20 +02:00
Stanko K.R. 1b09a39b1a Adhere to the redirect and params sanitization convention 2025-09-16 20:04:20 +02:00
Stanko K.R. 2fc9215b1d Add support for Basecamp, Campfire & Slack webhooks 2025-09-16 20:04:20 +02:00
Stanko K.R. 4879995013 Serialize events 2025-09-16 20:04:20 +02:00
Stanko K.R. 0bdbc5f5e8 Add abuse prevention 2025-09-16 20:04:18 +02:00
Stanko K.R. 4da69fb69f Move reactivation out of edit 2025-09-16 20:03:57 +02:00
Stanko K.R. 5c6cad057f Extract triggering logic into a concern 2025-09-16 20:03:57 +02:00
Stanko K.R. 9d717239e7 Dispatch Webhooks on event creation 2025-09-16 20:03:57 +02:00
Stanko K.R. 1930067e08 Allow Webhooks to be disabled 2025-09-16 20:03:57 +02:00
Stanko K.R. 9cfd1e43af Enable subscribing to specific actions 2025-09-16 20:03:57 +02:00
Stanko K.R. a515ea3b1f Create webhooks 2025-09-16 20:03:55 +02:00
Jorge Manrubia b5a2c4a25e Tidy up code a bit 2025-09-16 13:18:13 +02:00
Jorge Manrubia 6fe28c53e7 Extract common method 2025-09-16 13:06:01 +02:00
Jason Zimdars c56eb9ecd1 Cards in On Deck adopt some entropy behavior as ones in Doing 2025-09-16 13:06:01 +02:00
Jorge Manrubia 12d57678da Minor tweaks for default settings 2025-09-16 13:00:05 +02:00
Jason Zimdars 4b61c3ae30 Grant access to the creator and set their involvement to watching 2025-09-16 12:58:56 +02:00
Jorge Manrubia 7750b2e776 Merge pull request #1117 from basecamp/bundles-fixes
Fix problem where we can generate overlapping bundles due to flushing
2025-09-16 12:32:04 +02:00
Jorge Manrubia a6eb928688 Fix: update ends_at when flushing bundles
If not, it can happen that the bundlers remains in a delivered state
even when it is not covering its window anymore because it has been delivered.
2025-09-16 12:10:06 +02:00
Stanko Krtalić 0e2c7f7d4d Escape HTML everywhere where html_safe is used (#1114)
* Escape HTML everywhere where html_safe is used
* Mark search results as HTML safe at the attribute
2025-09-16 11:52:15 +02:00
Jorge Manrubia 97506c9a6c Remove trace 2025-09-16 11:22:44 +02:00
Jorge Manrubia 09325403e5 Add missing test (we were only testing this logic via the bundle test) 2025-09-16 11:22:14 +02:00
Mike Dalessio d5a4239d19 Rename the queenbee_id and signal_user_id columns
to be more generic for the open-source release.

Find the signal account via Account#external_account

Find the signal user via User#external_user
2025-09-15 13:57:53 -04:00
Andy Smith 60e515e462 Merge pull request #1098 from basecamp/collapsible-nav-sections
Collapsible nav sections
2025-09-15 12:54:21 -05:00
Jorge Manrubia 48f7f914dc Fix: the system to filter at the current view was broken after moving menu to turbo frame
https://fizzy.37signals.com/5986089/cards/1723
2025-09-15 17:07:09 +02:00
Jorge Manrubia 2e4138b585 Tie etag to sessions
So that we don't get CSRF token issues if sharing sessions in the same browser
2025-09-15 16:31:01 +02:00
Jorge Manrubia 3d8437bd5f Truncate summaries to keep within API limits
https://fizzy.37signals.com/5986089/cards/1739
2025-09-15 16:14:29 +02:00