Generated banner for Dataops
Generated logo for Dataops

Dataops

MicrosoftOfficialPublished by Microsoft

  • Skill
  • Guidelines
  • Software development
  • CC-BY-4.0
  • Low risk
  • Has scripts

From the author

DataOps and DS/MLOps testing reference for data tiering, Bronze-to-Silver validation placement, pipeline invariants, pytest categories, and validation-versus-drift. Use when designing, reviewing, or generating data pipelines, transformation code, data validation, or data-science test suites.
— the description by Microsoft

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

The dataops skill provides a structured reference for designing and reviewing data pipelines and machine learning workflows. It synthesizes engineering best practices regarding data quality tiers (Bronze, Silver, Gold), the strategic placement of validation logic, and the importance of maintaining faithful source copies for pipeline replayability. The skill helps teams distinguish between data validation and drift detection, ensuring that data-heavy systems are robust, testable, and maintainable.

What it does

  • Defines data tier semantics for Bronze, Silver, and Gold storage layers.
  • Provides rules for placing validation at the Bronze-to-Silver boundary.
  • Explains the rationale for maintaining immutable, faithful source copies in the Bronze tier.
  • Offers guidance on distinguishing between data validation and drift detection.
  • Provides a framework for testing data science and MLOps code.
  • Includes a contract for synthetic data operations to ensure safe preflight validation.

When to use it

  • When designing the architecture of a new data pipeline or lakehouse.
  • When reviewing data transformation code or pipeline test suites.
  • When deciding where to implement data validation checks.
  • When troubleshooting pipeline failures that require data replay or recovery.
  • When establishing testing strategies for machine learning models and data loading processes.

Advantages

  • Ensures consistent application of data quality and pipeline invariants.
  • Promotes robust recovery strategies through faithful data ingestion.
  • Clarifies the distinction between validation and drift for better observability.
  • Provides clear, attributed guidance based on established engineering playbooks.
  • Prevents common pitfalls like premature validation before data landing.

Usage examples

“Where should I place validation logic in my ETL pipeline?”
The skill advises placing validation at the Bronze-to-Silver boundary, explaining that Bronze should remain a faithful, immutable copy of the source to support replayability and recovery.
“What is the difference between data validation and drift detection?”
The skill provides a breakdown distinguishing data validation (schema and invariant checks) from drift detection (monitoring changes in data or model signals over time).

Install

  1. Download the skill as a ZIP:

    https://autogineer.com/agent-skills/microsoft/dataops/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip dataops.zip -d .agents/skills

Documentation by Microsoft

DataOps Reference Pack

Goal

Ground pipeline and test generation in the Microsoft CSE engineering playbook so that data tier semantics, validation placement, recovery invariants, and DS/MLOps test technique are applied consistently and attributed accurately.

Inputs

  • The pipeline, transformation, validation, or test work under discussion

  • The tier of each dataset involved, when the consuming workflow records one

  • Existing test layout, package structure, and data-access boundaries

  • A data classification produced elsewhere, when sensitivity matters

Reference index

Read only the reference that matches the active concern.

ReferenceRead this when
data-tiers-and-pipeline-invariants.mdAssigning tier meaning, placing validation, routing malformed records, or asserting replay, idempotency, testability, source-control, and configuration invariants
testing-data-science-and-mlops.mdWriting or reviewing tests for data loading, transformation, model load or predict, data validation, or model robustness
validation-drift-and-observability.mdDistinguishing data validation from drift detection, choosing remediation, or deciding which data and model signals matter
synthetic-data-operation-contract.mdValidating synthetic-data preflight authority, field lineage, conditional subgroup evidence, result linkage, or guarded local replacement
provenance.mdConfirming what is upstream guidance, what is HVE Core derivation, and where upstream is silent

Success criteria

  • Tier language distinguishes the three upstream quality tiers from the additional storage areas.

  • Validation is placed at the Bronze-to-Silver boundary, and the faithful-copy rationale with both replay purposes travels with that placement whether or not the request challenges it.

  • Test guidance names the operation category, its technique, and where mocking stops.

  • Validation and drift keep their distinct definitions and their distinct remediation paths.

  • Every claim traces to an attributed upstream source or is labelled as HVE Core guidance.

  • Synthetic-data generation stops before source access or writes unless its applicable SYNTHETIC_DATA_OPERATION_V1 preflight passes deterministic validation.

Constraints

  • This skill generates code, assertions, and review guidance. It does not execute pipelines, transformation engines, or telemetry backends.

  • Reproduce only the minimum text necessary for a specific technical point, and paraphrase everything else. Attribute every reference and describe accurately what each reference reproduces.

  • Label HVE Core derivations as such. Do not present a derived consequence or a repository convention as upstream guidance.

  • Where upstream is silent, say so rather than inventing an upstream-sounding rule.

Ownership boundaries

This skill decides which data and model signals matter. It does not own the vocabulary, the classification, or the surrounding workflow.

