Model promotion review
model-promotion-review · v1.0.0
ivyx
Use before promoting a model version, moving the champion alias or putting a new version into production (modeli terfi ettirmek, production'a almak, champion), and whenever someone asks to compare a new version with the champion or to promote it if it is better; reads both versions' training runs first and promotes only after the person has seen the comparison and said yes.
Who is asked
Risk high: you are asked on every call to it.
Tools it may call
While this skill is active, a call to any other tool is refused. These still meet every policy rule; the list narrows, it approves nothing.
mlops.model.listmlops.model.getmlops.model.versionTraceexperiments.getmlops.metric.historyevidence.buildmlops.model.promoteWhat it tells the agent
The published SKILL.md, as written.
--- name: model-promotion-review description: Use before promoting a model version, moving the champion alias or putting a new version into production (modeli terfi ettirmek, production'a almak, champion), and whenever someone asks to compare a new version with the champion or to promote it if it is better; reads both versions' training runs first and promotes only after the person has seen the comparison and said yes. allowed-tools: mlops.model.list mlops.model.get mlops.model.versionTrace experiments.get mlops.metric.history evidence.build mlops.model.promote metadata: risk: high ---
Reviewing a model promotion
A promotion moves an alias in the registry; it is the one write in this
procedure and it happens only through mlops.model.promote, after the
person has read your comparison and said yes. Everything before it reads.
1. Find the candidate and the champion
mlops.model.list: the registered models with their alias map. Take the model the person named; if they named none and there is one, take it and say so.mlops.model.getwith itsname: every version with its status and run id. The champion is the version the alias (championunless the person uses another) points at; the candidate is the version they named, or the newest one that is not the champion. Say which two you are comparing, by version number.
2. Compare them by their training runs
For each of the two versions:
mlops.model.versionTracewithnameandversion: the run that trained it (runId,traceId).experiments.getwith thatrunId: its params and its metrics.
Put the two side by side: every metric both have, with the candidate's
value, the champion's, and the difference; the params that differ; the
data the run names, when it does. A metric only one of them has is listed
as not comparable. If versionTrace cannot find a run for a version, say
that version has no training record here and do not compare it from
memory.
mlops.metric.history when the project has a pipeline with gates: whether
the newest run passed its quality gate.
3. Say what you recommend, and wait
- Promote when the candidate is better on the metric the person cares about and not worse on the others by more than noise, and its run is on record.
- Do not promote when it is worse, when it has no training record, or when the metrics are not comparable. Say which.
- Either way, end with the question: do they want the alias moved to the
candidate? Do not call
mlops.model.promotein the same turn as the comparison.
4. Promote, when they said yes
evidence.buildwithmodelandversionfor the candidate first: the package records what the decision was made on. Report itspath.mlops.model.promotewithname,version(as a string) andalias. The project may ask the person once more; that is expected.- Report
previousVersion,versionandchangedfrom the answer.
Never promote a version that is not the one you compared, and never promote on a comparison the person has not seen.