ArgLab / ArgLab/writing_observer

Filesystem KVS with Roster source `all` is broken

Open
#191 0 comments 0 reactions 0 assignees View on GitHub
bug good first issue python
Dominant language
Python
Stars
12
Forks
11
PR merge metrics
No merged PRs in 30d

Description

When using the filesystem KVS, the `,` in the key strings are converted to `-` to remain as a valid filename. The `all` roster source fetches all available keys and extracts student ids by splitting on `,`.

Even if students exist in the filesystem, their IDs are not being properly extracted and thus, we end up with an empty class.

We could:

1. Warn the user that these are incompatible setting
2. Create an edge case `learning_observer/rosters.py:all_students` that checks the KVS type and extracts students based on that
3. Modify the FileSystem KVS to use the appropriate key string when returning `.keys()`

Contributor guide

No contributing guide indexed for this repository

Research direction

Start at learning_observer/rosters.py:all_students and inspect the filesystem KVS implementation and its .keys() behavior; compare the stored filename keys with the comma-splitting logic. Done means the `all` roster source extracts existing student IDs from filesystem-backed KVS data and no longer produces an empty class.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
database
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.