Skip to content

Allow local log downloads when a rageshake URL is not configured.#31716

Merged
Half-Shot merged 33 commits intodevelopfrom
hs/support-localonly-bugreporting
Jan 20, 2026
Merged

Allow local log downloads when a rageshake URL is not configured.#31716
Half-Shot merged 33 commits intodevelopfrom
hs/support-localonly-bugreporting

Conversation

@Half-Shot
Copy link
Copy Markdown
Member

@Half-Shot Half-Shot commented Jan 13, 2026

This is intended to handle the usecase where users do not wish to configure a rageshake server but still be able to send bug reports to us.

Unfortunately we use the bug_report_endpoint_url to also trigger what feedback forms we show so this will need some tweaking and improving, and a number of playwright tests to ensure our various feedback options still work.

Comprehensive playwright tests are now available.

Checklist

@Half-Shot Half-Shot changed the title Add support for storing debug logs locally and allowing local downloads Add support for storing debug logs locally and allowing local downloads when a rageshake URL is not configured. Jan 13, 2026
Comment thread src/IConfigOptions.ts Outdated
Comment thread src/components/views/dialogs/BugReportDialog.tsx Outdated
@Half-Shot Half-Shot added the T-Feature Request to add a new feature which does not exist right now label Jan 13, 2026
@Half-Shot Half-Shot added T-Enhancement and removed T-Feature Request to add a new feature which does not exist right now labels Jan 13, 2026
@Half-Shot Half-Shot marked this pull request as ready for review January 15, 2026 14:57
@Half-Shot Half-Shot requested review from a team as code owners January 15, 2026 14:57
@Half-Shot Half-Shot requested review from a team, florianduros, robintown and t3chguy January 15, 2026 14:57
Copy link
Copy Markdown

@pmaier1 pmaier1 left a comment

Choose a reason for hiding this comment

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

Yup, thanks 👍 This change is important for use cases where the service provider does not want to expose debug log information to us but still give users the ability to obtain the information and to forward it elsewhere.

Copy link
Copy Markdown
Member

@t3chguy t3chguy left a comment

Choose a reason for hiding this comment

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

Image

This feels really broken, both fields & both buttons are disabled, it is super unclear why the only thing that works is the Download logs button

@Half-Shot
Copy link
Copy Markdown
Member Author

both fields & both buttons are disabled, it is super unclear why the only thing that works is the Download logs button

That's the old UX which I just updated.

@t3chguy
Copy link
Copy Markdown
Member

t3chguy commented Jan 15, 2026

Yup, thanks 👍 This change is important for use cases where the service provider does not want to expose debug log information to us but still give users the ability to obtain the information and to forward it elsewhere.

@pmaier1 why wouldn't the service provider not run their own https://github.com/matrix-org/rageshake to have the logs be sent to themselves rather than us?

@t3chguy
Copy link
Copy Markdown
Member

t3chguy commented Jan 15, 2026

I think Submit debug logs should also be replaced with Download logs in such a setup

@pmaier1
Copy link
Copy Markdown

pmaier1 commented Jan 15, 2026

@pmaier1 why wouldn't the service provider not run their own https://github.com/matrix-org/rageshake to have the logs be sent to themselves rather than us?

That's another possibility, yes. But we do not ship the rageshake server in our distributions today. Taking that into account, we should provide the ability to obtain the data without sending it to us.

@t3chguy
Copy link
Copy Markdown
Member

t3chguy commented Jan 15, 2026

Taking that into account, we should provide the ability to obtain the data without sending it to us.

This was always possible by just specifying a dummy value in this field, the Submit button would not work correctly but Download would have been present. This PR just glosses up the UI for that.

Comment thread src/models/Call.ts Outdated

const rageshakeSubmitUrl = SdkConfig.get("bug_report_endpoint_url");
if (rageshakeSubmitUrl) {
if (rageshakeSubmitUrl && rageshakeSubmitUrl !== "local") {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Can this get a comment explaining the actual behaviour:

  • if a local rageshake log is used, the internal EC rageshake flow will not be able to submit logs
  • if a remote rageshake url is set, EC will use the same as configured in EW

If that is even correct ^ (if not its even more important to add a comment)

I will give the PR a check from the call side. I would like to see it but its not blocking.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

That is correct. I will add a const so it's clear what "local" does.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I think it's fine enough to click through to the const if you want to understand what this code does.

@Half-Shot Half-Shot added this pull request to the merge queue Jan 20, 2026
Merged via the queue into develop with commit a15efcc Jan 20, 2026
37 of 38 checks passed
@Half-Shot Half-Shot deleted the hs/support-localonly-bugreporting branch January 20, 2026 12:48
rbondesson pushed a commit to ZacksBot/element-web that referenced this pull request Jan 22, 2026
…ement-hq#31716)

* Add support for storing debug logs locally and allowing local downloads.

* static

* Comprehensive testing for bug report flow.

* Driveby cleanup of typography

* fix i18n

* Improvements to UX

* More testing

* update snaps

* linting

* lint

* Fix feedback

* Fix boldnewss

* fix bold

* fix heading

* Increase test coverage

* remove focus

* Don't show the FAQ depending on whether you can submit feedback.

* move reset

* fix err

* Remove unused

* update snap

* Remove text

* Bumping up that coverage

* tidy

* lint

* update snap

* Use a const

* fix imports

* Remove import in e2e test

* whoops
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants