mirror of
https://github.com/johndoe6345789/AutoMetabuilder.git
synced 2026-04-24 13:54:59 +00:00
Add ROADMAP.md to outline project phases and upcoming features
This commit is contained in:
19
ROADMAP.md
Normal file
19
ROADMAP.md
Normal file
@@ -0,0 +1,19 @@
|
||||
# Roadmap
|
||||
|
||||
## Phase 1: Foundation
|
||||
- [x] Basic GitHub Integration (fetching issues/PRs)
|
||||
- [x] Local YAML prompt loading
|
||||
- [x] Tool-based SDLC operations (branch/PR creation)
|
||||
- [x] Multi-language support for messages
|
||||
|
||||
## Phase 2: Enhanced Context & Reasoning
|
||||
- [ ] **Roadmap Awareness**: Bot should explicitly read and update `ROADMAP.md`.
|
||||
- [ ] **Repository Indexing**: Implement a way to index the codebase for better context.
|
||||
- [ ] **Declarative Task Processing**: Move more logic into JSON/YAML specifications.
|
||||
- [ ] **Feedback Loop**: Support for the AI to read comments on PRs it created.
|
||||
|
||||
## Phase 3: Advanced Automation
|
||||
- [ ] **Automated Testing**: Integration with test runners to verify changes before PR.
|
||||
- [ ] **Linting Integration**: Automatically run and fix linting issues.
|
||||
- [ ] **Multi-Model Support**: Easily switch between different LLM providers.
|
||||
- [ ] **CI/CD Integration**: Github Actions to run AutoMetabuilder on schedule or trigger.
|
||||
26
prompt.yml
26
prompt.yml
@@ -1,16 +1,22 @@
|
||||
messages:
|
||||
- role: system
|
||||
content: >-
|
||||
Use software architecture best practices, unit testing, e2e testing,
|
||||
linting.
|
||||
You are an expert software engineer following SDLC best practices.
|
||||
Ensure high code quality through:
|
||||
1. Requirement analysis and clear design.
|
||||
2. Writing modular, maintainable, and well-documented code.
|
||||
3. Preferring declarative design (e.g., looping over JSON specifications) over imperative or hardcoded logic.
|
||||
4. Implementing comprehensive unit and integration tests.
|
||||
5. Following security best practices and performance optimization.
|
||||
6. Adhering to project-specific coding standards and linting rules.
|
||||
7. Keeping documentation (README, ROADMAP, etc.) up to date.
|
||||
- role: user
|
||||
content: >-
|
||||
Implement features found in ROADMAP.md and README.md, keep both files up
|
||||
to date. Write playwright and unit tests. Follow code style. Use JSON
|
||||
schema but its mostly correct so leave the schema alone. Index repository
|
||||
and make notes. Align styling with old/ folder while sticking with plain
|
||||
SASS files. Work towards MVP. Run linter and fix lint issues. Ensure
|
||||
development DBAL is aligned with C++ production DBAL. Tables, Prisma
|
||||
schemas and types should be generated using DBAL. C++ CLI frontend can
|
||||
interface with DBAL and make life a bit easier. Implement any stub code.
|
||||
Analyze the current state of the repository, including open issues,
|
||||
pull requests, and ROADMAP.md (if it exists). Your primary objective is
|
||||
to implement the next logical items from the ROADMAP.md while addressing
|
||||
any urgent issues. If ROADMAP.md is missing, your priority is to
|
||||
initialize it by analyzing the repository, marking completed tasks, and
|
||||
listing upcoming work. Ensure all changes are tested, linted, and
|
||||
properly documented. Update ROADMAP.md as you complete tasks.
|
||||
model: openai/gpt-4o
|
||||
|
||||
@@ -26,8 +26,17 @@ def load_prompt_yaml() -> dict:
|
||||
|
||||
|
||||
def get_sdlc_context(gh: GitHubIntegration, msgs: dict) -> str:
|
||||
"""Retrieve SDLC context (issues and PRs) from GitHub."""
|
||||
"""Retrieve SDLC context (issues, PRs, and Roadmap) from GitHub/Local."""
|
||||
sdlc_context = ""
|
||||
|
||||
# Load ROADMAP.md if it exists, otherwise add instruction to create it
|
||||
if os.path.exists("ROADMAP.md"):
|
||||
with open("ROADMAP.md", "r", encoding="utf-8") as f:
|
||||
roadmap_content = f.read()
|
||||
sdlc_context += f"\n{msgs.get('roadmap_label', 'ROADMAP.md Content:')}\n{roadmap_content}\n"
|
||||
else:
|
||||
sdlc_context += f"\n{msgs.get('missing_roadmap_msg', 'ROADMAP.md is missing. Please analyze the repository and create it.')}\n"
|
||||
|
||||
if gh:
|
||||
try:
|
||||
issues = gh.get_open_issues()
|
||||
|
||||
@@ -10,6 +10,8 @@
|
||||
"error_github_not_available": "Error: GitHub integration not available for tool call.",
|
||||
"error_github_repo_missing": "GITHUB_REPOSITORY environment variable not set",
|
||||
"sdlc_context_label": "SDLC Context:",
|
||||
"roadmap_label": "ROADMAP.md Content:",
|
||||
"open_issues_label": "Open Issues:",
|
||||
"open_prs_label": "Open Pull Requests:"
|
||||
"open_prs_label": "Open Pull Requests:",
|
||||
"missing_roadmap_msg": "ROADMAP.md is missing. Please analyze the repository, create ROADMAP.md with tickboxes for completed items, and list tasks that need to be done."
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user