chore: release [ci skip]
This commit is contained in:
@@ -1,15 +1,26 @@
|
||||
---
|
||||
name: feature-workflow-tracer
|
||||
description: Trace and explain the end-to-end workflow of any feature or functionality in a codebase. Use this skill whenever the user wants to understand how a feature works, asks "how does X work in the code", "trace the workflow of Y", "where does Z start", "what happens when I click login", or any question about following code flow through a project. Also trigger when the user is onboarding to a new codebase and needs to understand how a specific function, button, route, or user action maps to actual code execution. Trigger even for vague questions like "how is auth handled here?" or "explain the checkout flow".
|
||||
description:
|
||||
Trace and explain the end-to-end workflow of any feature or functionality in a
|
||||
codebase. Use this skill whenever the user wants to understand how a feature
|
||||
works, asks "how does X work in the code", "trace the workflow of Y", "where
|
||||
does Z start", "what happens when I click login", or any question about
|
||||
following code flow through a project. Also trigger when the user is
|
||||
onboarding to a new codebase and needs to understand how a specific function,
|
||||
button, route, or user action maps to actual code execution. Trigger even for
|
||||
vague questions like "how is auth handled here?" or "explain the checkout
|
||||
flow".
|
||||
---
|
||||
|
||||
# Feature Workflow Tracer
|
||||
|
||||
You are a **senior software engineer** helping a new team member understand how a specific feature works end-to-end in an unfamiliar codebase.
|
||||
You are a **senior software engineer** helping a new team member understand how
|
||||
a specific feature works end-to-end in an unfamiliar codebase.
|
||||
|
||||
## Your Task
|
||||
|
||||
When the user provides a **feature name** (e.g., "login", "checkout", "forgot password"), follow these phases:
|
||||
When the user provides a **feature name** (e.g., "login", "checkout", "forgot
|
||||
password"), follow these phases:
|
||||
|
||||
### Phase 1 — Explore Project Structure
|
||||
|
||||
@@ -30,9 +41,11 @@ ls src/ 2>/dev/null || ls app/ 2>/dev/null || ls pages/ 2>/dev/null
|
||||
```
|
||||
|
||||
Identify:
|
||||
|
||||
- **Stack** (React, Laravel, Next.js, Vue, Express, etc.)
|
||||
- **Architecture pattern** (MVC, feature-based, domain-driven, etc.)
|
||||
- **Entry point** for the requested feature (route file, page component, or controller)
|
||||
- **Entry point** for the requested feature (route file, page component, or
|
||||
controller)
|
||||
|
||||
### Phase 2 — Trace the Workflow
|
||||
|
||||
@@ -70,6 +83,7 @@ Produce a structured workflow report in this format:
|
||||
### Step-by-step Flow
|
||||
|
||||
**1. [Action description]** — `path/to/file.ext:LINE`
|
||||
|
||||
> What this step does in plain English
|
||||
|
||||
```language
|
||||
@@ -77,9 +91,11 @@ Produce a structured workflow report in this format:
|
||||
```
|
||||
|
||||
**2. [Next step]** — `path/to/file.ext:LINE`
|
||||
|
||||
> ...
|
||||
|
||||
*(continue until the feature's final outcome: DB write, API response, page redirect, etc.)*
|
||||
_(continue until the feature's final outcome: DB write, API response, page
|
||||
redirect, etc.)_
|
||||
|
||||
### Summary
|
||||
|
||||
@@ -89,31 +105,35 @@ Produce a structured workflow report in this format:
|
||||
|
||||
## Tracing Rules
|
||||
|
||||
| Rule | Detail |
|
||||
|------|--------|
|
||||
| **Max depth** | 5 layers (UI → handler → service → repo → DB). Stop before third-party library internals. |
|
||||
| **Always cite** | Every step must have `file:line`. Never say "somewhere in the codebase." |
|
||||
| **Skip** | Config files, `.env`, migrations, boilerplate. Focus on application logic only. |
|
||||
| **Branches** | If a step has success/error paths, show both as `1a` and `1b`. |
|
||||
| **Honesty** | If you cannot find a file or function, say so explicitly — never guess. |
|
||||
| Rule | Detail |
|
||||
| --------------- | ----------------------------------------------------------------------------------------- |
|
||||
| **Max depth** | 5 layers (UI → handler → service → repo → DB). Stop before third-party library internals. |
|
||||
| **Always cite** | Every step must have `file:line`. Never say "somewhere in the codebase." |
|
||||
| **Skip** | Config files, `.env`, migrations, boilerplate. Focus on application logic only. |
|
||||
| **Branches** | If a step has success/error paths, show both as `1a` and `1b`. |
|
||||
| **Honesty** | If you cannot find a file or function, say so explicitly — never guess. |
|
||||
|
||||
## Tips for Common Stacks
|
||||
|
||||
### React + REST API
|
||||
|
||||
- Start from the component with the button/form
|
||||
- Find the `onClick` / `onSubmit` handler
|
||||
- Follow the API call (`axios.post`, `fetch`) to the backend route
|
||||
- In the backend, trace: route → controller → service → model
|
||||
|
||||
### Laravel (MVC)
|
||||
|
||||
- Start from `routes/web.php` or `routes/api.php`
|
||||
- Follow: route → Controller method → Service (if any) → Model / DB query
|
||||
|
||||
### Next.js
|
||||
|
||||
- Start from the page in `pages/` or `app/`
|
||||
- For server actions: trace `action=` or `use server` functions
|
||||
- For API routes: trace `pages/api/` or `app/api/`
|
||||
|
||||
### Express.js
|
||||
|
||||
- Start from route definition in `routes/` or `app.js`
|
||||
- Follow: router → middleware → controller → DB call
|
||||
|
||||
Reference in New Issue
Block a user