chore: ai agent config
Signed-off-by: Dmytro Stanchiev <git@dmytros.dev>
This commit is contained in:
19
.ruler/03-ZOD-GUIDE.md
Normal file
19
.ruler/03-ZOD-GUIDE.md
Normal file
@@ -0,0 +1,19 @@
|
||||
## Zod Guidelines
|
||||
|
||||
### Schema Definition
|
||||
- Define all schemas in `src/types.ts`
|
||||
- Use `z.object()` for objects, `z.array()` for arrays
|
||||
- Mark optional fields with `.optional()`
|
||||
- Create generic schemas for reusable structures
|
||||
|
||||
### Type Inference
|
||||
- Always infer types from schemas: `export type Foo = z.infer<typeof FooSchema>`
|
||||
|
||||
### Validation
|
||||
- Use `.parse()` to validate API responses
|
||||
- Only validate successful responses (`retcode === RESPONSE_CODES.SUCCESS`)
|
||||
- Return unvalidated responses for error cases
|
||||
|
||||
### Patterns
|
||||
- Follow existing schema naming: `FooSchema` for schemas, `Foo` for types
|
||||
- Use `ZZZResponseSchema(dataSchema)` for API responses
|
||||
Reference in New Issue
Block a user