Assistant look-ups crash the whole turn on a bad `days` or `from` value
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 88/100
Research direction
Start in taskuary/lookups.py with activity_list, errors_list, and calendar_read, comparing their argument handling with tasks_list and calendar_read's sibling behavior. Run the four specified cases in tests/test_lookups.py, then confirm each returns a string without crashing the turn using python -m pytest -q.
Written by the indexing model from the issue text.
Description
tasks_list and calendar_read clamp their days argument; activity_list and errors_list do not, and calendar_read trusts its from date. Whatever they raise goes up through read_op to the concierge, which logs "the model pass failed" and drops the owner's turn.
Where: taskuary/lookups.py - activity_list, errors_list, calendar_read.
activity_list(store, {'days': -5}) -> cutoff in the future -> "Nothing was recorded"
activity_list(store, {'days': 1e9}) -> OverflowError
activity_list(store, {'days': 'week'}) -> ValueError: could not convert string to float
calendar_read(store, {'from': '2026-02-30'}) -> ValueError: day is out of range for month
Done when days is clamped the way its siblings do it, and a non-number or impossible date comes back as a plain sentence instead of an exception.
Test - tests/test_lookups.py: activity.list with days='week', days=1e9, days=-5, and calendar.read with from='2026-02-30' each return a string.
Getting started: pip install -e ".[dev]", then python -m pytest -q (offline, a few seconds). UI work: cd website && npm ci && npm test. See CONTRIBUTING.md. One small PR with the change and its test is perfect.
- Dominant language
- Python
- Stars
- 116
- Forks
- 22
- Avg merge
- 1d 9m
- Merged PRs (30d)
- 11
Getting set up
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.
More from ldbumble/taskuary
-
enhancement good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 92/100
Maintainers usually reply within 1 day
-
documentation good first issue
Difficulty 1/5 Under an hour Newbie friendliness 92/100
Maintainers usually reply within 1 day
-
bug good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
Maintainers usually reply within 1 day
-
bug good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
enhancement good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 92/100
Maintainers usually reply within 1 day
All issues in ldbumble/taskuary
Similar issues
-
good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
vllm-project/vllm-metal#822 ·
Maintainers usually reply within 1 day
-
vector-store
Difficulty 1/5 1-3 hours Newbie friendliness 90/100
mem0ai/mem0#7461 · 1 comment ·
Maintainers usually reply within 1 day
-
[Bug]: chunk_span_bounds and _validated_chunk_spans reject Pydantic models ChunkSpan and AudioFileOpen
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
BasedHardware/omi#19047 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day