Files
our-claude-skills/official-skils-collection/notion-spec-to-implementation/examples/database-migration.md
Andrew Yim 341d5f5a5b Initial commit: Claude Skills Factory with 8 refined custom skills
Custom Skills (ourdigital-custom-skills/):
- 00-ourdigital-visual-storytelling: Blog featured image prompt generator
- 01-ourdigital-research-publisher: Research-to-publication workflow
- 02-notion-organizer: Notion workspace management
- 03-research-to-presentation: Notion research to PPT/Figma
- 04-seo-gateway-strategist: SEO gateway page strategy planning
- 05-gateway-page-content-builder: Gateway page content generation
- 20-jamie-brand-editor: Jamie Clinic branded content GENERATION
- 21-jamie-brand-guardian: Jamie Clinic content REVIEW & evaluation

Refinements applied:
- All skills converted to SKILL.md format with YAML frontmatter
- Added version fields to all skills
- Flattened nested folder structures
- Removed packaging artifacts (.zip, .skill files)
- Reorganized file structures (scripts/, references/, etc.)
- Differentiated Jamie skills with clear roles

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-10 17:56:04 +09:00

2.4 KiB

Example: Database Migration Implementation

User Request: "Plan and implement the database migration for user preferences schema"

Workflow

1. Find & Fetch Spec

Notion:notion-search → Found "User Preferences Schema Migration Spec"
Notion:notion-fetch → Extracted requirements

Spec Summary: Migrate from JSON blob to structured schema for better performance and data integrity.

2. Parse Requirements

  • Current: JSONB preferences column
  • Target: Separate user_preferences and notification_preferences tables
  • Must maintain: Backward compatibility during migration
  • Performance: Support 1M+ users with zero downtime

3. Create Implementation Plan

Notion:notion-create-pages
pages: [{
  properties: {
    title: "Implementation Plan: User Preferences Migration"
  },
  content: "[Full implementation plan with phases]"
}]

Plan included:

  • Phase 1: Create new tables with indexes
  • Phase 2: Backfill data from JSONB
  • Phase 3: Dual-write mode (both old and new)
  • Phase 4: Switch reads to new schema
  • Phase 5: Drop old JSONB column

4. Find Task Database & Create Tasks

Notion:notion-search → Found "Engineering Tasks" database
Notion:notion-fetch → Got schema (Task, Status, Priority, Assignee, etc.)

Notion:notion-create-pages
parent: { data_source_id: "collection://xyz" }
pages: [
  {
    properties: {
      "Task": "Write migration SQL scripts",
      "Status": "To Do",
      "Priority": "High",
      "Sprint": "Sprint 25"
    },
    content: "## Context\nPart of User Preferences Migration...\n\n## Acceptance Criteria\n- [ ] Migration script creates tables\n- [ ] Indexes defined..."
  },
  // ... 4 more tasks
]

Tasks created:

  1. Write migration SQL scripts
  2. Implement backfill job
  3. Add dual-write logic to API
  4. Update read queries
  5. Rollback plan & monitoring

5. Track Progress

Regular updates to implementation plan with status, blockers, and completion notes.

Key Outputs

Implementation Plan Page (linked to spec) 5 Tasks in Database (with dependencies, acceptance criteria) Progress Tracking (updated as work progresses)

Success Factors

  • Broke down complex migration into clear phases
  • Created tasks with specific acceptance criteria
  • Established dependencies (Phase 1 → 2 → 3 → 4 → 5)
  • Zero-downtime approach with rollback plan
  • Linked all work back to original spec