원클릭으로
refactor-backend
Panduan refactor khusus Backend (Laravel)
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Panduan refactor khusus Backend (Laravel)
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
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