<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.kde.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugs.kde.org/"
          
          maintainer="sysadmin@kde.org"
>

    <bug>
          <bug_id>521866</bug_id>
          
          <creation_ts>2026-06-20 13:47:52 +0000</creation_ts>
          <short_desc>Rating package reviews&apos; usefulness fails with HTTP status code 400</short_desc>
          <delta_ts>2026-08-17 13:31:03 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>2</classification_id>
          <classification>Applications</classification>
          <product>Discover</product>
          <component>discover</component>
          <version>6.6.5</version>
          <rep_platform>Debian testing</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>NOR</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Lianna">lianna</reporter>
          <assigned_to name="Plasma Bugs List">plasma-bugs-null</assigned_to>
          <cc>aleixpol</cc>
    
    <cc>antti.savo</cc>
    
    <cc>taras.oleksyn</cc>
          
          <cf_commitlink>https://invent.kde.org/plasma/discover/-/commit/c022ef032bd47be3d48e649522b359844c8c271c</cf_commitlink>
          <cf_versionfixedin>6.8.0</cf_versionfixedin>
          <cf_sentryurl></cf_sentryurl>
          <votes>0</votes>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2525054</commentid>
    <comment_count>0</comment_count>
    <who name="Lianna">lianna</who>
    <bug_when>2026-06-20 13:47:52 +0000</bug_when>
    <thetext>DESCRIPTION
Hello,

I just attempted to rate the usefulness of a review of the Tokodon program in Discover. Instead of successfully rating the review, it displayed a window with the error message &quot;Error while submitting usefulness: Error transferring https://odrs.gnome.org/1.0/reviews/api/upvote - server replied with status code 400&quot;.

STEPS TO REPRODUCE
1. Open Discover
2. Navigate to a program with a number of reviews, e. g. Tokodon
3. Open the reviews
4. Attempt to rate a review

OBSERVED RESULT
An error message dialogue appears: &quot;Error while submitting usefulness: Error transferring https://odrs.gnome.org/1.0/reviews/api/upvote - server replied with status code 400&quot;

EXPECTED RESULT
The review&apos;s usefulness is rated.

SOFTWARE/OS VERSIONS
Operating System: Debian GNU/Linux forky/sid
KDE Plasma Version: 6.6.5
KDE Frameworks Version: 6.23.0
Qt Version: 6.10.2
Kernel Version: 7.0.12+deb14.1-amd64 (64-bit)
Graphics Platform: Wayland
Processors: 24 × AMD Ryzen 9 3900X 12-Core Processor
Memory: 32 GiB of RAM (31.3 GiB usable)
Graphics Processor: AMD Radeon RX 5700 XT

ADDITIONAL INFORMATION

This occurs on other packages too, but I have not tested this extensively enough to find out whether this affects all packages or only some.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2525127</commentid>
    <comment_count>1</comment_count>
    <who name="Antti Savolainen">antti.savo</who>
    <bug_when>2026-06-20 17:35:13 +0000</bug_when>
    <thetext>Can confirm. The first click on Yes or No seems to go through fine, but any update returns an error.

Operating System: Arch Linux 
KDE Plasma Version: 6.7.80
KDE Frameworks Version: 6.28.0
Qt Version: 6.12.0
Kernel Version: 7.0.12-arch1-1 (64-bit)
Graphics Platform: Wayland
Processors: 12 × AMD Ryzen 5 2600 Six-Core Processor
Memory: 64 GiB of RAM (62.7 GiB usable)
Graphics Processor: AMD Radeon RX 5700</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2529303</commentid>
    <comment_count>2</comment_count>
    <who name="Taras Oleksyn">taras.oleksyn</who>
    <bug_when>2026-07-05 03:47:19 +0000</bug_when>
    <thetext>Hi,
I&apos;ve started to work on this one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2532367</commentid>
    <comment_count>3</comment_count>
    <who name="Bug Janitor Service">bug-janitor</who>
    <bug_when>2026-07-17 04:24:30 +0000</bug_when>
    <thetext>A possibly relevant merge request was started @ https://invent.kde.org/plasma/discover/-/merge_requests/1362</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2539428</commentid>
    <comment_count>4</comment_count>
    <who name="Nate Graham">nate</who>
    <bug_when>2026-08-17 13:31:03 +0000</bug_when>
    <thetext>Git commit c022ef032bd47be3d48e649522b359844c8c271c by Nate Graham, on behalf of Taras Oleksyn.
Committed on 17/08/2026 at 13:30.
Pushed by ngraham into branch &apos;master&apos;.

Make package reviews usefulness persistent

The ODRS API does not allow re-submitting a vote, and returns an error 400
when the user tries to do that.

To avoid this, save  a list of which reviews a user has voted on and disable
the `Yes/No` buttons if the vote was submitted.

Date like the following will be saved in the state data:

[ReviewVotes]
664232=2
675199=1
677028=1
FIXED-IN: 6.8.0

M  +2    -0    discover/qml/ReviewDelegate.qml
M  +32   -1    libdiscover/ReviewsBackend/ReviewsModel.cpp
M  +3    -0    libdiscover/ReviewsBackend/ReviewsModel.h

https://invent.kde.org/plasma/discover/-/commit/c022ef032bd47be3d48e649522b359844c8c271c</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>