Serve /api/config endpoint with managed connections
- Langage dominant
- TypeScript
- Étoiles
- 481
- Forks
- 108
- Merge moyen
- 7 j 16 h
- PR mergées (30 j)
- 8
Description
## 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
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par retracer l’endpoint /defaultConnection existant et la génération de defaultConnection.json, puis examinez la manière dont le fichier de configuration et les connexions gérées sont représentés. Le travail est terminé lorsque GET /api/config renvoie un JSON pertinent pour le client avec des IDs de connexion stables, exclut le serveur, gère une configuration absente avec des connexions vides, supprime l’ancien endpoint et dispose d’une couverture d’intégration pour les états de configuration indiqués.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- typescript
- Domaine
- api, backend
- Type d'issue
- Fonctionnalité
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- Calme
- Clarté
- Clairement spécifiée
- Accessibilité débutants
- 48/100