Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add API endpoints for seen_by #5475

Closed
eloquence opened this issue Sep 2, 2020 · 1 comment · Fixed by #5513
Closed

Add API endpoints for seen_by #5475

eloquence opened this issue Sep 2, 2020 · 1 comment · Fixed by #5513
Labels

Comments

@eloquence
Copy link
Member

eloquence commented Sep 2, 2020

As part of adding SecureDrop Client support for highlighting sources with unseen submissions (freedomofpress/securedrop-client#187), we need to make server-side changes to record which journalist has seen a message, file, or reply. This breaks down into two main tasks:

Technical specification

A working draft specification can be found here:
https://docs.google.com/document/d/1szPEKI1gTpRiM_YI87plKgiW39T7zT4Y4HG0uFnsJD4/edit#

Functional requirements

Setting status via API: As an API user, I should be able to set the seen_by status for a file, message, or reply to the authenticated user.

Retrieving status via API: As an API user, I should be able to retrieve the seen_by status for any message, file or reply.

Performance requirements

We want to keep API consumers like the SecureDrop Client responsive with a large number of sources and submissions per source:

https://github.com/freedomofpress/securedrop-client/wiki/Scalability-&-Performance#scalability-requirements

Our performance goals may impact decisions such as how many API roundtrips are required to update or retrieve information, how much data is returned, and what operations can be grouped together. As part of this issue, we should aim to obtain before/after benchmarks e.g. of metadata sync operations for a server with a large number of submissions, so we can quantify the performance impact.

@eloquence
Copy link
Member Author

(Removed from the board because #5513, which is tracked on our current sprint, is expected to fully resolve this issue as specified.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
1 participant