chore: update .gitignore and improve coding standards documentation

- Added .cursor/sessions/* to .gitignore to prevent session files from being tracked.
- Enhanced coding standards in SKILL.md by adding semicolons to TypeScript examples for consistency.
- Improved formatting in continuous learning, detail layout, and other SKILL.md files for better readability.

These changes aim to streamline development processes and maintain code quality across the project.
This commit is contained in:
shancheas
2026-08-25 17:50:17 +07:00
parent ff6814d038
commit f2f0be111a
48 changed files with 962 additions and 742 deletions
+10 -10
View File
@@ -19,18 +19,18 @@ You are a Test-Driven Development (TDD) specialist. This repo uses **Vitest** (a
### Step 1: Write the test first (RED)
```typescript
import { describe, it, expect } from 'vitest'
import { createFullPageSchema } from './full-page.validator'
import { describe, it, expect } from 'vitest';
import { createFullPageSchema } from './full-page.validator';
describe('createFullPageSchema', () => {
const t = (key: string) => key
const t = (key: string) => key;
it('rejects an empty code', () => {
const schema = createFullPageSchema(t)
const result = schema.safeParse({ code: '', name: 'Widget' })
expect(result.success).toBe(false)
})
})
const schema = createFullPageSchema(t);
const result = schema.safeParse({ code: '', name: 'Widget' });
expect(result.success).toBe(false);
});
});
```
### Step 2: Run it (must FAIL)
@@ -47,7 +47,7 @@ export const createFullPageSchema = (t: (key: string) => string) =>
z.object({
code: compose(z.string(), required(t('common:fields.code'))),
name: compose(z.string(), required(t('common:fields.name')), rangeLength(3, 50, t('common:fields.name'))),
})
});
```
### Step 4: Run until green, then refactor. Coverage via `pnpm test` / `pnpm check:all`.
@@ -65,7 +65,7 @@ Mock `@repo/core-api` and `apiClient` — not a database.
```ts
vi.mock('@repo/core-api/http-client', () => ({
createHttpClient: () => ({ get: vi.fn(), post: vi.fn(), put: vi.fn(), delete: vi.fn() }),
}))
}));
```
## Edge cases you MUST test