ConcernOwner
Metric names, instrument types, units, cardinality discipline, and the PII emission denylisttelemetry-foundations
Data sensitivity classification and DPIA thresholdsprivacy-standards
Entity semantics, relationships, and which tier a dataset is recorded asThe calling workflow
Feasibility assessment and go/no-go recommendationThe calling workflow

No repository artifact currently owns the last two rows. When the caller supplies neither, state the gap rather than deciding tier assignment or feasibility here.

This skill never decides what is sensitive. It reads a classification produced elsewhere.

For synthetic-data operations, read synthetic-data-operation-contract.md and validate records against synthetic-data-operation-v1.schema.json. The contract records qualified decisions by immutable reference; it does not store source values or replace the authority of data, privacy, Responsible AI, fairness, or domain owners.

Stop rules

  • Stop and route metric naming, units, and cardinality to telemetry-foundations, the OpenTelemetry-aligned vocabulary and instrumentation skill. Route data sensitivity to privacy-standards, the privacy classification and DPIA-threshold reference.

  • Stop and state the gap when the request depends on guidance the playbook does not provide, such as a drift threshold or an alerting policy.

  • Stop and offer the correct placement when asked to validate before Bronze landing, rather than complying or refusing without an alternative.

Attribution

This pack declares CC-BY-4.0 because both bodies of content it holds carry that license.

Source pages are Microsoft CSE Code With Engineering Playbook documentation licensed CC BY 4.0. The upstream project applies MIT through a separate LICENSE-CODE file to code samples only, which this pack does not reproduce. The references derive from those documentation pages and have been changed: upstream guidance is paraphrased, and only identifiers and structural names are carried across as facts. THIRD-PARTY-NOTICES carries the attribution CC BY 4.0 requires and states that the content has been changed. Each reference cites its own upstream URL and states what it reproduces.

Content labelled as HVE Core derivation is repository-original material under CC BY 4.0. See provenance.md for the consolidated source map and derivation labels.

Files

references/data-tiers-and-pipeline-invariants.md


title: Data tiers and pipeline invariants description: Bronze, Silver, and Gold tier semantics, Bronze-to-Silver validation placement, malformed routing, and the recovery and testability invariants that support them

Source

Microsoft CSE Code-with-Engineering-Playbook, Data and DataOps Fundamentals, documentation licensed CC BY 4.0. Content below is derived from that page and has been changed. Tier names, storage-area names, and artifact classes are preserved as identifiers; the definitions, the validation-placement rule, the replay rationale, and the surrounding guidance are paraphrased. THIRD-PARTY-NOTICES carries the attribution CC BY 4.0 requires. Statements labelled HVE Core are repository guidance, not playbook rules.

The quality model has three tiers

Upstream describes a widely used data-quality model built from three tiers, and recommends partitioning the lake along them.

TierDefinitionOptimized forTypical consumer
bronzeLanding zone for source data as received, with at most minimal shaping. Held immutable and append-only.Writes and ingestionPipeline replay and recovery
silverCleaned, partly processed data meeting a declared schema and declared data invariants, and possibly carrying extra enrichment.AnalysisData scientists
goldHeavily processed data tuned for reads, usually laid out as conventional fact and dimension tables.ReadsBusiness users

Three further storage areas are named, and they are not tiers

Upstream separately lists further areas worth keeping apart when a lake is organized: malformed data, intermediate sandbox data, and libraries, packages, and binaries.

These are storage areas, not members of the quality model. A workflow may record malformed or sandbox alongside the three tiers as a practical convenience, but describing five upstream tiers overstates the source.

Validation belongs at the Bronze-to-Silver boundary

Check the data as soon as it is usable. Put validation on the hop from Bronze into Silver, so what arrives in Silver satisfies a named schema and the invariants declared for it. Screening at that point also keeps surprise changes in the incoming data from breaking the pipeline downstream.

Records that fail the check are diverted into a store set aside for malformed data, where they can be investigated.

Why not before Bronze landing

Adding validation before data lands in Bronze is tempting and is explicitly not recommended upstream. Bronze earns its place by mirroring the source system as faithfully as it can, and that fidelity is what makes two different replays possible:

  1. Replay to test validation logic. The pipeline can be re-run against a faithful source copy while validation rules are developed or corrected.

  2. Replay to recover from corruption. When a bug in transformation code corrupts downstream data, the pipeline is replayed from the faithful copy after the fix is deployed.

Both purposes matter. Summarizing them as a single "replayability" benefit removes the reason a team cannot simply re-ingest from the source system.

Refusal with alternative

When asked to place validation before Bronze landing, do not silently comply and do not refuse without a path forward. State the faithful-copy rationale and the two replay purposes, then offer the Bronze-to-Silver boundary with malformed-record routing as the correct placement.

Pipeline invariants

Replayability and idempotency

