Skip to content

Conversation

@paulfitz
Copy link
Member

@paulfitz paulfitz commented Oct 6, 2025

Context

This is an initial implementation of the "crowdsourcing" idea in #1837 and #1829. It is very limited, and marked as an experiment.

In short, you can chose to collect "suggestions" for a document by setting a flag. If you do so, then anyone can fork your document, make some changes, and suggest those changes to you by clicking a button. All suggested changes to a document are visible on a special "suggestions" page on the document. You can click to accept changes you like, or dismiss those you don't. For now only very unambitious changes will work (changes to strings and numbers).

How to try it out

On document settings you will now see a flag for enabling suggestions.

Once you've set this flag, there is a new "Suggestions" page in the tool section, initially empty.

If someone makes a fork of your document, they see a "Suggestions" page, which shows the changes they have made relative to your document, and lets them "suggest" that to you.

When they suggest it, they see some status information, and you see their suggestion on your "trunk" document.

The rendering of differences will need to improve! That isn't in the scope of this PR though, it is separate work. The data needed to make better differences is available, you can see more context if you click the little arrow near the table name.

Related issues

Has this been tested?

  • 👍 yes, I added tests to the test suite
  • 💭 no, because this PR is a draft and still needs work
  • 🙅 no, because this is not relevant here
  • 🙋 no, because I need help

Implementation details

Not much new is added to Grist. This is built on the existing forking mechanism. An extra table is added in the home db called proposals. Each row stores the kind of results the /compare endpoint gives for a pair of documents, serialized in json. (This could get big for big changes! That would be bad. Future option: don't store content of big changes, compute it on need, or store externally). This makes the suggestions page quick and easy to render. A few flags are added to docs.options in the home db.

Since suggestions aren't part of the doc, undo/redo doesn't work naturally for change operations (dismissing, retracting etc). Applying suggestions can be and is made undoable through the built in mechanism, but isn't well integrated with the proposals page.

@paulfitz paulfitz force-pushed the paulfitz/proposed-changes branch from ae4c698 to b03d326 Compare October 6, 2025 18:51
@paulfitz paulfitz added the preview Launch preview deployment of this PR label Oct 6, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Oct 6, 2025

Deployed commit 316ec8dfda3055a88cca72bab810bd4c770acc03 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-05T19:47:32.140Z)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 6, 2025

Deployed commit 9f68d58e4c6deba07d8137682d499d1f82c2f360 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-05T22:13:07.266Z)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 7, 2025

Deployed commit cd268c963ac14cd1d7ca83475633ad3c708de9ac as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-06T00:12:24.929Z)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 7, 2025

Deployed commit 6d03ed33033266588e81ffea340037a8f8cda581 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-06T17:52:50.555Z)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 7, 2025

Deployed commit 583546c831e4cde3aad95c4aa61bb4a2c430b75a as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-06T18:17:19.554Z)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 7, 2025

Deployed commit 7a9d358f4abd29bfbfb0aeeb954cad91371a97c6 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-06T18:34:56.195Z)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 7, 2025

Deployed commit 9989278aef38d3f010b14058d83d077382e6ddf0 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-06T18:55:38.071Z)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 7, 2025

Deployed commit 2fe2a8dad57f44d7cfd66cd42495b2e150587372 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-06T19:47:55.030Z)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 7, 2025

Deployed commit 2105071934c1ef698dddad083523cd5070ebca5b as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-06T20:38:53.137Z)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 8, 2025

Deployed commit e69de744719a9406424ecd183b92bc00f555f858 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-07T13:40:36.706Z)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 8, 2025

Deployed commit e0861978c7d3b156e8266398e22df0a998637de2 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-07T18:06:34.992Z)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 8, 2025

Deployed commit 08b66a8f58c830b0a017e4a2bc1ac8daf1216ee2 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-07T20:39:05.240Z)

@paulfitz paulfitz force-pushed the paulfitz/proposed-changes branch 2 times, most recently from 4a815f3 to 9faaf3e Compare October 9, 2025 15:23
@github-actions
Copy link
Contributor

github-actions bot commented Oct 9, 2025

Deployed commit 9faaf3ea41604f0426d89b6a646501ca2eab1e69 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-08T15:40:30.052Z)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 9, 2025

Deployed commit c9e63f3d6f25d7796c16102a90e591a42637db3d as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-08T15:47:43.841Z)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 9, 2025

Deployed commit 754de45baa2440b8dd50caea9f6422649f9cbb1e as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-08T15:59:26.280Z)

