opensanctions / opensanctions/poliloom
Server-side evaluation session tracking
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 22
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
Overview
Track evaluation sessions on the server to maintain a history of user activity. Currently sessions are managed client-side only and are lost when the browser session ends.
Motivation
- Persist session history across browser sessions
- Enable user stats features (#96) that require historical data
- Support future features like session resumption
Feature Description
Backend
- New data model for sessions (user, start time, end time, politicians evaluated)
- API endpoints:
POST /sessions- Create a new session when user starts evaluatingPATCH /sessions/{id}- Update session (mark complete, update count)GET /sessions- List user's session history
Frontend
- Update
EvaluationSessionContextto sync with backend - Session ID persisted and sent with evaluation submissions
Notes
This is a prerequisite for accurate user stats (#96) - specifically tracking "sessions completed" requires server-side session records.
Supersedes session tracking aspects from #82.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the Backend and Frontend sections, then inspect EvaluationSessionContext and the existing evaluation submission flow. Define the session model and the POST, PATCH, and GET /sessions entry points, and verify that session IDs and history synchronize across browser sessions. Done means session records support creation, updates, listing, and frontend syncing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api, backend, database, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100