Commit Graph

13 Commits

Author SHA1 Message Date
meeks 25473ed684 refactor: extract focused clients from GiteaClient (Slices 1-6)
- Create gitea/issues_client.py with IssuesClient class (9 methods)
- Create gitea/prs_client.py with PullRequestsClient class (17 methods)
- Create gitea/files_client.py with FilesClient class (4 methods)
- Create gitea/notifications_client.py with NotificationsClient class (2 methods)
- Create gitea/repos_client.py with ReposClient class (2 methods)
- Create gitea/__init__.py to export all client classes
- Remove delegation methods from GiteaClient (now ~70 lines)
- Update all callers to use sub-clients (client.issues, client.prs, etc.)
- Update test files to mock sub-client attributes

GiteaClient is now a facade that provides access to focused sub-clients:
- repos: Repository operations (ReposClient)
- issues: Issue operations (IssuesClient)
- prs: Pull request operations (PullRequestsClient)
- files: File and git ref operations (FilesClient)
- notifications: Notification operations (NotificationsClient)

Refs: #godclass-refactor
2026-07-17 07:31:05 +02:00
meeks 3c94c3cfac refactor: remove duplicate add_comment and add_label methods from IssueTools
- Removed duplicate dd_comment method (kept dd_comment_to_issue)
- Removed duplicate dd_label method (kept dd_label_to_issue)
- Updated dispatcher.py to remove duplicate tool registrations
- Updated coding_prompt.py to reference only dd_comment_to_issue
- Removed corresponding duplicate tests from test_issue_tools.py

This addresses section 10.1 (Confusing Naming) in bad_code.md
2026-07-16 14:33:58 +02:00
meeks 2ab87d507f refactor: extract hardcoded values to config (section 5.3)
- Add AGENT_USERNAMES and GITEA_ORG_FILTER settings to gitea/config.py
- Update core/dispatcher.py to use AGENT_USERNAMES from config
- Update gitea/client.py to use GITEA_ORG_FILTER in list_all_user_repos() and list_unread_notifications()
2026-07-16 13:54:52 +02:00
meeks 9b63fbbcfc refactor: remove GiteaTools facade, use focused tool classes directly
- Removed gitea/tools/gitea_tools.py (useless facade layer)
- Removed tests/test_gitea_tools.py (tests for removed facade)
- Updated core/dispatcher.py to use IssueTools, PRTools, FileTools, GitTools directly
- Updated core/orchestrator.py to use individual tool instances
- Updated main.py to create individual tool instances

This eliminates the triple layer of indirection (Issue 2.2 from bad_code.md)
where GiteaTools just delegated to IssueTools/PRTools/etc with zero added value.
2026-07-16 13:15:18 +02:00
meeks 26d69707c6 refactor: log previously swallowed exceptions in dispatcher.py 2026-07-16 12:54:06 +02:00
meeks a14e2bdd50 Refactor vacuous interface hierarchy and remove core/interfaces.py 2026-07-16 12:49:12 +02:00
Michael Ingvarsson c5dd178fd6 refactor: raise error on auth failure and clean up meeks-ai fallback 2026-07-16 12:33:57 +02:00
Michael Ingvarsson b47a3b3146 fix chdir 2026-07-16 12:27:04 +02:00
Michael Ingvarsson 88d9ac2105 deduplicate 2026-07-16 12:12:08 +02:00
Michael Ingvarsson 479223ceb2 fix useless factory 2026-07-16 12:09:12 +02:00
Michael Ingvarsson cf1e33474e fix assert used 2026-07-16 11:48:55 +02:00
Michael Ingvarsson a341a67727 feat(ai): add parallel processing for search and generation - Add parallel search and generation, schema validation, tests, and better error handling 2026-07-16 11:44:34 +02:00
mi222eh 5f35f56edc Refactor code structure for improved readability and maintainability 2026-07-06 21:37:20 +02:00