Break long lines to comply with 80-character limit and remove trailing
whitespace across agent.py, control.py, database.py, gitlab_api.py, and
__main__.py
Co-developed-by: Claude <noreply@anthropic.com>
Signed-off-by: Simon Glass <simon.glass@canonical.com>
Add schema v3 with a processed_comment table to track which MR comments
have been addressed by the review agent. This prevents re-processing
the same comments when running review or poll commands.
Co-developed-by: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: Simon Glass <simon.glass@canonical.com>
- Remove unused commit_hashes variable in agent.py
- Add pylint disable for too-many-public-methods in database.py
- Add pylint disable for too-many-arguments in database.py functions
- Add pylint disable for too-many-branches in control.py do_apply()
- Add pylint disable for too-many-lines in ftest.py
- Prefix unused mock arguments with underscore in ftest.py
This brings the pylint score to 10.00/10.
Co-developed-by: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: Simon Glass <simon.glass@canonical.com>
Add new database tables to track individual commits and merge requests:
- pcommit: tracks commits being cherry-picked with status, author,
subject, and optional link to merge request
- mergereq: tracks GitLab merge requests with branch name, MR ID,
status, and URL
Also add helper functions for both tables and update control.py to
write commit status to the database during apply operations.
Update README.rst with documentation for all database tables.
Co-developed-by: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: Simon Glass <simon.glass@canonical.com>
Add a command to list all tracked source branches and their last
cherry-picked commits from the database.
Usage: ./tools/pickman/pickman list-sources
Co-developed-by: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: Simon Glass <simon.glass@canonical.com>
Add an sqlite3 database module to track the state of cherry-picking
commits between branches. The database uses .pickman.db and includes:
- source table: tracks source branches and their last cherry-picked
commit into master
- Schema versioning for future migrations
The database code is mostly lifted from patman
Co-developed-by: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: Simon Glass <simon.glass@canonical.com>