Serve /api/config endpoint with managed connections
- Lenguaje dominante
- TypeScript
- Estrellas
- 481
- Forks
- 108
- Merge medio
- 8 d 9 h
- PR fusionados (30 d)
- 7
Descripción
## Parent PRD
#1660
## What to build
Add a `GET /api/config` endpoint that returns the client-relevant subset of the config file (everything except the `server` block). This replaces the current `/defaultConnection` endpoint and `defaultConnection.json` file generation.
The endpoint returns connections (keyed by stable ID with name, url, queryEngine, authentication, fetchTimeout, nodeExpansionLimit), feedbackUrl, and any other client-relevant fields. The `server` block is filtered out since it contains server-only settings.
## Acceptance criteria
- [ ] `GET /api/config` returns client-relevant config as JSON
- [ ] `server` block is excluded from the response
- [ ] Connections include their stable key/ID in the response
- [ ] Returns empty connections object when no config file is present
- [ ] Old `/defaultConnection` endpoint removed
- [ ] Integration tests for the endpoint with various config states
## Blocked by
- Blocked by #1661
## User stories addressed
- User story 1
- User story 7
## Related Issues
- Part of #1660
Guía de contribución
Línea de trabajo
Comienza rastreando el endpoint /defaultConnection existente y la generación de defaultConnection.json; después, revisa cómo se representan el archivo de configuración y las conexiones administradas. El trabajo estará terminado cuando GET /api/config devuelva JSON relevante para el cliente con IDs de conexión estables, excluya el servidor, gestione una configuración ausente con conexiones vacías, elimine el endpoint antiguo y tenga cobertura de integración para los estados de configuración indicados.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- typescript
- Área
- api, backend
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Tranquilo
- Claridad
- Bien especificado
- Aptitud para principiantes
- 48/100