View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0007064||Anastasis||REST API||public||2021-11-03 11:45||2022-09-26 20:50|
|Reporter||Florian Dold||Assigned To||Florian Dold|
|Priority||normal||Severity||minor||Reproducibility||have not tried|
|Product Version||Git master|
|Target Version||0.3.0||Fixed in Version||0.3.0|
|Summary||0007064: GET /truths/ endpoint is problematic|
|Description||First, this one endpoint conflates many things that should probably be covered by separate POST requests. The GET response really should just be the status of the truth. Solving or triggering a challenge should be a POST against /truths/$UUID/solve.|
Then, the HTTP response status codes are absolutely bonkers. Most completely go against the standard's interpretation of it.
208 Already Reported => This is a WebDAV status code, besides the name of the status code, is is totally not applicable here.
303 See Other => Bad, because it might be handled transparently by the user agent. An implementation of the reducer might not even get to see this response, and there is no reasonable scenario where we might navigate to /truths/ in a browsing context at all.
403 Forbidden => If anything, this should be unauthorized.
408 Request Timeout => no! the HTTP semantics of this status code have nothing to do with what the anastasis REST docs talk about
410 Gone => I don't understand what this even is supposed to mean
417 Expectation Failed => Again, totally goes against the HTTP spec
|Tags||No tags attached.|
9cc9673..f6a64e0 documents two new POST /truth/ endpoints to replace the existing GET /truth/ endpoint. The new ones should address the points raised above.
This is not yet implemented.
||f6a64e0..fb3c4bb implements the two new endpoints. They are NOT yet used and NOT tested.|
||Client APIs are now implemented. Still not used or tested ;-).|
||New API is complete and tested with anastasis-gtk. Assigning to Florian (maybe re-assign to Sebastian) for implementation in the TypeScript version!|
|2021-11-03 11:45||Florian Dold||New Issue|
|2021-11-03 11:45||Florian Dold||Assigned To||=> Christian Grothoff|
|2021-11-03 11:45||Florian Dold||Status||new => assigned|
|2021-11-03 11:46||Florian Dold||Description Updated|
|2022-02-27 18:34||Christian Grothoff||Note Added: 0018750|
|2022-02-27 22:37||Christian Grothoff||Note Added: 0018751|
|2022-03-01 23:53||Christian Grothoff||Note Added: 0018761|
|2022-03-10 04:20||Christian Grothoff||Assigned To||Christian Grothoff => Florian Dold|
|2022-03-10 04:21||Christian Grothoff||Note Added: 0018788|
|2022-04-12 22:13||Christian Grothoff||Status||assigned => resolved|
|2022-04-12 22:13||Christian Grothoff||Resolution||open => fixed|
|2022-04-12 22:13||Christian Grothoff||Fixed in Version||=> 0.3.0|
|2022-04-12 22:14||Christian Grothoff||Product Version||=> Git master|
|2022-04-12 22:14||Christian Grothoff||Target Version||=> 0.3.0|
|2022-09-26 20:50||Christian Grothoff||Status||resolved => closed|