mirror of
https://github.com/Donchitos/Claude-Code-Game-Studios.git
synced 2026-06-27 13:01:50 +00:00
48 coordinated Claude Code subagents for indie game development: - 3 leadership agents (creative-director, technical-director, producer) - 10 department leads (game-designer, lead-programmer, art-director, etc.) - 23 specialist agents (gameplay, engine, AI, networking, UI, tools, etc.) - 12 engine-specific agents (Godot, Unity, Unreal with sub-specialists) Infrastructure: - 34 skills (slash commands) for workflows, reviews, and team orchestration - 8 hooks for commit validation, asset checks, session management - 11 path-scoped rules enforcing domain-specific standards - 28 templates for design docs, reports, and collaborative protocols Key features: - User-driven collaboration protocol (Question → Options → Decision → Draft → Approval) - Engine version awareness with knowledge-gap detection (Godot 4.6 pinned) - Phase gate system for development milestone validation - CLAUDE.md kept under 80 lines with extracted doc imports Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
81 lines
2.0 KiB
Markdown
81 lines
2.0 KiB
Markdown
# Hook: pre-push-test-gate
|
|
|
|
## Trigger
|
|
|
|
Runs before any push to a remote branch. Mandatory for pushes to `develop`
|
|
and `main`.
|
|
|
|
## Purpose
|
|
|
|
Ensures the build compiles, unit tests pass, and critical smoke tests pass
|
|
before code reaches shared branches. This is the last automated quality gate
|
|
before code affects other developers.
|
|
|
|
## Implementation
|
|
|
|
```bash
|
|
#!/bin/bash
|
|
# Pre-push hook: Build and test gate
|
|
|
|
REMOTE="$1"
|
|
URL="$2"
|
|
|
|
# Only enforce full gate for develop and main
|
|
PROTECTED_BRANCHES="develop main"
|
|
CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
|
|
|
|
FULL_GATE=false
|
|
for branch in $PROTECTED_BRANCHES; do
|
|
if [ "$CURRENT_BRANCH" = "$branch" ]; then
|
|
FULL_GATE=true
|
|
break
|
|
fi
|
|
done
|
|
|
|
echo "=== Pre-Push Quality Gate ==="
|
|
|
|
# Step 1: Build
|
|
echo "Building..."
|
|
# Adapt to your build system:
|
|
# make build || exit 1
|
|
# dotnet build || exit 1
|
|
# cargo build || exit 1
|
|
echo "Build: PASS"
|
|
|
|
# Step 2: Unit tests
|
|
echo "Running unit tests..."
|
|
# Adapt to your test framework:
|
|
# python -m pytest tests/unit/ -x || exit 1
|
|
# dotnet test tests/unit/ || exit 1
|
|
# cargo test || exit 1
|
|
echo "Unit tests: PASS"
|
|
|
|
if [ "$FULL_GATE" = true ]; then
|
|
# Step 3: Integration tests (only for protected branches)
|
|
echo "Running integration tests..."
|
|
# python -m pytest tests/integration/ -x || exit 1
|
|
echo "Integration tests: PASS"
|
|
|
|
# Step 4: Smoke tests
|
|
echo "Running smoke tests..."
|
|
# python -m pytest tests/playtest/smoke/ -x || exit 1
|
|
echo "Smoke tests: PASS"
|
|
|
|
# Step 5: Performance regression check
|
|
echo "Checking performance baselines..."
|
|
# python tools/ci/perf_check.py || exit 1
|
|
echo "Performance: PASS"
|
|
fi
|
|
|
|
echo "=== All gates passed ==="
|
|
exit 0
|
|
```
|
|
|
|
## Agent Integration
|
|
|
|
When this hook fails:
|
|
1. Build failure: invoke `lead-programmer` to diagnose
|
|
2. Unit test failure: invoke `qa-tester` to identify the failing test and
|
|
`gameplay-programmer` or relevant programmer to fix
|
|
3. Performance regression: invoke `performance-analyst` to analyze
|