Skip to content

Latest commit

 

History

History
53 lines (34 loc) · 1.9 KB

File metadata and controls

53 lines (34 loc) · 1.9 KB

Roadmap for hot_migrations_on_deploy.md

1. Make Schema.fs the real source of truth

Status: complete

Completed:

  • MigLib owns reusable code generation and migration/runtime functionality
  • generated Db.fs carries compiled Schema, SchemaHash, SchemaIdentity, and DbFile
  • mig runtime/codegen flows use compiled assemblies/modules
  • .fsx support is removed from runtime, codegen, and tests

2. Define declarative schema metadata for generated migrations

Status: deferred for now

Completed:

  • PreviousNameAttribute for explicit table and column renames
  • DropColumnAttribute for explicit source-column drops on surviving tables
  • heuristic rename inference removed
  • automatic mapping restricted to clearly safe cases only
  • unsupported data-losing transitions fail clearly during planning

Remaining:

  • define the next declarative metadata primitives beyond PreviousName and DropColumn
  • decide how supported non-trivial transformations are expressed in Schema.fs
  • keep unsupported transitions failing clearly at planning/generation time

3. Simplify mig around the new model

Status: complete

Completed:

  • compiled-module mode for runtime commands
  • compiled-module mode for path-only commands
  • compiled-schema mode for mig codegen
  • CLI/help/docs aligned with generated Db.fs defaults

Remaining:

  • simplify Program.fs now that runtime and codegen are compiled-only
  • reconcile any remaining docs/specs that still describe the old script-based model

Current next task

  • no active implementation task in this roadmap
  • item 2 remains deferred until we decide to add more declarative migration metadata

This file is the reference for current progress and remaining work on this branch.