GKGlyphKnitVin Rao
Work

Public project

MLOps Readiness Scaffold

A deterministic release gate for model or API behavior, built as an offline QA-to-MLOps portfolio artifact.

PythonunittestJSONLGitHub ActionsMakeCI quality gate

Context

Personal showcase project that maps QA automation patterns onto ML and data-system release checks.

Problem

Model behavior can drift into subjective review. The useful engineering shape is a repeatable gate: versioned cases, provider boundaries, deterministic assertions, thresholds, and report evidence.

Role

Designed and implemented the harness, sample cases, provider boundary, readiness thresholding, JSON report shape, tests, and CI workflow.

Constraints

  • No paid APIs, secrets, network calls, or model downloads.
  • Small enough for reviewers to run locally.
  • Clear extension points for real model providers and stricter production gates.

Approach

Converted expected behavior into JSONL eval cases, routed outputs through a swappable provider, evaluated text and structured JSON expectations, and surfaced a CI-friendly pass/fail readiness result.

Challenges

The artifact had to prove the release-gate shape without pretending five sample cases are a production model benchmark.

Impact

  • Offline reviewer path runs without secrets, paid APIs, network calls, or model downloads.
  • Repo evidence: local-only eval path, JSON report artifact, failing baseline command, and unit coverage for loader, metrics, JSON contracts, and report metadata.

Recruiter takeaway

Shows a credible bridge from SDET work into ML testing, data validation, and MLOps quality without overclaiming model expertise.

Engineering manager takeaway

Useful pattern for teams that need lightweight eval gates before they invest in a full ML platform stack.

config/readiness.example.json

{
  "cases": "data/sample_cases.jsonl",
  "model": "rule-based",
  "min_pass_rate": 0.95,
  "output": "reports/readiness-report.json"
}