docs(acadedoc): update ACADENICE_PATCHES.md with R5.3 Swagger entry
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
21ce2a94c7
commit
d120619245
1 changed files with 41 additions and 0 deletions
|
|
@ -1409,3 +1409,44 @@ Aucune. Toutes les dependances sont deja presentes dans le monorepo Docmost :
|
|||
- Migration idempotente : la contrainte UNIQUE est appliquee via `ALTER TABLE ... ADD CONSTRAINT ... IF NOT EXISTS` avec un catch sur l'erreur si deja existante (certaines versions de Kysely ne supportent pas `ifNotExists` sur les contraintes)
|
||||
- Audit log creation/modification/suppression de commandes
|
||||
- data-testid sur les elements cles pour les tests e2e Playwright
|
||||
|
||||
---
|
||||
|
||||
## Patch R5.3 — OpenAPI Swagger documentation auto-generee
|
||||
|
||||
**Date** : 2026-05-08
|
||||
**Commit** : `21ce2a9`
|
||||
**Scope** : `apps/server/src/main.ts`, tous les controllers `apps/server/src/core/acadenice/*/controllers/*.controller.ts`, `docs/api-docs.md`
|
||||
|
||||
### Packages installes
|
||||
|
||||
- `@nestjs/swagger@^11.4.2` — SwaggerModule + DocumentBuilder + decorators
|
||||
- `nestjs-zod@^5.3.0` — `cleanupOpenApiDoc()` pour post-processing du doc OpenAPI generee (compatible Zod v4)
|
||||
|
||||
### Architecture
|
||||
|
||||
- `main.ts` : SwaggerModule bootstrappe apres app.enableCors(). Active uniquement si `NODE_ENV !== 'production'` OU `SWAGGER_ENABLED=true`. Expose `/api/docs` (UI) et `/api/docs-json` (OpenAPI JSON).
|
||||
- 16 controllers decores : `@ApiTags`, `@ApiBearerAuth`, `@ApiOperation`, `@ApiResponse` (tous status codes), `@ApiParam`, `@ApiQuery`, `@ApiBody` sur chaque methode.
|
||||
- Tags : templates, sync-blocks, audit-log, api-keys, clipper, graph, rbac, comments, notifications, security, backlinks, slash-commands.
|
||||
- `cleanupOpenApiDoc()` de nestjs-zod applique le post-processing standard avant `SwaggerModule.setup()`.
|
||||
|
||||
### Tests
|
||||
|
||||
`src/core/acadenice/swagger.spec.ts` — 8 tests :
|
||||
1. DocumentBuilder produit un objet OpenAPI 3 valide
|
||||
2. Les 12 tags attendus sont tous declares
|
||||
3. BearerAuth + CookieAuth security schemes configures
|
||||
4. @ApiTags present sur RowCommentsController
|
||||
5. @ApiTags present sur SyncBlocksController
|
||||
6. @ApiTags present sur AcadenicePermissionsController
|
||||
7. @ApiTags present sur BacklinksController
|
||||
8. @ApiTags present sur AcadeniceOidcStatusController
|
||||
|
||||
### Acces
|
||||
|
||||
```
|
||||
GET /api/docs # Swagger UI (dev/staging)
|
||||
GET /api/docs-json # OpenAPI 3 JSON spec
|
||||
```
|
||||
|
||||
Voir `docs/api-docs.md` pour generation de SDK client.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue