Demo proposal: MLOps evaluation and quality gate pipeline with self-labeling simulation and data-poisoning detection - #3053
Merged
Conversation
ericcornelissen
approved these changes
Sep 23, 2026
ericcornelissen
left a comment
Collaborator
There was a problem hiding this comment.
Nice and interesting proposal, good luck with the demo!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Assignment Proposal
Title
MLOps evaluation and quality gate pipeline with self-labeling simulation and data-poisoning detection
Names and KTH ID
Deadline
Week 4
Category
Demo
Description
We demonstrate a minimal MLOps pipeline that extends a traditional CI/CD workflow with automated evaluation of a machine-learning model. A small web application using a physics-based 3D dice simulator built with three.js and the Rapier physics engine generates trusted data (dice rolls). Because the app controls the physics, it knows the true outcome of every roll, so a Playwright script can produce an unlimited labeled image dataset with no manual labelling. Rolls are fully reproducible, due to using a determimistic seed. A small image classifier learns to predict the die's top face from pixels alone, and is evaluated with tests in the CI stage. Crucially, that test set is generated and labeled by the trusted physics oracle, independently of the training data, so it stays a reliable reference. If accuracy on it falls below a defined threshold, or below the currently deployed model, the pipeline fails and blocks deployment, turning the test into an automated quality gate.
In the demo we will:
Relevance
Machine-learning models are increasingly embedded into production software, and many are retrained on data or labels supplied by users, which makes them vulnerable to poisoning: a few incorrect or malicious labels entering the training set can silently degrade behavior for everyone. Shipping retrained models without automated evaluation therefore risks that degradation reaching production. Treating model evaluation as an automated, versioned quality gate in CI/CD extends established DevOps practices — continuous testing, fast feedback, and reliable, gated releases — to ML-powered features. Because the gate is anchored to a trusted, isolated evaluation set that untrusted data cannot influence, it makes an often-invisible failure mode — poisoning from untrusted feedback — observable and testable end to end, which is directly applicable to any pipeline that retrains a model on user-supplied data.