@github-actions
Copy link
Contributor

github-actions bot commented Oct 9, 2025

Deployed commit 92080d1ac39178491a871e55e136065095387a72 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-08T20:50:39.771Z)

@github-actions
Copy link
Contributor

Deployed commit fa243942dd9d1c60b2e7685945b1d4167f1cf34c as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-09T15:13:26.451Z)

@github-actions
Copy link
Contributor

Deployed commit 99d05d5558eb8e8e551f6186da2f7cfa3f8578e2 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-09T15:52:08.592Z)

@github-actions
Copy link
Contributor

Deployed commit 3ca481711dd331d7fdec94be4f67b0ec6e4906e1 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-09T16:16:40.808Z)

@github-actions
Copy link
Contributor

Deployed commit b5dc03ebb846bb287e12fbf9102ab27159176dbf as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-09T20:07:42.906Z)

@github-actions
Copy link
Contributor

Deployed commit 807456f9129eba3eaf5c57fa4c774f1390893a0c as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-09T20:37:35.710Z)

@github-actions
Copy link
Contributor

Deployed commit 4c6aea0748060571e53fe76a59a47bf03a7d9d08 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-09T21:25:49.637Z)

@github-actions
Copy link
Contributor

Deployed commit 8c37c5ea44c9068d004a3437259235d9151df8de as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-13T15:49:11.183Z)

@github-actions
Copy link
Contributor

Deployed commit 0ef98cf0c08f5ab49db10f76b73283fd4e66f93f as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-13T16:23:52.115Z)

@github-actions
Copy link
Contributor

Deployed commit 9014f0b2a374c1103121c9ff91b2b0980f75216e as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-13T18:11:03.402Z)

@paulfitz paulfitz force-pushed the paulfitz/proposed-changes branch from 9014f0b to 10bfa37 Compare October 14, 2025 19:41
@github-actions
Copy link
Contributor

Deployed commit 1840a5ea09e9f7974b7fd5a1ef40bd97705aba33 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-18T22:28:32.709Z)

@github-actions
Copy link
Contributor

Deployed commit 8a698a1cdcd4ce721ad952f8d5b762b86987ef05 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-18T22:33:09.735Z)

@github-actions
Copy link
Contributor

Deployed commit bd0c73ee46cfcabbb8ffe0284bf5417c44332dff as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-18T23:54:43.019Z)

@paulfitz paulfitz requested a review from berhalak October 20, 2025 21:34
@github-actions
Copy link
Contributor

Deployed commit 199e0a65aae44d6821935592173494773eef593e as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-20T15:42:13.254Z)

@github-actions
Copy link
Contributor

Deployed commit a2e67e2c091809113c24262e4a30ca9d4edc24e7 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-20T20:20:41.263Z)

@github-actions
Copy link
Contributor

Deployed commit 0c27dbf4a66d5fe892c58062a3479d85c7325f84 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-20T20:51:53.829Z)

@github-actions
Copy link
Contributor

Deployed commit a13c510cb3c3351e3e1e40a08f3f38e1151c0864 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-20T21:10:02.298Z)

@github-actions
Copy link
Contributor

Deployed commit 238efaff136d396deac56c78b1cbe068a662eebd as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-21T16:18:40.344Z)

@github-actions
Copy link
Contributor

Deployed commit 8ab989c1b8a9d1d5127ad3136a4e9b09797d7be3 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-21T18:58:23.380Z)

@github-actions
Copy link
Contributor

Deployed commit de5e188e2c17d128f3fb123cc2e4b0012686d6c8 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-21T19:41:42.892Z)

@github-actions
Copy link
Contributor

Deployed commit b57204154b09ddbbb32a04d08b51abb66eb782cc as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-22T13:24:11.134Z)

@paulfitz paulfitz changed the title proof of concept for reviewing and landing proposed changes add a page for gathering and moderating suggestions Oct 23, 2025
@github-actions
Copy link
Contributor

Deployed commit a7082be6970d1cb6a53526222121f9e48691a686 as https://grist-gristlabs-grist-core-paulfitz-proposed-changes.fly.dev (until 2025-11-22T15:36:48.082Z)

@paulfitz paulfitz requested a review from berhalak October 23, 2025 15:39
Copy link
Contributor

@berhalak berhalak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you @paulfitz !

@paulfitz paulfitz merged commit 53e19ce into main Oct 23, 2025
15 checks passed
@paulfitz paulfitz deleted the paulfitz/proposed-changes branch October 23, 2025 16:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

preview Launch preview deployment of this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants