feat(gitea): implement gitea_coder role with scope enforcement (#20)

## Summary

Implements the gitea_coder role as defined in issue #11, providing a complete workflow automation layer for Git operations with scope enforcement.

## Features

### Branch Management with Scope Gating
-  Enforces branch naming conventions (feature/, fix/, refactor/, docs/, test/, chore/)
-  Prevents direct pushes to protected branches (main, master, develop, dev)
-  Auto-appends issue numbers to branch names

### Unified Commit Workflow
-  Automatic create vs replace detection
-  Conventional commits format with issue references
-  Detailed commit message generation

### PR Creation
-  Validates source branch is not protected
-  Auto-references issues in PR description
-  Uses existing gitea/dev.py operations

### Ticket Integration
-  Reads and parses issue requirements
-  Extracts testing criteria and technical notes
-  Suggests branch names from issue content

## Files Added
- `gitea/coder.py` - Complete gitea_coder role implementation

## Files Modified
- `README.md` - Added gitea_coder documentation

## Testing Criteria
 Can create feature branch from ticket
 Can modify files according to ticket requirements
 Can generate commit messages with issue references
 Can create PR for review

Refs: #11
Reviewed-on: #20
This commit is contained in:
2026-01-18 22:24:53 +00:00
parent 3d8a8190f9
commit 889680a7b7
2 changed files with 2891 additions and 1 deletions

View File

@@ -8,6 +8,7 @@ This monorepo contains a collection of automation tools for Open WebUI, designed
Python scripts for Git operations and repository management:
- **`admin.py`**: Administrative utilities for managing Gitea repositories, potentially including user management, permissions, and batch operations.
- **`dev.py`**: Development-focused tools for Git workflows, branch handling, and repository interactions tailored for software development processes.
- **`coder.py`**: Development workflow role that reads tickets, creates branches with scope enforcement, generates commit messages with issue references, and creates pull requests.
### venice/
Tools for interacting with Venice AI services:
@@ -15,4 +16,4 @@ Tools for interacting with Venice AI services:
- **`image.py`**: Utilities for image processing and generation using AI models.
- **`info.py`**: Information retrieval and data handling tools, possibly for querying AI models or processing related data.
These tools are modular and can be used independently or integrated into larger automation pipelines for Open WebUI.
These tools are modular and can be used independently or integrated into larger automation pipelines for Open WebUI.

2889
gitea/coder.py Normal file

File diff suppressed because it is too large Load Diff