Implementation Gate (G4)
Ein Koch probiert sein Gericht, bevor er es serviert. Das Implementation Gate ist dieser Moment im Entwicklungsprozess - es prüft, ob der Code tatsächlich das tut, was er soll, bevor er zum Review geht.
Nach dem Bauen kommt das Prüfen
Das Implementation Gate (G4) steht nach der Implementierungsphase. Hier wird geprüft: Funktioniert der Code? Sind alle Tests grün? Ist die Dokumentation vollständig? Nur was diese Prüfungen besteht, geht weiter zum Code Review.
Vollständiges Beispiel
# Gate: G4_IMPLEMENTATION
# Position: Nach Phase 6 (Implementation), vor Phase 7 (Review)
gate:
id: "G4_IMPLEMENTATION"
name: "Implementation Gate"
description: "Prüft die Qualität und Vollständigkeit der Implementierung"
position:
after_phase: 6 # Implementation
before_phase: 7 # Review
# Prädikate
predicates:
required:
- id: "has_tests_passed"
description: "Alle Tests sind grün"
severity: "critical"
- id: "has_documentation"
description: "Code ist dokumentiert"
severity: "high"
- id: "code_compiles"
description: "Code kompiliert ohne Fehler"
severity: "critical"
- id: "no_linting_errors"
description: "Keine Linting-Fehler"
severity: "medium"
conditional:
- id: "meets_coverage_threshold"
condition: "change_class != 'trivial'"
threshold: 80
- id: "has_integration_tests"
condition: "change_class IN ('normal', 'critical')"
- id: "has_performance_tests"
condition: "change_class == 'critical'"
# Automatische Checks
automated_checks:
- name: "PHPUnit"
command: "vendor/bin/phpunit"
timeout_seconds: 300
- name: "PHPStan"
command: "vendor/bin/phpstan analyse"
level: 8
- name: "PHP CS Fixer"
command: "vendor/bin/php-cs-fixer fix --dry-run"
decision:
pass_condition: "ALL required PASS AND ALL conditional (where applicable) PASS"
on_pass:
action: "transition_to_phase_7"
create_review_request: true
on_fail:
action: "return_to_phase_6"
assignee: "original_implementer"
Gate-Prüfung in der Praxis
# Gate-Prüfung G4_IMPLEMENTATION
gate_check:
gate_id: "G4_IMPLEMENTATION"
change_id: "CHG-2024-0048"
change_class: "normal"
checked_at: "2024-01-15T16:30:00Z"
automated_results:
- check: "PHPUnit"
passed: true
details:
tests: 312
assertions: 1247
failures: 0
errors: 0
time: "14.32s"
coverage: 87.4
- check: "PHPStan"
passed: true
details:
level: 8
errors: 0
files_analysed: 142
- check: "PHP CS Fixer"
passed: true
details:
files_checked: 142
issues: 0
predicate_results:
- predicate_id: "has_tests_passed"
passed: true
- predicate_id: "has_documentation"
passed: true
details:
docblock_coverage: "94%"
readme_updated: true
- predicate_id: "meets_coverage_threshold"
passed: true
details:
required: 80
actual: 87.4
- predicate_id: "has_integration_tests"
passed: true
details:
integration_tests: 23
all_passed: true
verdict: "PASS"
review_request_created: "PR-2024-0048"
next_phase: 7
Warum ist das wichtig?
Das Implementation Gate ist der Qualitätsfilter vor dem menschlichen Review. Es stellt sicher, dass Reviewer keine Zeit mit offensichtlich fehlerhaftem Code verschwenden. Automatische Prüfungen fangen die meisten Probleme ab.
Im Mensch + KI-Code Prozess: Das Implementation Gate (G4) ist nach Phase 6 obligatorisch. Es kombiniert automatische Checks (Tests, Linting, Static Analysis) mit Prädikaten. Bei Change Class "Trivial" sind weniger Prüfungen erforderlich.