Replace void returns with { success: true } across all API endpoints
- Add successResponseSchema to common.ts for explicit success responses
- Update all auth, me, orgs, and admin procedures to return { success: true }
- Update contract.ts to use successResponseSchema instead of z.void()
- Add ast-grep rule to prevent future z.void() usage in contracts
- Add build:packages script to root package.json
- Fix test file lint errors with eslint-disable comments
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
15
.ast-grep/rules/no-void-output.yml
Normal file
15
.ast-grep/rules/no-void-output.yml
Normal file
@@ -0,0 +1,15 @@
|
||||
id: no-void-output
|
||||
language: typescript
|
||||
severity: error
|
||||
message: Do not use z.void() for output - use successResponseSchema instead
|
||||
note: |
|
||||
Endpoints should return `{ success: true }` instead of void.
|
||||
This makes the API more explicit and avoids issues with TypeScript
|
||||
expecting void-returning Promises.
|
||||
|
||||
Replace `.output(z.void())` with `.output(successResponseSchema)` and ensure
|
||||
the handler returns `{ success: true }`.
|
||||
rule:
|
||||
pattern: $EXPR.output(z.void())
|
||||
files:
|
||||
- packages/api-contract/**/*.ts
|
||||
Reference in New Issue
Block a user