data-layer-contracts

Verify schema-to-factory-to-seeder alignment and detect data layer drifts.

2.3k|769|Updated Jan 14, 2016
One-click install
npx skills add https://github.com/Bottelet/DaybydayCRM --skill data-layer-contracts
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: data-layer-contracts
Source: https://github.com/Bottelet/DaybydayCRM/tree/main/.claude/skills/data-layer-contracts
Command: npx skills add https://github.com/Bottelet/DaybydayCRM --skill data-layer-contracts

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

Ensures alignment and prevents drift between migration schemas, factories, and seeders, ensuring a stable data layer.

Core Features & Use Cases

  • Schema-to-factory-to-seeder Contract: Defines a clear contract chain between schema, factory, and seeder components.
  • NOT NULL Alignment: Ensures all NOT NULL columns are supported by factories or seeders.
  • Factory Rules: Provides guidelines for factories to satisfy NOT NULL columns and reflect migration constraints.
  • Seeder Rules: Ensures seeders only insert schema-valid data without relying on database defaults.
  • Drift Triggers: Identifies schema drift triggers like migration changes, factory mismatches, and seeder mismatches.
  • Identity Rule: Adheres to the principle that primary keys are non-deterministic.

Quick Start

Execute the data-layer-contracts skill to verify the schema-to-factory-to-seeder contract alignment for your data layer.

Frequently Asked Questions about data-layer-contracts

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prevent schema drift between my database migrations and factory seeders?

To prevent schema drift, you verify schema-to-factory-to-seeder alignment by enforcing a strict contract chain. This ensures all NOT NULL columns are supported by factories and seeders, catching migration mismatches before they cause data layer instability.

What is a schema-to-factory-to-seeder contract in a data layer?

A schema-to-factory-to-seeder contract defines a clear alignment chain between migration schemas, factories, and seeders. It ensures factories satisfy NOT NULL constraints and seeders insert schema-valid data without relying on database defaults, maintaining data layer integrity.

How do I ensure my database seeders only insert schema-valid data?

You ensure seeders insert schema-valid data by applying seeder rules that require explicit data provision without relying on database defaults. This verifies seeder accuracy and prevents mismatches against the current migration schema constraints.

Why should primary keys be non-deterministic in factory and seeder logic?

Primary keys should be non-deterministic in factory and seeder logic to adhere to the identity rule. This ensures schema validity and factory integrity by preventing hardcoded primary key values from causing data layer drift or insertion conflicts.

What triggers schema drift in a data layer with factories and seeders?

Schema drift is triggered by migration changes, factory mismatches, and seeder mismatches. Detecting these drifts requires verifying that factory rules and seeder rules still satisfy all NOT NULL columns and reflect the latest migration constraints.

Do I need NOT NULL support in both factories and seeders to verify schema alignment?

Yes, verifying schema alignment requires NOT NULL support in both factories and seeders. The contract chain ensures all NOT NULL columns are explicitly supported, guaranteeing factory integrity and seeder accuracy without relying on database defaults.