Skip to content

Commit 695794b

Browse files
committed
much better
1 parent 98874bf commit 695794b

File tree

1 file changed

+35
-13
lines changed

1 file changed

+35
-13
lines changed

src/content/docs/getting-started/first-steps-in-mature-projects.md renamed to src/content/docs/getting-started/first-steps-in-mature-projects.mdx

Lines changed: 35 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
title: First steps in mature projects
33
---
44

5+
import { Steps } from "@astrojs/starlight/components";
6+
57
Large, long-lived repositories require a different onboarding flow than greenfield projects. The first objective is
68
predictability, not speed.
79

@@ -31,7 +33,10 @@ In [Expensify](https://github.com/Expensify/App), tasks can be created inside re
3133
place to view all tasks relevant to one user. The feature was a home-screen widget named `Your tasks`, sourcing tasks
3234
from the self-DM report and rendering only when tasks exist. Here is a rough outline of what was done:
3335

36+
<Steps>
37+
3438
1. Start in **ask** mode and map the current implementation:
39+
3540
```md
3641
Before proposing changes, map:
3742

@@ -40,8 +45,10 @@ from the self-DM report and rendering only when tasks exist. Here is a rough out
4045
3. where home widgets are implemented.
4146
Show exact files and functions.
4247
```
48+
4349
2. Summarize the exploration output using `/summarize` to reclaim context window for planning the feature.
4450
Then ask for a plan with strict constraints.
51+
4552
```md
4653
I want to add a "Your tasks" widget to home screen.
4754
Requirements:
@@ -56,31 +63,46 @@ from the self-DM report and rendering only when tasks exist. Here is a rough out
5663
Use @TimeSensitiveSection as implementation reference.
5764
Keep diffs surgical and avoid unrelated refactors.
5865
```
66+
5967
3. Review the plan in a separate thread or window before implementation.
60-
- This often catches hidden coupling assumptions.
61-
- If needed, revise the plan before writing any feature code.
68+
69+
This often catches hidden coupling assumptions.
70+
If needed, revise the plan before writing any feature code.
71+
6272
4. Implement tests first.
63-
- Add unit tests and acceptance-path coverage before production code.
64-
- Fix ESLint/TypeScript issues immediately to keep feedback clean.
65-
- Commit them before proceeding with the next step.
73+
74+
Add unit tests and acceptance-path coverage before production code.
75+
Fix ESLint/TypeScript issues immediately to keep feedback clean.
76+
Commit them before proceeding with the next step.
77+
6678
5. Execute implementation steps in parallel when independent.
67-
- Keep changes small and traceable.
68-
- If reused UI pieces are too tightly coupled to another screen, stop and keep boundaries clean.
79+
80+
Keep changes small and traceable.
81+
If reused UI pieces are too tightly coupled to another screen, stop and keep boundaries clean.
82+
6983
6. Run [Cursor Agent Review](https://cursor.com/docs/agent/review) and then verify manually.
70-
- In this case, automated review found an important edge case: deletions are soft deletions, so deleted tasks must
71-
be filtered.
84+
85+
In this case, automated review found an important edge case: deletions are soft deletions, so deleted tasks must
86+
be filtered.
87+
7288
7. Use [Cursor Debug Mode](https://cursor.com/docs/agent/modes#debug) to address the issue.
73-
- The agent can add `console.log` statements to help with debugging.
74-
- The integrated browser with log access enables the agent to inspect changes on the fly in a closed loop.
89+
90+
The agent can add `console.log` statements to help with debugging.
91+
The integrated browser with log access enables the agent to inspect changes on the fly in a closed loop.
92+
7593
8. Ask the agent to fill the PR template based on actual changes.
76-
- Because this prompt was run in the same agent thread, the agent had a lot of useful context from the previous
77-
steps, which often produces a high-quality draft for further manual writing.
94+
95+
Because this prompt was run in the same agent thread, the agent had a lot of useful context from the previous
96+
steps, which often produces a high-quality draft for further manual writing.
97+
7898
```md
7999
Fill our PR template based only on this branch's changes.
80100
Include: scope, test evidence, risks, and follow-up tasks.
81101
Do not claim work that was not implemented.
82102
```
83103

104+
</Steps>
105+
84106
This flow is intentionally conservative: ask first, plan explicitly, test first, implement surgically, and verify edge
85107
cases before broadening scope.
86108

0 commit comments

Comments
 (0)