Update GEMINI.md guidelines and add DXW.md standards

This commit is contained in:
2026-02-24 18:11:25 +00:00
parent 23cc78aa98
commit cb88caf52a
2 changed files with 72 additions and 37 deletions

63
DXW.md Normal file
View File

@@ -0,0 +1,63 @@
# dxw Development Standards (GEMINI.md)
This document provides project-level instructions and context for Gemini CLI agents, ensuring adherence to dxw's development standards and practices.
## Core Principles
- **Secure by Design**: Prioritize security at every stage. Follow OWASP Top Ten guidelines.
- **High Quality**: Deliver stable, readable, and well-tested code.
- **Transparency**: Use clear commit messages, detailed PRs, and document architectural decisions.
## Workflow & Task Management
- **Prerequisites**: Ensure you have a clear understanding of requirements and acceptance criteria before starting work.
- **Branching**:
- Always create a new branch for each task.
- Naming convention: `[ticket-number]/[short-description]` or `[type]/[ticket-number]-[short-description]` (e.g., `123/add-login-validation`).
- Avoid using personal names in branch identifiers.
- **TDD (Test-Driven Development)**:
- Develop code and tests concurrently.
- Aim for full test coverage.
- Ensure the test suite passes before every commit.
## Version Control (Git)
- **Atomic Commits**: Make small, focused, and self-contained commits.
- **Commit Messages**:
- Use the imperative mood (e.g., "Add validation" not "Added validation").
- Explain *what*, *why*, and *how*.
- Reference ticket numbers if available.
- **History Management**:
- Regularly rebase on the main development branch.
- Tidy up commit history (e.g., via interactive rebase) before requesting a code review.
- Prevent accidental commitment of sensitive data (API keys, credentials).
## Code Review & Pull Requests
- **Mandatory Review**: All production code changes require review by at least two people (author + reviewer).
- **PR Content**:
- Link to the relevant ticket.
- Describe the problem and the solution.
- Highlight any specific difficulties or trade-offs.
- Include screenshots for UI changes.
- Clarify met acceptance criteria and any follow-up work.
## Deployment & CI/CD
- **Continuous Delivery**: Automate builds, tests, and deployments (e.g., via GitHub Actions).
- **Versioning**:
- Application code: No explicit versioning required.
- Reusable components (libraries, gems, plugins): Must follow [Semantic Versioning](https://semver.org/).
## Documentation
- **Changelog**: Maintain a `CHANGELOG.md` in the repository root for versioned components, following [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- **ADRs**: Document significant architectural decisions using Architectural Decision Records (ADRs).
---
## Agent-Specific Instructions
When working in this repository, you **must**:
1. **Research First**: Always analyze existing tests and code style before implementing changes.
2. **Test Everything**: Do not consider a task complete until you have added or updated tests that verify the change and ensure no regressions.
3. **Commit Atomically**: Do not bundle unrelated changes. Use `git add -p` logic to stage only what is necessary for a specific commit.
4. **Rebase Frequently**: Before proposing a change, ensure your branch is rebased on the latest `main`.
5. **Detailed Explanations**: When explaining your work, focus on the "why" and "how" behind your technical decisions.
6. **Security Audit**: Proactively check for OWASP Top Ten vulnerabilities in any code you write or modify.
7. **No Secrets**: Never output or commit anything that looks like a secret or credential.