Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Data Pipeline

ASecurity

Builds an ingestion or ELT job that can be safely re-run: declared contract and grain, idempotent writes, an explicit rule for late and duplicate records, an incremental path proven against a full recompute, and freshness alerting on rows rather than on task exit codes. Use when building or fixing a pipeline, when planning a backfill or replay of historical rows into a warehouse table, when a schema change needs a backfill, or when a job produced duplicate rows.

9 stars
0 votes
0 copies
0 views
Added 9/27/2026
ai-agentsrustgit

Security Analysis

A100/100

Scanned 9/27/2026

Install to Claude Code

$npx -y skills add khuynh22/agent-dev-team --skill data-pipeline --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Data Pipeline?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Data Pipeline
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/khuynh22-data-pipeline/badge)](https://www.skillsdirectory.com/skills/khuynh22-data-pipeline)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: data-pipeline
description: Builds an ingestion or ELT job that can be safely re-run: declared contract and grain, idempotent writes, an explicit rule for late and duplicate records, an incremental path proven against a full recompute, and freshness alerting on rows rather than on task exit codes. Use when building or fixing a pipeline, when planning a backfill or replay of historical rows into a warehouse table, when a schema change needs a backfill, or when a job produced duplicate rows.
license: MIT
metadata:
  phase: build
  owners: [data-engineer]
  version: "0.1.0"
---

# Data Pipeline

A pipeline is a promise about rows: this many, this fresh, at this grain, keyed like this.
Write the promise down first, then make the job keep it even when it runs twice.

Standing reference: `references/data-quality-checklist.md`.

## Process

1. **Write the contract before the job.** Source, grain ("one row per order per status
   change"), primary key, expected volume per run, freshness target, and what a null means
   in each nullable column. A pipeline with no declared grain accumulates duplicates that
   nobody notices for a quarter, and by then three dashboards depend on the inflated number.

2. **Make the write idempotent.** Re-running the same input must produce the same output.
   Two shapes work: merge on the key, or delete-and-insert a bounded partition. Append into
   a table with no dedupe key is a duplicate factory; the first retry proves it.

3. **Decide the lateness rule out loud.** What is the watermark, how late may a record
   arrive and still be processed, and what happens to one that arrives later. Dropping late
   records is a legitimate choice. Dropping them without writing that down is a defect that
   surfaces during someone else's incident.

4. **Handle duplicates at the source of truth, not downstream.** Deduplicating in every
   consuming query means every future consumer must remember to do it, and one will not.

5. **Build incremental, prove it against a full recompute.** Run the incremental logic over
   one historical partition and compare row counts and one summed measure against the
   complete rebuild of that partition. Equality is the evidence. Without it, the incremental
   path is a guess that will diverge slowly.

6. **Test at the boundaries.** Freshness, volume against a trailing band, uniqueness on the
   key, referential integrity on join keys, nullability on required columns. Tests belong
   where data enters your ownership and where it leaves it, not on every intermediate step.

7. **Alert on the data, not the task.** A DAG that exits zero while writing zero rows is the
   failure that costs a week, and a task-failure alert never fires for it. Alert on max
   timestamp and on row count.

8. **Report cost.** Bytes scanned, slot or warehouse seconds, storage delta. Correct and
   over budget is not done.

## Backfills

A backfill is a production change to historical data. Treat it like a deployment.

- Bound it: one partition first, then a range, never the whole table in one statement.
- Write it so it can be stopped and resumed. A backfill that must complete or be restarted
  from zero will be restarted from zero, at the worst time.
- Compare the backfilled partition against the old values before overwriting the rest, and
  keep the comparison.
- Never delete raw history to fix a derived error. Fix forward in the derived layer; raw is
  the audit trail.

## Schema changes

- Additive first: add the new column, populate it, migrate readers, then remove the old one.
  A rename in one step breaks every reader between deploy and deploy.
- State what happens to readers during the change, including the ones you do not own.
- A destructive change (drop, type narrowing, retention reduction) is irreversible. It
  escalates; it does not get scheduled for a Friday.

## Output

```markdown
## Pipeline: <name>

- **Contract:** grain <one row per X> · key <cols> · freshness <target> · volume <expected>
- **Idempotency:** <merge | delete-insert> — ran twice, row counts <n> and <n>
- **Late data:** watermark <n>, outside it <dropped | reprocessed>, counted as <metric>
- **Incremental proof:** partition <p>, incremental <n> rows / <sum>, full recompute <n> / <sum>
- **Tests:** <checks, where they run, what they page>
- **Cost:** <bytes scanned / slot seconds / storage delta>
- **Rollback:** <how to undo, and what is lost>
```

## Verification

- The job ran twice on identical input; both row counts are quoted and equal.
- The incremental partition matches the full recompute; both numbers quoted.
- Quality tests were run against deliberately corrupted input and failed as designed. A
  test never seen red proves nothing here either.
- The freshness alert was triggered by holding data back, not assumed to work.
- Cost is an absolute number.

## Red flags

| Thought | Reality |
|---------|---------|
| "It is fine to re-run" | Run it twice and diff before you believe that. |
| "Append is simpler" | Until the retry, and then the duplicates are indistinguishable. |
| "The DAG is green" | Green means exit zero. It says nothing about rows written. |
| "Late data is rare" | It is rare until the upstream incident, which is when the number matters most. |
| "I will backfill after launch" | Then the column has two meanings and both are in production. |
| "I will fix the number with an UPDATE" | Now the table disagrees with the pipeline and neither can be trusted. |
| "Nobody queries this table" | Verify. Nobody queried it until the exec dashboard did. |

Attribution

khuynh22khuynh22
View sourceMore from khuynh22 →
SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Related Skills

Caveman

Ultra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".

1074701 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

694821 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3351 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

691 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →