validate-project
Run full CI validation for the current project directory
Installation
Suivez les instructions du dépôt pour votre agent. Consultez les fichiers et dépendances avant l’installation.
Voir la source ↗GuidesInstructions
Validate Project
Run complete pre-commit validation for the current project.
When to Use
- Before committing changes
- After major refactoring
- When CI is failing and you need to reproduce locally
- Before creating a pull request
Available Operations
- Go Validation: generate, tidy, fmt, lint, vet, test
- Frontend Validation: lint, format, type-check, test
- Clean Check: Verify no uncommitted changes from generation
Instructions
Step 1: Detect Project Type
Check for these indicators:
-
go.mod→ Go project -
package.jsoninui/→ Has frontend - Directory name → Project identification
Step 2: Go Validation (if applicable)
# 1. Generate code (if applicable)
if grep -q "go:generate" **/*.go 2>/dev/null; then
go generate ./...
fi
# 2. Tidy dependencies
go mod tidy
# 3. Format code
go fmt ./...
# 4. Lint (if config exists)
if [ -f .golangci.yml ] || [ -f .golangci.yaml ]; then
golangci-lint run
fi
# 5. Vet
go vet ./...
# 6. Test
go test -short ./...
Step 3: Frontend Validation (if applicable)
cd ui/user
pnpm run ci
Step 4: Clean Check
if [ -n "$(git status --porcelain)" ]; then
echo "ERROR: Uncommitted changes after generate/tidy"
git status --short
exit 1
fi
Resources
Load these Level 3 resources as needed:
-
scripts/validate.sh- Complete validation script (run directly) -
references/ci-pipeline.md- CI pipeline documentation
Examples
Example 1: Go Project
User asks: "Validate my changes before committing"
Response:
- Detect go.mod → Go project
- Run go generate, tidy, fmt, lint, vet, test
- Check for uncommitted changes
- Report status with ✓ or ✗ for each step
Example 2: Full-Stack Project (obot-entraid)
User asks: "Run full validation"
Response:
- Run Go validation in root
- Run frontend validation in ui/user
- Check for uncommitted changes
- Report combined status
Notes
- Stop on first failure for faster feedback
- Always run clean check last to catch generated file changes
- Use
--shortflag for tests to skip long-running integration tests
Exemples
Consultez les exemples du dépôt source.
Voir la source ↗Historique source
- Date d’indexation
- 2026-01-20
- Mise à jour de l’index
- 2026-01-26
- Branch
- main
Les dates concernent ce répertoire. Consultez le dépôt pour l’historique du code.
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!