Some checks failed
Go Benchmark / Performance Regression Check (push) Has been cancelled
Cerberus Integration / Cerberus Security Stack Integration (push) Has been cancelled
Upload Coverage to Codecov / Backend Codecov Upload (push) Has been cancelled
Upload Coverage to Codecov / Frontend Codecov Upload (push) Has been cancelled
CodeQL - Analyze / CodeQL analysis (go) (push) Has been cancelled
CodeQL - Analyze / CodeQL analysis (javascript-typescript) (push) Has been cancelled
CrowdSec Integration / CrowdSec Bouncer Integration (push) Has been cancelled
Docker Build, Publish & Test / build-and-push (push) Has been cancelled
Quality Checks / Auth Route Protection Contract (push) Has been cancelled
Quality Checks / Codecov Trigger/Comment Parity Guard (push) Has been cancelled
Quality Checks / Backend (Go) (push) Has been cancelled
Quality Checks / Frontend (React) (push) Has been cancelled
Rate Limit integration / Rate Limiting Integration (push) Has been cancelled
Security Scan (PR) / Trivy Binary Scan (push) Has been cancelled
Supply Chain Verification (PR) / Verify Supply Chain (push) Has been cancelled
WAF integration / Coraza WAF Integration (push) Has been cancelled
Docker Build, Publish & Test / Security Scan PR Image (push) Has been cancelled
Repo Health Check / Repo health (push) Has been cancelled
History Rewrite Dry-Run / Dry-run preview for history rewrite (push) Has been cancelled
Prune Renovate Branches / prune (push) Has been cancelled
Renovate / renovate (push) Has been cancelled
Nightly Build & Package / sync-development-to-nightly (push) Has been cancelled
Nightly Build & Package / Trigger Nightly Validation Workflows (push) Has been cancelled
Nightly Build & Package / build-and-push-nightly (push) Has been cancelled
Nightly Build & Package / test-nightly-image (push) Has been cancelled
Nightly Build & Package / verify-nightly-supply-chain (push) Has been cancelled
95 lines
3.3 KiB
Markdown
Executable File
95 lines
3.3 KiB
Markdown
Executable File
---
|
|
applyTo: '*'
|
|
description: 'Repository structure guidelines to maintain organized file placement'
|
|
---
|
|
|
|
# Repository Structure Guidelines
|
|
|
|
## Root Level Rules
|
|
|
|
The repository root should contain ONLY:
|
|
|
|
- Essential config files (`.gitignore`, `Makefile`, etc.)
|
|
- Standard project files (`README.md`, `CONTRIBUTING.md`, `LICENSE`, `CHANGELOG.md`)
|
|
- Go workspace files (`go.work`, `go.work.sum`)
|
|
- VS Code workspace (`Chiron.code-workspace`)
|
|
- Primary `Dockerfile` (entrypoint and compose files live in `.docker/`)
|
|
|
|
## File Placement Rules
|
|
|
|
### Implementation/Feature Documentation
|
|
|
|
- **Location**: `docs/implementation/`
|
|
- **Pattern**: `*_SUMMARY.md`, `*_IMPLEMENTATION.md`, `*_COMPLETE.md`, `*_FEATURE.md`
|
|
- **Never** place implementation docs at root
|
|
|
|
### Docker Compose Files
|
|
|
|
- **Location**: `.docker/compose/`
|
|
- **Files**: `docker-compose.yml`, `docker-compose.*.yml`
|
|
- **Override**: Local overrides go in `.docker/compose/docker-compose.override.yml` (gitignored)
|
|
- **Exception**: `docker-compose.override.yml` at root is allowed for backward compatibility
|
|
|
|
### Docker Support Files
|
|
|
|
- **Location**: `.docker/`
|
|
- **Files**: `docker-entrypoint.sh`, Docker documentation (`README.md`)
|
|
|
|
### Test Artifacts
|
|
|
|
- **Never commit**: `*.sarif`, `*_test.txt`, `*.cover` files at root
|
|
- **Location**: Test outputs should go to `test-results/` or be gitignored
|
|
|
|
### Debug/Temp Config Files
|
|
|
|
- **Never commit**: Temporary JSON configs like `caddy_*.json` at root
|
|
- **Location**: Use `configs/` for persistent configs, gitignore temp files
|
|
|
|
### Scripts
|
|
|
|
- **Location**: `scripts/` for general scripts
|
|
- **Location**: `.github/skills/scripts/` for agent skill scripts
|
|
|
|
## Before Creating New Files
|
|
|
|
Ask yourself:
|
|
|
|
1. Is this a standard project file? → Root is OK
|
|
2. Is this implementation documentation? → `docs/implementation/`
|
|
3. Is this Docker-related? → `.docker/` or `.docker/compose/`
|
|
4. Is this a test artifact? → `test-results/` or gitignore
|
|
5. Is this a script? → `scripts/`
|
|
6. Is this runtime config? → `configs/`
|
|
|
|
## Directory Structure Reference
|
|
|
|
```
|
|
/
|
|
├── .docker/ # Docker configuration
|
|
│ ├── compose/ # All docker-compose files
|
|
│ └── docker-entrypoint.sh # Container entrypoint
|
|
├── .github/ # GitHub workflows, agents, instructions
|
|
├── .vscode/ # VS Code settings and tasks
|
|
├── backend/ # Go backend source
|
|
├── configs/ # Runtime configurations
|
|
├── docs/ # Documentation
|
|
│ ├── implementation/ # Implementation/feature docs archive
|
|
│ ├── plans/ # Planning documents
|
|
│ └── ... # User-facing documentation
|
|
├── frontend/ # React frontend source
|
|
├── scripts/ # Build/test scripts
|
|
├── test-results/ # Test outputs (gitignored)
|
|
├── tools/ # Development tools
|
|
└── [standard files] # README, LICENSE, Makefile, etc.
|
|
```
|
|
|
|
## Enforcement
|
|
|
|
This structure is enforced by:
|
|
|
|
- `.gitignore` patterns preventing commits of artifacts at root
|
|
- Code review guidelines
|
|
- These instructions for AI assistants
|
|
|
|
When reviewing PRs or generating code, ensure new files follow these placement rules.
|