apache / apache/ponymail

AAA regression in notifications API

Open
#499 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
80
Forks
32
PR merge metrics
No merged PRs in 30d

Description

notifications.lua looks for notifications, and if AAA is enabled, tries to parse list-id which requires a `list_raw` element present. As that isn't set in archiver.py, it causes a nil error.

Three possible ways of fixing:
- fall back to using the `list` element if no list_raw exists (easiest, and best for backwards compat)
- have archiver also add a `list_raw` to notifications
- don't copy the email into the notifications db, but rather have a reference to the mbox document

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading notifications.lua and archiver.py, then reproduce the nil error with AAA enabled and a notification lacking list_raw. Compare the three proposed fixes, with particular attention to backwards compatibility and how notifications are stored. Done means the notifications API no longer errors for this case and the chosen behavior is verified.

Written by the indexing model from the issue text.

Assessment

Tech stack
lua, python
Domain
api, backend, database
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.