Make pipelines re-playable and idempotent. Silver and Gold data can be corrupted by unintended bugs or unexpected input changes; replayability allows recovery by deploying a code fix and re-running the pipeline. Idempotency ensures replay does not duplicate data.

Transformation separated from data access

Ensure transformation code is testable. Abstracting transformation code away from data-access code is the key enabler for unit tests that target transformation logic. The upstream example of this separation is moving transformation code out of notebooks and into packages. Running tests against notebooks is possible, but extracting into packages speeds the feedback cycle and increases developer productivity.

Source-control scope

Every artifact needed to build the pipeline from scratch belongs in source control:

  • Infrastructure-as-code artifacts

  • Database objects such as schema definitions, functions, and stored procedures

  • Reference and application data

  • Data pipeline definitions

  • Data validation and transformation logic

New code entering the repository is reviewed both automatically, through linting and credential scanning, and by peers. Changes move through dev, test, and production via a safe, repeatable CI/CD process.

Secure configuration

Sensitive configuration such as database connection strings lives in a central secure location, accessible to the appropriate services within a specific environment. On Azure this is typically a Key Vault per environment that services query at runtime.

Observability includes data

Monitor infrastructure, pipelines, and data. Beyond base infrastructure and pipeline runs, the malformed record store is named as a common area that should have data monitoring. See validation-drift-and-observability.md for the signal-selection boundary.

Tier consequences (HVE Core)

Upstream defines the tiers and states one placement rule. It does not enumerate what each tier permits or forbids. The table below is HVE Core guidance derived from the upstream definitions, offered so tier assignment produces decidable behavior.

ValuePermittedForbiddenDirectly upstream-backed?
bronzeAppend-only ingestion; faithful source copy; origin for both replay purposesValidation assertions at landing; in-place transformation; mutation that breaks faithful-copy statusThe validation refusal is upstream. The remaining consequences are derived.
silverSchema conformance; declared invariants; augmentation; analysis consumptionMarking complete without a declared schema and invariants; accepting unvalidated Bronze inputDerived
goldRead-optimized serving; fact and dimension shapePresenting a renamed Silver table as Gold without read optimization or fact and dimension shapeDerived
malformedReceiving validation failures; being treated as a monitored signalBeing treated as a quality tier; being discarded rather than monitoredRouting and monitoring are upstream. Tier exclusion is derived.
sandboxExploratory and intermediate workCarrying downstream guarantees; being consumed as if Silver or GoldDerived

Notebook-to-package extraction (HVE Core)

The invariant is upstream: move transformation logic out of notebooks and into packages so it can be unit tested. Upstream states no threshold.

Any trigger a workflow applies, such as a cell-length limit or duplicated transformation logic across cells, is a repository convention. Offer extraction to a package function with a matching test stub, and attribute the threshold to the convention rather than to the playbook.

Derived dataset persistence and versioning (HVE Core)

Upstream sets the tier semantics and the replay invariant. The following storage conventions are repository guidance for curated and derived datasets produced during analysis work.

Persist curated or derived datasets in a columnar format rather than a row-oriented text format. Columnar storage preserves types across a write-and-read cycle, which text formats do not, and analysis reads are overwhelmingly column-selective.

Name a derived dataset so its content and lineage are readable from the filename:

<entity>-<scope>-<transform>-v<major>.<minor>.<extension>

Use lowercase and hyphens throughout. Increment the minor version for an additive change that leaves existing columns and their meaning intact. Increment the major version when the schema changes in a way that could break a consumer: a removed column, a renamed column, a changed type, or a changed unit.

The distinction matters because consumers pin to what they read. An additive change is safe to pick up silently; a breaking change must be visible in the name so a stale consumer fails loudly rather than reading a column that no longer means what it did.

Derived datasets are not Bronze. They carry the guarantees of the tier they were produced from, and exploratory derivations belong in the sandbox area rather than in a tier that implies downstream guarantees.

Adjacent guidance

Upstream also covers isolation levels and concurrency control on the same page: choose isolation levels deliberately, treat eventual consistency as a last resort behind batching, sharding, and caching, and prefer optimistic concurrency using a version increment or ETag over two-phase locking. This is relevant when the engagement touches transactional stores and is otherwise peripheral to pipeline work.

Requirements and compatibility

Written for: GitHub Copilot, Claude Code

Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Needs: Claude Code frontmatter, Needs Python

Security

What our scanner noticed· Low risk

  • Scripts that your agent may run

This skill includes scripts that your agent may run. Read them before you use it.

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

Published by
Microsoft
Publisher
Microsoft (Official)
Source
microsoft/hve-core · .github/skills/data-science-engineering/dataops · commit f425e94
Licence
Creative Commons Attribution 4.0 International (redistribution allowed)
  • LICENSE (written by AutoGineer)
  • ATTRIBUTION.md (written by AutoGineer)
Synced

AutoGineer is not affiliated with or endorsed by Microsoft or Microsoft.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download dataops.zip