Epilogue nits: pagination, test rename, docs, CI #11

Closed
opened 2026-03-13 20:34:27 +00:00 by forgejo_admin · 0 comments
Contributor

Lineage

plan-pal-e-agency → Epilogue (nits #1-4)

Repo

forgejo_admin/forgejo-mcp

User Story

As a platform operator
I want forgejo-mcp to handle edge cases and have CI coverage
So that agents can rely on it without hitting silent failures

Context

QA review of PR #10 (Forgejo MCP completeness — set_label, comment_on_issue, create_repo) found 4 non-blocking nits. Per convention, these were captured in the plan Epilogue table and are now being batch-addressed.

File Targets

Files to modify:

  • src/forgejo_mcp/tools.py — fix set_label pagination (currently fetches max 100 labels, misses repos with 100+)
  • tests/test_new_tools.py — rename to tests/test_label_comment_repo.py (or similar descriptive name matching tool names)
  • README.md or inline docstrings — document that comment_on_issue and comment_on_pr use the same Forgejo API endpoint but are separate tools for semantic clarity
  • .woodpecker.yml — add pytest step to CI pipeline (tests exist but don't run in CI)

Acceptance Criteria

  • set_label paginates through all labels (not just first 100) when searching for a label by name
  • test_new_tools.py renamed to a descriptive filename matching the tools it tests
  • comment_on_issue vs comment_on_pr distinction documented (inline docstring or README section)
  • .woodpecker.yml includes a pytest step that runs the test suite
  • All existing tests still pass

Test Expectations

  • Unit test: verify set_label pagination works with mocked 150+ label response
  • Run command: pytest tests/ -v

Constraints

  • Match existing code style in tools.py
  • Woodpecker CI pipeline should match the pattern used in other repos (see basketball-api or pal-e-docs for reference)
  • Do NOT add pal-e-docs MCP tools — this is a repo-only agent

Checklist

  • PR opened
  • Tests pass
  • No unrelated changes
  • plan-pal-e-agency — parent plan
  • PR #10 — source of these nits
### Lineage `plan-pal-e-agency` → Epilogue (nits #1-4) ### Repo `forgejo_admin/forgejo-mcp` ### User Story As a platform operator I want forgejo-mcp to handle edge cases and have CI coverage So that agents can rely on it without hitting silent failures ### Context QA review of PR #10 (Forgejo MCP completeness — set_label, comment_on_issue, create_repo) found 4 non-blocking nits. Per convention, these were captured in the plan Epilogue table and are now being batch-addressed. ### File Targets Files to modify: - `src/forgejo_mcp/tools.py` — fix `set_label` pagination (currently fetches max 100 labels, misses repos with 100+) - `tests/test_new_tools.py` — rename to `tests/test_label_comment_repo.py` (or similar descriptive name matching tool names) - `README.md` or inline docstrings — document that `comment_on_issue` and `comment_on_pr` use the same Forgejo API endpoint but are separate tools for semantic clarity - `.woodpecker.yml` — add pytest step to CI pipeline (tests exist but don't run in CI) ### Acceptance Criteria - [ ] `set_label` paginates through all labels (not just first 100) when searching for a label by name - [ ] `test_new_tools.py` renamed to a descriptive filename matching the tools it tests - [ ] `comment_on_issue` vs `comment_on_pr` distinction documented (inline docstring or README section) - [ ] `.woodpecker.yml` includes a pytest step that runs the test suite - [ ] All existing tests still pass ### Test Expectations - [ ] Unit test: verify set_label pagination works with mocked 150+ label response - Run command: `pytest tests/ -v` ### Constraints - Match existing code style in tools.py - Woodpecker CI pipeline should match the pattern used in other repos (see basketball-api or pal-e-docs for reference) - Do NOT add pal-e-docs MCP tools — this is a repo-only agent ### Checklist - [ ] PR opened - [ ] Tests pass - [ ] No unrelated changes ### Related - `plan-pal-e-agency` — parent plan - PR #10 — source of these nits
forgejo_admin 2026-03-13 20:45:02 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ldraney/forgejo-mcp#11
No description provided.