com um clique
refactor-backend
Panduan refactor khusus Backend (Laravel)
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
Panduan refactor khusus Backend (Laravel)
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Baseado na classificação ocupacional SOC
Workflow untuk fitur non-standar seperti Dashboard, Settings, User Management, atau Halaman Khusus.
Panduan refactor E2E test per modul menggunakan shared test factories, termasuk pertimbangan refactoring frontend/backend agar testing konsisten.
Panduan refactor khusus Frontend (React SPA)
Panduan membuat unit test, feature test, dan e2e test sesuai pola codebase.
Panduan membuat migration, seeder, dan factory sesuai standar Laravel.
Workflow untuk membuat fitur CRUD kompleks dengan relasi foreign key, filter multi-field, dan komponen frontend terpisah.
| name | Refactor Backend |
| description | Panduan refactor khusus Backend (Laravel) |
Lakukan refactor kode backend secara TERKONTROL tanpa merusak API contract, response structure, atau test existing.
| Tool | Kapan Digunakan |
|---|---|
mcp_laravel-boost_database-schema | WAJIB cek schema sebelum refactor Model |
mcp_laravel-boost_list-routes | Verifikasi routes tidak berubah |
mcp_laravel-boost_search-docs | Cari best practices Laravel |
mcp_laravel-boost_tinker | Test query Eloquent sebelum commit |
activate_laravel_logging_and_debugging_tools() | Aktifkan tool error/log jika test gagal |
read_file | Baca file referensi |
Controller HANYA BOLEH:
StoreDepartmentRequest, UpdateEmployeeRequestGunakan jika:
Gunakan jika:
Gunakan jika:
# WAJIB cek schema sebelum refactor:
mcp_laravel-boost_database-schema()
# Baca file existing untuk pattern:
read_file(filePath: "/absolute/path/to/project/app/Http/Controllers/PositionController.php", startLine: 1, endLine: 220)
read_file(filePath: "/absolute/path/to/project/app/Http/Requests/Positions/StorePositionRequest.php", startLine: 1, endLine: 220)
| Pattern | File Referensi |
|---|---|
| Thin Controller | app/Http/Controllers/PositionController.php |
| FormRequest | app/Http/Requests/Positions/StorePositionRequest.php |
| Resource | app/Http/Resources/Positions/PositionResource.php |
// ✅ BENAR
public function store(StoreDepartmentRequest $request): JsonResponse
public function update(UpdateDepartmentRequest $request, Department $department): JsonResponse
// ❌ SALAH
public function store(Request $request) // tidak spesifik
| Method | Status Code |
|---|---|
store() | 201 Created |
update() | 200 OK |
destroy() | 204 No Content |
/**
* Store a newly created department.
*
* @param \App\Http\Requests\StoreDepartmentRequest $request
* @return \Illuminate\Http\JsonResponse
*/
// ✅ BENAR
use App\Models\CoaVersion;
use Illuminate\Validation\Rule;
$activeVersion = CoaVersion::where('status', 'active')->first();
'code' => ['required', Rule::unique('approval_flows')->ignore($this->approval_flow)];
// ❌ SALAH
$activeVersion = \App\Models\CoaVersion::where('status', 'active')->first();
'code' => ['required', \Illuminate\Validation\Rule::unique('approval_flows')->ignore($this->approval_flow)];
::class metadata.JANGAN buat DTO/Action/Domain Service jika:
// turbo-all
./vendor/bin/sail test
Jika test gagal:
activate_laravel_logging_and_debugging_tools()
# lalu gunakan tool error/log Laravel yang tersedia untuk cek exception terbaru
Gunakan mcp_laravel-boost_list-routes untuk verify routes tidak berubah.
./vendor/bin/sail test