Repository navigation
Conversation
12c8009 to
ca4638d
Compare
dc78a38 to
632bff8
Compare
a93974c to
7517f70
Compare
632bff8 to
2ea571f
Compare
f456a32 to
ae1f311
Compare
shikanime
left a comment
There was a problem hiding this comment.
Verdict : Commentaire
La composition Effect est propre et la conversion service→pipelines respecte le style du repo, mais le chemin force de deleteClusterRow régresse par rapport à la base de la pile : il supprime les environnements sans supprimer la ligne du cluster lui-même. Deux assertions de hook (emitAsync/addLog) ont aussi disparu des specs — c'est précisément le contrat strangler qu'on doit verrouiller ici. À corriger avant rebase sur #2495.
ae1f311 to
7e804f0
Compare
79951d1 to
283771a
Compare
752050a to
ea5c6f0
Compare
rebases cleanly. Signed-off-by: Shikanime Deva <22115108+shikanime@users.noreply.github.com>
…ked admin-token PR
ClusterService injects EventEmitter2; import EventsModule so the provider resolves and the backend stops crashing at boot. Co-authored-by: Automata <automata@shikanime.studio> Signed-off-by: William Phetsinorath <william.phetsinorath-open@interieur.gouv.fr>
Signed-off-by: William Phetsinorath <william.phetsinorath-open@interieur.gouv.fr> Change-Id: Ie239c572870d655ca697a5ad53e487496a6a6964
Co-authored-by: Automata <automata@shikanime.studio> Signed-off-by: William Phetsinorath <william.phetsinorath-open@interieur.gouv.fr> Change-Id: I93db2e1e646d689dee53abaf14959ba66a6a6964
Co-authored-by: Automata <automata@shikanime.studio> Signed-off-by: William Phetsinorath <william.phetsinorath-open@interieur.gouv.fr>
Co-authored-by: Automata <automata@shikanime.studio> Signed-off-by: William Phetsinorath <william.phetsinorath-open@interieur.gouv.fr>
Type the cluster service spec against real dependencies: mockDeep<PrismaService>, mockDeep EventEmitter2/LogService doubles with resolved promises and a satisfies-checked BaseConfig fixture, replacing all 'as never' constructor and mockResolvedValue escapes. Co-authored-by: Automata <automata@shikanime.studio> Signed-off-by: William Phetsinorath <william.phetsinorath-open@interieur.gouv.fr> Change-Id: I7c729fa65527c99287cba4eace43b2956a6a6964
No spec imports it.effect/it.prop; the specs run Effect.runPromise directly. Remove it from the package and the pnpm catalog. Signed-off-by: William Phetsinorath <william.phetsinorath-open@interieur.gouv.fr> Change-Id: Ie50f5fa9fde1ef9edee61da76c3aa1426a6a6964
283771a to
e35f558
Compare
|
StephaneTrebel
left a comment
There was a problem hiding this comment.
La branche est à jour sur sa base empilée pr/cluster-migration, mais elle introduit une fuite de fichier temporaire dans le générateur d’icônes et un import de module dupliqué. Corriger ces deux constats, puis relancer les contrôles de la pile avant nouvelle revue.

1 New Issue
0 Fixed Issues
0 Accepted Issues
No data about coverage (56.40% Estimated after merge)
Issues liées
#2495 (PR empilée, se rebaser sur main après sa fusion)
Quel est le comportement actuel ?
Les méthodes de
ClusterServiceorchestrent impérativement les requêtes Prisma, les hooks d'événements et les logs ; les erreurs métier sont levées par exceptions HTTP depuis le service.Quel est le nouveau comportement ?
Le module cluster est composé en pipelines Effect déclaratifs : le service retourne des valeurs Effect (
Effect.gen+pipe), le contrôleur décode l'entrée, exécute l'effet et mappe les erreurs métier typées (ClusterNotFound,LabelTaken,EnvironmentsActive,HookFailed) vers les statuts HTTP 404/409/400/422. Les lectures sont rejouées avec un backoff exponentiel jitteré. Les écritures (create, update, delete) transitent par le pipeline avec hooks upsert et logs.Cette PR introduit-elle un breaking change ?
Non.
Autres informations
pnpm testracine exit 0.