Skip to content

FEATURE: Discourse Workflows plugin#1574

Closed
jjaffeux wants to merge 565 commits into
mainfrom
discourse-workflows
Closed

FEATURE: Discourse Workflows plugin#1574
jjaffeux wants to merge 565 commits into
mainfrom
discourse-workflows

Conversation

@jjaffeux
Copy link
Copy Markdown
Owner

@jjaffeux jjaffeux commented Mar 23, 2026

No description provided.

dependabot Bot and others added 30 commits March 12, 2026 15:45
Bumps
[faraday-multipart](https://github.com/lostisland/faraday-multipart)
from 1.1.1 to 1.2.0.
- [Release
notes](https://github.com/lostisland/faraday-multipart/releases)
-
[Changelog](https://github.com/lostisland/faraday-multipart/blob/main/CHANGELOG.md)
-
[Commits](lostisland/faraday-multipart@v1.1.1...v1.2.0)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [rqrcode](https://github.com/whomwah/rqrcode) from 3.1.1 to 3.2.0.
- [Release notes](https://github.com/whomwah/rqrcode/releases)
- [Changelog](https://github.com/whomwah/rqrcode/blob/main/CHANGELOG.md)
- [Commits](whomwah/rqrcode@v3.1.1...v3.2.0)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [ffi](https://github.com/ffi/ffi) from 1.17.2 to 1.17.3.
- [Changelog](https://github.com/ffi/ffi/blob/master/CHANGELOG.md)
- [Commits](ffi/ffi@v1.17.2...v1.17.3)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps
[rails-html-sanitizer](https://github.com/rails/rails-html-sanitizer)
from 1.6.2 to 1.7.0.
- [Release
notes](https://github.com/rails/rails-html-sanitizer/releases)
-
[Changelog](https://github.com/rails/rails-html-sanitizer/blob/main/CHANGELOG.md)
-
[Commits](rails/rails-html-sanitizer@v1.6.2...v1.7.0)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [ruby-prof](https://github.com/ruby-prof/ruby-prof) from 2.0.3 to
2.0.4.
-
[Changelog](https://github.com/ruby-prof/ruby-prof/blob/master/CHANGELOG.md)
-
[Commits](ruby-prof/ruby-prof@2.0.3...2.0.4)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [listen](https://github.com/guard/listen) from 3.9.0 to 3.10.0.
- [Release notes](https://github.com/guard/listen/releases)
- [Commits](guard/listen@v3.9.0...v3.10.0)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Reported here:
https://meta.discourse.org/t/multiple-form-templates-for-a-category-doesnt-work/398176

We weren't tracking changes in formkit for the form template settings
when `enable simplified category creation` is enabled... so the save
button wasn't appearing and admins couldn't save changes here.

<img width="1512" height="1258" alt="image"
src="https://github.com/user-attachments/assets/d867cfdd-7dd4-41a3-8ed1-674233730e18"
/>


This flows the changes through formkit properly so admins get a save
button and can use the functionality again.

Also added tests for both the legacy and updated forms for this so it
doesn't regress.
Bumps [multi_xml](https://github.com/sferik/multi_xml) from 0.7.2 to
0.8.1.
-
[Changelog](https://github.com/sferik/multi_xml/blob/main/CHANGELOG.md)
- [Commits](sferik/multi_xml@v0.7.2...v0.8.1)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Previous field was inferred from the control inside the field, but we
often need the type while processing the field. This was causing double
renders and other oddities that we should avoid.

This code is backward compatible and the old path will be removed in few
months.

---------

Co-authored-by: David Taylor <david@taylorhq.com>
## Summary
- Exclude hidden posts from `TopicLink.duplicate_lookup` results
- Add test coverage for the filtering behavior
…8545)

## Summary
- Moderators with IP visibility could create, update, and delete
`allow_admin` screened IP records, bypassing admin-only IP allowlist
controls
- Adds `before_action` guard restricting `allow_admin` mutations to
admins
- Moderators retain full access to `block` and `do_nothing` records
Resolves `ember.using-amd-bundles` deprecation in the asset-processor

We're also using the deprecated bundle via `@embroider/compat` for the
legacy plugin build. Adding it to the deprecation-silencer to keep that
quiet until we finish migrating to the ROLLUP_PLUGIN_COMPILER
…rse#38548)

This reverts commit 55c4623.

The change caused focus to be lost on every keystroke in unupgraded
inputs.
…#38546)

Currently reaction counts are not labeled or keyboard navigable, this is
also true of the content within the menu it triggers.

This change ensures that the content can be navigated via keyboard and
read by screenreaders. The "who reacted" lists within the menu are now
marked up as lists, and the more button within also has a label.

<img width="992" height="308" alt="image"
src="https://github.com/user-attachments/assets/ea262eb7-e5e1-411e-9088-226dc756ec61"
/>
…iscourse#38550)

## Summary
- The three negative `doesNotExist()` assertions used
`.empty-state--empty-topic-filter` which never matches any element, so
the tests always passed vacuously
- Fixed to use `.empty-state__container.--empty-topic-filter`, matching
the correct compound selector already used in the positive test
We already had a title here, but it's unreliable, especially because
it's an icon-only button. Adding the ariaLabel will fix this.
## Summary

- Add server-side pagination (50 per page) with infinite scroll to
`/admin/plugins/discourse-data-explorer/queries`
- Add server-side text search filtering (ILIKE on name/description)
replacing client-side filtering
- Add server-side column sorting (name, username, last_run_at) replacing
client-side sorting
- Fix query name wrapping on short names due to inherited `max-width:
80%` from core `d-table__overview-name`

Previously the page loaded all queries at once with no pagination,
making it very slow on instances with many queries.
Previous field was inferred from the control inside the field, but we
often need the type while processing the field. This was causing double
renders and other oddities that we should avoid.

This code is backward compatible and the old path will be removed in few
months.

---------

Co-authored-by: David Taylor <david@taylorhq.com>

---------

Co-authored-by: David Taylor <david@taylorhq.com>
…rse#38554)

- Adds missing `original_filename` parameter to the `I18n.t` call in
`UploadCreator#is_still_too_big?`
We wrap `blockquote` in `aside` to include additional info and controls
in quotes in posts:

<img width="600" alt="image"
src="https://github.com/user-attachments/assets/f5cceecd-8fb7-46c7-8dde-9b0cf58a3af6"
/>

This is semantically fine, but `aside` creates a landmark for
screenreaders which isn't always desirable and can be a bit fatiguing...
especially considering that the blockquote already provides the relevant
context for the element.

Additionally, automated scans expect `aside` to have unique labels and
this gets flagged as an issue... rather than adding more labeling and
increasing the amount of content to be read, we can remove the role and
lean on the blockquote within to provide the necessary context.
The admin report stacked chart uses a fixed y-axis maximum calculated
from all datasets combined. When a user clicks a legend item to hide a
data series, the y-axis remains scaled to the total of all series,
leaving excessive whitespace and making the remaining visible data
harder to read.

Remove the static `maxStackedValue` calculation and the fixed `max`
option on the y-axis scale. This lets Chart.js automatically determine
the y-axis range based on only the visible datasets, so the scale
dynamically adjusts whenever a legend item is toggled on or off.
We have some stray right padding on the page here, this removes it until
it's necessary for alignment on larger screens. Unfortunately the ideal
width doesn't quite align with our breakpoint system, hence the custom
value.


Before (almost looks like a scroll track):
<img width="1812" height="708" alt="image"
src="https://github.com/user-attachments/assets/20f65d11-452c-42c1-a80c-fbc94897b1d4"
/>


After: 
<img width="1814" height="686" alt="image"
src="https://github.com/user-attachments/assets/33e9731e-19ab-4917-89b8-702ccc7b3d5a"
/>
…#38549)

Replaces the previous bottom-only scroll fade (which never disappeared)
with bidirectional top/bottom fades that appear and disappear based on
actual scroll position, matching the pattern used by
`ToolbarScrollContainer`.

Also fixes uneven padding inside Apple keyboard shortcut badges caused
by trailing `letter-spacing`.

<img width="290" height="391" alt="image"
src="https://github.com/user-attachments/assets/a533604c-49d5-4297-9015-9c62700736aa"
/>
Bumps [bootsnap](https://github.com/rails/bootsnap) from 1.19.0 to
1.23.0.
- [Release notes](https://github.com/rails/bootsnap/releases)
- [Changelog](https://github.com/rails/bootsnap/blob/main/CHANGELOG.md)
- [Commits](rails/bootsnap@v1.19.0...v1.23.0)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [ruby-lsp-rspec](https://github.com/st0012/ruby-lsp-rspec) from
0.1.28 to 0.1.29.
- [Release notes](https://github.com/st0012/ruby-lsp-rspec/releases)
-
[Commits](st0012/ruby-lsp-rspec@v0.1.28...v0.1.29)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [stackprof](https://github.com/tmm1/stackprof) from 0.2.27 to
0.2.28.
-
[Changelog](https://github.com/tmm1/stackprof/blob/master/CHANGELOG.md)
- [Commits](tmm1/stackprof@v0.2.27...v0.2.28)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [ruby-lsp](https://github.com/Shopify/ruby-lsp) from 0.26.4 to
0.26.7.
- [Release notes](https://github.com/Shopify/ruby-lsp/releases)
-
[Commits](Shopify/ruby-lsp@v0.26.4...v0.26.7)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
The backend only checks for `guardian.ensure_can_edit!(post)` and not
admin. However the initialiser was under admin folder, meaning the click
would only work for admins, even though they could have made the http
request directly.
…ourse#38406)

When creating or editing a Support category, admins need easy access to
related solved settings. Two settings that admins might want to adjust
(`prioritize_solved_topics_in_search` and `show_who_marked_solved`) are
now visible but unchecked in the Site settings section of the Support
tab.

Here's what it looks like

<img width="1050" height="783" alt="image"
src="https://github.com/user-attachments/assets/77154565-416d-4f05-9477-2587090cffc1"
/>

Ref - t/174388

---------

Co-authored-by: Martin Brennan <martin@discourse.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment