docs: update for team collaboration with aibo bot
- Add team context section (owner, bot, repo info) - Git config for team members (aibo + developers) - Sign-off now uses configured git identity - Remove redundant repository section references Signed-off-by: Boos4721 <boos4721@icloud.com>
This commit is contained in:
+31
-14
@@ -1,17 +1,42 @@
|
|||||||
# BoosAPI Go Backend Rewrite — Agent Development Brief
|
# BoosAPI Go Backend Rewrite — Team Collaboration Brief
|
||||||
|
|
||||||
You are a senior Go developer tasked with rewriting the BoosAPI backend from Node.js/Fastify/TypeScript to Go. The frontend (React SPA) and database schema remain unchanged.
|
This document is the shared project spec for the Go backend rewrite. All team members (including the **aibo** bot account) follow this brief for task execution, code quality, and documentation.
|
||||||
|
|
||||||
|
## Team Context
|
||||||
|
|
||||||
|
- **Owner:** Boos4721
|
||||||
|
- **Bot:** aibo (CI/CD + automated development, used via `git push` / merge requests)
|
||||||
|
- **Repository:** `https://git.boos.lat/boos/BoosAPI.git` (Gitea self-hosted)
|
||||||
|
- **Branch:** `refactor/go-backend`
|
||||||
|
- **Module:** `github.com/cita-777/boosapi`
|
||||||
|
- **Go version:** 1.26+
|
||||||
|
- **Language:** All code, comments, commit messages, and documentation in **English**
|
||||||
|
|
||||||
|
### Git configuration for team members
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Each developer sets their own identity
|
||||||
|
git config user.name "Your Name"
|
||||||
|
git config user.email "your@email.com"
|
||||||
|
|
||||||
|
# aibo bot uses:
|
||||||
|
# user.name = "aibo"
|
||||||
|
# user.email = "aibo@boos.lat"
|
||||||
|
|
||||||
|
# Always sign off:
|
||||||
|
git commit -s
|
||||||
|
```
|
||||||
|
|
||||||
## Getting Started (from scratch)
|
## Getting Started (from scratch)
|
||||||
|
|
||||||
### Prerequisites
|
### Prerequisites
|
||||||
|
|
||||||
The agent must have these tools available:
|
Required tools:
|
||||||
- `git` — clone and push code
|
- `git` — clone and push code
|
||||||
- `go` (1.26+) — build and test
|
- `go` (1.26+) — build and test
|
||||||
- `gofmt` — code formatting (comes with Go)
|
- `gofmt` — code formatting (comes with Go)
|
||||||
- `curl` — API testing
|
- `curl` — API testing
|
||||||
- `docker` (optional) — container build
|
- `docker` (optional, for container builds)
|
||||||
|
|
||||||
### Step-by-step bootstrap
|
### Step-by-step bootstrap
|
||||||
|
|
||||||
@@ -68,14 +93,6 @@ go vet ./... # final vet check
|
|||||||
go test ./... # final test run
|
go test ./... # final test run
|
||||||
```
|
```
|
||||||
|
|
||||||
### Git configuration
|
|
||||||
|
|
||||||
```bash
|
|
||||||
git config user.name "Boos4721"
|
|
||||||
git config user.email "boos4721@icloud.com"
|
|
||||||
# Always sign off commits: git commit -s
|
|
||||||
```
|
|
||||||
|
|
||||||
## Repository
|
## Repository
|
||||||
|
|
||||||
- **Branch:** `refactor/go-backend`
|
- **Branch:** `refactor/go-backend`
|
||||||
@@ -89,7 +106,7 @@ git config user.email "boos4721@icloud.com"
|
|||||||
2. **Test before claim.** Every handler must have an `httptest` test. Every provider must have a mock HTTP server test. Run `go test ./...` and `go vet ./...` before committing.
|
2. **Test before claim.** Every handler must have an `httptest` test. Every provider must have a mock HTTP server test. Run `go test ./...` and `go vet ./...` before committing.
|
||||||
3. **One phase at a time.** Complete all tasks in the current phase before moving to the next.
|
3. **One phase at a time.** Complete all tasks in the current phase before moving to the next.
|
||||||
4. **Phase 1 is done.** Do not touch Phase 1 files unless fixing a bug.
|
4. **Phase 1 is done.** Do not touch Phase 1 files unless fixing a bug.
|
||||||
5. **Commit convention:** `feat:` for new functionality, `fix:` for bugs, `refactor:` for restructuring, `docs:` for documentation, `test:` for tests. Always sign off: `Signed-off-by: Boos4721 <boos4721@icloud.com>`
|
5. **Commit convention:** `feat:` for new functionality, `fix:` for bugs, `refactor:` for restructuring, `docs:` for documentation, `test:` for tests. Always sign off: `Signed-off-by: aibo <aibo@boos.lat>` (for aibo) or your own name/email.
|
||||||
6. **Go standard:** `gofmt`, `go vet`, no lint warnings. Use stdlib where possible.
|
6. **Go standard:** `gofmt`, `go vet`, no lint warnings. Use stdlib where possible.
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -817,4 +834,4 @@ docker run -p 4000:4000 -e AUTH_TOKEN=admin -e PROXY_TOKEN=proxy boosapi:latest
|
|||||||
3. `gofmt -s -w .` — code is formatted
|
3. `gofmt -s -w .` — code is formatted
|
||||||
4. `git diff --cached` — review for secrets (no real IPs, tokens, passwords)
|
4. `git diff --cached` — review for secrets (no real IPs, tokens, passwords)
|
||||||
5. Commit message follows convention: `feat:`, `fix:`, `refactor:`, `docs:`, `test:`
|
5. Commit message follows convention: `feat:`, `fix:`, `refactor:`, `docs:`, `test:`
|
||||||
6. Sign off: `Signed-off-by: Boos4721 <boos4721@icloud.com>`
|
6. Sign off: `git commit -s` (uses configured user.name/user.email)
|
||||||
|
|||||||
Reference in New Issue
Block a user